@angular/material 14.0.0-next.10 → 14.0.0-next.13

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 (888) hide show
  1. package/autocomplete/index.d.ts +436 -6
  2. package/autocomplete/testing/index.d.ts +71 -8
  3. package/badge/index.d.ts +107 -8
  4. package/badge/testing/index.d.ts +36 -8
  5. package/bottom-sheet/index.d.ts +266 -6
  6. package/bottom-sheet/testing/index.d.ts +27 -8
  7. package/button/index.d.ts +77 -6
  8. package/button/testing/index.d.ts +44 -8
  9. package/button-toggle/index.d.ts +245 -6
  10. package/button-toggle/testing/index.d.ts +91 -8
  11. package/card/index.d.ts +165 -5
  12. package/card/testing/index.d.ts +44 -8
  13. package/checkbox/index.d.ts +246 -6
  14. package/checkbox/testing/index.d.ts +91 -8
  15. package/chips/index.d.ts +650 -5
  16. package/chips/testing/index.d.ts +256 -8
  17. package/core/index.d.ts +1079 -5
  18. package/core/testing/index.d.ts +64 -8
  19. package/core/theming/_theming.scss +2 -2
  20. package/datepicker/index.d.ts +1782 -6
  21. package/datepicker/testing/index.d.ts +307 -8
  22. package/dialog/index.d.ts +489 -6
  23. package/dialog/testing/index.d.ts +97 -8
  24. package/divider/index.d.ts +30 -8
  25. package/divider/testing/index.d.ts +16 -8
  26. package/esm2020/autocomplete/autocomplete-module.mjs +5 -5
  27. package/esm2020/autocomplete/autocomplete-origin.mjs +7 -7
  28. package/esm2020/autocomplete/autocomplete-trigger.mjs +13 -8
  29. package/esm2020/autocomplete/autocomplete.mjs +8 -8
  30. package/esm2020/autocomplete/testing/autocomplete-harness.mjs +5 -1
  31. package/esm2020/badge/badge-module.mjs +5 -5
  32. package/esm2020/badge/badge.mjs +4 -4
  33. package/esm2020/bottom-sheet/bottom-sheet-container.mjs +4 -4
  34. package/esm2020/bottom-sheet/bottom-sheet-module.mjs +5 -5
  35. package/esm2020/bottom-sheet/bottom-sheet.mjs +4 -4
  36. package/esm2020/button/button-module.mjs +5 -5
  37. package/esm2020/button/button.mjs +7 -7
  38. package/esm2020/button-toggle/button-toggle-module.mjs +5 -5
  39. package/esm2020/button-toggle/button-toggle.mjs +7 -7
  40. package/esm2020/card/card-module.mjs +5 -5
  41. package/esm2020/card/card.mjs +43 -43
  42. package/esm2020/checkbox/checkbox-module.mjs +9 -9
  43. package/esm2020/checkbox/checkbox-required-validator.mjs +4 -4
  44. package/esm2020/checkbox/checkbox.mjs +4 -4
  45. package/esm2020/chips/chip-input.mjs +4 -4
  46. package/esm2020/chips/chip-list.mjs +4 -4
  47. package/esm2020/chips/chip.mjs +14 -16
  48. package/esm2020/chips/chips-module.mjs +6 -6
  49. package/esm2020/core/common-behaviors/common-module.mjs +5 -5
  50. package/esm2020/core/datetime/index.mjs +9 -9
  51. package/esm2020/core/datetime/native-date-adapter.mjs +4 -4
  52. package/esm2020/core/error/error-options.mjs +7 -7
  53. package/esm2020/core/line/line.mjs +8 -8
  54. package/esm2020/core/option/index.mjs +5 -5
  55. package/esm2020/core/option/optgroup.mjs +7 -7
  56. package/esm2020/core/option/option.mjs +9 -9
  57. package/esm2020/core/ripple/index.mjs +5 -5
  58. package/esm2020/core/ripple/ripple.mjs +4 -4
  59. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  60. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  61. package/esm2020/core/version.mjs +1 -1
  62. package/esm2020/datepicker/calendar-body.mjs +4 -4
  63. package/esm2020/datepicker/calendar.mjs +13 -13
  64. package/esm2020/datepicker/date-range-input-parts.mjs +10 -10
  65. package/esm2020/datepicker/date-range-input.mjs +5 -5
  66. package/esm2020/datepicker/date-range-picker.mjs +4 -4
  67. package/esm2020/datepicker/date-range-selection-strategy.mjs +4 -4
  68. package/esm2020/datepicker/date-selection-model.mjs +10 -10
  69. package/esm2020/datepicker/datepicker-actions.mjs +10 -10
  70. package/esm2020/datepicker/datepicker-base.mjs +10 -10
  71. package/esm2020/datepicker/datepicker-input-base.mjs +4 -4
  72. package/esm2020/datepicker/datepicker-input.mjs +4 -4
  73. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  74. package/esm2020/datepicker/datepicker-module.mjs +10 -12
  75. package/esm2020/datepicker/datepicker-toggle.mjs +9 -9
  76. package/esm2020/datepicker/datepicker.mjs +4 -4
  77. package/esm2020/datepicker/month-view.mjs +6 -6
  78. package/esm2020/datepicker/multi-year-view.mjs +4 -4
  79. package/esm2020/datepicker/year-view.mjs +4 -4
  80. package/esm2020/dialog/dialog-container.mjs +33 -215
  81. package/esm2020/dialog/dialog-content-directives.mjs +14 -14
  82. package/esm2020/dialog/dialog-module.mjs +8 -7
  83. package/esm2020/dialog/dialog-ref.mjs +25 -57
  84. package/esm2020/dialog/dialog.mjs +74 -197
  85. package/esm2020/divider/divider-module.mjs +5 -5
  86. package/esm2020/divider/divider.mjs +4 -4
  87. package/esm2020/expansion/accordion.mjs +4 -4
  88. package/esm2020/expansion/expansion-module.mjs +5 -5
  89. package/esm2020/expansion/expansion-panel-content.mjs +4 -4
  90. package/esm2020/expansion/expansion-panel-header.mjs +10 -10
  91. package/esm2020/expansion/expansion-panel.mjs +8 -8
  92. package/esm2020/form-field/error.mjs +4 -4
  93. package/esm2020/form-field/form-field-control.mjs +4 -4
  94. package/esm2020/form-field/form-field-module.mjs +5 -5
  95. package/esm2020/form-field/form-field.mjs +4 -4
  96. package/esm2020/form-field/hint.mjs +4 -4
  97. package/esm2020/form-field/label.mjs +4 -4
  98. package/esm2020/form-field/placeholder.mjs +4 -4
  99. package/esm2020/form-field/prefix.mjs +4 -4
  100. package/esm2020/form-field/suffix.mjs +4 -4
  101. package/esm2020/grid-list/grid-list-module.mjs +5 -5
  102. package/esm2020/grid-list/grid-list.mjs +4 -4
  103. package/esm2020/grid-list/grid-tile.mjs +16 -16
  104. package/esm2020/icon/icon-module.mjs +5 -5
  105. package/esm2020/icon/icon-registry.mjs +4 -4
  106. package/esm2020/icon/icon.mjs +4 -4
  107. package/esm2020/icon/testing/fake-icon-registry.mjs +8 -8
  108. package/esm2020/input/input-module.mjs +5 -5
  109. package/esm2020/input/input.mjs +4 -4
  110. package/esm2020/list/list-module.mjs +5 -5
  111. package/esm2020/list/list.mjs +19 -19
  112. package/esm2020/list/selection-list.mjs +7 -7
  113. package/esm2020/menu/menu-content.mjs +7 -7
  114. package/esm2020/menu/menu-item.mjs +6 -6
  115. package/esm2020/menu/menu-module.mjs +5 -5
  116. package/esm2020/menu/menu-trigger.mjs +7 -7
  117. package/esm2020/menu/menu.mjs +7 -7
  118. package/esm2020/paginator/paginator-intl.mjs +4 -4
  119. package/esm2020/paginator/paginator-module.mjs +5 -5
  120. package/esm2020/paginator/paginator.mjs +12 -12
  121. package/esm2020/paginator/testing/paginator-harness.mjs +11 -1
  122. package/esm2020/progress-bar/progress-bar-module.mjs +5 -5
  123. package/esm2020/progress-bar/progress-bar.mjs +4 -4
  124. package/esm2020/progress-spinner/progress-spinner-module.mjs +5 -5
  125. package/esm2020/progress-spinner/progress-spinner.mjs +4 -4
  126. package/esm2020/radio/radio-module.mjs +5 -5
  127. package/esm2020/radio/radio.mjs +13 -13
  128. package/esm2020/select/select-module.mjs +5 -5
  129. package/esm2020/select/select.mjs +24 -17
  130. package/esm2020/sidenav/drawer.mjs +11 -11
  131. package/esm2020/sidenav/sidenav-module.mjs +5 -5
  132. package/esm2020/sidenav/sidenav.mjs +11 -11
  133. package/esm2020/slide-toggle/slide-toggle-module.mjs +12 -14
  134. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  135. package/esm2020/slide-toggle/slide-toggle.mjs +4 -4
  136. package/esm2020/slider/slider-module.mjs +5 -5
  137. package/esm2020/slider/slider.mjs +4 -4
  138. package/esm2020/snack-bar/simple-snack-bar.mjs +6 -6
  139. package/esm2020/snack-bar/snack-bar-container.mjs +4 -4
  140. package/esm2020/snack-bar/snack-bar-module.mjs +5 -5
  141. package/esm2020/snack-bar/snack-bar-ref.mjs +2 -3
  142. package/esm2020/snack-bar/snack-bar.mjs +7 -7
  143. package/esm2020/sort/sort-header-intl.mjs +4 -4
  144. package/esm2020/sort/sort-header.mjs +4 -4
  145. package/esm2020/sort/sort-module.mjs +5 -5
  146. package/esm2020/sort/sort.mjs +4 -4
  147. package/esm2020/stepper/step-content.mjs +4 -4
  148. package/esm2020/stepper/step-header.mjs +7 -7
  149. package/esm2020/stepper/step-label.mjs +4 -4
  150. package/esm2020/stepper/stepper-button.mjs +7 -7
  151. package/esm2020/stepper/stepper-icon.mjs +4 -4
  152. package/esm2020/stepper/stepper-intl.mjs +4 -4
  153. package/esm2020/stepper/stepper-module.mjs +11 -13
  154. package/esm2020/stepper/stepper.mjs +10 -10
  155. package/esm2020/table/cell.mjs +22 -22
  156. package/esm2020/table/row.mjs +22 -22
  157. package/esm2020/table/table-module.mjs +5 -5
  158. package/esm2020/table/table.mjs +8 -8
  159. package/esm2020/table/text-column.mjs +5 -5
  160. package/esm2020/tabs/ink-bar.mjs +4 -4
  161. package/esm2020/tabs/paginated-tab-header.mjs +4 -4
  162. package/esm2020/tabs/tab-body.mjs +10 -10
  163. package/esm2020/tabs/tab-content.mjs +4 -4
  164. package/esm2020/tabs/tab-group.mjs +15 -15
  165. package/esm2020/tabs/tab-header.mjs +7 -7
  166. package/esm2020/tabs/tab-label-wrapper.mjs +4 -4
  167. package/esm2020/tabs/tab-label.mjs +4 -4
  168. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +16 -16
  169. package/esm2020/tabs/tab.mjs +4 -4
  170. package/esm2020/tabs/tabs-module.mjs +10 -12
  171. package/esm2020/toolbar/toolbar-module.mjs +5 -5
  172. package/esm2020/toolbar/toolbar.mjs +7 -7
  173. package/esm2020/tooltip/tooltip-module.mjs +5 -5
  174. package/esm2020/tooltip/tooltip.mjs +13 -13
  175. package/esm2020/tree/node.mjs +10 -10
  176. package/esm2020/tree/outlet.mjs +4 -4
  177. package/esm2020/tree/padding.mjs +4 -4
  178. package/esm2020/tree/toggle.mjs +4 -4
  179. package/esm2020/tree/tree-module.mjs +5 -5
  180. package/esm2020/tree/tree.mjs +4 -4
  181. package/expansion/index.d.ts +343 -5
  182. package/expansion/testing/index.d.ts +106 -8
  183. package/fesm2015/autocomplete/testing.mjs +6 -0
  184. package/fesm2015/autocomplete/testing.mjs.map +1 -1
  185. package/fesm2015/autocomplete.mjs +29 -24
  186. package/fesm2015/autocomplete.mjs.map +1 -1
  187. package/fesm2015/badge.mjs +7 -7
  188. package/fesm2015/badge.mjs.map +1 -1
  189. package/fesm2015/bottom-sheet.mjs +10 -10
  190. package/fesm2015/bottom-sheet.mjs.map +1 -1
  191. package/fesm2015/button-toggle.mjs +10 -10
  192. package/fesm2015/button-toggle.mjs.map +1 -1
  193. package/fesm2015/button.mjs +10 -10
  194. package/fesm2015/button.mjs.map +1 -1
  195. package/fesm2015/card.mjs +46 -46
  196. package/fesm2015/card.mjs.map +1 -1
  197. package/fesm2015/checkbox.mjs +14 -14
  198. package/fesm2015/checkbox.mjs.map +1 -1
  199. package/fesm2015/chips.mjs +24 -26
  200. package/fesm2015/chips.mjs.map +1 -1
  201. package/fesm2015/core.mjs +59 -59
  202. package/fesm2015/core.mjs.map +1 -1
  203. package/fesm2015/datepicker.mjs +90 -92
  204. package/fesm2015/datepicker.mjs.map +1 -1
  205. package/fesm2015/dialog.mjs +140 -483
  206. package/fesm2015/dialog.mjs.map +1 -1
  207. package/fesm2015/divider.mjs +7 -7
  208. package/fesm2015/divider.mjs.map +1 -1
  209. package/fesm2015/expansion.mjs +26 -26
  210. package/fesm2015/expansion.mjs.map +1 -1
  211. package/fesm2015/form-field.mjs +28 -28
  212. package/fesm2015/form-field.mjs.map +1 -1
  213. package/fesm2015/grid-list.mjs +22 -22
  214. package/fesm2015/grid-list.mjs.map +1 -1
  215. package/fesm2015/icon/testing.mjs +7 -7
  216. package/fesm2015/icon/testing.mjs.map +1 -1
  217. package/fesm2015/icon.mjs +10 -10
  218. package/fesm2015/icon.mjs.map +1 -1
  219. package/fesm2015/input.mjs +7 -7
  220. package/fesm2015/input.mjs.map +1 -1
  221. package/fesm2015/list.mjs +28 -28
  222. package/fesm2015/list.mjs.map +1 -1
  223. package/fesm2015/menu.mjs +27 -27
  224. package/fesm2015/menu.mjs.map +1 -1
  225. package/fesm2015/paginator/testing.mjs +14 -0
  226. package/fesm2015/paginator/testing.mjs.map +1 -1
  227. package/fesm2015/paginator.mjs +18 -18
  228. package/fesm2015/paginator.mjs.map +1 -1
  229. package/fesm2015/progress-bar.mjs +7 -7
  230. package/fesm2015/progress-bar.mjs.map +1 -1
  231. package/fesm2015/progress-spinner.mjs +7 -7
  232. package/fesm2015/progress-spinner.mjs.map +1 -1
  233. package/fesm2015/radio.mjs +16 -16
  234. package/fesm2015/radio.mjs.map +1 -1
  235. package/fesm2015/select.mjs +28 -21
  236. package/fesm2015/select.mjs.map +1 -1
  237. package/fesm2015/sidenav.mjs +24 -24
  238. package/fesm2015/sidenav.mjs.map +1 -1
  239. package/fesm2015/slide-toggle.mjs +17 -19
  240. package/fesm2015/slide-toggle.mjs.map +1 -1
  241. package/fesm2015/slider.mjs +7 -7
  242. package/fesm2015/slider.mjs.map +1 -1
  243. package/fesm2015/snack-bar.mjs +19 -20
  244. package/fesm2015/snack-bar.mjs.map +1 -1
  245. package/fesm2015/sort.mjs +13 -13
  246. package/fesm2015/sort.mjs.map +1 -1
  247. package/fesm2015/stepper.mjs +40 -42
  248. package/fesm2015/stepper.mjs.map +1 -1
  249. package/fesm2015/table.mjs +57 -57
  250. package/fesm2015/table.mjs.map +1 -1
  251. package/fesm2015/tabs.mjs +66 -68
  252. package/fesm2015/tabs.mjs.map +1 -1
  253. package/fesm2015/toolbar.mjs +10 -10
  254. package/fesm2015/toolbar.mjs.map +1 -1
  255. package/fesm2015/tooltip.mjs +16 -16
  256. package/fesm2015/tooltip.mjs.map +1 -1
  257. package/fesm2015/tree.mjs +25 -25
  258. package/fesm2015/tree.mjs.map +1 -1
  259. package/fesm2020/autocomplete/testing.mjs +4 -0
  260. package/fesm2020/autocomplete/testing.mjs.map +1 -1
  261. package/fesm2020/autocomplete.mjs +29 -24
  262. package/fesm2020/autocomplete.mjs.map +1 -1
  263. package/fesm2020/badge.mjs +7 -7
  264. package/fesm2020/badge.mjs.map +1 -1
  265. package/fesm2020/bottom-sheet.mjs +10 -10
  266. package/fesm2020/bottom-sheet.mjs.map +1 -1
  267. package/fesm2020/button-toggle.mjs +10 -10
  268. package/fesm2020/button-toggle.mjs.map +1 -1
  269. package/fesm2020/button.mjs +10 -10
  270. package/fesm2020/button.mjs.map +1 -1
  271. package/fesm2020/card.mjs +46 -46
  272. package/fesm2020/card.mjs.map +1 -1
  273. package/fesm2020/checkbox.mjs +14 -14
  274. package/fesm2020/checkbox.mjs.map +1 -1
  275. package/fesm2020/chips.mjs +24 -26
  276. package/fesm2020/chips.mjs.map +1 -1
  277. package/fesm2020/core.mjs +59 -59
  278. package/fesm2020/core.mjs.map +1 -1
  279. package/fesm2020/datepicker.mjs +90 -92
  280. package/fesm2020/datepicker.mjs.map +1 -1
  281. package/fesm2020/dialog.mjs +143 -481
  282. package/fesm2020/dialog.mjs.map +1 -1
  283. package/fesm2020/divider.mjs +7 -7
  284. package/fesm2020/divider.mjs.map +1 -1
  285. package/fesm2020/expansion.mjs +26 -26
  286. package/fesm2020/expansion.mjs.map +1 -1
  287. package/fesm2020/form-field.mjs +28 -28
  288. package/fesm2020/form-field.mjs.map +1 -1
  289. package/fesm2020/grid-list.mjs +22 -22
  290. package/fesm2020/grid-list.mjs.map +1 -1
  291. package/fesm2020/icon/testing.mjs +7 -7
  292. package/fesm2020/icon/testing.mjs.map +1 -1
  293. package/fesm2020/icon.mjs +10 -10
  294. package/fesm2020/icon.mjs.map +1 -1
  295. package/fesm2020/input.mjs +7 -7
  296. package/fesm2020/input.mjs.map +1 -1
  297. package/fesm2020/list.mjs +28 -28
  298. package/fesm2020/list.mjs.map +1 -1
  299. package/fesm2020/menu.mjs +27 -27
  300. package/fesm2020/menu.mjs.map +1 -1
  301. package/fesm2020/paginator/testing.mjs +10 -0
  302. package/fesm2020/paginator/testing.mjs.map +1 -1
  303. package/fesm2020/paginator.mjs +18 -18
  304. package/fesm2020/paginator.mjs.map +1 -1
  305. package/fesm2020/progress-bar.mjs +7 -7
  306. package/fesm2020/progress-bar.mjs.map +1 -1
  307. package/fesm2020/progress-spinner.mjs +7 -7
  308. package/fesm2020/progress-spinner.mjs.map +1 -1
  309. package/fesm2020/radio.mjs +16 -16
  310. package/fesm2020/radio.mjs.map +1 -1
  311. package/fesm2020/select.mjs +28 -21
  312. package/fesm2020/select.mjs.map +1 -1
  313. package/fesm2020/sidenav.mjs +24 -24
  314. package/fesm2020/sidenav.mjs.map +1 -1
  315. package/fesm2020/slide-toggle.mjs +17 -19
  316. package/fesm2020/slide-toggle.mjs.map +1 -1
  317. package/fesm2020/slider.mjs +7 -7
  318. package/fesm2020/slider.mjs.map +1 -1
  319. package/fesm2020/snack-bar.mjs +19 -20
  320. package/fesm2020/snack-bar.mjs.map +1 -1
  321. package/fesm2020/sort.mjs +13 -13
  322. package/fesm2020/sort.mjs.map +1 -1
  323. package/fesm2020/stepper.mjs +40 -42
  324. package/fesm2020/stepper.mjs.map +1 -1
  325. package/fesm2020/table.mjs +57 -57
  326. package/fesm2020/table.mjs.map +1 -1
  327. package/fesm2020/tabs.mjs +66 -68
  328. package/fesm2020/tabs.mjs.map +1 -1
  329. package/fesm2020/toolbar.mjs +10 -10
  330. package/fesm2020/toolbar.mjs.map +1 -1
  331. package/fesm2020/tooltip.mjs +16 -16
  332. package/fesm2020/tooltip.mjs.map +1 -1
  333. package/fesm2020/tree.mjs +25 -25
  334. package/fesm2020/tree.mjs.map +1 -1
  335. package/form-field/index.d.ts +401 -5
  336. package/form-field/testing/control/index.d.ts +8 -6
  337. package/form-field/testing/index.d.ts +127 -8
  338. package/grid-list/index.d.ts +232 -5
  339. package/grid-list/testing/index.d.ts +86 -8
  340. package/icon/index.d.ts +443 -5
  341. package/icon/testing/index.d.ts +81 -6
  342. package/index.d.ts +3 -7
  343. package/input/index.d.ts +209 -6
  344. package/input/testing/index.d.ts +129 -8
  345. package/list/index.d.ts +369 -6
  346. package/list/testing/index.d.ts +329 -6
  347. package/menu/index.d.ts +618 -6
  348. package/menu/testing/index.d.ts +115 -8
  349. package/package.json +38 -38
  350. package/paginator/index.d.ts +224 -6
  351. package/paginator/testing/index.d.ts +65 -8
  352. package/progress-bar/index.d.ts +147 -6
  353. package/progress-bar/testing/index.d.ts +26 -8
  354. package/progress-spinner/index.d.ts +138 -6
  355. package/progress-spinner/testing/index.d.ts +27 -8
  356. package/radio/index.d.ts +305 -6
  357. package/radio/testing/index.d.ts +130 -8
  358. package/schematics/ng-add/index.js +1 -1
  359. package/schematics/ng-add/index.mjs +1 -1
  360. package/schematics/ng-update/migrations/hammer-gestures-v9/gesture-config.template +1 -1
  361. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +5 -5
  362. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.mjs +5 -5
  363. package/select/index.d.ts +534 -5
  364. package/select/testing/index.d.ts +79 -8
  365. package/sidenav/index.d.ts +395 -5
  366. package/sidenav/testing/index.d.ts +124 -6
  367. package/slide-toggle/index.d.ts +173 -5
  368. package/slide-toggle/testing/index.d.ts +77 -8
  369. package/slider/index.d.ts +289 -6
  370. package/slider/testing/index.d.ts +60 -8
  371. package/snack-bar/index.d.ts +372 -6
  372. package/snack-bar/testing/index.d.ts +72 -8
  373. package/sort/index.d.ts +326 -5
  374. package/sort/testing/index.d.ts +50 -8
  375. package/stepper/index.d.ts +288 -6
  376. package/stepper/testing/index.d.ts +142 -6
  377. package/table/index.d.ts +382 -5
  378. package/table/testing/index.d.ts +178 -8
  379. package/tabs/index.d.ts +963 -5
  380. package/tabs/testing/index.d.ts +153 -8
  381. package/toolbar/index.d.ts +56 -6
  382. package/toolbar/testing/index.d.ts +35 -8
  383. package/tooltip/index.d.ts +362 -5
  384. package/tooltip/testing/index.d.ts +42 -8
  385. package/tree/index.d.ts +243 -5
  386. package/tree/testing/index.d.ts +122 -8
  387. package/autocomplete/autocomplete-module.d.ts +0 -13
  388. package/autocomplete/autocomplete-origin.d.ts +0 -27
  389. package/autocomplete/autocomplete-trigger.d.ts +0 -211
  390. package/autocomplete/autocomplete.d.ts +0 -150
  391. package/autocomplete/autocomplete_public_index.d.ts +0 -4
  392. package/autocomplete/package.json +0 -9
  393. package/autocomplete/public-api.d.ts +0 -11
  394. package/autocomplete/testing/autocomplete-harness-filters.d.ts +0 -13
  395. package/autocomplete/testing/autocomplete-harness.d.ts +0 -61
  396. package/autocomplete/testing/package.json +0 -9
  397. package/autocomplete/testing/public-api.d.ts +0 -9
  398. package/badge/badge-module.d.ts +0 -9
  399. package/badge/badge.d.ts +0 -86
  400. package/badge/badge_public_index.d.ts +0 -4
  401. package/badge/package.json +0 -9
  402. package/badge/public-api.d.ts +0 -9
  403. package/badge/testing/badge-harness-filters.d.ts +0 -11
  404. package/badge/testing/badge-harness.d.ts +0 -34
  405. package/badge/testing/package.json +0 -9
  406. package/badge/testing/public-api.d.ts +0 -9
  407. package/bottom-sheet/bottom-sheet-animations.d.ts +0 -12
  408. package/bottom-sheet/bottom-sheet-config.d.ts +0 -54
  409. package/bottom-sheet/bottom-sheet-container.d.ts +0 -87
  410. package/bottom-sheet/bottom-sheet-module.d.ts +0 -10
  411. package/bottom-sheet/bottom-sheet-ref.d.ts +0 -51
  412. package/bottom-sheet/bottom-sheet.d.ts +0 -59
  413. package/bottom-sheet/bottom-sheet_public_index.d.ts +0 -4
  414. package/bottom-sheet/package.json +0 -9
  415. package/bottom-sheet/public-api.d.ts +0 -13
  416. package/bottom-sheet/testing/bottom-sheet-harness-filters.d.ts +0 -10
  417. package/bottom-sheet/testing/bottom-sheet-harness.d.ts +0 -27
  418. package/bottom-sheet/testing/package.json +0 -9
  419. package/bottom-sheet/testing/public-api.d.ts +0 -9
  420. package/button/button-module.d.ts +0 -8
  421. package/button/button.d.ts +0 -58
  422. package/button/button_public_index.d.ts +0 -4
  423. package/button/package.json +0 -9
  424. package/button/public-api.d.ts +0 -9
  425. package/button/testing/button-harness-filters.d.ts +0 -13
  426. package/button/testing/button-harness.d.ts +0 -41
  427. package/button/testing/package.json +0 -9
  428. package/button/testing/public-api.d.ts +0 -9
  429. package/button-toggle/button-toggle-module.d.ts +0 -8
  430. package/button-toggle/button-toggle.d.ts +0 -212
  431. package/button-toggle/button-toggle_public_index.d.ts +0 -4
  432. package/button-toggle/package.json +0 -9
  433. package/button-toggle/public-api.d.ts +0 -9
  434. package/button-toggle/testing/button-toggle-group-harness-filters.d.ts +0 -11
  435. package/button-toggle/testing/button-toggle-group-harness.d.ts +0 -35
  436. package/button-toggle/testing/button-toggle-harness-filters.d.ts +0 -17
  437. package/button-toggle/testing/button-toggle-harness.d.ts +0 -56
  438. package/button-toggle/testing/package.json +0 -9
  439. package/button-toggle/testing/public-api.d.ts +0 -11
  440. package/card/card-module.d.ts +0 -8
  441. package/card/card.d.ts +0 -126
  442. package/card/card_public_index.d.ts +0 -4
  443. package/card/package.json +0 -9
  444. package/card/public-api.d.ts +0 -9
  445. package/card/testing/card-harness-filters.d.ts +0 -17
  446. package/card/testing/card-harness.d.ts +0 -36
  447. package/card/testing/package.json +0 -9
  448. package/card/testing/public-api.d.ts +0 -9
  449. package/checkbox/checkbox-config.d.ts +0 -28
  450. package/checkbox/checkbox-module.d.ts +0 -16
  451. package/checkbox/checkbox-required-validator.d.ts +0 -20
  452. package/checkbox/checkbox.d.ts +0 -166
  453. package/checkbox/checkbox_public_index.d.ts +0 -4
  454. package/checkbox/package.json +0 -9
  455. package/checkbox/public-api.d.ts +0 -11
  456. package/checkbox/testing/checkbox-harness-filters.d.ts +0 -17
  457. package/checkbox/testing/checkbox-harness.d.ts +0 -81
  458. package/checkbox/testing/package.json +0 -9
  459. package/checkbox/testing/public-api.d.ts +0 -9
  460. package/chips/chip-default-options.d.ts +0 -15
  461. package/chips/chip-input.d.ts +0 -91
  462. package/chips/chip-list.d.ts +0 -289
  463. package/chips/chip-text-control.d.ts +0 -20
  464. package/chips/chip.d.ts +0 -210
  465. package/chips/chips-module.d.ts +0 -10
  466. package/chips/chips_public_index.d.ts +0 -4
  467. package/chips/package.json +0 -9
  468. package/chips/public-api.d.ts +0 -12
  469. package/chips/testing/chip-avatar-harness.d.ts +0 -20
  470. package/chips/testing/chip-harness-filters.d.ts +0 -43
  471. package/chips/testing/chip-harness.d.ts +0 -63
  472. package/chips/testing/chip-input-harness.d.ts +0 -47
  473. package/chips/testing/chip-list-harness.d.ts +0 -54
  474. package/chips/testing/chip-listbox-harness.d.ts +0 -34
  475. package/chips/testing/chip-option-harness.d.ts +0 -29
  476. package/chips/testing/chip-remove-harness.d.ts +0 -22
  477. package/chips/testing/package.json +0 -9
  478. package/chips/testing/public-api.d.ts +0 -14
  479. package/core/animation/animation.d.ts +0 -20
  480. package/core/common-behaviors/color.d.ts +0 -26
  481. package/core/common-behaviors/common-module.d.ts +0 -44
  482. package/core/common-behaviors/constructor.d.ts +0 -14
  483. package/core/common-behaviors/disable-ripple.d.ts +0 -17
  484. package/core/common-behaviors/disabled.d.ts +0 -17
  485. package/core/common-behaviors/error-state.d.ts +0 -35
  486. package/core/common-behaviors/index.d.ts +0 -15
  487. package/core/common-behaviors/initialized.d.ts +0 -30
  488. package/core/common-behaviors/tabindex.d.ts +0 -20
  489. package/core/core_public_index.d.ts +0 -4
  490. package/core/datetime/date-adapter.d.ts +0 -215
  491. package/core/datetime/date-formats.d.ts +0 -21
  492. package/core/datetime/index.d.ts +0 -15
  493. package/core/datetime/native-date-adapter.d.ts +0 -74
  494. package/core/datetime/native-date-formats.d.ts +0 -9
  495. package/core/error/error-options.d.ts +0 -14
  496. package/core/line/line.d.ts +0 -29
  497. package/core/option/index.d.ts +0 -15
  498. package/core/option/optgroup.d.ts +0 -40
  499. package/core/option/option-parent.d.ts +0 -22
  500. package/core/option/option.d.ts +0 -135
  501. package/core/package.json +0 -9
  502. package/core/public-api.d.ts +0 -16
  503. package/core/ripple/index.d.ts +0 -11
  504. package/core/ripple/ripple-ref.d.ts +0 -54
  505. package/core/ripple/ripple-renderer.d.ts +0 -105
  506. package/core/ripple/ripple.d.ts +0 -113
  507. package/core/selection/index.d.ts +0 -9
  508. package/core/selection/pseudo-checkbox/pseudo-checkbox-module.d.ts +0 -8
  509. package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +0 -29
  510. package/core/testing/optgroup-harness-filters.d.ts +0 -11
  511. package/core/testing/optgroup-harness.d.ts +0 -33
  512. package/core/testing/option-harness-filters.d.ts +0 -12
  513. package/core/testing/option-harness.d.ts +0 -35
  514. package/core/testing/package.json +0 -9
  515. package/core/testing/public-api.d.ts +0 -11
  516. package/core/version.d.ts +0 -10
  517. package/datepicker/calendar-body.d.ts +0 -176
  518. package/datepicker/calendar.d.ts +0 -156
  519. package/datepicker/date-range-input-parts.d.ts +0 -108
  520. package/datepicker/date-range-input.d.ts +0 -133
  521. package/datepicker/date-range-picker.d.ts +0 -17
  522. package/datepicker/date-range-selection-strategy.d.ts +0 -48
  523. package/datepicker/date-selection-model.d.ts +0 -139
  524. package/datepicker/datepicker-actions.d.ts +0 -40
  525. package/datepicker/datepicker-animations.d.ts +0 -16
  526. package/datepicker/datepicker-base.d.ts +0 -272
  527. package/datepicker/datepicker-errors.d.ts +0 -9
  528. package/datepicker/datepicker-input-base.d.ts +0 -136
  529. package/datepicker/datepicker-input.d.ts +0 -67
  530. package/datepicker/datepicker-intl.d.ts +0 -36
  531. package/datepicker/datepicker-module.d.ts +0 -26
  532. package/datepicker/datepicker-toggle.d.ts +0 -47
  533. package/datepicker/datepicker.d.ts +0 -7
  534. package/datepicker/datepicker_public_index.d.ts +0 -4
  535. package/datepicker/month-view.d.ts +0 -139
  536. package/datepicker/multi-year-view.d.ts +0 -103
  537. package/datepicker/package.json +0 -9
  538. package/datepicker/public-api.d.ts +0 -26
  539. package/datepicker/testing/calendar-cell-harness.d.ts +0 -64
  540. package/datepicker/testing/calendar-harness.d.ts +0 -53
  541. package/datepicker/testing/date-range-input-harness.d.ts +0 -59
  542. package/datepicker/testing/datepicker-harness-filters.d.ts +0 -45
  543. package/datepicker/testing/datepicker-input-harness-base.d.ts +0 -44
  544. package/datepicker/testing/datepicker-input-harness.d.ts +0 -36
  545. package/datepicker/testing/datepicker-toggle-harness.d.ts +0 -28
  546. package/datepicker/testing/datepicker-trigger-harness-base.d.ts +0 -44
  547. package/datepicker/testing/package.json +0 -9
  548. package/datepicker/testing/public-api.d.ts +0 -13
  549. package/datepicker/year-view.d.ts +0 -114
  550. package/dialog/dialog-animations.d.ts +0 -25
  551. package/dialog/dialog-config.d.ts +0 -105
  552. package/dialog/dialog-container.d.ts +0 -137
  553. package/dialog/dialog-content-directives.d.ts +0 -76
  554. package/dialog/dialog-module.d.ts +0 -11
  555. package/dialog/dialog-ref.d.ts +0 -101
  556. package/dialog/dialog.d.ts +0 -154
  557. package/dialog/dialog_public_index.d.ts +0 -4
  558. package/dialog/package.json +0 -9
  559. package/dialog/public-api.d.ts +0 -14
  560. package/dialog/testing/dialog-harness-filters.d.ts +0 -11
  561. package/dialog/testing/dialog-harness.d.ts +0 -58
  562. package/dialog/testing/dialog-opener.d.ts +0 -33
  563. package/dialog/testing/package.json +0 -9
  564. package/dialog/testing/public-api.d.ts +0 -10
  565. package/divider/divider-module.d.ts +0 -8
  566. package/divider/divider.d.ts +0 -14
  567. package/divider/divider_public_index.d.ts +0 -4
  568. package/divider/package.json +0 -9
  569. package/divider/public-api.d.ts +0 -9
  570. package/divider/testing/divider-harness-filters.d.ts +0 -10
  571. package/divider/testing/divider-harness.d.ts +0 -16
  572. package/divider/testing/package.json +0 -9
  573. package/divider/testing/public-api.d.ts +0 -9
  574. package/expansion/accordion-base.d.ts +0 -34
  575. package/expansion/accordion.d.ts +0 -45
  576. package/expansion/expansion-animations.d.ts +0 -36
  577. package/expansion/expansion-module.d.ts +0 -14
  578. package/expansion/expansion-panel-base.d.ts +0 -22
  579. package/expansion/expansion-panel-content.d.ts +0 -21
  580. package/expansion/expansion-panel-header.d.ts +0 -83
  581. package/expansion/expansion-panel.d.ts +0 -96
  582. package/expansion/expansion_public_index.d.ts +0 -4
  583. package/expansion/package.json +0 -9
  584. package/expansion/public-api.d.ts +0 -15
  585. package/expansion/testing/accordion-harness.d.ts +0 -25
  586. package/expansion/testing/expansion-harness-filters.d.ts +0 -17
  587. package/expansion/testing/expansion-harness.d.ts +0 -79
  588. package/expansion/testing/package.json +0 -9
  589. package/expansion/testing/public-api.d.ts +0 -10
  590. package/form-field/error.d.ts +0 -22
  591. package/form-field/form-field-animations.d.ts +0 -15
  592. package/form-field/form-field-control.d.ts +0 -60
  593. package/form-field/form-field-errors.d.ts +0 -13
  594. package/form-field/form-field-module.d.ts +0 -16
  595. package/form-field/form-field.d.ts +0 -189
  596. package/form-field/form-field_public_index.d.ts +0 -4
  597. package/form-field/hint.d.ts +0 -27
  598. package/form-field/label.d.ts +0 -6
  599. package/form-field/package.json +0 -9
  600. package/form-field/placeholder.d.ts +0 -11
  601. package/form-field/prefix.d.ts +0 -20
  602. package/form-field/public-api.d.ts +0 -18
  603. package/form-field/suffix.d.ts +0 -20
  604. package/form-field/testing/control/form-field-control-harness.d.ts +0 -14
  605. package/form-field/testing/control/package.json +0 -9
  606. package/form-field/testing/form-field-harness-filters.d.ts +0 -15
  607. package/form-field/testing/form-field-harness.d.ts +0 -114
  608. package/form-field/testing/package.json +0 -9
  609. package/form-field/testing/public-api.d.ts +0 -10
  610. package/grid-list/grid-list-base.d.ts +0 -22
  611. package/grid-list/grid-list-module.d.ts +0 -9
  612. package/grid-list/grid-list.d.ts +0 -63
  613. package/grid-list/grid-list_public_index.d.ts +0 -4
  614. package/grid-list/grid-tile.d.ts +0 -64
  615. package/grid-list/package.json +0 -9
  616. package/grid-list/public-api.d.ts +0 -12
  617. package/grid-list/testing/grid-list-harness-filters.d.ts +0 -18
  618. package/grid-list/testing/grid-list-harness.d.ts +0 -41
  619. package/grid-list/testing/grid-tile-harness.d.ts +0 -43
  620. package/grid-list/testing/package.json +0 -9
  621. package/grid-list/testing/public-api.d.ts +0 -10
  622. package/grid-list/tile-coordinator.d.ts +0 -79
  623. package/grid-list/tile-styler.d.ts +0 -134
  624. package/icon/fake-svgs.d.ts +0 -23
  625. package/icon/icon-module.d.ts +0 -8
  626. package/icon/icon-registry.d.ts +0 -262
  627. package/icon/icon.d.ts +0 -147
  628. package/icon/icon_public_index.d.ts +0 -4
  629. package/icon/package.json +0 -9
  630. package/icon/public-api.d.ts +0 -10
  631. package/icon/testing/fake-icon-registry.d.ts +0 -46
  632. package/icon/testing/icon-harness-filters.d.ts +0 -22
  633. package/icon/testing/icon-harness.d.ts +0 -29
  634. package/icon/testing/package.json +0 -9
  635. package/icon/testing/public-api.d.ts +0 -10
  636. package/icon/testing/testing_public_index.d.ts +0 -4
  637. package/icon/trusted-types.d.ts +0 -37
  638. package/input/input-errors.d.ts +0 -9
  639. package/input/input-module.d.ts +0 -10
  640. package/input/input-value-accessor.d.ts +0 -17
  641. package/input/input.d.ts +0 -174
  642. package/input/input_public_index.d.ts +0 -4
  643. package/input/package.json +0 -9
  644. package/input/public-api.d.ts +0 -11
  645. package/input/testing/input-harness-filters.d.ts +0 -15
  646. package/input/testing/input-harness.d.ts +0 -57
  647. package/input/testing/native-option-harness.d.ts +0 -29
  648. package/input/testing/native-select-harness-filters.d.ts +0 -17
  649. package/input/testing/native-select-harness.d.ts +0 -45
  650. package/input/testing/package.json +0 -9
  651. package/input/testing/public-api.d.ts +0 -12
  652. package/list/list-module.d.ts +0 -11
  653. package/list/list.d.ts +0 -99
  654. package/list/list_public_index.d.ts +0 -4
  655. package/list/package.json +0 -9
  656. package/list/public-api.d.ts +0 -10
  657. package/list/selection-list.d.ts +0 -226
  658. package/list/testing/action-list-harness.d.ts +0 -44
  659. package/list/testing/list-harness-base.d.ts +0 -100
  660. package/list/testing/list-harness-filters.d.ts +0 -32
  661. package/list/testing/list-harness.d.ts +0 -36
  662. package/list/testing/list-item-harness-base.d.ts +0 -48
  663. package/list/testing/nav-list-harness.d.ts +0 -46
  664. package/list/testing/package.json +0 -9
  665. package/list/testing/public-api.d.ts +0 -13
  666. package/list/testing/selection-list-harness.d.ts +0 -74
  667. package/menu/menu-animations.d.ts +0 -30
  668. package/menu/menu-content.d.ts +0 -47
  669. package/menu/menu-errors.d.ts +0 -25
  670. package/menu/menu-item.d.ts +0 -61
  671. package/menu/menu-module.d.ts +0 -14
  672. package/menu/menu-panel.d.ts +0 -49
  673. package/menu/menu-positions.d.ts +0 -9
  674. package/menu/menu-trigger.d.ts +0 -180
  675. package/menu/menu.d.ts +0 -207
  676. package/menu/menu_public_index.d.ts +0 -4
  677. package/menu/package.json +0 -9
  678. package/menu/public-api.d.ts +0 -15
  679. package/menu/testing/menu-harness-filters.d.ts +0 -20
  680. package/menu/testing/menu-harness.d.ts +0 -98
  681. package/menu/testing/package.json +0 -9
  682. package/menu/testing/public-api.d.ts +0 -9
  683. package/paginator/package.json +0 -9
  684. package/paginator/paginator-intl.d.ts +0 -43
  685. package/paginator/paginator-module.d.ts +0 -12
  686. package/paginator/paginator.d.ts +0 -157
  687. package/paginator/paginator_public_index.d.ts +0 -4
  688. package/paginator/public-api.d.ts +0 -10
  689. package/paginator/testing/package.json +0 -9
  690. package/paginator/testing/paginator-harness-filters.d.ts +0 -11
  691. package/paginator/testing/paginator-harness.d.ts +0 -58
  692. package/paginator/testing/public-api.d.ts +0 -9
  693. package/progress-bar/package.json +0 -9
  694. package/progress-bar/progress-bar-module.d.ts +0 -9
  695. package/progress-bar/progress-bar.d.ts +0 -116
  696. package/progress-bar/progress-bar_public_index.d.ts +0 -4
  697. package/progress-bar/public-api.d.ts +0 -9
  698. package/progress-bar/testing/package.json +0 -9
  699. package/progress-bar/testing/progress-bar-harness-filters.d.ts +0 -11
  700. package/progress-bar/testing/progress-bar-harness.d.ts +0 -25
  701. package/progress-bar/testing/public-api.d.ts +0 -9
  702. package/progress-spinner/package.json +0 -9
  703. package/progress-spinner/progress-spinner-module.d.ts +0 -9
  704. package/progress-spinner/progress-spinner.d.ts +0 -107
  705. package/progress-spinner/progress-spinner_public_index.d.ts +0 -4
  706. package/progress-spinner/public-api.d.ts +0 -16
  707. package/progress-spinner/testing/package.json +0 -9
  708. package/progress-spinner/testing/progress-spinner-harness-filters.d.ts +0 -11
  709. package/progress-spinner/testing/progress-spinner-harness.d.ts +0 -26
  710. package/progress-spinner/testing/public-api.d.ts +0 -9
  711. package/radio/package.json +0 -9
  712. package/radio/public-api.d.ts +0 -9
  713. package/radio/radio-module.d.ts +0 -8
  714. package/radio/radio.d.ts +0 -265
  715. package/radio/radio_public_index.d.ts +0 -4
  716. package/radio/testing/package.json +0 -9
  717. package/radio/testing/public-api.d.ts +0 -9
  718. package/radio/testing/radio-harness-filters.d.ts +0 -22
  719. package/radio/testing/radio-harness.d.ts +0 -111
  720. package/select/package.json +0 -9
  721. package/select/public-api.d.ts +0 -10
  722. package/select/select-animations.d.ts +0 -19
  723. package/select/select-errors.d.ts +0 -26
  724. package/select/select-module.d.ts +0 -12
  725. package/select/select.d.ts +0 -452
  726. package/select/select_public_index.d.ts +0 -4
  727. package/select/testing/package.json +0 -9
  728. package/select/testing/public-api.d.ts +0 -9
  729. package/select/testing/select-harness-filters.d.ts +0 -11
  730. package/select/testing/select-harness.d.ts +0 -73
  731. package/sidenav/drawer-animations.d.ts +0 -15
  732. package/sidenav/drawer.d.ts +0 -299
  733. package/sidenav/package.json +0 -9
  734. package/sidenav/public-api.d.ts +0 -11
  735. package/sidenav/sidenav-module.d.ts +0 -11
  736. package/sidenav/sidenav.d.ts +0 -45
  737. package/sidenav/sidenav_public_index.d.ts +0 -4
  738. package/sidenav/testing/drawer-container-harness.d.ts +0 -30
  739. package/sidenav/testing/drawer-content-harness.d.ts +0 -21
  740. package/sidenav/testing/drawer-harness-filters.d.ts +0 -19
  741. package/sidenav/testing/drawer-harness.d.ts +0 -33
  742. package/sidenav/testing/package.json +0 -9
  743. package/sidenav/testing/public-api.d.ts +0 -14
  744. package/sidenav/testing/sidenav-container-harness.d.ts +0 -30
  745. package/sidenav/testing/sidenav-content-harness.d.ts +0 -21
  746. package/sidenav/testing/sidenav-harness.d.ts +0 -24
  747. package/slide-toggle/package.json +0 -9
  748. package/slide-toggle/public-api.d.ts +0 -11
  749. package/slide-toggle/slide-toggle-config.d.ts +0 -18
  750. package/slide-toggle/slide-toggle-module.d.ts +0 -16
  751. package/slide-toggle/slide-toggle-required-validator.d.ts +0 -23
  752. package/slide-toggle/slide-toggle.d.ts +0 -109
  753. package/slide-toggle/slide-toggle_public_index.d.ts +0 -4
  754. package/slide-toggle/testing/package.json +0 -9
  755. package/slide-toggle/testing/public-api.d.ts +0 -9
  756. package/slide-toggle/testing/slide-toggle-harness-filters.d.ts +0 -19
  757. package/slide-toggle/testing/slide-toggle-harness.d.ts +0 -65
  758. package/slider/package.json +0 -9
  759. package/slider/public-api.d.ts +0 -9
  760. package/slider/slider-module.d.ts +0 -9
  761. package/slider/slider.d.ts +0 -267
  762. package/slider/slider_public_index.d.ts +0 -4
  763. package/slider/testing/package.json +0 -9
  764. package/slider/testing/public-api.d.ts +0 -9
  765. package/slider/testing/slider-harness-filters.d.ts +0 -11
  766. package/slider/testing/slider-harness.d.ts +0 -59
  767. package/snack-bar/package.json +0 -9
  768. package/snack-bar/public-api.d.ts +0 -14
  769. package/snack-bar/simple-snack-bar.d.ts +0 -33
  770. package/snack-bar/snack-bar-animations.d.ts +0 -15
  771. package/snack-bar/snack-bar-config.d.ts +0 -45
  772. package/snack-bar/snack-bar-container.d.ts +0 -101
  773. package/snack-bar/snack-bar-module.d.ts +0 -13
  774. package/snack-bar/snack-bar-ref.d.ts +0 -64
  775. package/snack-bar/snack-bar.d.ts +0 -107
  776. package/snack-bar/snack-bar_public_index.d.ts +0 -4
  777. package/snack-bar/testing/package.json +0 -9
  778. package/snack-bar/testing/public-api.d.ts +0 -9
  779. package/snack-bar/testing/snack-bar-harness-filters.d.ts +0 -11
  780. package/snack-bar/testing/snack-bar-harness.d.ts +0 -71
  781. package/sort/package.json +0 -9
  782. package/sort/public-api.d.ts +0 -13
  783. package/sort/sort-animations.d.ts +0 -20
  784. package/sort/sort-direction.d.ts +0 -8
  785. package/sort/sort-errors.d.ts +0 -15
  786. package/sort/sort-header-intl.d.ts +0 -31
  787. package/sort/sort-header.d.ts +0 -166
  788. package/sort/sort-module.d.ts +0 -10
  789. package/sort/sort.d.ts +0 -93
  790. package/sort/sort_public_index.d.ts +0 -4
  791. package/sort/testing/package.json +0 -9
  792. package/sort/testing/public-api.d.ts +0 -10
  793. package/sort/testing/sort-harness-filters.d.ts +0 -15
  794. package/sort/testing/sort-harness.d.ts +0 -24
  795. package/sort/testing/sort-header-harness.d.ts +0 -30
  796. package/stepper/package.json +0 -9
  797. package/stepper/public-api.d.ts +0 -17
  798. package/stepper/step-content.d.ts +0 -18
  799. package/stepper/step-header.d.ts +0 -66
  800. package/stepper/step-label.d.ts +0 -6
  801. package/stepper/stepper-animations.d.ts +0 -18
  802. package/stepper/stepper-button.d.ts +0 -19
  803. package/stepper/stepper-icon.d.ts +0 -30
  804. package/stepper/stepper-intl.d.ts +0 -34
  805. package/stepper/stepper-module.d.ts +0 -18
  806. package/stepper/stepper.d.ts +0 -80
  807. package/stepper/stepper_public_index.d.ts +0 -4
  808. package/stepper/testing/package.json +0 -9
  809. package/stepper/testing/public-api.d.ts +0 -11
  810. package/stepper/testing/step-harness-filters.d.ts +0 -37
  811. package/stepper/testing/step-harness.d.ts +0 -52
  812. package/stepper/testing/stepper-button-harnesses.d.ts +0 -41
  813. package/stepper/testing/stepper-harness.d.ts +0 -35
  814. package/table/cell.d.ts +0 -59
  815. package/table/package.json +0 -9
  816. package/table/public-api.d.ts +0 -13
  817. package/table/row.d.ts +0 -55
  818. package/table/table-data-source.d.ts +0 -169
  819. package/table/table-module.d.ts +0 -12
  820. package/table/table.d.ts +0 -28
  821. package/table/table_public_index.d.ts +0 -4
  822. package/table/testing/cell-harness.d.ts +0 -49
  823. package/table/testing/package.json +0 -9
  824. package/table/testing/public-api.d.ts +0 -11
  825. package/table/testing/row-harness.d.ts +0 -66
  826. package/table/testing/table-harness-filters.d.ts +0 -21
  827. package/table/testing/table-harness.d.ts +0 -58
  828. package/table/text-column.d.ts +0 -22
  829. package/tabs/ink-bar.d.ts +0 -49
  830. package/tabs/package.json +0 -9
  831. package/tabs/paginated-tab-header.d.ts +0 -196
  832. package/tabs/public-api.d.ts +0 -20
  833. package/tabs/tab-body.d.ts +0 -116
  834. package/tabs/tab-config.d.ts +0 -35
  835. package/tabs/tab-content.d.ts +0 -22
  836. package/tabs/tab-group.d.ts +0 -183
  837. package/tabs/tab-header.d.ts +0 -49
  838. package/tabs/tab-label-wrapper.d.ts +0 -29
  839. package/tabs/tab-label.d.ts +0 -28
  840. package/tabs/tab-nav-bar/index.d.ts +0 -8
  841. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +0 -134
  842. package/tabs/tab.d.ts +0 -89
  843. package/tabs/tabs-animations.d.ts +0 -15
  844. package/tabs/tabs-module.d.ts +0 -20
  845. package/tabs/tabs_public_index.d.ts +0 -4
  846. package/tabs/testing/package.json +0 -9
  847. package/tabs/testing/public-api.d.ts +0 -12
  848. package/tabs/testing/tab-group-harness.d.ts +0 -35
  849. package/tabs/testing/tab-harness-filters.d.ts +0 -29
  850. package/tabs/testing/tab-harness.d.ts +0 -38
  851. package/tabs/testing/tab-link-harness.d.ts +0 -29
  852. package/tabs/testing/tab-nav-bar-harness.d.ts +0 -38
  853. package/tabs/testing/tab-nav-panel-harness.d.ts +0 -23
  854. package/toolbar/package.json +0 -9
  855. package/toolbar/public-api.d.ts +0 -9
  856. package/toolbar/testing/package.json +0 -9
  857. package/toolbar/testing/public-api.d.ts +0 -9
  858. package/toolbar/testing/toolbar-harness-filters.d.ts +0 -13
  859. package/toolbar/testing/toolbar-harness.d.ts +0 -31
  860. package/toolbar/toolbar-module.d.ts +0 -8
  861. package/toolbar/toolbar.d.ts +0 -41
  862. package/toolbar/toolbar_public_index.d.ts +0 -4
  863. package/tooltip/package.json +0 -9
  864. package/tooltip/public-api.d.ts +0 -10
  865. package/tooltip/testing/package.json +0 -9
  866. package/tooltip/testing/public-api.d.ts +0 -9
  867. package/tooltip/testing/tooltip-harness-filters.d.ts +0 -11
  868. package/tooltip/testing/tooltip-harness.d.ts +0 -38
  869. package/tooltip/tooltip-animations.d.ts +0 -15
  870. package/tooltip/tooltip-module.d.ts +0 -12
  871. package/tooltip/tooltip.d.ts +0 -299
  872. package/tooltip/tooltip_public_index.d.ts +0 -4
  873. package/tree/data-source/flat-data-source.d.ts +0 -83
  874. package/tree/data-source/nested-data-source.d.ts +0 -25
  875. package/tree/node.d.ts +0 -53
  876. package/tree/outlet.d.ts +0 -21
  877. package/tree/package.json +0 -9
  878. package/tree/padding.d.ts +0 -23
  879. package/tree/public-api.d.ts +0 -15
  880. package/tree/testing/node-harness.d.ts +0 -35
  881. package/tree/testing/package.json +0 -9
  882. package/tree/testing/public-api.d.ts +0 -10
  883. package/tree/testing/tree-harness-filters.d.ts +0 -22
  884. package/tree/testing/tree-harness.d.ts +0 -79
  885. package/tree/toggle.d.ts +0 -16
  886. package/tree/tree-module.d.ts +0 -13
  887. package/tree/tree.d.ts +0 -18
  888. package/tree/tree_public_index.d.ts +0 -4
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import { Directive, Input, Optional, ElementRef, } from '@angular/core';
9
9
  import { MatDialog } from './dialog';
10
- import { _closeDialogVia, MatDialogRef } from './dialog-ref';
10
+ import { MatDialogRef, _closeDialogVia } from './dialog-ref';
11
11
  import * as i0 from "@angular/core";
12
12
  import * as i1 from "./dialog-ref";
13
13
  import * as i2 from "./dialog";
@@ -56,9 +56,9 @@ export class MatDialogClose {
56
56
  _closeDialogVia(this.dialogRef, event.screenX === 0 && event.screenY === 0 ? 'keyboard' : 'mouse', this.dialogResult);
57
57
  }
58
58
  }
59
- MatDialogClose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogClose, deps: [{ token: i1.MatDialogRef, optional: true }, { token: i0.ElementRef }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
60
- MatDialogClose.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.9", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: { ariaLabel: ["aria-label", "ariaLabel"], type: "type", dialogResult: ["mat-dialog-close", "dialogResult"], _matDialogClose: ["matDialogClose", "_matDialogClose"] }, host: { listeners: { "click": "_onButtonClick($event)" }, properties: { "attr.aria-label": "ariaLabel || null", "attr.type": "type" } }, exportAs: ["matDialogClose"], usesOnChanges: true, ngImport: i0 });
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogClose, decorators: [{
59
+ MatDialogClose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogClose, deps: [{ token: i1.MatDialogRef, optional: true }, { token: i0.ElementRef }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
60
+ MatDialogClose.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.15", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: { ariaLabel: ["aria-label", "ariaLabel"], type: "type", dialogResult: ["mat-dialog-close", "dialogResult"], _matDialogClose: ["matDialogClose", "_matDialogClose"] }, host: { listeners: { "click": "_onButtonClick($event)" }, properties: { "attr.aria-label": "ariaLabel || null", "attr.type": "type" } }, exportAs: ["matDialogClose"], usesOnChanges: true, ngImport: i0 });
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogClose, decorators: [{
62
62
  type: Directive,
63
63
  args: [{
64
64
  selector: '[mat-dialog-close], [matDialogClose]',
@@ -111,9 +111,9 @@ export class MatDialogTitle {
111
111
  }
112
112
  }
113
113
  }
114
- MatDialogTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogTitle, deps: [{ token: i1.MatDialogRef, optional: true }, { token: i0.ElementRef }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
115
- MatDialogTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.9", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: { id: "id" }, host: { properties: { "id": "id" }, classAttribute: "mat-dialog-title" }, exportAs: ["matDialogTitle"], ngImport: i0 });
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogTitle, decorators: [{
114
+ MatDialogTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogTitle, deps: [{ token: i1.MatDialogRef, optional: true }, { token: i0.ElementRef }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
115
+ MatDialogTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.15", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: { id: "id" }, host: { properties: { "id": "id" }, classAttribute: "mat-dialog-title" }, exportAs: ["matDialogTitle"], ngImport: i0 });
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogTitle, decorators: [{
117
117
  type: Directive,
118
118
  args: [{
119
119
  selector: '[mat-dialog-title], [matDialogTitle]',
@@ -133,9 +133,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.9",
133
133
  */
134
134
  export class MatDialogContent {
135
135
  }
136
- MatDialogContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
137
- MatDialogContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.9", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]", host: { classAttribute: "mat-dialog-content" }, ngImport: i0 });
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogContent, decorators: [{
136
+ MatDialogContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
137
+ MatDialogContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.15", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]", host: { classAttribute: "mat-dialog-content" }, ngImport: i0 });
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogContent, decorators: [{
139
139
  type: Directive,
140
140
  args: [{
141
141
  selector: `[mat-dialog-content], mat-dialog-content, [matDialogContent]`,
@@ -154,9 +154,9 @@ export class MatDialogActions {
154
154
  this.align = 'start';
155
155
  }
156
156
  }
157
- MatDialogActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogActions, deps: [], target: i0.ɵɵFactoryTarget.Directive });
158
- MatDialogActions.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.9", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: { align: "align" }, host: { properties: { "class.mat-dialog-actions-align-center": "align === \"center\"", "class.mat-dialog-actions-align-end": "align === \"end\"" }, classAttribute: "mat-dialog-actions" }, ngImport: i0 });
159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogActions, decorators: [{
157
+ MatDialogActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogActions, deps: [], target: i0.ɵɵFactoryTarget.Directive });
158
+ MatDialogActions.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.15", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: { align: "align" }, host: { properties: { "class.mat-dialog-actions-align-center": "align === \"center\"", "class.mat-dialog-actions-align-end": "align === \"end\"" }, classAttribute: "mat-dialog-actions" }, ngImport: i0 });
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogActions, decorators: [{
160
160
  type: Directive,
161
161
  args: [{
162
162
  selector: `[mat-dialog-actions], mat-dialog-actions, [matDialogActions]`,
@@ -185,4 +185,4 @@ function getClosestDialog(element, openDialogs) {
185
185
  }
186
186
  return parent ? openDialogs.find(dialog => dialog.id === parent.id) : null;
187
187
  }
188
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbnRlbnQtZGlyZWN0aXZlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9kaWFsb2cvZGlhbG9nLWNvbnRlbnQtZGlyZWN0aXZlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxRQUFRLEVBRVIsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDbkMsT0FBTyxFQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUMsTUFBTSxjQUFjLENBQUM7Ozs7QUFFM0QsK0RBQStEO0FBQy9ELElBQUksZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0FBRXpCOztHQUVHO0FBVUgsTUFBTSxPQUFPLGNBQWM7SUFZekI7SUFDRTs7OztPQUlHO0lBQ0gsa0ZBQWtGO0lBQ2xGLCtDQUErQztJQUM1QixTQUE0QixFQUN2QyxXQUFvQyxFQUNwQyxPQUFrQjtRQUZQLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBQ3ZDLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQUNwQyxZQUFPLEdBQVAsT0FBTyxDQUFXO1FBbEI1QiwrREFBK0Q7UUFDdEQsU0FBSSxHQUFrQyxRQUFRLENBQUM7SUFrQnJELENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsaUZBQWlGO1lBQ2pGLGdGQUFnRjtZQUNoRixnRkFBZ0Y7WUFDaEYsb0ZBQW9GO1lBQ3BGLG1DQUFtQztZQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUUsQ0FBQztTQUNoRjtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsTUFBTSxhQUFhLEdB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LGdCQUFnQjtJQVI3QjtRQVNFOztXQUVHO1FBQ00sVUFBSyxHQUFnQyxPQUFPLENBQUM7S0FDdkQ7O29IQUxZLGdCQUFnQjt3R0FBaEIsZ0JBQWdCO2tHQUFoQixnQkFBZ0I7a0JBUjVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhEQUE4RDtvQkFDeEUsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSxvQkFBb0I7d0JBQzdCLHlDQUF5QyxFQUFFLG9CQUFvQjt3QkFDL0Qsc0NBQXNDLEVBQUUsaUJBQWlCO3FCQUMxRDtpQkFDRjs4QkFLVSxLQUFLO3NCQUFiLEtBQUs7O0FBR1Isa0dBQWtHO0FBQ2xHLGtHQUFrRztBQUNsRyxtR0FBbUc7QUFDbkcsMkJBQTJCO0FBQzNCOzs7O0dBSUc7QUFDSCxTQUFTLGdCQUFnQixDQUFDLE9BQWdDLEVBQUUsV0FBZ0M7SUFDMUYsSUFBSSxNQUFNLEdBQXVCLE9BQU8sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDO0lBRXJFLE9BQU8sTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsRUFBRTtRQUNuRSxNQUFNLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztLQUMvQjtJQUVELE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxNQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUM5RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgRWxlbWVudFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdERpYWxvZ30gZnJvbSAnLi9kaWFsb2cnO1xuaW1wb3J0IHtfY2xvc2VEaWFsb2dWaWEsIE1hdERpYWxvZ1JlZn0gZnJvbSAnLi9kaWFsb2ctcmVmJztcblxuLyoqIENvdW50ZXIgdXNlZCB0byBnZW5lcmF0ZSB1bmlxdWUgSURzIGZvciBkaWFsb2cgZWxlbWVudHMuICovXG5sZXQgZGlhbG9nRWxlbWVudFVpZCA9IDA7XG5cbi8qKlxuICogQnV0dG9uIHRoYXQgd2lsbCBjbG9zZSB0aGUgY3VycmVudCBkaWFsb2cuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttYXQtZGlhbG9nLWNsb3NlXSwgW21hdERpYWxvZ0Nsb3NlXScsXG4gIGV4cG9ydEFzOiAnbWF0RGlhbG9nQ2xvc2UnLFxuICBob3N0OiB7XG4gICAgJyhjbGljayknOiAnX29uQnV0dG9uQ2xpY2soJGV2ZW50KScsXG4gICAgJ1thdHRyLmFyaWEtbGFiZWxdJzogJ2FyaWFMYWJlbCB8fCBudWxsJyxcbiAgICAnW2F0dHIudHlwZV0nOiAndHlwZScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdERpYWxvZ0Nsb3NlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAvKiogU2NyZWVucmVhZGVyIGxhYmVsIGZvciB0aGUgYnV0dG9uLiAqL1xuICBASW5wdXQoJ2FyaWEtbGFiZWwnKSBhcmlhTGFiZWw6IHN0cmluZztcblxuICAvKiogRGVmYXVsdCB0byBcImJ1dHRvblwiIHRvIHByZXZlbnRzIGFjY2lkZW50YWwgZm9ybSBzdWJtaXRzLiAqL1xuICBASW5wdXQoKSB0eXBlOiAnc3VibWl0JyB8ICdidXR0b24nIHwgJ3Jlc2V0JyA9ICdidXR0b24nO1xuXG4gIC8qKiBEaWFsb2cgY2xvc2UgaW5wdXQuICovXG4gIEBJbnB1dCgnbWF0LWRpYWxvZy1jbG9zZScpIGRpYWxvZ1Jlc3VsdDogYW55O1xuXG4gIEBJbnB1dCgnbWF0RGlhbG9nQ2xvc2UnKSBfbWF0RGlhbG9nQ2xvc2U6IGFueTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBSZWZlcmVuY2UgdG8gdGhlIGNvbnRhaW5pbmcgZGlhbG9nLlxuICAgICAqIEBkZXByZWNhdGVkIGBkaWFsb2dSZWZgIHByb3BlcnR5IHRvIGJlY29tZSBwcml2YXRlLlxuICAgICAqIEBicmVha2luZy1jaGFuZ2UgMTMuMC4wXG4gICAgICovXG4gICAgLy8gVGhlIGRpYWxvZyB0aXRsZSBkaXJlY3RpdmUgaXMgYWx3YXlzIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCBhIGBNYXREaWFsb2dSZWZgLlxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbGlnaHR3ZWlnaHQtdG9rZW5zXG4gICAgQE9wdGlvbmFsKCkgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfZGlhbG9nOiBNYXREaWFsb2csXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuZGlhbG9nUmVmKSB7XG4gICAgICAvLyBXaGVuIHRoaXMgZGlyZWN0aXZlIGlzIGluY2x1ZGVkIGluIGEgZGlhbG9nIHZpYSBUZW1wbGF0ZVJlZiAocmF0aGVyIHRoYW4gYmVpbmdcbiAgICAgIC8vIGluIGEgQ29tcG9uZW50KSwgdGhlIERpYWxvZ1JlZiBpc24ndCBhdmFpbGFibGUgdmlhIGluamVjdGlvbiBiZWNhdXNlIGVtYmVkZGVkXG4gICAgICAvLyB2aWV3cyBjYW5ub3QgYmUgZ2l2ZW4gYSBjdXN0b20gaW5qZWN0b3IuIEluc3RlYWQsIHdlIGxvb2sgdXAgdGhlIERpYWxvZ1JlZiBieVxuICAgICAgLy8gSUQuIFRoaXMgbXVzdCBvY2N1ciBpbiBgb25Jbml0YCwgYXMgdGhlIElEIGJpbmRpbmcgZm9yIHRoZSBkaWFsb2cgY29udGFpbmVyIHdvbid0XG4gICAgICAvLyBiZSByZXNvbHZlZCBhdCBjb25zdHJ1Y3RvciB0aW1lLlxuICAgICAgdGhpcy5kaWFsb2dSZWYgPSBnZXRDbG9zZXN0RGlhbG9nKHRoaXMuX2VsZW1lbnRSZWYsIHRoaXMuX2RpYWxvZy5vcGVuRGlhbG9ncykhO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBjb25zdCBwcm94aWVkQ2hhbmdlID0gY2hhbmdlc1snX21hdERpYWxvZ0Nsb3NlJ10gfHwgY2hhbmdlc1snX21hdERpYWxvZ0Nsb3NlUmVzdWx0J107XG5cbiAgICBpZiAocHJveGllZENoYW5nZSkge1xuICAgICAgdGhpcy5kaWFsb2dSZXN1bHQgPSBwcm94aWVkQ2hhbmdlLmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gIH1cblxuICBfb25CdXR0b25DbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgIC8vIERldGVybWluYXRlIHRoZSBmb2N1cyBvcmlnaW4gdXNpbmcgdGhlIGNsaWNrIGV2ZW50LCBiZWNhdXNlIHVzaW5nIHRoZSBGb2N1c01vbml0b3Igd2lsbFxuICAgIC8vIHJlc3VsdCBpbiBpbmNvcnJlY3Qgb3JpZ2lucy4gTW9zdCBvZiB0aGUgdGltZSwgY2xvc2UgYnV0dG9ucyB3aWxsIGJlIGF1dG8gZm9jdXNlZCBpbiB0aGVcbiAgICAvLyBkaWFsb2csIGFuZCB0aGVyZWZvcmUgY2xpY2tpbmcgdGhlIGJ1dHRvbiB3b24ndCByZXN1bHQgaW4gYSBmb2N1cyBjaGFuZ2UuIFRoaXMgbWVhbnMgdGhhdFxuICAgIC8vIHRoZSBGb2N1c01vbml0b3Igd29uJ3QgZGV0ZWN0IGFueSBvcmlnaW4gY2hhbmdlLCBhbmQgd2lsbCBhbHdheXMgb3V0cHV0IGBwcm9ncmFtYC5cbiAgICBfY2xvc2VEaWFsb2dWaWEoXG4gICAgICB0aGlzLmRpYWxvZ1JlZixcbiAgICAgIGV2ZW50LnNjcmVlblggPT09IDAgJiYgZXZlbnQuc2NyZWVuWSA9PT0gMCA/ICdrZXlib2FyZCcgOiAnbW91c2UnLFxuICAgICAgdGhpcy5kaWFsb2dSZXN1bHQsXG4gICAgKTtcbiAgfVxufVxuXG4vKipcbiAqIFRpdGxlIG9mIGEgZGlhbG9nIGVsZW1lbnQuIFN0YXlzIGZpeGVkIHRvIHRoZSB0b3Agb2YgdGhlIGRpYWxvZyB3aGVuIHNjcm9sbGluZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21hdC1kaWFsb2ctdGl0bGVdLCBbbWF0RGlhbG9nVGl0bGVdJyxcbiAgZXhwb3J0QXM6ICdtYXREaWFsb2dUaXRsZScsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnbWF0LWRpYWxvZy10aXRsZScsXG4gICAgJ1tpZF0nOiAnaWQnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBNYXREaWFsb2dUaXRsZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKiBVbmlxdWUgaWQgZm9yIHRoZSBkaWFsb2cgdGl0bGUuIElmIG5vbmUgaXMgc3VwcGxpZWQsIGl0IHdpbGwgYmUgYXV0by1nZW5lcmF0ZWQuICovXG4gIEBJbnB1dCgpIGlkOiBzdHJpbmcgPSBgbWF0LWRpYWxvZy10aXRsZS0ke2RpYWxvZ0VsZW1lbnRVaWQrK31gO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIC8vIFRoZSBkaWFsb2cgdGl0bGUgZGlyZWN0aXZlIGlzIGFsd2F5cyB1c2VkIGluIGNvbWJpbmF0aW9uIHdpdGggYSBgTWF0RGlhbG9nUmVmYC5cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IGxpZ2h0d2VpZ2h0LXRva2Vuc1xuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfZGlhbG9nOiBNYXREaWFsb2csXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuX2RpYWxvZ1JlZikge1xuICAgICAgdGhpcy5fZGlhbG9nUmVmID0gZ2V0Q2xvc2VzdERpYWxvZyh0aGlzLl9lbGVtZW50UmVmLCB0aGlzLl9kaWFsb2cub3BlbkRpYWxvZ3MpITtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZGlhbG9nUmVmKSB7XG4gICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5fZGlhbG9nUmVmLl9jb250YWluZXJJbnN0YW5jZTtcblxuICAgICAgICBpZiAoY29udGFpbmVyICYmICFjb250YWluZXIuX2FyaWFMYWJlbGxlZEJ5KSB7XG4gICAgICAgICAgY29udGFpbmVyLl9hcmlhTGFiZWxsZWRCeSA9IHRoaXMuaWQ7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFNjcm9sbGFibGUgY29udGVudCBjb250YWluZXIgb2YgYSBkaWFsb2cuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFttYXQtZGlhbG9nLWNvbnRlbnRdLCBtYXQtZGlhbG9nLWNvbnRlbnQsIFttYXREaWFsb2dDb250ZW50XWAsXG4gIGhvc3Q6IHsnY2xhc3MnOiAnbWF0LWRpYWxvZy1jb250ZW50J30sXG59KVxuZXhwb3J0IGNsYXNzIE1hdERpYWxvZ0NvbnRlbnQge31cblxuLyoqXG4gKiBDb250YWluZXIgZm9yIHRoZSBib3R0b20gYWN0aW9uIGJ1dHRvbnMgaW4gYSBkaWFsb2cuXG4gKiBTdGF5cyBmaXhlZCB0byB0aGUgYm90dG9tIHdoZW4gc2Nyb2xsaW5nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IGBbbWF0LWRpYWxvZy1hY3Rpb25zXSwgbWF0LWRpYWxvZy1hY3Rpb25zLCBbbWF0RGlhbG9nQWN0aW9uc11gLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ21hdC1kaWFsb2ctYWN0aW9ucycsXG4gICAgJ1tjbGFzcy5tYXQtZGlhbG9nLWFjdGlvbnMtYWxpZ24tY2VudGVyXSc6ICdhbGlnbiA9PT0gXCJjZW50ZXJcIicsXG4gICAgJ1tjbGFzcy5tYXQtZGlhbG9nLWFjdGlvbnMtYWxpZ24tZW5kXSc6ICdhbGlnbiA9PT0gXCJlbmRcIicsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdERpYWxvZ0FjdGlvbnMge1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBhbGlnbm1lbnQgb2YgYWN0aW9uIGJ1dHRvbnMuXG4gICAqL1xuICBASW5wdXQoKSBhbGlnbj86ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnID0gJ3N0YXJ0Jztcbn1cblxuLy8gVE9ETyhjcmlzYmV0byk6IHRoaXMgdXRpbGl0eSBzaG91bGRuJ3QgYmUgbmVjZXNzYXJ5IGFueW1vcmUsIGJlY2F1c2UgdGhlIGRpYWxvZyByZWYgaXMgcHJvdmlkZWRcbi8vIGJvdGggdG8gY29tcG9uZW50IGFuZCB0ZW1wbGF0ZSBkaWFsb2dzIHRocm91Z2ggREkuIFdlIG5lZWQgdG8ga2VlcCBpdCBhcm91bmQsIGJlY2F1c2UgdGhlcmUgYXJlXG4vLyBzb21lIGludGVybmFsIHdyYXBwZXJzIGFyb3VuZCBgTWF0RGlhbG9nYCB0aGF0IGhhcHBlbmVkIHRvIHdvcmsgYnkgYWNjaWRlbnQsIGJlY2F1c2Ugd2UgaGFkIHRoaXNcbi8vIGZhbGxiYWNrIGxvZ2ljIGluIHBsYWNlLlxuLyoqXG4gKiBGaW5kcyB0aGUgY2xvc2VzdCBNYXREaWFsb2dSZWYgdG8gYW4gZWxlbWVudCBieSBsb29raW5nIGF0IHRoZSBET00uXG4gKiBAcGFyYW0gZWxlbWVudCBFbGVtZW50IHJlbGF0aXZlIHRvIHdoaWNoIHRvIGxvb2sgZm9yIGEgZGlhbG9nLlxuICogQHBhcmFtIG9wZW5EaWFsb2dzIFJlZmVyZW5jZXMgdG8gdGhlIGN1cnJlbnRseS1vcGVuIGRpYWxvZ3MuXG4gKi9cbmZ1bmN0aW9uIGdldENsb3Nlc3REaWFsb2coZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sIG9wZW5EaWFsb2dzOiBNYXREaWFsb2dSZWY8YW55PltdKSB7XG4gIGxldCBwYXJlbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IGVsZW1lbnQubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuXG4gIHdoaWxlIChwYXJlbnQgJiYgIXBhcmVudC5jbGFzc0xpc3QuY29udGFpbnMoJ21hdC1kaWFsb2ctY29udGFpbmVyJykpIHtcbiAgICBwYXJlbnQgPSBwYXJlbnQucGFyZW50RWxlbWVudDtcbiAgfVxuXG4gIHJldHVybiBwYXJlbnQgPyBvcGVuRGlhbG9ncy5maW5kKGRpYWxvZyA9PiBkaWFsb2cuaWQgPT09IHBhcmVudCEuaWQpIDogbnVsbDtcbn1cbiJdfQ==
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbnRlbnQtZGlyZWN0aXZlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9kaWFsb2cvZGlhbG9nLWNvbnRlbnQtZGlyZWN0aXZlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxRQUFRLEVBRVIsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDbkMsT0FBTyxFQUFDLFlBQVksRUFBRSxlQUFlLEVBQUMsTUFBTSxjQUFjLENBQUM7Ozs7QUFFM0QsK0RBQStEO0FBQy9ELElBQUksZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0FBRXpCOztHQUVHO0FBVUgsTUFBTSxPQUFPLGNBQWM7SUFZekI7SUFDRTs7OztPQUlHO0lBQ0gsa0ZBQWtGO0lBQ2xGLCtDQUErQztJQUM1QixTQUE0QixFQUN2QyxXQUFvQyxFQUNwQyxPQUFrQjtRQUZQLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBQ3ZDLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQUNwQyxZQUFPLEdBQVAsT0FBTyxDQUFXO1FBbEI1QiwrREFBK0Q7UUFDdEQsU0FBSSxHQUFrQyxRQUFRLENBQUM7SUFrQnJELENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsaUZBQWlGO1lBQ2pGLGdGQUFnRjtZQUNoRixnRkFBZ0Y7WUFDaEYsb0ZBQW9GO1lBQ3BGLG1DQUFtQztZQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUUsQ0FBQztTQUNoRjtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsTUFBTSxhQUFhLEdB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LGdCQUFnQjtJQVI3QjtRQVNFOztXQUVHO1FBQ00sVUFBSyxHQUFnQyxPQUFPLENBQUM7S0FDdkQ7O3FIQUxZLGdCQUFnQjt5R0FBaEIsZ0JBQWdCO21HQUFoQixnQkFBZ0I7a0JBUjVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhEQUE4RDtvQkFDeEUsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSxvQkFBb0I7d0JBQzdCLHlDQUF5QyxFQUFFLG9CQUFvQjt3QkFDL0Qsc0NBQXNDLEVBQUUsaUJBQWlCO3FCQUMxRDtpQkFDRjs4QkFLVSxLQUFLO3NCQUFiLEtBQUs7O0FBR1Isa0dBQWtHO0FBQ2xHLGtHQUFrRztBQUNsRyxtR0FBbUc7QUFDbkcsMkJBQTJCO0FBQzNCOzs7O0dBSUc7QUFDSCxTQUFTLGdCQUFnQixDQUFDLE9BQWdDLEVBQUUsV0FBZ0M7SUFDMUYsSUFBSSxNQUFNLEdBQXVCLE9BQU8sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDO0lBRXJFLE9BQU8sTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsRUFBRTtRQUNuRSxNQUFNLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztLQUMvQjtJQUVELE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxNQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUM5RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgRWxlbWVudFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdERpYWxvZ30gZnJvbSAnLi9kaWFsb2cnO1xuaW1wb3J0IHtNYXREaWFsb2dSZWYsIF9jbG9zZURpYWxvZ1ZpYX0gZnJvbSAnLi9kaWFsb2ctcmVmJztcblxuLyoqIENvdW50ZXIgdXNlZCB0byBnZW5lcmF0ZSB1bmlxdWUgSURzIGZvciBkaWFsb2cgZWxlbWVudHMuICovXG5sZXQgZGlhbG9nRWxlbWVudFVpZCA9IDA7XG5cbi8qKlxuICogQnV0dG9uIHRoYXQgd2lsbCBjbG9zZSB0aGUgY3VycmVudCBkaWFsb2cuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttYXQtZGlhbG9nLWNsb3NlXSwgW21hdERpYWxvZ0Nsb3NlXScsXG4gIGV4cG9ydEFzOiAnbWF0RGlhbG9nQ2xvc2UnLFxuICBob3N0OiB7XG4gICAgJyhjbGljayknOiAnX29uQnV0dG9uQ2xpY2soJGV2ZW50KScsXG4gICAgJ1thdHRyLmFyaWEtbGFiZWxdJzogJ2FyaWFMYWJlbCB8fCBudWxsJyxcbiAgICAnW2F0dHIudHlwZV0nOiAndHlwZScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdERpYWxvZ0Nsb3NlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAvKiogU2NyZWVucmVhZGVyIGxhYmVsIGZvciB0aGUgYnV0dG9uLiAqL1xuICBASW5wdXQoJ2FyaWEtbGFiZWwnKSBhcmlhTGFiZWw6IHN0cmluZztcblxuICAvKiogRGVmYXVsdCB0byBcImJ1dHRvblwiIHRvIHByZXZlbnRzIGFjY2lkZW50YWwgZm9ybSBzdWJtaXRzLiAqL1xuICBASW5wdXQoKSB0eXBlOiAnc3VibWl0JyB8ICdidXR0b24nIHwgJ3Jlc2V0JyA9ICdidXR0b24nO1xuXG4gIC8qKiBEaWFsb2cgY2xvc2UgaW5wdXQuICovXG4gIEBJbnB1dCgnbWF0LWRpYWxvZy1jbG9zZScpIGRpYWxvZ1Jlc3VsdDogYW55O1xuXG4gIEBJbnB1dCgnbWF0RGlhbG9nQ2xvc2UnKSBfbWF0RGlhbG9nQ2xvc2U6IGFueTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBSZWZlcmVuY2UgdG8gdGhlIGNvbnRhaW5pbmcgZGlhbG9nLlxuICAgICAqIEBkZXByZWNhdGVkIGBkaWFsb2dSZWZgIHByb3BlcnR5IHRvIGJlY29tZSBwcml2YXRlLlxuICAgICAqIEBicmVha2luZy1jaGFuZ2UgMTMuMC4wXG4gICAgICovXG4gICAgLy8gVGhlIGRpYWxvZyB0aXRsZSBkaXJlY3RpdmUgaXMgYWx3YXlzIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCBhIGBNYXREaWFsb2dSZWZgLlxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbGlnaHR3ZWlnaHQtdG9rZW5zXG4gICAgQE9wdGlvbmFsKCkgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfZGlhbG9nOiBNYXREaWFsb2csXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuZGlhbG9nUmVmKSB7XG4gICAgICAvLyBXaGVuIHRoaXMgZGlyZWN0aXZlIGlzIGluY2x1ZGVkIGluIGEgZGlhbG9nIHZpYSBUZW1wbGF0ZVJlZiAocmF0aGVyIHRoYW4gYmVpbmdcbiAgICAgIC8vIGluIGEgQ29tcG9uZW50KSwgdGhlIERpYWxvZ1JlZiBpc24ndCBhdmFpbGFibGUgdmlhIGluamVjdGlvbiBiZWNhdXNlIGVtYmVkZGVkXG4gICAgICAvLyB2aWV3cyBjYW5ub3QgYmUgZ2l2ZW4gYSBjdXN0b20gaW5qZWN0b3IuIEluc3RlYWQsIHdlIGxvb2sgdXAgdGhlIERpYWxvZ1JlZiBieVxuICAgICAgLy8gSUQuIFRoaXMgbXVzdCBvY2N1ciBpbiBgb25Jbml0YCwgYXMgdGhlIElEIGJpbmRpbmcgZm9yIHRoZSBkaWFsb2cgY29udGFpbmVyIHdvbid0XG4gICAgICAvLyBiZSByZXNvbHZlZCBhdCBjb25zdHJ1Y3RvciB0aW1lLlxuICAgICAgdGhpcy5kaWFsb2dSZWYgPSBnZXRDbG9zZXN0RGlhbG9nKHRoaXMuX2VsZW1lbnRSZWYsIHRoaXMuX2RpYWxvZy5vcGVuRGlhbG9ncykhO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBjb25zdCBwcm94aWVkQ2hhbmdlID0gY2hhbmdlc1snX21hdERpYWxvZ0Nsb3NlJ10gfHwgY2hhbmdlc1snX21hdERpYWxvZ0Nsb3NlUmVzdWx0J107XG5cbiAgICBpZiAocHJveGllZENoYW5nZSkge1xuICAgICAgdGhpcy5kaWFsb2dSZXN1bHQgPSBwcm94aWVkQ2hhbmdlLmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gIH1cblxuICBfb25CdXR0b25DbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgIC8vIERldGVybWluYXRlIHRoZSBmb2N1cyBvcmlnaW4gdXNpbmcgdGhlIGNsaWNrIGV2ZW50LCBiZWNhdXNlIHVzaW5nIHRoZSBGb2N1c01vbml0b3Igd2lsbFxuICAgIC8vIHJlc3VsdCBpbiBpbmNvcnJlY3Qgb3JpZ2lucy4gTW9zdCBvZiB0aGUgdGltZSwgY2xvc2UgYnV0dG9ucyB3aWxsIGJlIGF1dG8gZm9jdXNlZCBpbiB0aGVcbiAgICAvLyBkaWFsb2csIGFuZCB0aGVyZWZvcmUgY2xpY2tpbmcgdGhlIGJ1dHRvbiB3b24ndCByZXN1bHQgaW4gYSBmb2N1cyBjaGFuZ2UuIFRoaXMgbWVhbnMgdGhhdFxuICAgIC8vIHRoZSBGb2N1c01vbml0b3Igd29uJ3QgZGV0ZWN0IGFueSBvcmlnaW4gY2hhbmdlLCBhbmQgd2lsbCBhbHdheXMgb3V0cHV0IGBwcm9ncmFtYC5cbiAgICBfY2xvc2VEaWFsb2dWaWEoXG4gICAgICB0aGlzLmRpYWxvZ1JlZixcbiAgICAgIGV2ZW50LnNjcmVlblggPT09IDAgJiYgZXZlbnQuc2NyZWVuWSA9PT0gMCA/ICdrZXlib2FyZCcgOiAnbW91c2UnLFxuICAgICAgdGhpcy5kaWFsb2dSZXN1bHQsXG4gICAgKTtcbiAgfVxufVxuXG4vKipcbiAqIFRpdGxlIG9mIGEgZGlhbG9nIGVsZW1lbnQuIFN0YXlzIGZpeGVkIHRvIHRoZSB0b3Agb2YgdGhlIGRpYWxvZyB3aGVuIHNjcm9sbGluZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21hdC1kaWFsb2ctdGl0bGVdLCBbbWF0RGlhbG9nVGl0bGVdJyxcbiAgZXhwb3J0QXM6ICdtYXREaWFsb2dUaXRsZScsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnbWF0LWRpYWxvZy10aXRsZScsXG4gICAgJ1tpZF0nOiAnaWQnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBNYXREaWFsb2dUaXRsZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKiBVbmlxdWUgaWQgZm9yIHRoZSBkaWFsb2cgdGl0bGUuIElmIG5vbmUgaXMgc3VwcGxpZWQsIGl0IHdpbGwgYmUgYXV0by1nZW5lcmF0ZWQuICovXG4gIEBJbnB1dCgpIGlkOiBzdHJpbmcgPSBgbWF0LWRpYWxvZy10aXRsZS0ke2RpYWxvZ0VsZW1lbnRVaWQrK31gO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIC8vIFRoZSBkaWFsb2cgdGl0bGUgZGlyZWN0aXZlIGlzIGFsd2F5cyB1c2VkIGluIGNvbWJpbmF0aW9uIHdpdGggYSBgTWF0RGlhbG9nUmVmYC5cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IGxpZ2h0d2VpZ2h0LXRva2Vuc1xuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfZGlhbG9nOiBNYXREaWFsb2csXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuX2RpYWxvZ1JlZikge1xuICAgICAgdGhpcy5fZGlhbG9nUmVmID0gZ2V0Q2xvc2VzdERpYWxvZyh0aGlzLl9lbGVtZW50UmVmLCB0aGlzLl9kaWFsb2cub3BlbkRpYWxvZ3MpITtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZGlhbG9nUmVmKSB7XG4gICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5fZGlhbG9nUmVmLl9jb250YWluZXJJbnN0YW5jZTtcblxuICAgICAgICBpZiAoY29udGFpbmVyICYmICFjb250YWluZXIuX2FyaWFMYWJlbGxlZEJ5KSB7XG4gICAgICAgICAgY29udGFpbmVyLl9hcmlhTGFiZWxsZWRCeSA9IHRoaXMuaWQ7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFNjcm9sbGFibGUgY29udGVudCBjb250YWluZXIgb2YgYSBkaWFsb2cuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFttYXQtZGlhbG9nLWNvbnRlbnRdLCBtYXQtZGlhbG9nLWNvbnRlbnQsIFttYXREaWFsb2dDb250ZW50XWAsXG4gIGhvc3Q6IHsnY2xhc3MnOiAnbWF0LWRpYWxvZy1jb250ZW50J30sXG59KVxuZXhwb3J0IGNsYXNzIE1hdERpYWxvZ0NvbnRlbnQge31cblxuLyoqXG4gKiBDb250YWluZXIgZm9yIHRoZSBib3R0b20gYWN0aW9uIGJ1dHRvbnMgaW4gYSBkaWFsb2cuXG4gKiBTdGF5cyBmaXhlZCB0byB0aGUgYm90dG9tIHdoZW4gc2Nyb2xsaW5nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IGBbbWF0LWRpYWxvZy1hY3Rpb25zXSwgbWF0LWRpYWxvZy1hY3Rpb25zLCBbbWF0RGlhbG9nQWN0aW9uc11gLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ21hdC1kaWFsb2ctYWN0aW9ucycsXG4gICAgJ1tjbGFzcy5tYXQtZGlhbG9nLWFjdGlvbnMtYWxpZ24tY2VudGVyXSc6ICdhbGlnbiA9PT0gXCJjZW50ZXJcIicsXG4gICAgJ1tjbGFzcy5tYXQtZGlhbG9nLWFjdGlvbnMtYWxpZ24tZW5kXSc6ICdhbGlnbiA9PT0gXCJlbmRcIicsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdERpYWxvZ0FjdGlvbnMge1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBhbGlnbm1lbnQgb2YgYWN0aW9uIGJ1dHRvbnMuXG4gICAqL1xuICBASW5wdXQoKSBhbGlnbj86ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnID0gJ3N0YXJ0Jztcbn1cblxuLy8gVE9ETyhjcmlzYmV0byk6IHRoaXMgdXRpbGl0eSBzaG91bGRuJ3QgYmUgbmVjZXNzYXJ5IGFueW1vcmUsIGJlY2F1c2UgdGhlIGRpYWxvZyByZWYgaXMgcHJvdmlkZWRcbi8vIGJvdGggdG8gY29tcG9uZW50IGFuZCB0ZW1wbGF0ZSBkaWFsb2dzIHRocm91Z2ggREkuIFdlIG5lZWQgdG8ga2VlcCBpdCBhcm91bmQsIGJlY2F1c2UgdGhlcmUgYXJlXG4vLyBzb21lIGludGVybmFsIHdyYXBwZXJzIGFyb3VuZCBgTWF0RGlhbG9nYCB0aGF0IGhhcHBlbmVkIHRvIHdvcmsgYnkgYWNjaWRlbnQsIGJlY2F1c2Ugd2UgaGFkIHRoaXNcbi8vIGZhbGxiYWNrIGxvZ2ljIGluIHBsYWNlLlxuLyoqXG4gKiBGaW5kcyB0aGUgY2xvc2VzdCBNYXREaWFsb2dSZWYgdG8gYW4gZWxlbWVudCBieSBsb29raW5nIGF0IHRoZSBET00uXG4gKiBAcGFyYW0gZWxlbWVudCBFbGVtZW50IHJlbGF0aXZlIHRvIHdoaWNoIHRvIGxvb2sgZm9yIGEgZGlhbG9nLlxuICogQHBhcmFtIG9wZW5EaWFsb2dzIFJlZmVyZW5jZXMgdG8gdGhlIGN1cnJlbnRseS1vcGVuIGRpYWxvZ3MuXG4gKi9cbmZ1bmN0aW9uIGdldENsb3Nlc3REaWFsb2coZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sIG9wZW5EaWFsb2dzOiBNYXREaWFsb2dSZWY8YW55PltdKSB7XG4gIGxldCBwYXJlbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IGVsZW1lbnQubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuXG4gIHdoaWxlIChwYXJlbnQgJiYgIXBhcmVudC5jbGFzc0xpc3QuY29udGFpbnMoJ21hdC1kaWFsb2ctY29udGFpbmVyJykpIHtcbiAgICBwYXJlbnQgPSBwYXJlbnQucGFyZW50RWxlbWVudDtcbiAgfVxuXG4gIHJldHVybiBwYXJlbnQgPyBvcGVuRGlhbG9ncy5maW5kKGRpYWxvZyA9PiBkaWFsb2cuaWQgPT09IHBhcmVudCEuaWQpIDogbnVsbDtcbn1cbiJdfQ==
@@ -5,6 +5,7 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
+ import { DialogModule } from '@angular/cdk/dialog';
8
9
  import { OverlayModule } from '@angular/cdk/overlay';
9
10
  import { PortalModule } from '@angular/cdk/portal';
10
11
  import { NgModule } from '@angular/core';
@@ -15,22 +16,22 @@ import { MatDialogActions, MatDialogClose, MatDialogContent, MatDialogTitle, } f
15
16
  import * as i0 from "@angular/core";
16
17
  export class MatDialogModule {
17
18
  }
18
- MatDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
19
- MatDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogModule, declarations: [MatDialogContainer,
19
+ MatDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
20
+ MatDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogModule, declarations: [MatDialogContainer,
20
21
  MatDialogClose,
21
22
  MatDialogTitle,
22
23
  MatDialogActions,
23
- MatDialogContent], imports: [OverlayModule, PortalModule, MatCommonModule], exports: [MatDialogContainer,
24
+ MatDialogContent], imports: [DialogModule, OverlayModule, PortalModule, MatCommonModule], exports: [MatDialogContainer,
24
25
  MatDialogClose,
25
26
  MatDialogTitle,
26
27
  MatDialogContent,
27
28
  MatDialogActions,
28
29
  MatCommonModule] });
29
- MatDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogModule, providers: [MatDialog, MAT_DIALOG_SCROLL_STRATEGY_PROVIDER], imports: [[OverlayModule, PortalModule, MatCommonModule], MatCommonModule] });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.9", ngImport: i0, type: MatDialogModule, decorators: [{
30
+ MatDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogModule, providers: [MatDialog, MAT_DIALOG_SCROLL_STRATEGY_PROVIDER], imports: [DialogModule, OverlayModule, PortalModule, MatCommonModule, MatCommonModule] });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.15", ngImport: i0, type: MatDialogModule, decorators: [{
31
32
  type: NgModule,
32
33
  args: [{
33
- imports: [OverlayModule, PortalModule, MatCommonModule],
34
+ imports: [DialogModule, OverlayModule, PortalModule, MatCommonModule],
34
35
  exports: [
35
36
  MatDialogContainer,
36
37
  MatDialogClose,
@@ -49,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.9",
49
50
  providers: [MatDialog, MAT_DIALOG_SCROLL_STRATEGY_PROVIDER],
50
51
  }]
51
52
  }] });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9kaWFsb2cvZGlhbG9nLW1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxtQ0FBbUMsRUFBRSxTQUFTLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLGNBQWMsR0FDZixNQUFNLDZCQUE2QixDQUFDOztBQXFCckMsTUFBTSxPQUFPLGVBQWU7O21IQUFmLGVBQWU7b0hBQWYsZUFBZSxpQkFSeEIsa0JBQWtCO1FBQ2xCLGNBQWM7UUFDZCxjQUFjO1FBQ2QsZ0JBQWdCO1FBQ2hCLGdCQUFnQixhQWRSLGFBQWEsRUFBRSxZQUFZLEVBQUUsZUFBZSxhQUVwRCxrQkFBa0I7UUFDbEIsY0FBYztRQUNkLGNBQWM7UUFDZCxnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLGVBQWU7b0hBV04sZUFBZSxhQUZmLENBQUMsU0FBUyxFQUFFLG1DQUFtQyxDQUFDLFlBaEJsRCxDQUFDLGFBQWEsRUFBRSxZQUFZLEVBQUUsZUFBZSxDQUFDLEVBT3JELGVBQWU7a0dBV04sZUFBZTtrQkFuQjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSxlQUFlLENBQUM7b0JBQ3ZELE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsZUFBZTtxQkFDaEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3FCQUNqQjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxTQUFTLEVBQUUsbUNBQW1DLENBQUM7aUJBQzVEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7T3ZlcmxheU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtQb3J0YWxNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdENvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge01BVF9ESUFMT0dfU0NST0xMX1NUUkFURUdZX1BST1ZJREVSLCBNYXREaWFsb2d9IGZyb20gJy4vZGlhbG9nJztcbmltcG9ydCB7TWF0RGlhbG9nQ29udGFpbmVyfSBmcm9tICcuL2RpYWxvZy1jb250YWluZXInO1xuaW1wb3J0IHtcbiAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgTWF0RGlhbG9nQ2xvc2UsXG4gIE1hdERpYWxvZ0NvbnRlbnQsXG4gIE1hdERpYWxvZ1RpdGxlLFxufSBmcm9tICcuL2RpYWxvZy1jb250ZW50LWRpcmVjdGl2ZXMnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbT3ZlcmxheU1vZHVsZSwgUG9ydGFsTW9kdWxlLCBNYXRDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbXG4gICAgTWF0RGlhbG9nQ29udGFpbmVyLFxuICAgIE1hdERpYWxvZ0Nsb3NlLFxuICAgIE1hdERpYWxvZ1RpdGxlLFxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgICBNYXRDb21tb25Nb2R1bGUsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE1hdERpYWxvZ0NvbnRhaW5lcixcbiAgICBNYXREaWFsb2dDbG9zZSxcbiAgICBNYXREaWFsb2dUaXRsZSxcbiAgICBNYXREaWFsb2dBY3Rpb25zLFxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW01hdERpYWxvZywgTUFUX0RJQUxPR19TQ1JPTExfU1RSQVRFR1lfUFJPVklERVJdLFxufSlcbmV4cG9ydCBjbGFzcyBNYXREaWFsb2dNb2R1bGUge31cbiJdfQ==
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9kaWFsb2cvZGlhbG9nLW1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsbUNBQW1DLEVBQUUsU0FBUyxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixjQUFjLEdBQ2YsTUFBTSw2QkFBNkIsQ0FBQzs7QUFxQnJDLE1BQU0sT0FBTyxlQUFlOztvSEFBZixlQUFlO3FIQUFmLGVBQWUsaUJBUnhCLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsY0FBYztRQUNkLGdCQUFnQjtRQUNoQixnQkFBZ0IsYUFkUixZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxlQUFlLGFBRWxFLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsY0FBYztRQUNkLGdCQUFnQjtRQUNoQixnQkFBZ0I7UUFDaEIsZUFBZTtxSEFXTixlQUFlLGFBRmYsQ0FBQyxTQUFTLEVBQUUsbUNBQW1DLENBQUMsWUFoQmpELFlBQVksRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFPbEUsZUFBZTttR0FXTixlQUFlO2tCQW5CM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxlQUFlLENBQUM7b0JBQ3JFLE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsZUFBZTtxQkFDaEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3FCQUNqQjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxTQUFTLEVBQUUsbUNBQW1DLENBQUM7aUJBQzVEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7RGlhbG9nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7T3ZlcmxheU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtQb3J0YWxNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdENvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge01BVF9ESUFMT0dfU0NST0xMX1NUUkFURUdZX1BST1ZJREVSLCBNYXREaWFsb2d9IGZyb20gJy4vZGlhbG9nJztcbmltcG9ydCB7TWF0RGlhbG9nQ29udGFpbmVyfSBmcm9tICcuL2RpYWxvZy1jb250YWluZXInO1xuaW1wb3J0IHtcbiAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgTWF0RGlhbG9nQ2xvc2UsXG4gIE1hdERpYWxvZ0NvbnRlbnQsXG4gIE1hdERpYWxvZ1RpdGxlLFxufSBmcm9tICcuL2RpYWxvZy1jb250ZW50LWRpcmVjdGl2ZXMnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbRGlhbG9nTW9kdWxlLCBPdmVybGF5TW9kdWxlLCBQb3J0YWxNb2R1bGUsIE1hdENvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBNYXREaWFsb2dDb250YWluZXIsXG4gICAgTWF0RGlhbG9nQ2xvc2UsXG4gICAgTWF0RGlhbG9nVGl0bGUsXG4gICAgTWF0RGlhbG9nQ29udGVudCxcbiAgICBNYXREaWFsb2dBY3Rpb25zLFxuICAgIE1hdENvbW1vbk1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWF0RGlhbG9nQ29udGFpbmVyLFxuICAgIE1hdERpYWxvZ0Nsb3NlLFxuICAgIE1hdERpYWxvZ1RpdGxlLFxuICAgIE1hdERpYWxvZ0FjdGlvbnMsXG4gICAgTWF0RGlhbG9nQ29udGVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbTWF0RGlhbG9nLCBNQVRfRElBTE9HX1NDUk9MTF9TVFJBVEVHWV9QUk9WSURFUl0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdERpYWxvZ01vZHVsZSB7fVxuIl19
@@ -6,33 +6,23 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  import { ESCAPE, hasModifierKey } from '@angular/cdk/keycodes';
9
- import { Subject } from 'rxjs';
9
+ import { merge, Subject } from 'rxjs';
10
10
  import { filter, take } from 'rxjs/operators';
11
- // TODO(jelbourn): resizing
12
- // Counter for unique dialog ids.
13
- let uniqueId = 0;
14
11
  /**
15
12
  * Reference to a dialog opened via the MatDialog service.
16
13
  */
17
14
  export class MatDialogRef {
18
- constructor(_overlayRef, _containerInstance,
19
- /** Id of the dialog. */
20
- id = `mat-dialog-${uniqueId++}`) {
21
- this._overlayRef = _overlayRef;
15
+ constructor(_ref, config, _containerInstance) {
16
+ this._ref = _ref;
22
17
  this._containerInstance = _containerInstance;
23
- this.id = id;
24
- /** Whether the user is allowed to close the dialog. */
25
- this.disableClose = this._containerInstance._config.disableClose;
26
18
  /** Subject for notifying the user that the dialog has finished opening. */
27
19
  this._afterOpened = new Subject();
28
- /** Subject for notifying the user that the dialog has finished closing. */
29
- this._afterClosed = new Subject();
30
20
  /** Subject for notifying the user that the dialog has started closing. */
31
21
  this._beforeClosed = new Subject();
32
22
  /** Current state of the dialog. */
33
23
  this._state = 0 /* OPEN */;
34
- // Pass the id along to the container.
35
- _containerInstance._id = id;
24
+ this.disableClose = config.disableClose;
25
+ this.id = _ref.id;
36
26
  // Emit when opening animation completes
37
27
  _containerInstance._animationStateChanged
38
28
  .pipe(filter(event => event.state === 'opened'), take(1))
@@ -47,29 +37,15 @@ export class MatDialogRef {
47
37
  clearTimeout(this._closeFallbackTimeout);
48
38
  this._finishDialogClose();
49
39
  });
50
- _overlayRef.detachments().subscribe(() => {
40
+ _ref.overlayRef.detachments().subscribe(() => {
51
41
  this._beforeClosed.next(this._result);
52
42
  this._beforeClosed.complete();
53
- this._afterClosed.next(this._result);
54
- this._afterClosed.complete();
55
- this.componentInstance = null;
56
- this._overlayRef.dispose();
57
- });
58
- _overlayRef
59
- .keydownEvents()
60
- .pipe(filter(event => {
61
- return event.keyCode === ESCAPE && !this.disableClose && !hasModifierKey(event);
62
- }))
63
- .subscribe(event => {
64
- event.preventDefault();
65
- _closeDialogVia(this, 'keyboard');
43
+ this._finishDialogClose();
66
44
  });
67
- _overlayRef.backdropClick().subscribe(() => {
68
- if (this.disableClose) {
69
- this._containerInstance._recaptureFocus();
70
- }
71
- else {
72
- _closeDialogVia(this, 'mouse');
45
+ merge(this.backdropClick(), this.keydownEvents().pipe(filter(event => event.keyCode === ESCAPE && !this.disableClose && !hasModifierKey(event)))).subscribe(event => {
46
+ if (!this.disableClose) {
47
+ event.preventDefault();
48
+ _closeDialogVia(this, event.type === 'keydown' ? 'keyboard' : 'mouse');
73
49
  }
74
50
  });
75
51
  }
@@ -85,7 +61,7 @@ export class MatDialogRef {
85
61
  .subscribe(event => {
86
62
  this._beforeClosed.next(dialogResult);
87
63
  this._beforeClosed.complete();
88
- this._overlayRef.detachBackdrop();
64
+ this._ref.overlayRef.detachBackdrop();
89
65
  // The logic that disposes of the overlay depends on the exit animation completing, however
90
66
  // it isn't guaranteed if the parent view is destroyed while it's running. Add a fallback
91
67
  // timeout which will clean everything up if the animation hasn't fired within the specified
@@ -106,7 +82,7 @@ export class MatDialogRef {
106
82
  * Gets an observable that is notified when the dialog is finished closing.
107
83
  */
108
84
  afterClosed() {
109
- return this._afterClosed;
85
+ return this._ref.closed;
110
86
  }
111
87
  /**
112
88
  * Gets an observable that is notified when the dialog has started closing.
@@ -118,20 +94,20 @@ export class MatDialogRef {
118
94
  * Gets an observable that emits when the overlay's backdrop has been clicked.
119
95
  */
120
96
  backdropClick() {
121
- return this._overlayRef.backdropClick();
97
+ return this._ref.backdropClick;
122
98
  }
123
99
  /**
124
100
  * Gets an observable that emits when keydown events are targeted on the overlay.
125
101
  */
126
102
  keydownEvents() {
127
- return this._overlayRef.keydownEvents();
103
+ return this._ref.keydownEvents;
128
104
  }
129
105
  /**
130
106
  * Updates the dialog's position.
131
107
  * @param position New dialog position.
132
108
  */
133
109
  updatePosition(position) {
134
- let strategy = this._getPositionStrategy();
110
+ let strategy = this._ref.config.positionStrategy;
135
111
  if (position && (position.left || position.right)) {
136
112
  position.left ? strategy.left(position.left) : strategy.right(position.right);
137
113
  }
@@ -144,7 +120,7 @@ export class MatDialogRef {
144
120
  else {
145
121
  strategy.centerVertically();
146
122
  }
147
- this._overlayRef.updatePosition();
123
+ this._ref.updatePosition();
148
124
  return this;
149
125
  }
150
126
  /**
@@ -153,18 +129,17 @@ export class MatDialogRef {
153
129
  * @param height New height of the dialog.
154
130
  */
155
131
  updateSize(width = '', height = '') {
156
- this._overlayRef.updateSize({ width, height });
157
- this._overlayRef.updatePosition();
132
+ this._ref.updateSize(width, height);
158
133
  return this;
159
134
  }
160
135
  /** Add a CSS class or an array of classes to the overlay pane. */
161
136
  addPanelClass(classes) {
162
- this._overlayRef.addPanelClass(classes);
137
+ this._ref.addPanelClass(classes);
163
138
  return this;
164
139
  }
165
140
  /** Remove a CSS class or an array of classes from the overlay pane. */
166
141
  removePanelClass(classes) {
167
- this._overlayRef.removePanelClass(classes);
142
+ this._ref.removePanelClass(classes);
168
143
  return this;
169
144
  }
170
145
  /** Gets the current state of the dialog's lifecycle. */
@@ -177,11 +152,8 @@ export class MatDialogRef {
177
152
  */
178
153
  _finishDialogClose() {
179
154
  this._state = 2 /* CLOSED */;
180
- this._overlayRef.dispose();
181
- }
182
- /** Fetches the position strategy object from the overlay ref. */
183
- _getPositionStrategy() {
184
- return this._overlayRef.getConfig().positionStrategy;
155
+ this._ref.close(this._result, { focusOrigin: this._closeInteractionType });
156
+ this.componentInstance = null;
185
157
  }
186
158
  }
187
159
  /**
@@ -189,13 +161,9 @@ export class MatDialogRef {
189
161
  * `MatDialogRef` as that would conflict with custom dialog ref mocks provided in tests.
190
162
  * More details. See: https://github.com/angular/components/pull/9257#issuecomment-651342226.
191
163
  */
192
- // TODO: TODO: Move this back into `MatDialogRef` when we provide an official mock dialog ref.
164
+ // TODO: Move this back into `MatDialogRef` when we provide an official mock dialog ref.
193
165
  export function _closeDialogVia(ref, interactionType, result) {
194
- // Some mock dialog ref instances in tests do not have the `_containerInstance` property.
195
- // For those, we keep the behavior as is and do not deal with the interaction type.
196
- if (ref._containerInstance !== undefined) {
197
- ref._containerInstance._closeInteractionType = interactionType;
198
- }
166
+ ref._closeInteractionType = interactionType;
199
167
  return ref.close(result);
200
168
  }
201
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9kaWFsb2cvZGlhbG9nLXJlZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFHSCxPQUFPLEVBQUMsTUFBTSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRTdELE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUk1QywyQkFBMkI7QUFFM0IsaUNBQWlDO0FBQ2pDLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztBQVNqQjs7R0FFRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBeUJ2QixZQUNVLFdBQXVCLEVBQ3hCLGtCQUEyQztJQUNsRCx3QkFBd0I7SUFDZixLQUFhLGNBQWMsUUFBUSxFQUFFLEVBQUU7UUFIeEMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDeEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF5QjtRQUV6QyxPQUFFLEdBQUYsRUFBRSxDQUFxQztRQXpCbEQsdURBQXVEO1FBQ3ZELGlCQUFZLEdBQXdCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO1FBRWpGLDJFQUEyRTtRQUMxRCxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFcEQsMkVBQTJFO1FBQzFELGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQWlCLENBQUM7UUFFN0QsMEVBQTBFO1FBQ3pELGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQWlCLENBQUM7UUFROUQsbUNBQW1DO1FBQzNCLFdBQU0sZ0JBQXVCO1FBUW5DLHNDQUFzQztRQUN0QyxrQkFBa0IsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBRTVCLHdDQUF3QztRQUN4QyxrQkFBa0IsQ0FBQyxzQkFBc0I7YUFD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QUFDO1FBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGlFQUFpRTtJQUN6RCxvQkFBb0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDLGdCQUEwQyxDQUFDO0lBQ2pGLENBQUM7Q0FDRjtBQUVEOzs7O0dBSUc7QUFDSCw4RkFBOEY7QUFDOUYsTUFBTSxVQUFVLGVBQWUsQ0FBSSxHQUFvQixFQUFFLGVBQTRCLEVBQUUsTUFBVTtJQUMvRix5RkFBeUY7SUFDekYsbUZBQW1GO0lBQ25GLElBQUksR0FBRyxDQUFDLGtCQUFrQixLQUFLLFNBQVMsRUFBRTtRQUN4QyxHQUFHLENBQUMsa0JBQWtCLENBQUMscUJBQXFCLEdBQUcsZUFBZSxDQUFDO0tBQ2hFO0lBQ0QsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtGb2N1c09yaWdpbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtFU0NBUEUsIGhhc01vZGlmaWVyS2V5fSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHtHbG9iYWxQb3NpdGlvblN0cmF0ZWd5LCBPdmVybGF5UmVmfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaWx0ZXIsIHRha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RGlhbG9nUG9zaXRpb259IGZyb20gJy4vZGlhbG9nLWNvbmZpZyc7XG5pbXBvcnQge19NYXREaWFsb2dDb250YWluZXJCYXNlfSBmcm9tICcuL2RpYWxvZy1jb250YWluZXInO1xuXG4vLyBUT0RPKGplbGJvdXJuKTogcmVzaXppbmdcblxuLy8gQ291bnRlciBmb3IgdW5pcXVlIGRpYWxvZyBpZHMuXG5sZXQgdW5pcXVlSWQgPSAwO1xuXG4vKiogUG9zc2libGUgc3RhdGVzIG9mIHRoZSBsaWZlY3ljbGUgb2YgYSBkaWFsb2cuICovXG5leHBvcnQgY29uc3QgZW51bSBNYXREaWFsb2dTdGF0ZSB7XG4gIE9QRU4sXG4gIENMT1NJTkcsXG4gIENMT1NFRCxcbn1cblxuLyoqXG4gKiBSZWZlcmVuY2UgdG8gYSBkaWFsb2cgb3BlbmVkIHZpYSB0aGUgTWF0RGlhbG9nIHNlcnZpY2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXREaWFsb2dSZWY8VCwgUiA9IGFueT4ge1xuICAvKiogVGhlIGluc3RhbmNlIG9mIGNvbXBvbmVudCBvcGVuZWQgaW50byB0aGUgZGlhbG9nLiAqL1xuICBjb21wb25lbnRJbnN0YW5jZTogVDtcblxuICAvKiogV2hldGhlciB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGNsb3NlIHRoZSBkaWFsb2cuICovXG4gIGRpc2FibGVDbG9zZTogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IHRoaXMuX2NvbnRhaW5lckluc3RhbmNlLl9jb25maWcuZGlzYWJsZUNsb3NlO1xuXG4gIC8qKiBTdWJqZWN0IGZvciBub3RpZnlpbmcgdGhlIHVzZXIgdGhhdCB0aGUgZGlhbG9nIGhhcyBmaW5pc2hlZCBvcGVuaW5nLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IF9hZnRlck9wZW5lZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGUgdXNlciB0aGF0IHRoZSBkaWFsb2cgaGFzIGZpbmlzaGVkIGNsb3NpbmcuICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX2FmdGVyQ2xvc2VkID0gbmV3IFN1YmplY3Q8UiB8IHVuZGVmaW5lZD4oKTtcblxuICAvKiogU3ViamVjdCBmb3Igbm90aWZ5aW5nIHRoZSB1c2VyIHRoYXQgdGhlIGRpYWxvZyBoYXMgc3RhcnRlZCBjbG9zaW5nLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IF9iZWZvcmVDbG9zZWQgPSBuZXcgU3ViamVjdDxSIHwgdW5kZWZpbmVkPigpO1xuXG4gIC8qKiBSZXN1bHQgdG8gYmUgcGFzc2VkIHRvIGFmdGVyQ2xvc2VkLiAqL1xuICBwcml2YXRlIF9yZXN1bHQ6IFIgfCB1bmRlZmluZWQ7XG5cbiAgLyoqIEhhbmRsZSB0byB0aGUgdGltZW91dCB0aGF0J3MgcnVubmluZyBhcyBhIGZhbGxiYWNrIGluIGNhc2UgdGhlIGV4aXQgYW5pbWF0aW9uIGRvZXNuJ3QgZmlyZS4gKi9cbiAgcHJpdmF0ZSBfY2xvc2VGYWxsYmFja1RpbWVvdXQ6IG51bWJlcjtcblxuICAvKiogQ3VycmVudCBzdGF0ZSBvZiB0aGUgZGlhbG9nLiAqL1xuICBwcml2YXRlIF9zdGF0ZSA9IE1hdERpYWxvZ1N0YXRlLk9QRU47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfb3ZlcmxheVJlZjogT3ZlcmxheVJlZixcbiAgICBwdWJsaWMgX2NvbnRhaW5lckluc3RhbmNlOiBfTWF0RGlhbG9nQ29udGFpbmVyQmFzZSxcbiAgICAvKiogSWQgb2YgdGhlIGRpYWxvZy4gKi9cbiAgICByZWFkb25seSBpZDogc3RyaW5nID0gYG1hdC1kaWFsb2ctJHt1bmlxdWVJZCsrfWAsXG4gICkge1xuICAgIC8vIFBhc3MgdGhlIGlkIGFsb25nIHRvIHRoZSBjb250YWluZXIuXG4gICAgX2NvbnRhaW5lckluc3RhbmNlLl9pZCA9IGlkO1xuXG4gICAgLy8gRW1pdCB3aGVuIG9wZW5pbmcgYW5pbWF0aW9uIGNvbXBsZXRlc1xuICAgIF9jb250YWluZXJJbnN0YW5jZS5fYW5pbWF0aW9uU3RhdGVDaGFuZ2VkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50LnN0YXRlID09PSAnb3BlbmVkJyksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5fYWZ0ZXJPcGVuZWQubmV4dCgpO1xuICAgICAgICB0aGlzLl9hZnRlck9wZW5lZC5jb21wbGV0ZSgpO1xuICAgICAgfSk7XG5cbiAgICAvLyBEaXNwb3NlIG92ZXJsYXkgd2hlbiBjbG9zaW5nIGFuaW1hdGlvbiBpcyBjb21wbGV0ZVxuICAgIF9jb250YWluZXJJbnN0YW5jZS5fYW5pbWF0aW9uU3RhdGVDaGFuZ2VkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50LnN0YXRlID09PSAnY2xvc2VkJyksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2Nsb3NlRmFsbGJhY2tUaW1lb3V0KTtcbiAgICAgICAgdGhpcy5fZmluaXNoRGlhbG9nQ2xvc2UoKTtcbiAgICAgIH0pO1xuXG4gICAgX292ZXJsYXlSZWYuZGV0YWNobWVudHMoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5fYmVmb3JlQ2xvc2VkLm5leHQodGhpcy5fcmVzdWx0KTtcbiAgICAgIHRoaXMuX2JlZm9yZUNsb3NlZC5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fYWZ0ZXJDbG9zZWQubmV4dCh0aGlzLl9yZXN1bHQpO1xuICAgICAgdGhpcy5fYWZ0ZXJDbG9zZWQuY29tcGxldGUoKTtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSBudWxsITtcbiAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGlzcG9zZSgpO1xuICAgIH0pO1xuXG4gICAgX292ZXJsYXlSZWZcbiAgICAgIC5rZXlkb3duRXZlbnRzKClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoZXZlbnQgPT4ge1xuICAgICAgICAgIHJldHVybiBldmVudC5rZXlDb2RlID09PSBFU0NBUEUgJiYgIXRoaXMuZGlzYWJsZUNsb3NlICYmICFoYXNNb2RpZmllcktleShldmVudCk7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIF9jbG9zZURpYWxvZ1ZpYSh0aGlzLCAna2V5Ym9hcmQnKTtcbiAgICAgIH0pO1xuXG4gICAgX292ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5kaXNhYmxlQ2xvc2UpIHtcbiAgICAgICAgdGhpcy5fY29udGFpbmVySW5zdGFuY2UuX3JlY2FwdHVyZUZvY3VzKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBfY2xvc2VEaWFsb2dWaWEodGhpcywgJ21vdXNlJyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2UgdGhlIGRpYWxvZy5cbiAgICogQHBhcmFtIGRpYWxvZ1Jlc3VsdCBPcHRpb25hbCByZXN1bHQgdG8gcmV0dXJuIHRvIHRoZSBkaWFsb2cgb3BlbmVyLlxuICAgKi9cbiAgY2xvc2UoZGlhbG9nUmVzdWx0PzogUik6IHZvaWQge1xuICAgIHRoaXMuX3Jlc3VsdCA9IGRpYWxvZ1Jlc3VsdDtcblxuICAgIC8vIFRyYW5zaXRpb24gdGhlIGJhY2tkcm9wIGluIHBhcmFsbGVsIHRvIHRoZSBkaWFsb2cuXG4gICAgdGhpcy5fY29udGFpbmVySW5zdGFuY2UuX2FuaW1hdGlvblN0YXRlQ2hhbmdlZFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5zdGF0ZSA9PT0gJ2Nsb3NpbmcnKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICB0aGlzLl9iZWZvcmVDbG9zZWQubmV4dChkaWFsb2dSZXN1bHQpO1xuICAgICAgICB0aGlzLl9iZWZvcmVDbG9zZWQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2hCYWNrZHJvcCgpO1xuXG4gICAgICAgIC8vIFRoZSBsb2dpYyB0aGF0IGRpc3Bvc2VzIG9mIHRoZSBvdmVybGF5IGRlcGVuZHMgb24gdGhlIGV4aXQgYW5pbWF0aW9uIGNvbXBsZXRpbmcsIGhvd2V2ZXJcbiAgICAgICAgLy8gaXQgaXNuJ3QgZ3VhcmFudGVlZCBpZiB0aGUgcGFyZW50IHZpZXcgaXMgZGVzdHJveWVkIHdoaWxlIGl0J3MgcnVubmluZy4gQWRkIGEgZmFsbGJhY2tcbiAgICAgICAgLy8gdGltZW91dCB3aGljaCB3aWxsIGNsZWFuIGV2ZXJ5dGhpbmcgdXAgaWYgdGhlIGFuaW1hdGlvbiBoYXNuJ3QgZmlyZWQgd2l0aGluIHRoZSBzcGVjaWZpZWRcbiAgICAgICAgLy8gYW1vdW50IG9mIHRpbWUgcGx1cyAxMDBtcy4gV2UgZG9uJ3QgbmVlZCB0byBydW4gdGhpcyBvdXRzaWRlIHRoZSBOZ1pvbmUsIGJlY2F1c2UgZm9yIHRoZVxuICAgICAgICAvLyB2YXN0IG1ham9yaXR5IG9mIGNhc2VzIHRoZSB0aW1lb3V0IHdpbGwgaGF2ZSBiZWVuIGNsZWFyZWQgYmVmb3JlIGl0IGhhcyB0aGUgY2hhbmNlIHRvIGZpcmUuXG4gICAgICAgIHRoaXMuX2Nsb3NlRmFsbGJhY2tUaW1lb3V0ID0gc2V0VGltZW91dChcbiAgICAgICAgICAoKSA9PiB0aGlzLl9maW5pc2hEaWFsb2dDbG9zZSgpLFxuICAgICAgICAgIGV2ZW50LnRvdGFsVGltZSArIDEwMCxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5fc3RhdGUgPSBNYXREaWFsb2dTdGF0ZS5DTE9TSU5HO1xuICAgIHRoaXMuX2NvbnRhaW5lckluc3RhbmNlLl9zdGFydEV4aXRBbmltYXRpb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBpcyBub3RpZmllZCB3aGVuIHRoZSBkaWFsb2cgaXMgZmluaXNoZWQgb3BlbmluZy5cbiAgICovXG4gIGFmdGVyT3BlbmVkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLl9hZnRlck9wZW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBpcyBub3RpZmllZCB3aGVuIHRoZSBkaWFsb2cgaXMgZmluaXNoZWQgY2xvc2luZy5cbiAgICovXG4gIGFmdGVyQ2xvc2VkKCk6IE9ic2VydmFibGU8UiB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLl9hZnRlckNsb3NlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBpcyBub3RpZmllZCB3aGVuIHRoZSBkaWFsb2cgaGFzIHN0YXJ0ZWQgY2xvc2luZy5cbiAgICovXG4gIGJlZm9yZUNsb3NlZCgpOiBPYnNlcnZhYmxlPFIgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gdGhpcy5fYmVmb3JlQ2xvc2VkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHdoZW4gdGhlIG92ZXJsYXkncyBiYWNrZHJvcCBoYXMgYmVlbiBjbGlja2VkLlxuICAgKi9cbiAgYmFja2Ryb3BDbGljaygpOiBPYnNlcnZhYmxlPE1vdXNlRXZlbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgd2hlbiBrZXlkb3duIGV2ZW50cyBhcmUgdGFyZ2V0ZWQgb24gdGhlIG92ZXJsYXkuXG4gICAqL1xuICBrZXlkb3duRXZlbnRzKCk6IE9ic2VydmFibGU8S2V5Ym9hcmRFdmVudD4ge1xuICAgIHJldHVybiB0aGlzLl9vdmVybGF5UmVmLmtleWRvd25FdmVudHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBkaWFsb2cncyBwb3NpdGlvbi5cbiAgICogQHBhcmFtIHBvc2l0aW9uIE5ldyBkaWFsb2cgcG9zaXRpb24uXG4gICAqL1xuICB1cGRhdGVQb3NpdGlvbihwb3NpdGlvbj86IERpYWxvZ1Bvc2l0aW9uKTogdGhpcyB7XG4gICAgbGV0IHN0cmF0ZWd5ID0gdGhpcy5fZ2V0UG9zaXRpb25TdHJhdGVneSgpO1xuXG4gICAgaWYgKHBvc2l0aW9uICYmIChwb3NpdGlvbi5sZWZ0IHx8IHBvc2l0aW9uLnJpZ2h0KSkge1xuICAgICAgcG9zaXRpb24ubGVmdCA/IHN0cmF0ZWd5LmxlZnQocG9zaXRpb24ubGVmdCkgOiBzdHJhdGVneS5yaWdodChwb3NpdGlvbi5yaWdodCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0cmF0ZWd5LmNlbnRlckhvcml6b250YWxseSgpO1xuICAgIH1cblxuICAgIGlmIChwb3NpdGlvbiAmJiAocG9zaXRpb24udG9wIHx8IHBvc2l0aW9uLmJvdHRvbSkpIHtcbiAgICAgIHBvc2l0aW9uLnRvcCA/IHN0cmF0ZWd5LnRvcChwb3NpdGlvbi50b3ApIDogc3RyYXRlZ3kuYm90dG9tKHBvc2l0aW9uLmJvdHRvbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0cmF0ZWd5LmNlbnRlclZlcnRpY2FsbHkoKTtcbiAgICB9XG5cbiAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBkaWFsb2cncyB3aWR0aCBhbmQgaGVpZ2h0LlxuICAgKiBAcGFyYW0gd2lkdGggTmV3IHdpZHRoIG9mIHRoZSBkaWFsb2cuXG4gICAqIEBwYXJhbSBoZWlnaHQgTmV3IGhlaWdodCBvZiB0aGUgZGlhbG9nLlxuICAgKi9cbiAgdXBkYXRlU2l6ZSh3aWR0aDogc3RyaW5nID0gJycsIGhlaWdodDogc3RyaW5nID0gJycpOiB0aGlzIHtcbiAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVNpemUoe3dpZHRoLCBoZWlnaHR9KTtcbiAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQWRkIGEgQ1NTIGNsYXNzIG9yIGFuIGFycmF5IG9mIGNsYXNzZXMgdG8gdGhlIG92ZXJsYXkgcGFuZS4gKi9cbiAgYWRkUGFuZWxDbGFzcyhjbGFzc2VzOiBzdHJpbmcgfCBzdHJpbmdbXSk6IHRoaXMge1xuICAgIHRoaXMuX292ZXJsYXlSZWYuYWRkUGFuZWxDbGFzcyhjbGFzc2VzKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBSZW1vdmUgYSBDU1MgY2xhc3Mgb3IgYW4gYXJyYXkgb2YgY2xhc3NlcyBmcm9tIHRoZSBvdmVybGF5IHBhbmUuICovXG4gIHJlbW92ZVBhbmVsQ2xhc3MoY2xhc3Nlczogc3RyaW5nIHwgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLl9vdmVybGF5UmVmLnJlbW92ZVBhbmVsQ2xhc3MoY2xhc3Nlcyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgZGlhbG9nJ3MgbGlmZWN5Y2xlLiAqL1xuICBnZXRTdGF0ZSgpOiBNYXREaWFsb2dTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmlzaGVzIHRoZSBkaWFsb2cgY2xvc2UgYnkgdXBkYXRpbmcgdGhlIHN0YXRlIG9mIHRoZSBkaWFsb2dcbiAgICogYW5kIGRpc3Bvc2luZyB0aGUgb3ZlcmxheS5cbiAgICovXG4gIHByaXZhdGUgX2ZpbmlzaERpYWxvZ0Nsb3NlKCkge1xuICAgIHRoaXMuX3N0YXRlID0gTWF0RGlhbG9nU3RhdGUuQ0xPU0VEO1xuICAgIHRoaXMuX292ZXJsYXlSZWYuZGlzcG9zZSgpO1xuICB9XG5cbiAgLyoqIEZldGNoZXMgdGhlIHBvc2l0aW9uIHN0cmF0ZWd5IG9iamVjdCBmcm9tIHRoZSBvdmVybGF5IHJlZi4gKi9cbiAgcHJpdmF0ZSBfZ2V0UG9zaXRpb25TdHJhdGVneSgpOiBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVJlZi5nZXRDb25maWcoKS5wb3NpdGlvblN0cmF0ZWd5IGFzIEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3k7XG4gIH1cbn1cblxuLyoqXG4gKiBDbG9zZXMgdGhlIGRpYWxvZyB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZXJhY3Rpb24gdHlwZS4gVGhpcyBpcyBjdXJyZW50bHkgbm90IHBhcnQgb2ZcbiAqIGBNYXREaWFsb2dSZWZgIGFzIHRoYXQgd291bGQgY29uZmxpY3Qgd2l0aCBjdXN0b20gZGlhbG9nIHJlZiBtb2NrcyBwcm92aWRlZCBpbiB0ZXN0cy5cbiAqIE1vcmUgZGV0YWlscy4gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL3B1bGwvOTI1NyNpc3N1ZWNvbW1lbnQtNjUxMzQyMjI2LlxuICovXG4vLyBUT0RPOiBUT0RPOiBNb3ZlIHRoaXMgYmFjayBpbnRvIGBNYXREaWFsb2dSZWZgIHdoZW4gd2UgcHJvdmlkZSBhbiBvZmZpY2lhbCBtb2NrIGRpYWxvZyByZWYuXG5leHBvcnQgZnVuY3Rpb24gX2Nsb3NlRGlhbG9nVmlhPFI+KHJlZjogTWF0RGlhbG9nUmVmPFI+LCBpbnRlcmFjdGlvblR5cGU6IEZvY3VzT3JpZ2luLCByZXN1bHQ/OiBSKSB7XG4gIC8vIFNvbWUgbW9jayBkaWFsb2cgcmVmIGluc3RhbmNlcyBpbiB0ZXN0cyBkbyBub3QgaGF2ZSB0aGUgYF9jb250YWluZXJJbnN0YW5jZWAgcHJvcGVydHkuXG4gIC8vIEZvciB0aG9zZSwgd2Uga2VlcCB0aGUgYmVoYXZpb3IgYXMgaXMgYW5kIGRvIG5vdCBkZWFsIHdpdGggdGhlIGludGVyYWN0aW9uIHR5cGUuXG4gIGlmIChyZWYuX2NvbnRhaW5lckluc3RhbmNlICE9PSB1bmRlZmluZWQpIHtcbiAgICByZWYuX2NvbnRhaW5lckluc3RhbmNlLl9jbG9zZUludGVyYWN0aW9uVHlwZSA9IGludGVyYWN0aW9uVHlwZTtcbiAgfVxuICByZXR1cm4gcmVmLmNsb3NlKHJlc3VsdCk7XG59XG4iXX0=
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9kaWFsb2cvZGlhbG9nLXJlZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFJSCxPQUFPLEVBQUMsTUFBTSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRTdELE9BQU8sRUFBQyxLQUFLLEVBQWMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFXNUM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQWdDdkIsWUFDVSxJQUFxQixFQUM3QixNQUF1QixFQUNoQixrQkFBMkM7UUFGMUMsU0FBSSxHQUFKLElBQUksQ0FBaUI7UUFFdEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF5QjtRQXpCcEQsMkVBQTJFO1FBQzFELGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVwRCwwRUFBMEU7UUFDekQsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQVE5RCxtQ0FBbUM7UUFDM0IsV0FBTSxnQkFBdUI7UUFjbkMsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUVsQix3Q0FBd0M7UUFDeEMsa0JBQWtCLENBQUMsc0JBQXNCO2FBQ3RDLElBQUksQ0FDSCxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxFQUN6QyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ1I7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsWUFB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Z0IsRUFBRSxFQUFFLFNBQWlCLEVBQUU7UUFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGtFQUFrRTtJQUNsRSxhQUFhLENBQUMsT0FBMEI7UUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsdUVBQXVFO0lBQ3ZFLGdCQUFnQixDQUFDLE9BQTBCO1FBQ3pDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsd0RBQXdEO0lBQ3hELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7T0FHRztJQUNLLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsTUFBTSxpQkFBd0IsQ0FBQztRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsRUFBQyxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUssQ0FBQztJQUNqQyxDQUFDO0NBQ0Y7QUFFRDs7OztHQUlHO0FBQ0gsd0ZBQXdGO0FBQ3hGLE1BQU0sVUFBVSxlQUFlLENBQUksR0FBb0IsRUFBRSxlQUE0QixFQUFFLE1BQVU7SUFDOUYsR0FBdUQsQ0FBQyxxQkFBcUIsR0FBRyxlQUFlLENBQUM7SUFDakcsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtEaWFsb2dSZWZ9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kaWFsb2cnO1xuaW1wb3J0IHtGb2N1c09yaWdpbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtFU0NBUEUsIGhhc01vZGlmaWVyS2V5fSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHtHbG9iYWxQb3NpdGlvblN0cmF0ZWd5fSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge21lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0RpYWxvZ1Bvc2l0aW9uLCBNYXREaWFsb2dDb25maWd9IGZyb20gJy4vZGlhbG9nLWNvbmZpZyc7XG5pbXBvcnQge19NYXREaWFsb2dDb250YWluZXJCYXNlfSBmcm9tICcuL2RpYWxvZy1jb250YWluZXInO1xuXG4vKiogUG9zc2libGUgc3RhdGVzIG9mIHRoZSBsaWZlY3ljbGUgb2YgYSBkaWFsb2cuICovXG5leHBvcnQgY29uc3QgZW51bSBNYXREaWFsb2dTdGF0ZSB7XG4gIE9QRU4sXG4gIENMT1NJTkcsXG4gIENMT1NFRCxcbn1cblxuLyoqXG4gKiBSZWZlcmVuY2UgdG8gYSBkaWFsb2cgb3BlbmVkIHZpYSB0aGUgTWF0RGlhbG9nIHNlcnZpY2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXREaWFsb2dSZWY8VCwgUiA9IGFueT4ge1xuICAvKiogVGhlIGluc3RhbmNlIG9mIGNvbXBvbmVudCBvcGVuZWQgaW50byB0aGUgZGlhbG9nLiAqL1xuICBjb21wb25lbnRJbnN0YW5jZTogVDtcblxuICAvKiogV2hldGhlciB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGNsb3NlIHRoZSBkaWFsb2cuICovXG4gIGRpc2FibGVDbG9zZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKiogVW5pcXVlIElEIGZvciB0aGUgZGlhbG9nLiAqL1xuICBpZDogc3RyaW5nO1xuXG4gIC8qKiBTdWJqZWN0IGZvciBub3RpZnlpbmcgdGhlIHVzZXIgdGhhdCB0aGUgZGlhbG9nIGhhcyBmaW5pc2hlZCBvcGVuaW5nLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IF9hZnRlck9wZW5lZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGUgdXNlciB0aGF0IHRoZSBkaWFsb2cgaGFzIHN0YXJ0ZWQgY2xvc2luZy4gKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfYmVmb3JlQ2xvc2VkID0gbmV3IFN1YmplY3Q8UiB8IHVuZGVmaW5lZD4oKTtcblxuICAvKiogUmVzdWx0IHRvIGJlIHBhc3NlZCB0byBhZnRlckNsb3NlZC4gKi9cbiAgcHJpdmF0ZSBfcmVzdWx0OiBSIHwgdW5kZWZpbmVkO1xuXG4gIC8qKiBIYW5kbGUgdG8gdGhlIHRpbWVvdXQgdGhhdCdzIHJ1bm5pbmcgYXMgYSBmYWxsYmFjayBpbiBjYXNlIHRoZSBleGl0IGFuaW1hdGlvbiBkb2Vzbid0IGZpcmUuICovXG4gIHByaXZhdGUgX2Nsb3NlRmFsbGJhY2tUaW1lb3V0OiBudW1iZXI7XG5cbiAgLyoqIEN1cnJlbnQgc3RhdGUgb2YgdGhlIGRpYWxvZy4gKi9cbiAgcHJpdmF0ZSBfc3RhdGUgPSBNYXREaWFsb2dTdGF0ZS5PUEVOO1xuXG4gIC8vIFRPRE8oY3Jpc2JldG8pOiB3ZSBzaG91bGRuJ3QgaGF2ZSB0byBkZWNsYXJlIHRoaXMgcHJvcGVydHksIGJlY2F1c2UgYERpYWxvZ1JlZi5jbG9zZWBcbiAgLy8gYWxyZWFkeSBoYXMgYSBzZWNvbmQgYG9wdGlvbnNgIHBhcmFtZXRlciB0aGF0IHdlIGNhbiB1c2UuIFRoZSBwcm9ibGVtIGlzIHRoYXQgaW50ZXJuYWwgdGVzdHNcbiAgLy8gaGF2ZSBhc3NlcnRpb25zIGxpa2UgYGV4cGVjdChNYXREaWFsb2dSZWYuY2xvc2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGZvbylgIHdoaWNoIHdpbGwgYnJlYWssXG4gIC8vIGJlY2F1c2UgaXQnbGwgYmUgY2FsbGVkIHdpdGggdHdvIGFyZ3VtZW50cyBieSB0aGluZ3MgbGlrZSBgTWF0RGlhbG9nQ2xvc2VgLlxuICAvKiogSW50ZXJhY3Rpb24gdGhhdCBjYXVzZWQgdGhlIGRpYWxvZyB0byBjbG9zZS4gKi9cbiAgcHJpdmF0ZSBfY2xvc2VJbnRlcmFjdGlvblR5cGU6IEZvY3VzT3JpZ2luIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3JlZjogRGlhbG9nUmVmPFIsIFQ+LFxuICAgIGNvbmZpZzogTWF0RGlhbG9nQ29uZmlnLFxuICAgIHB1YmxpYyBfY29udGFpbmVySW5zdGFuY2U6IF9NYXREaWFsb2dDb250YWluZXJCYXNlLFxuICApIHtcbiAgICB0aGlzLmRpc2FibGVDbG9zZSA9IGNvbmZpZy5kaXNhYmxlQ2xvc2U7XG4gICAgdGhpcy5pZCA9IF9yZWYuaWQ7XG5cbiAgICAvLyBFbWl0IHdoZW4gb3BlbmluZyBhbmltYXRpb24gY29tcGxldGVzXG4gICAgX2NvbnRhaW5lckluc3RhbmNlLl9hbmltYXRpb25TdGF0ZUNoYW5nZWRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQuc3RhdGUgPT09ICdvcGVuZWQnKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9hZnRlck9wZW5lZC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2FmdGVyT3BlbmVkLmNvbXBsZXRlKCk7XG4gICAgICB9KTtcblxuICAgIC8vIERpc3Bvc2Ugb3ZlcmxheSB3aGVuIGNsb3NpbmcgYW5pbWF0aW9uIGlzIGNvbXBsZXRlXG4gICAgX2NvbnRhaW5lckluc3RhbmNlLl9hbmltYXRpb25TdGF0ZUNoYW5nZWRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQuc3RhdGUgPT09ICdjbG9zZWQnKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5fY2xvc2VGYWxsYmFja1RpbWVvdXQpO1xuICAgICAgICB0aGlzLl9maW5pc2hEaWFsb2dDbG9zZSgpO1xuICAgICAgfSk7XG5cbiAgICBfcmVmLm92ZXJsYXlSZWYuZGV0YWNobWVudHMoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5fYmVmb3JlQ2xvc2VkLm5leHQodGhpcy5fcmVzdWx0KTtcbiAgICAgIHRoaXMuX2JlZm9yZUNsb3NlZC5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fZmluaXNoRGlhbG9nQ2xvc2UoKTtcbiAgICB9KTtcblxuICAgIG1lcmdlKFxuICAgICAgdGhpcy5iYWNrZHJvcENsaWNrKCksXG4gICAgICB0aGlzLmtleWRvd25FdmVudHMoKS5waXBlKFxuICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQua2V5Q29kZSA9PT0gRVNDQVBFICYmICF0aGlzLmRpc2FibGVDbG9zZSAmJiAhaGFzTW9kaWZpZXJLZXkoZXZlbnQpKSxcbiAgICAgICksXG4gICAgKS5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgaWYgKCF0aGlzLmRpc2FibGVDbG9zZSkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBfY2xvc2VEaWFsb2dWaWEodGhpcywgZXZlbnQudHlwZSA9PT0gJ2tleWRvd24nID8gJ2tleWJvYXJkJyA6ICdtb3VzZScpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlIHRoZSBkaWFsb2cuXG4gICAqIEBwYXJhbSBkaWFsb2dSZXN1bHQgT3B0aW9uYWwgcmVzdWx0IHRvIHJldHVybiB0byB0aGUgZGlhbG9nIG9wZW5lci5cbiAgICovXG4gIGNsb3NlKGRpYWxvZ1Jlc3VsdD86IFIpOiB2b2lkIHtcbiAgICB0aGlzLl9yZXN1bHQgPSBkaWFsb2dSZXN1bHQ7XG5cbiAgICAvLyBUcmFuc2l0aW9uIHRoZSBiYWNrZHJvcCBpbiBwYXJhbGxlbCB0byB0aGUgZGlhbG9nLlxuICAgIHRoaXMuX2NvbnRhaW5lckluc3RhbmNlLl9hbmltYXRpb25TdGF0ZUNoYW5nZWRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQuc3RhdGUgPT09ICdjbG9zaW5nJyksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgdGhpcy5fYmVmb3JlQ2xvc2VkLm5leHQoZGlhbG9nUmVzdWx0KTtcbiAgICAgICAgdGhpcy5fYmVmb3JlQ2xvc2VkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuX3JlZi5vdmVybGF5UmVmLmRldGFjaEJhY2tkcm9wKCk7XG5cbiAgICAgICAgLy8gVGhlIGxvZ2ljIHRoYXQgZGlzcG9zZXMgb2YgdGhlIG92ZXJsYXkgZGVwZW5kcyBvbiB0aGUgZXhpdCBhbmltYXRpb24gY29tcGxldGluZywgaG93ZXZlclxuICAgICAgICAvLyBpdCBpc24ndCBndWFyYW50ZWVkIGlmIHRoZSBwYXJlbnQgdmlldyBpcyBkZXN0cm95ZWQgd2hpbGUgaXQncyBydW5uaW5nLiBBZGQgYSBmYWxsYmFja1xuICAgICAgICAvLyB0aW1lb3V0IHdoaWNoIHdpbGwgY2xlYW4gZXZlcnl0aGluZyB1cCBpZiB0aGUgYW5pbWF0aW9uIGhhc24ndCBmaXJlZCB3aXRoaW4gdGhlIHNwZWNpZmllZFxuICAgICAgICAvLyBhbW91bnQgb2YgdGltZSBwbHVzIDEwMG1zLiBXZSBkb24ndCBuZWVkIHRvIHJ1biB0aGlzIG91dHNpZGUgdGhlIE5nWm9uZSwgYmVjYXVzZSBmb3IgdGhlXG4gICAgICAgIC8vIHZhc3QgbWFqb3JpdHkgb2YgY2FzZXMgdGhlIHRpbWVvdXQgd2lsbCBoYXZlIGJlZW4gY2xlYXJlZCBiZWZvcmUgaXQgaGFzIHRoZSBjaGFuY2UgdG8gZmlyZS5cbiAgICAgICAgdGhpcy5fY2xvc2VGYWxsYmFja1RpbWVvdXQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAgICgpID0+IHRoaXMuX2ZpbmlzaERpYWxvZ0Nsb3NlKCksXG4gICAgICAgICAgZXZlbnQudG90YWxUaW1lICsgMTAwLFxuICAgICAgICApO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLl9zdGF0ZSA9IE1hdERpYWxvZ1N0YXRlLkNMT1NJTkc7XG4gICAgdGhpcy5fY29udGFpbmVySW5zdGFuY2UuX3N0YXJ0RXhpdEFuaW1hdGlvbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYW4gb2JzZXJ2YWJsZSB0aGF0IGlzIG5vdGlmaWVkIHdoZW4gdGhlIGRpYWxvZyBpcyBmaW5pc2hlZCBvcGVuaW5nLlxuICAgKi9cbiAgYWZ0ZXJPcGVuZWQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FmdGVyT3BlbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYW4gb2JzZXJ2YWJsZSB0aGF0IGlzIG5vdGlmaWVkIHdoZW4gdGhlIGRpYWxvZyBpcyBmaW5pc2hlZCBjbG9zaW5nLlxuICAgKi9cbiAgYWZ0ZXJDbG9zZWQoKTogT2JzZXJ2YWJsZTxSIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlZi5jbG9zZWQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhbiBvYnNlcnZhYmxlIHRoYXQgaXMgbm90aWZpZWQgd2hlbiB0aGUgZGlhbG9nIGhhcyBzdGFydGVkIGNsb3NpbmcuXG4gICAqL1xuICBiZWZvcmVDbG9zZWQoKTogT2JzZXJ2YWJsZTxSIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMuX2JlZm9yZUNsb3NlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB3aGVuIHRoZSBvdmVybGF5J3MgYmFja2Ryb3AgaGFzIGJlZW4gY2xpY2tlZC5cbiAgICovXG4gIGJhY2tkcm9wQ2xpY2soKTogT2JzZXJ2YWJsZTxNb3VzZUV2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlZi5iYWNrZHJvcENsaWNrO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHdoZW4ga2V5ZG93biBldmVudHMgYXJlIHRhcmdldGVkIG9uIHRoZSBvdmVybGF5LlxuICAgKi9cbiAga2V5ZG93bkV2ZW50cygpOiBPYnNlcnZhYmxlPEtleWJvYXJkRXZlbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5fcmVmLmtleWRvd25FdmVudHM7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgZGlhbG9nJ3MgcG9zaXRpb24uXG4gICAqIEBwYXJhbSBwb3NpdGlvbiBOZXcgZGlhbG9nIHBvc2l0aW9uLlxuICAgKi9cbiAgdXBkYXRlUG9zaXRpb24ocG9zaXRpb24/OiBEaWFsb2dQb3NpdGlvbik6IHRoaXMge1xuICAgIGxldCBzdHJhdGVneSA9IHRoaXMuX3JlZi5jb25maWcucG9zaXRpb25TdHJhdGVneSBhcyBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5O1xuXG4gICAgaWYgKHBvc2l0aW9uICYmIChwb3NpdGlvbi5sZWZ0IHx8IHBvc2l0aW9uLnJpZ2h0KSkge1xuICAgICAgcG9zaXRpb24ubGVmdCA/IHN0cmF0ZWd5LmxlZnQocG9zaXRpb24ubGVmdCkgOiBzdHJhdGVneS5yaWdodChwb3NpdGlvbi5yaWdodCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0cmF0ZWd5LmNlbnRlckhvcml6b250YWxseSgpO1xuICAgIH1cblxuICAgIGlmIChwb3NpdGlvbiAmJiAocG9zaXRpb24udG9wIHx8IHBvc2l0aW9uLmJvdHRvbSkpIHtcbiAgICAgIHBvc2l0aW9uLnRvcCA/IHN0cmF0ZWd5LnRvcChwb3NpdGlvbi50b3ApIDogc3RyYXRlZ3kuYm90dG9tKHBvc2l0aW9uLmJvdHRvbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0cmF0ZWd5LmNlbnRlclZlcnRpY2FsbHkoKTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWYudXBkYXRlUG9zaXRpb24oKTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGRpYWxvZydzIHdpZHRoIGFuZCBoZWlnaHQuXG4gICAqIEBwYXJhbSB3aWR0aCBOZXcgd2lkdGggb2YgdGhlIGRpYWxvZy5cbiAgICogQHBhcmFtIGhlaWdodCBOZXcgaGVpZ2h0IG9mIHRoZSBkaWFsb2cuXG4gICAqL1xuICB1cGRhdGVTaXplKHdpZHRoOiBzdHJpbmcgPSAnJywgaGVpZ2h0OiBzdHJpbmcgPSAnJyk6IHRoaXMge1xuICAgIHRoaXMuX3JlZi51cGRhdGVTaXplKHdpZHRoLCBoZWlnaHQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEFkZCBhIENTUyBjbGFzcyBvciBhbiBhcnJheSBvZiBjbGFzc2VzIHRvIHRoZSBvdmVybGF5IHBhbmUuICovXG4gIGFkZFBhbmVsQ2xhc3MoY2xhc3Nlczogc3RyaW5nIHwgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLl9yZWYuYWRkUGFuZWxDbGFzcyhjbGFzc2VzKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBSZW1vdmUgYSBDU1MgY2xhc3Mgb3IgYW4gYXJyYXkgb2YgY2xhc3NlcyBmcm9tIHRoZSBvdmVybGF5IHBhbmUuICovXG4gIHJlbW92ZVBhbmVsQ2xhc3MoY2xhc3Nlczogc3RyaW5nIHwgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLl9yZWYucmVtb3ZlUGFuZWxDbGFzcyhjbGFzc2VzKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBkaWFsb2cncyBsaWZlY3ljbGUuICovXG4gIGdldFN0YXRlKCk6IE1hdERpYWxvZ1N0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGU7XG4gIH1cblxuICAvKipcbiAgICogRmluaXNoZXMgdGhlIGRpYWxvZyBjbG9zZSBieSB1cGRhdGluZyB0aGUgc3RhdGUgb2YgdGhlIGRpYWxvZ1xuICAgKiBhbmQgZGlzcG9zaW5nIHRoZSBvdmVybGF5LlxuICAgKi9cbiAgcHJpdmF0ZSBfZmluaXNoRGlhbG9nQ2xvc2UoKSB7XG4gICAgdGhpcy5fc3RhdGUgPSBNYXREaWFsb2dTdGF0ZS5DTE9TRUQ7XG4gICAgdGhpcy5fcmVmLmNsb3NlKHRoaXMuX3Jlc3VsdCwge2ZvY3VzT3JpZ2luOiB0aGlzLl9jbG9zZUludGVyYWN0aW9uVHlwZX0pO1xuICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSBudWxsITtcbiAgfVxufVxuXG4vKipcbiAqIENsb3NlcyB0aGUgZGlhbG9nIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlcmFjdGlvbiB0eXBlLiBUaGlzIGlzIGN1cnJlbnRseSBub3QgcGFydCBvZlxuICogYE1hdERpYWxvZ1JlZmAgYXMgdGhhdCB3b3VsZCBjb25mbGljdCB3aXRoIGN1c3RvbSBkaWFsb2cgcmVmIG1vY2tzIHByb3ZpZGVkIGluIHRlc3RzLlxuICogTW9yZSBkZXRhaWxzLiBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvcHVsbC85MjU3I2lzc3VlY29tbWVudC02NTEzNDIyMjYuXG4gKi9cbi8vIFRPRE86IE1vdmUgdGhpcyBiYWNrIGludG8gYE1hdERpYWxvZ1JlZmAgd2hlbiB3ZSBwcm92aWRlIGFuIG9mZmljaWFsIG1vY2sgZGlhbG9nIHJlZi5cbmV4cG9ydCBmdW5jdGlvbiBfY2xvc2VEaWFsb2dWaWE8Uj4ocmVmOiBNYXREaWFsb2dSZWY8Uj4sIGludGVyYWN0aW9uVHlwZTogRm9jdXNPcmlnaW4sIHJlc3VsdD86IFIpIHtcbiAgKHJlZiBhcyB1bmtub3duIGFzIHtfY2xvc2VJbnRlcmFjdGlvblR5cGU6IEZvY3VzT3JpZ2lufSkuX2Nsb3NlSW50ZXJhY3Rpb25UeXBlID0gaW50ZXJhY3Rpb25UeXBlO1xuICByZXR1cm4gcmVmLmNsb3NlKHJlc3VsdCk7XG59XG4iXX0=