@angular/material-experimental 14.2.1 → 15.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (590) hide show
  1. package/_index.scss +0 -69
  2. package/esm2020/selection/selection-column.mjs +11 -11
  3. package/esm2020/selection/selection-module.mjs +5 -5
  4. package/esm2020/version.mjs +1 -1
  5. package/fesm2015/material-experimental.mjs +1 -1
  6. package/fesm2015/material-experimental.mjs.map +1 -1
  7. package/fesm2015/selection.mjs +13 -13
  8. package/fesm2015/selection.mjs.map +1 -1
  9. package/fesm2020/material-experimental.mjs +1 -1
  10. package/fesm2020/material-experimental.mjs.map +1 -1
  11. package/fesm2020/selection.mjs +13 -13
  12. package/fesm2020/selection.mjs.map +1 -1
  13. package/package.json +55 -422
  14. package/selection/index.d.ts +4 -4
  15. package/esm2020/mdc-autocomplete/animations.mjs +0 -25
  16. package/esm2020/mdc-autocomplete/autocomplete-origin.mjs +0 -26
  17. package/esm2020/mdc-autocomplete/autocomplete-trigger.mjs +0 -54
  18. package/esm2020/mdc-autocomplete/autocomplete.mjs +0 -35
  19. package/esm2020/mdc-autocomplete/index.mjs +0 -9
  20. package/esm2020/mdc-autocomplete/mdc-autocomplete_public_index.mjs +0 -5
  21. package/esm2020/mdc-autocomplete/module.mjs +0 -46
  22. package/esm2020/mdc-autocomplete/public-api.mjs +0 -14
  23. package/esm2020/mdc-autocomplete/testing/autocomplete-harness-filters.mjs +0 -9
  24. package/esm2020/mdc-autocomplete/testing/autocomplete-harness.mjs +0 -31
  25. package/esm2020/mdc-autocomplete/testing/index.mjs +0 -9
  26. package/esm2020/mdc-autocomplete/testing/public-api.mjs +0 -10
  27. package/esm2020/mdc-button/button-base.mjs +0 -152
  28. package/esm2020/mdc-button/button.mjs +0 -69
  29. package/esm2020/mdc-button/fab.mjs +0 -175
  30. package/esm2020/mdc-button/icon-button.mjs +0 -57
  31. package/esm2020/mdc-button/index.mjs +0 -9
  32. package/esm2020/mdc-button/mdc-button_public_index.mjs +0 -5
  33. package/esm2020/mdc-button/module.mjs +0 -61
  34. package/esm2020/mdc-button/public-api.mjs +0 -12
  35. package/esm2020/mdc-button/testing/button-harness.mjs +0 -50
  36. package/esm2020/mdc-button/testing/index.mjs +0 -9
  37. package/esm2020/mdc-button/testing/public-api.mjs +0 -9
  38. package/esm2020/mdc-card/card.mjs +0 -261
  39. package/esm2020/mdc-card/index.mjs +0 -9
  40. package/esm2020/mdc-card/mdc-card_public_index.mjs +0 -5
  41. package/esm2020/mdc-card/module.mjs +0 -68
  42. package/esm2020/mdc-card/public-api.mjs +0 -10
  43. package/esm2020/mdc-card/testing/card-harness-filters.mjs +0 -9
  44. package/esm2020/mdc-card/testing/card-harness.mjs +0 -42
  45. package/esm2020/mdc-card/testing/index.mjs +0 -9
  46. package/esm2020/mdc-card/testing/public-api.mjs +0 -10
  47. package/esm2020/mdc-checkbox/checkbox.mjs +0 -93
  48. package/esm2020/mdc-checkbox/index.mjs +0 -9
  49. package/esm2020/mdc-checkbox/mdc-checkbox_public_index.mjs +0 -5
  50. package/esm2020/mdc-checkbox/module.mjs +0 -26
  51. package/esm2020/mdc-checkbox/public-api.mjs +0 -11
  52. package/esm2020/mdc-checkbox/testing/checkbox-harness.mjs +0 -41
  53. package/esm2020/mdc-checkbox/testing/index.mjs +0 -9
  54. package/esm2020/mdc-checkbox/testing/public-api.mjs +0 -9
  55. package/esm2020/mdc-chips/chip-action.mjs +0 -90
  56. package/esm2020/mdc-chips/chip-edit-input.mjs +0 -60
  57. package/esm2020/mdc-chips/chip-grid.mjs +0 -407
  58. package/esm2020/mdc-chips/chip-icons.mjs +0 -110
  59. package/esm2020/mdc-chips/chip-input.mjs +0 -212
  60. package/esm2020/mdc-chips/chip-listbox.mjs +0 -332
  61. package/esm2020/mdc-chips/chip-option.mjs +0 -160
  62. package/esm2020/mdc-chips/chip-row.mjs +0 -176
  63. package/esm2020/mdc-chips/chip-set.mjs +0 -271
  64. package/esm2020/mdc-chips/chip-text-control.mjs +0 -9
  65. package/esm2020/mdc-chips/chip.mjs +0 -287
  66. package/esm2020/mdc-chips/index.mjs +0 -9
  67. package/esm2020/mdc-chips/mdc-chips_public_index.mjs +0 -5
  68. package/esm2020/mdc-chips/module.mjs +0 -87
  69. package/esm2020/mdc-chips/public-api.mjs +0 -20
  70. package/esm2020/mdc-chips/testing/chip-avatar-harness.mjs +0 -22
  71. package/esm2020/mdc-chips/testing/chip-grid-harness.mjs +0 -43
  72. package/esm2020/mdc-chips/testing/chip-harness-filters.mjs +0 -9
  73. package/esm2020/mdc-chips/testing/chip-harness.mjs +0 -58
  74. package/esm2020/mdc-chips/testing/chip-input-harness.mjs +0 -82
  75. package/esm2020/mdc-chips/testing/chip-listbox-harness.mjs +0 -59
  76. package/esm2020/mdc-chips/testing/chip-option-harness.mjs +0 -45
  77. package/esm2020/mdc-chips/testing/chip-remove-harness.mjs +0 -26
  78. package/esm2020/mdc-chips/testing/chip-row-harness.mjs +0 -22
  79. package/esm2020/mdc-chips/testing/chip-set-harness.mjs +0 -26
  80. package/esm2020/mdc-chips/testing/index.mjs +0 -9
  81. package/esm2020/mdc-chips/testing/public-api.mjs +0 -18
  82. package/esm2020/mdc-chips/tokens.mjs +0 -33
  83. package/esm2020/mdc-core/index.mjs +0 -9
  84. package/esm2020/mdc-core/mdc-core_public_index.mjs +0 -5
  85. package/esm2020/mdc-core/option/index.mjs +0 -30
  86. package/esm2020/mdc-core/option/optgroup.mjs +0 -46
  87. package/esm2020/mdc-core/option/option.mjs +0 -52
  88. package/esm2020/mdc-core/public-api.mjs +0 -10
  89. package/esm2020/mdc-core/testing/index.mjs +0 -9
  90. package/esm2020/mdc-core/testing/optgroup-harness-filters.mjs +0 -9
  91. package/esm2020/mdc-core/testing/optgroup-harness.mjs +0 -43
  92. package/esm2020/mdc-core/testing/option-harness-filters.mjs +0 -9
  93. package/esm2020/mdc-core/testing/option-harness.mjs +0 -53
  94. package/esm2020/mdc-core/testing/public-api.mjs +0 -12
  95. package/esm2020/mdc-dialog/dialog-container.mjs +0 -171
  96. package/esm2020/mdc-dialog/dialog-content-directives.mjs +0 -179
  97. package/esm2020/mdc-dialog/dialog-ref.mjs +0 -14
  98. package/esm2020/mdc-dialog/dialog.mjs +0 -82
  99. package/esm2020/mdc-dialog/index.mjs +0 -9
  100. package/esm2020/mdc-dialog/mdc-dialog_public_index.mjs +0 -5
  101. package/esm2020/mdc-dialog/module.mjs +0 -53
  102. package/esm2020/mdc-dialog/public-api.mjs +0 -14
  103. package/esm2020/mdc-dialog/testing/dialog-harness.mjs +0 -29
  104. package/esm2020/mdc-dialog/testing/dialog-opener.mjs +0 -45
  105. package/esm2020/mdc-dialog/testing/index.mjs +0 -9
  106. package/esm2020/mdc-dialog/testing/public-api.mjs +0 -10
  107. package/esm2020/mdc-form-field/directives/error.mjs +0 -47
  108. package/esm2020/mdc-form-field/directives/floating-label.mjs +0 -73
  109. package/esm2020/mdc-form-field/directives/hint.mjs +0 -39
  110. package/esm2020/mdc-form-field/directives/label.mjs +0 -21
  111. package/esm2020/mdc-form-field/directives/line-ripple.mjs +0 -59
  112. package/esm2020/mdc-form-field/directives/notched-outline.mjs +0 -68
  113. package/esm2020/mdc-form-field/directives/prefix.mjs +0 -32
  114. package/esm2020/mdc-form-field/directives/suffix.mjs +0 -32
  115. package/esm2020/mdc-form-field/form-field.mjs +0 -608
  116. package/esm2020/mdc-form-field/index.mjs +0 -9
  117. package/esm2020/mdc-form-field/mdc-form-field_public_index.mjs +0 -5
  118. package/esm2020/mdc-form-field/module.mjs +0 -53
  119. package/esm2020/mdc-form-field/public-api.mjs +0 -16
  120. package/esm2020/mdc-form-field/testing/form-field-harness.mjs +0 -58
  121. package/esm2020/mdc-form-field/testing/index.mjs +0 -9
  122. package/esm2020/mdc-form-field/testing/public-api.mjs +0 -13
  123. package/esm2020/mdc-input/index.mjs +0 -9
  124. package/esm2020/mdc-input/input.mjs +0 -55
  125. package/esm2020/mdc-input/mdc-input_public_index.mjs +0 -5
  126. package/esm2020/mdc-input/module.mjs +0 -27
  127. package/esm2020/mdc-input/public-api.mjs +0 -11
  128. package/esm2020/mdc-input/testing/index.mjs +0 -9
  129. package/esm2020/mdc-input/testing/public-api.mjs +0 -9
  130. package/esm2020/mdc-list/action-list.mjs +0 -31
  131. package/esm2020/mdc-list/index.mjs +0 -9
  132. package/esm2020/mdc-list/list-base.mjs +0 -272
  133. package/esm2020/mdc-list/list-item-sections.mjs +0 -138
  134. package/esm2020/mdc-list/list-option-types.mjs +0 -16
  135. package/esm2020/mdc-list/list-option.mjs +0 -253
  136. package/esm2020/mdc-list/list.mjs +0 -82
  137. package/esm2020/mdc-list/mdc-list_public_index.mjs +0 -5
  138. package/esm2020/mdc-list/module.mjs +0 -98
  139. package/esm2020/mdc-list/nav-list.mjs +0 -31
  140. package/esm2020/mdc-list/public-api.mjs +0 -18
  141. package/esm2020/mdc-list/selection-list.mjs +0 -338
  142. package/esm2020/mdc-list/subheader.mjs +0 -27
  143. package/esm2020/mdc-list/testing/action-list-harness.mjs +0 -59
  144. package/esm2020/mdc-list/testing/index.mjs +0 -9
  145. package/esm2020/mdc-list/testing/list-harness-base.mjs +0 -95
  146. package/esm2020/mdc-list/testing/list-harness-filters.mjs +0 -9
  147. package/esm2020/mdc-list/testing/list-harness.mjs +0 -41
  148. package/esm2020/mdc-list/testing/list-item-harness-base.mjs +0 -150
  149. package/esm2020/mdc-list/testing/nav-list-harness.mjs +0 -69
  150. package/esm2020/mdc-list/testing/public-api.mjs +0 -14
  151. package/esm2020/mdc-list/testing/selection-list-harness.mjs +0 -117
  152. package/esm2020/mdc-menu/directives.mjs +0 -38
  153. package/esm2020/mdc-menu/index.mjs +0 -9
  154. package/esm2020/mdc-menu/mdc-menu_public_index.mjs +0 -5
  155. package/esm2020/mdc-menu/menu-item.mjs +0 -36
  156. package/esm2020/mdc-menu/menu.mjs +0 -43
  157. package/esm2020/mdc-menu/module.mjs +0 -44
  158. package/esm2020/mdc-menu/public-api.mjs +0 -13
  159. package/esm2020/mdc-menu/testing/index.mjs +0 -9
  160. package/esm2020/mdc-menu/testing/menu-harness.mjs +0 -46
  161. package/esm2020/mdc-menu/testing/public-api.mjs +0 -9
  162. package/esm2020/mdc-paginator/index.mjs +0 -9
  163. package/esm2020/mdc-paginator/mdc-paginator_public_index.mjs +0 -5
  164. package/esm2020/mdc-paginator/module.mjs +0 -30
  165. package/esm2020/mdc-paginator/paginator.mjs +0 -48
  166. package/esm2020/mdc-paginator/public-api.mjs +0 -11
  167. package/esm2020/mdc-paginator/testing/index.mjs +0 -9
  168. package/esm2020/mdc-paginator/testing/paginator-harness.mjs +0 -36
  169. package/esm2020/mdc-paginator/testing/public-api.mjs +0 -9
  170. package/esm2020/mdc-progress-bar/index.mjs +0 -9
  171. package/esm2020/mdc-progress-bar/mdc-progress-bar_public_index.mjs +0 -5
  172. package/esm2020/mdc-progress-bar/module.mjs +0 -24
  173. package/esm2020/mdc-progress-bar/progress-bar.mjs +0 -152
  174. package/esm2020/mdc-progress-bar/public-api.mjs +0 -11
  175. package/esm2020/mdc-progress-bar/testing/index.mjs +0 -9
  176. package/esm2020/mdc-progress-bar/testing/progress-bar-harness.mjs +0 -33
  177. package/esm2020/mdc-progress-bar/testing/public-api.mjs +0 -9
  178. package/esm2020/mdc-progress-bar/testing/testing_public_index.mjs +0 -5
  179. package/esm2020/mdc-progress-spinner/index.mjs +0 -9
  180. package/esm2020/mdc-progress-spinner/mdc-progress-spinner_public_index.mjs +0 -5
  181. package/esm2020/mdc-progress-spinner/module.mjs +0 -26
  182. package/esm2020/mdc-progress-spinner/progress-spinner.mjs +0 -151
  183. package/esm2020/mdc-progress-spinner/public-api.mjs +0 -11
  184. package/esm2020/mdc-progress-spinner/testing/index.mjs +0 -9
  185. package/esm2020/mdc-progress-spinner/testing/progress-spinner-harness.mjs +0 -35
  186. package/esm2020/mdc-progress-spinner/testing/public-api.mjs +0 -9
  187. package/esm2020/mdc-progress-spinner/testing/testing_public_index.mjs +0 -5
  188. package/esm2020/mdc-radio/index.mjs +0 -9
  189. package/esm2020/mdc-radio/mdc-radio_public_index.mjs +0 -5
  190. package/esm2020/mdc-radio/module.mjs +0 -26
  191. package/esm2020/mdc-radio/public-api.mjs +0 -11
  192. package/esm2020/mdc-radio/radio.mjs +0 -111
  193. package/esm2020/mdc-radio/testing/index.mjs +0 -9
  194. package/esm2020/mdc-radio/testing/public-api.mjs +0 -9
  195. package/esm2020/mdc-radio/testing/radio-harness.mjs +0 -50
  196. package/esm2020/mdc-select/index.mjs +0 -9
  197. package/esm2020/mdc-select/mdc-select_public_index.mjs +0 -5
  198. package/esm2020/mdc-select/module.mjs +0 -46
  199. package/esm2020/mdc-select/public-api.mjs +0 -12
  200. package/esm2020/mdc-select/select-animations.mjs +0 -38
  201. package/esm2020/mdc-select/select-errors.mjs +0 -35
  202. package/esm2020/mdc-select/select.mjs +0 -172
  203. package/esm2020/mdc-select/testing/index.mjs +0 -9
  204. package/esm2020/mdc-select/testing/public-api.mjs +0 -10
  205. package/esm2020/mdc-select/testing/select-harness-filters.mjs +0 -9
  206. package/esm2020/mdc-select/testing/select-harness.mjs +0 -29
  207. package/esm2020/mdc-slide-toggle/index.mjs +0 -9
  208. package/esm2020/mdc-slide-toggle/mdc-slide-toggle_public_index.mjs +0 -5
  209. package/esm2020/mdc-slide-toggle/module.mjs +0 -27
  210. package/esm2020/mdc-slide-toggle/public-api.mjs +0 -12
  211. package/esm2020/mdc-slide-toggle/slide-toggle-config.mjs +0 -14
  212. package/esm2020/mdc-slide-toggle/slide-toggle.mjs +0 -99
  213. package/esm2020/mdc-slide-toggle/testing/index.mjs +0 -9
  214. package/esm2020/mdc-slide-toggle/testing/public-api.mjs +0 -9
  215. package/esm2020/mdc-slide-toggle/testing/slide-toggle-harness.mjs +0 -47
  216. package/esm2020/mdc-slider/global-change-and-input-listener.mjs +0 -59
  217. package/esm2020/mdc-slider/index.mjs +0 -9
  218. package/esm2020/mdc-slider/mdc-slider_public_index.mjs +0 -5
  219. package/esm2020/mdc-slider/module.mjs +0 -26
  220. package/esm2020/mdc-slider/public-api.mjs +0 -10
  221. package/esm2020/mdc-slider/slider.mjs +0 -1094
  222. package/esm2020/mdc-slider/testing/index.mjs +0 -9
  223. package/esm2020/mdc-slider/testing/public-api.mjs +0 -11
  224. package/esm2020/mdc-slider/testing/slider-harness-filters.mjs +0 -2
  225. package/esm2020/mdc-slider/testing/slider-harness.mjs +0 -62
  226. package/esm2020/mdc-slider/testing/slider-thumb-harness.mjs +0 -94
  227. package/esm2020/mdc-snack-bar/index.mjs +0 -9
  228. package/esm2020/mdc-snack-bar/mdc-snack-bar_public_index.mjs +0 -5
  229. package/esm2020/mdc-snack-bar/module.mjs +0 -51
  230. package/esm2020/mdc-snack-bar/public-api.mjs +0 -14
  231. package/esm2020/mdc-snack-bar/simple-snack-bar.mjs +0 -40
  232. package/esm2020/mdc-snack-bar/snack-bar-container.mjs +0 -41
  233. package/esm2020/mdc-snack-bar/snack-bar-content.mjs +0 -52
  234. package/esm2020/mdc-snack-bar/snack-bar.mjs +0 -45
  235. package/esm2020/mdc-snack-bar/testing/index.mjs +0 -9
  236. package/esm2020/mdc-snack-bar/testing/public-api.mjs +0 -9
  237. package/esm2020/mdc-snack-bar/testing/snack-bar-harness.mjs +0 -34
  238. package/esm2020/mdc-table/cell.mjs +0 -141
  239. package/esm2020/mdc-table/index.mjs +0 -9
  240. package/esm2020/mdc-table/mdc-table_public_index.mjs +0 -5
  241. package/esm2020/mdc-table/module.mjs +0 -94
  242. package/esm2020/mdc-table/public-api.mjs +0 -14
  243. package/esm2020/mdc-table/row.mjs +0 -143
  244. package/esm2020/mdc-table/table-data-source.mjs +0 -24
  245. package/esm2020/mdc-table/table.mjs +0 -74
  246. package/esm2020/mdc-table/testing/cell-harness.mjs +0 -50
  247. package/esm2020/mdc-table/testing/index.mjs +0 -9
  248. package/esm2020/mdc-table/testing/public-api.mjs +0 -11
  249. package/esm2020/mdc-table/testing/row-harness.mjs +0 -64
  250. package/esm2020/mdc-table/testing/table-harness.mjs +0 -30
  251. package/esm2020/mdc-table/text-column.mjs +0 -58
  252. package/esm2020/mdc-tabs/index.mjs +0 -9
  253. package/esm2020/mdc-tabs/ink-bar.mjs +0 -130
  254. package/esm2020/mdc-tabs/mdc-tabs_public_index.mjs +0 -5
  255. package/esm2020/mdc-tabs/module.mjs +0 -93
  256. package/esm2020/mdc-tabs/public-api.mjs +0 -19
  257. package/esm2020/mdc-tabs/tab-body.mjs +0 -60
  258. package/esm2020/mdc-tabs/tab-content.mjs +0 -20
  259. package/esm2020/mdc-tabs/tab-group.mjs +0 -98
  260. package/esm2020/mdc-tabs/tab-header.mjs +0 -73
  261. package/esm2020/mdc-tabs/tab-label-wrapper.mjs +0 -32
  262. package/esm2020/mdc-tabs/tab-label.mjs +0 -22
  263. package/esm2020/mdc-tabs/tab-nav-bar/tab-nav-bar.mjs +0 -202
  264. package/esm2020/mdc-tabs/tab.mjs +0 -34
  265. package/esm2020/mdc-tabs/testing/index.mjs +0 -9
  266. package/esm2020/mdc-tabs/testing/public-api.mjs +0 -13
  267. package/esm2020/mdc-tabs/testing/tab-group-harness.mjs +0 -56
  268. package/esm2020/mdc-tabs/testing/tab-harness-filters.mjs +0 -2
  269. package/esm2020/mdc-tabs/testing/tab-harness.mjs +0 -64
  270. package/esm2020/mdc-tabs/testing/tab-link-harness.mjs +0 -40
  271. package/esm2020/mdc-tabs/testing/tab-nav-bar-harness.mjs +0 -66
  272. package/esm2020/mdc-tabs/testing/tab-nav-panel-harness.mjs +0 -27
  273. package/esm2020/mdc-tooltip/index.mjs +0 -9
  274. package/esm2020/mdc-tooltip/mdc-tooltip_public_index.mjs +0 -5
  275. package/esm2020/mdc-tooltip/module.mjs +0 -31
  276. package/esm2020/mdc-tooltip/public-api.mjs +0 -12
  277. package/esm2020/mdc-tooltip/testing/index.mjs +0 -9
  278. package/esm2020/mdc-tooltip/testing/public-api.mjs +0 -9
  279. package/esm2020/mdc-tooltip/testing/tooltip-harness.mjs +0 -30
  280. package/esm2020/mdc-tooltip/tooltip-animations.mjs +0 -24
  281. package/esm2020/mdc-tooltip/tooltip.mjs +0 -132
  282. package/fesm2015/mdc-autocomplete/testing.mjs +0 -50
  283. package/fesm2015/mdc-autocomplete/testing.mjs.map +0 -1
  284. package/fesm2015/mdc-autocomplete.mjs +0 -196
  285. package/fesm2015/mdc-autocomplete.mjs.map +0 -1
  286. package/fesm2015/mdc-button/testing.mjs +0 -75
  287. package/fesm2015/mdc-button/testing.mjs.map +0 -1
  288. package/fesm2015/mdc-button.mjs +0 -490
  289. package/fesm2015/mdc-button.mjs.map +0 -1
  290. package/fesm2015/mdc-card/testing.mjs +0 -63
  291. package/fesm2015/mdc-card/testing.mjs.map +0 -1
  292. package/fesm2015/mdc-card.mjs +0 -351
  293. package/fesm2015/mdc-card.mjs.map +0 -1
  294. package/fesm2015/mdc-checkbox/testing.mjs +0 -56
  295. package/fesm2015/mdc-checkbox/testing.mjs.map +0 -1
  296. package/fesm2015/mdc-checkbox.mjs +0 -142
  297. package/fesm2015/mdc-checkbox.mjs.map +0 -1
  298. package/fesm2015/mdc-chips/testing.mjs +0 -394
  299. package/fesm2015/mdc-chips/testing.mjs.map +0 -1
  300. package/fesm2015/mdc-chips.mjs +0 -2169
  301. package/fesm2015/mdc-chips.mjs.map +0 -1
  302. package/fesm2015/mdc-core/testing.mjs +0 -118
  303. package/fesm2015/mdc-core/testing.mjs.map +0 -1
  304. package/fesm2015/mdc-core.mjs +0 -141
  305. package/fesm2015/mdc-core.mjs.map +0 -1
  306. package/fesm2015/mdc-dialog/testing.mjs +0 -90
  307. package/fesm2015/mdc-dialog/testing.mjs.map +0 -1
  308. package/fesm2015/mdc-dialog.mjs +0 -500
  309. package/fesm2015/mdc-dialog.mjs.map +0 -1
  310. package/fesm2015/mdc-form-field/testing.mjs +0 -78
  311. package/fesm2015/mdc-form-field/testing.mjs.map +0 -1
  312. package/fesm2015/mdc-form-field.mjs +0 -1018
  313. package/fesm2015/mdc-form-field.mjs.map +0 -1
  314. package/fesm2015/mdc-input/testing.mjs +0 -18
  315. package/fesm2015/mdc-input/testing.mjs.map +0 -1
  316. package/fesm2015/mdc-input.mjs +0 -103
  317. package/fesm2015/mdc-input.mjs.map +0 -1
  318. package/fesm2015/mdc-list/testing.mjs +0 -574
  319. package/fesm2015/mdc-list/testing.mjs.map +0 -1
  320. package/fesm2015/mdc-list.mjs +0 -1264
  321. package/fesm2015/mdc-list.mjs.map +0 -1
  322. package/fesm2015/mdc-menu/testing.mjs +0 -59
  323. package/fesm2015/mdc-menu/testing.mjs.map +0 -1
  324. package/fesm2015/mdc-menu.mjs +0 -174
  325. package/fesm2015/mdc-menu.mjs.map +0 -1
  326. package/fesm2015/mdc-paginator/testing.mjs +0 -55
  327. package/fesm2015/mdc-paginator/testing.mjs.map +0 -1
  328. package/fesm2015/mdc-paginator.mjs +0 -100
  329. package/fesm2015/mdc-paginator.mjs.map +0 -1
  330. package/fesm2015/mdc-progress-bar/testing.mjs +0 -54
  331. package/fesm2015/mdc-progress-bar/testing.mjs.map +0 -1
  332. package/fesm2015/mdc-progress-bar.mjs +0 -198
  333. package/fesm2015/mdc-progress-bar.mjs.map +0 -1
  334. package/fesm2015/mdc-progress-spinner/testing.mjs +0 -56
  335. package/fesm2015/mdc-progress-spinner/testing.mjs.map +0 -1
  336. package/fesm2015/mdc-progress-spinner.mjs +0 -200
  337. package/fesm2015/mdc-progress-spinner.mjs.map +0 -1
  338. package/fesm2015/mdc-radio/testing.mjs +0 -63
  339. package/fesm2015/mdc-radio/testing.mjs.map +0 -1
  340. package/fesm2015/mdc-radio.mjs +0 -155
  341. package/fesm2015/mdc-radio.mjs.map +0 -1
  342. package/fesm2015/mdc-select/testing.mjs +0 -48
  343. package/fesm2015/mdc-select/testing.mjs.map +0 -1
  344. package/fesm2015/mdc-select.mjs +0 -273
  345. package/fesm2015/mdc-select.mjs.map +0 -1
  346. package/fesm2015/mdc-slide-toggle/testing.mjs +0 -66
  347. package/fesm2015/mdc-slide-toggle/testing.mjs.map +0 -1
  348. package/fesm2015/mdc-slide-toggle.mjs +0 -159
  349. package/fesm2015/mdc-slide-toggle.mjs.map +0 -1
  350. package/fesm2015/mdc-slider/testing.mjs +0 -199
  351. package/fesm2015/mdc-slider/testing.mjs.map +0 -1
  352. package/fesm2015/mdc-slider.mjs +0 -1212
  353. package/fesm2015/mdc-slider.mjs.map +0 -1
  354. package/fesm2015/mdc-snack-bar/testing.mjs +0 -49
  355. package/fesm2015/mdc-snack-bar/testing.mjs.map +0 -1
  356. package/fesm2015/mdc-snack-bar.mjs +0 -229
  357. package/fesm2015/mdc-snack-bar.mjs.map +0 -1
  358. package/fesm2015/mdc-table/testing.mjs +0 -158
  359. package/fesm2015/mdc-table/testing.mjs.map +0 -1
  360. package/fesm2015/mdc-table.mjs +0 -540
  361. package/fesm2015/mdc-table.mjs.map +0 -1
  362. package/fesm2015/mdc-tabs/testing.mjs +0 -273
  363. package/fesm2015/mdc-tabs/testing.mjs.map +0 -1
  364. package/fesm2015/mdc-tabs.mjs +0 -737
  365. package/fesm2015/mdc-tabs.mjs.map +0 -1
  366. package/fesm2015/mdc-tooltip/testing.mjs +0 -49
  367. package/fesm2015/mdc-tooltip/testing.mjs.map +0 -1
  368. package/fesm2015/mdc-tooltip.mjs +0 -206
  369. package/fesm2015/mdc-tooltip.mjs.map +0 -1
  370. package/fesm2020/mdc-autocomplete/testing.mjs +0 -58
  371. package/fesm2020/mdc-autocomplete/testing.mjs.map +0 -1
  372. package/fesm2020/mdc-autocomplete.mjs +0 -196
  373. package/fesm2020/mdc-autocomplete.mjs.map +0 -1
  374. package/fesm2020/mdc-button/testing.mjs +0 -69
  375. package/fesm2020/mdc-button/testing.mjs.map +0 -1
  376. package/fesm2020/mdc-button.mjs +0 -510
  377. package/fesm2020/mdc-button.mjs.map +0 -1
  378. package/fesm2020/mdc-card/testing.mjs +0 -69
  379. package/fesm2020/mdc-card/testing.mjs.map +0 -1
  380. package/fesm2020/mdc-card.mjs +0 -349
  381. package/fesm2020/mdc-card.mjs.map +0 -1
  382. package/fesm2020/mdc-checkbox/testing.mjs +0 -60
  383. package/fesm2020/mdc-checkbox/testing.mjs.map +0 -1
  384. package/fesm2020/mdc-checkbox.mjs +0 -139
  385. package/fesm2020/mdc-checkbox.mjs.map +0 -1
  386. package/fesm2020/mdc-chips/testing.mjs +0 -395
  387. package/fesm2020/mdc-chips/testing.mjs.map +0 -1
  388. package/fesm2020/mdc-chips.mjs +0 -2161
  389. package/fesm2020/mdc-chips.mjs.map +0 -1
  390. package/fesm2020/mdc-core/testing.mjs +0 -129
  391. package/fesm2020/mdc-core/testing.mjs.map +0 -1
  392. package/fesm2020/mdc-core.mjs +0 -139
  393. package/fesm2020/mdc-core.mjs.map +0 -1
  394. package/fesm2020/mdc-dialog/testing.mjs +0 -90
  395. package/fesm2020/mdc-dialog/testing.mjs.map +0 -1
  396. package/fesm2020/mdc-dialog.mjs +0 -499
  397. package/fesm2020/mdc-dialog.mjs.map +0 -1
  398. package/fesm2020/mdc-form-field/testing.mjs +0 -78
  399. package/fesm2020/mdc-form-field/testing.mjs.map +0 -1
  400. package/fesm2020/mdc-form-field.mjs +0 -1014
  401. package/fesm2020/mdc-form-field.mjs.map +0 -1
  402. package/fesm2020/mdc-input/testing.mjs +0 -18
  403. package/fesm2020/mdc-input/testing.mjs.map +0 -1
  404. package/fesm2020/mdc-input.mjs +0 -103
  405. package/fesm2020/mdc-input.mjs.map +0 -1
  406. package/fesm2020/mdc-list/testing.mjs +0 -544
  407. package/fesm2020/mdc-list/testing.mjs.map +0 -1
  408. package/fesm2020/mdc-list.mjs +0 -1260
  409. package/fesm2020/mdc-list.mjs.map +0 -1
  410. package/fesm2020/mdc-menu/testing.mjs +0 -65
  411. package/fesm2020/mdc-menu/testing.mjs.map +0 -1
  412. package/fesm2020/mdc-menu.mjs +0 -172
  413. package/fesm2020/mdc-menu.mjs.map +0 -1
  414. package/fesm2020/mdc-paginator/testing.mjs +0 -55
  415. package/fesm2020/mdc-paginator/testing.mjs.map +0 -1
  416. package/fesm2020/mdc-paginator.mjs +0 -98
  417. package/fesm2020/mdc-paginator.mjs.map +0 -1
  418. package/fesm2020/mdc-progress-bar/testing.mjs +0 -56
  419. package/fesm2020/mdc-progress-bar/testing.mjs.map +0 -1
  420. package/fesm2020/mdc-progress-bar.mjs +0 -196
  421. package/fesm2020/mdc-progress-bar.mjs.map +0 -1
  422. package/fesm2020/mdc-progress-spinner/testing.mjs +0 -58
  423. package/fesm2020/mdc-progress-spinner/testing.mjs.map +0 -1
  424. package/fesm2020/mdc-progress-spinner.mjs +0 -197
  425. package/fesm2020/mdc-progress-spinner.mjs.map +0 -1
  426. package/fesm2020/mdc-radio/testing.mjs +0 -69
  427. package/fesm2020/mdc-radio/testing.mjs.map +0 -1
  428. package/fesm2020/mdc-radio.mjs +0 -153
  429. package/fesm2020/mdc-radio.mjs.map +0 -1
  430. package/fesm2020/mdc-select/testing.mjs +0 -56
  431. package/fesm2020/mdc-select/testing.mjs.map +0 -1
  432. package/fesm2020/mdc-select.mjs +0 -273
  433. package/fesm2020/mdc-select.mjs.map +0 -1
  434. package/fesm2020/mdc-slide-toggle/testing.mjs +0 -66
  435. package/fesm2020/mdc-slide-toggle/testing.mjs.map +0 -1
  436. package/fesm2020/mdc-slide-toggle.mjs +0 -157
  437. package/fesm2020/mdc-slide-toggle.mjs.map +0 -1
  438. package/fesm2020/mdc-slider/testing.mjs +0 -172
  439. package/fesm2020/mdc-slider/testing.mjs.map +0 -1
  440. package/fesm2020/mdc-slider.mjs +0 -1191
  441. package/fesm2020/mdc-slider.mjs.map +0 -1
  442. package/fesm2020/mdc-snack-bar/testing.mjs +0 -53
  443. package/fesm2020/mdc-snack-bar/testing.mjs.map +0 -1
  444. package/fesm2020/mdc-snack-bar.mjs +0 -232
  445. package/fesm2020/mdc-snack-bar.mjs.map +0 -1
  446. package/fesm2020/mdc-table/testing.mjs +0 -158
  447. package/fesm2020/mdc-table/testing.mjs.map +0 -1
  448. package/fesm2020/mdc-table.mjs +0 -539
  449. package/fesm2020/mdc-table.mjs.map +0 -1
  450. package/fesm2020/mdc-tabs/testing.mjs +0 -265
  451. package/fesm2020/mdc-tabs/testing.mjs.map +0 -1
  452. package/fesm2020/mdc-tabs.mjs +0 -723
  453. package/fesm2020/mdc-tabs.mjs.map +0 -1
  454. package/fesm2020/mdc-tooltip/testing.mjs +0 -49
  455. package/fesm2020/mdc-tooltip/testing.mjs.map +0 -1
  456. package/fesm2020/mdc-tooltip.mjs +0 -202
  457. package/fesm2020/mdc-tooltip.mjs.map +0 -1
  458. package/mdc-autocomplete/_autocomplete-theme.import.scss +0 -5
  459. package/mdc-autocomplete/_autocomplete-theme.scss +0 -48
  460. package/mdc-autocomplete/index.d.ts +0 -97
  461. package/mdc-autocomplete/testing/index.d.ts +0 -32
  462. package/mdc-button/_button-base.import.scss +0 -4
  463. package/mdc-button/_button-base.scss +0 -95
  464. package/mdc-button/_button-theme-private.scss +0 -62
  465. package/mdc-button/_button-theme.import.scss +0 -16
  466. package/mdc-button/_button-theme.scss +0 -224
  467. package/mdc-button/_fab-theme.scss +0 -90
  468. package/mdc-button/_icon-button-theme.scss +0 -76
  469. package/mdc-button/index.d.ts +0 -216
  470. package/mdc-button/testing/index.d.ts +0 -41
  471. package/mdc-card/_card-theme.import.scss +0 -7
  472. package/mdc-card/_card-theme.scss +0 -74
  473. package/mdc-card/index.d.ts +0 -194
  474. package/mdc-card/testing/index.d.ts +0 -44
  475. package/mdc-checkbox/_checkbox-private.scss +0 -53
  476. package/mdc-checkbox/_checkbox-theme.import.scss +0 -15
  477. package/mdc-checkbox/_checkbox-theme.scss +0 -122
  478. package/mdc-checkbox/index.d.ts +0 -87
  479. package/mdc-checkbox/testing/index.d.ts +0 -28
  480. package/mdc-chips/_chips-theme.import.scss +0 -8
  481. package/mdc-chips/_chips-theme.scss +0 -117
  482. package/mdc-chips/index.d.ts +0 -979
  483. package/mdc-chips/testing/index.d.ts +0 -232
  484. package/mdc-core/_core-theme.import.scss +0 -10
  485. package/mdc-core/_core-theme.scss +0 -78
  486. package/mdc-core/_elevation.scss +0 -38
  487. package/mdc-core/color/_all-color.scss +0 -25
  488. package/mdc-core/density/_all-density.scss +0 -25
  489. package/mdc-core/index.d.ts +0 -206
  490. package/mdc-core/mdc-helpers/_focus-indicators-theme.scss +0 -39
  491. package/mdc-core/mdc-helpers/_focus-indicators.import.scss +0 -10
  492. package/mdc-core/mdc-helpers/_focus-indicators.scss +0 -15
  493. package/mdc-core/mdc-helpers/_mdc-helpers.import.scss +0 -8
  494. package/mdc-core/mdc-helpers/_mdc-helpers.scss +0 -221
  495. package/mdc-core/option/_optgroup-theme.import.scss +0 -7
  496. package/mdc-core/option/_optgroup-theme.scss +0 -44
  497. package/mdc-core/option/_option-theme.import.scss +0 -7
  498. package/mdc-core/option/_option-theme.scss +0 -87
  499. package/mdc-core/testing/index.d.ts +0 -64
  500. package/mdc-core/theming/_all-theme.scss +0 -61
  501. package/mdc-core/theming/prebuilt/deeppurple-amber.css +0 -1
  502. package/mdc-core/theming/prebuilt/indigo-pink.css +0 -1
  503. package/mdc-core/theming/prebuilt/pink-bluegrey.css +0 -1
  504. package/mdc-core/theming/prebuilt/purple-green.css +0 -1
  505. package/mdc-core/typography/_all-typography.scss +0 -99
  506. package/mdc-dialog/_dialog-legacy-padding.import.scss +0 -1
  507. package/mdc-dialog/_dialog-legacy-padding.scss +0 -31
  508. package/mdc-dialog/_dialog-theme.import.scss +0 -5
  509. package/mdc-dialog/_dialog-theme.scss +0 -78
  510. package/mdc-dialog/_mdc-dialog-structure-overrides.import.scss +0 -1
  511. package/mdc-dialog/_mdc-dialog-structure-overrides.scss +0 -56
  512. package/mdc-dialog/index.d.ts +0 -217
  513. package/mdc-dialog/testing/index.d.ts +0 -47
  514. package/mdc-form-field/_form-field-density.scss +0 -119
  515. package/mdc-form-field/_form-field-focus-overlay.scss +0 -34
  516. package/mdc-form-field/_form-field-high-contrast.scss +0 -39
  517. package/mdc-form-field/_form-field-native-select.scss +0 -133
  518. package/mdc-form-field/_form-field-sizing.scss +0 -40
  519. package/mdc-form-field/_form-field-subscript.scss +0 -83
  520. package/mdc-form-field/_form-field-theme.scss +0 -148
  521. package/mdc-form-field/_mdc-text-field-structure-overrides.scss +0 -129
  522. package/mdc-form-field/_mdc-text-field-textarea-overrides.scss +0 -36
  523. package/mdc-form-field/_mdc-text-field-theme-variable-refresh.scss +0 -63
  524. package/mdc-form-field/index.d.ts +0 -431
  525. package/mdc-form-field/testing/index.d.ts +0 -48
  526. package/mdc-input/_input-theme.import.scss +0 -5
  527. package/mdc-input/_input-theme.scss +0 -35
  528. package/mdc-input/index.d.ts +0 -30
  529. package/mdc-input/testing/index.d.ts +0 -20
  530. package/mdc-list/_interactive-list-theme.import.scss +0 -5
  531. package/mdc-list/_interactive-list-theme.scss +0 -40
  532. package/mdc-list/_list-option-theme.import.scss +0 -13
  533. package/mdc-list/_list-option-theme.scss +0 -28
  534. package/mdc-list/_list-option-trailing-avatar-compat.scss +0 -58
  535. package/mdc-list/_list-theme.import.scss +0 -17
  536. package/mdc-list/_list-theme.scss +0 -81
  537. package/mdc-list/index.d.ts +0 -534
  538. package/mdc-list/testing/index.d.ts +0 -372
  539. package/mdc-menu/_menu-theme.import.scss +0 -5
  540. package/mdc-menu/_menu-theme.scss +0 -88
  541. package/mdc-menu/index.d.ts +0 -110
  542. package/mdc-menu/testing/index.d.ts +0 -38
  543. package/mdc-paginator/_paginator-theme.import.scss +0 -9
  544. package/mdc-paginator/_paginator-theme.scss +0 -106
  545. package/mdc-paginator/_paginator-variables.import.scss +0 -1
  546. package/mdc-paginator/_paginator-variables.scss +0 -13
  547. package/mdc-paginator/index.d.ts +0 -72
  548. package/mdc-paginator/testing/index.d.ts +0 -30
  549. package/mdc-progress-bar/_progress-bar-theme.import.scss +0 -6
  550. package/mdc-progress-bar/_progress-bar-theme.scss +0 -57
  551. package/mdc-progress-bar/index.d.ts +0 -98
  552. package/mdc-progress-bar/testing/index.d.ts +0 -24
  553. package/mdc-progress-spinner/_progress-spinner-theme.import.scss +0 -6
  554. package/mdc-progress-spinner/_progress-spinner-theme.scss +0 -48
  555. package/mdc-progress-spinner/index.d.ts +0 -90
  556. package/mdc-progress-spinner/testing/index.d.ts +0 -26
  557. package/mdc-radio/_radio-theme.import.scss +0 -7
  558. package/mdc-radio/_radio-theme.scss +0 -110
  559. package/mdc-radio/index.d.ts +0 -72
  560. package/mdc-radio/testing/index.d.ts +0 -43
  561. package/mdc-select/_select-theme.import.scss +0 -10
  562. package/mdc-select/_select-theme.scss +0 -100
  563. package/mdc-select/index.d.ts +0 -111
  564. package/mdc-select/testing/index.d.ts +0 -28
  565. package/mdc-slide-toggle/_slide-toggle-theme.import.scss +0 -11
  566. package/mdc-slide-toggle/_slide-toggle-theme.scss +0 -140
  567. package/mdc-slide-toggle/index.d.ts +0 -83
  568. package/mdc-slide-toggle/testing/index.d.ts +0 -27
  569. package/mdc-slider/_slider-theme.import.scss +0 -5
  570. package/mdc-slider/_slider-theme.scss +0 -125
  571. package/mdc-slider/index.d.ts +0 -435
  572. package/mdc-slider/testing/index.d.ts +0 -92
  573. package/mdc-snack-bar/_snack-bar-theme.import.scss +0 -8
  574. package/mdc-snack-bar/_snack-bar-theme.scss +0 -81
  575. package/mdc-snack-bar/index.d.ts +0 -136
  576. package/mdc-snack-bar/testing/index.d.ts +0 -23
  577. package/mdc-table/_table-theme.import.scss +0 -11
  578. package/mdc-table/_table-theme.scss +0 -78
  579. package/mdc-table/index.d.ts +0 -238
  580. package/mdc-table/testing/index.d.ts +0 -118
  581. package/mdc-tabs/_tabs-common.import.scss +0 -14
  582. package/mdc-tabs/_tabs-common.scss +0 -196
  583. package/mdc-tabs/_tabs-theme.import.scss +0 -8
  584. package/mdc-tabs/_tabs-theme.scss +0 -146
  585. package/mdc-tabs/index.d.ts +0 -307
  586. package/mdc-tabs/testing/index.d.ts +0 -151
  587. package/mdc-tooltip/_tooltip-theme.import.scss +0 -5
  588. package/mdc-tooltip/_tooltip-theme.scss +0 -49
  589. package/mdc-tooltip/index.d.ts +0 -118
  590. package/mdc-tooltip/testing/index.d.ts +0 -26
@@ -1,59 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { HarnessPredicate } from '@angular/cdk/testing';
9
- import { MatListHarnessBase } from './list-harness-base';
10
- import { getListItemPredicate, MatListItemHarnessBase } from './list-item-harness-base';
11
- /** Harness for interacting with a MDC-based action-list in tests. */
12
- export class MatActionListHarness extends MatListHarnessBase {
13
- constructor() {
14
- super(...arguments);
15
- this._itemHarness = MatActionListItemHarness;
16
- }
17
- /**
18
- * Gets a `HarnessPredicate` that can be used to search for an action list with specific
19
- * attributes.
20
- * @param options Options for filtering which action list instances are considered a match.
21
- * @return a `HarnessPredicate` configured with the given options.
22
- */
23
- static with(options = {}) {
24
- return new HarnessPredicate(this, options);
25
- }
26
- }
27
- /** The selector for the host element of a `MatActionList` instance. */
28
- MatActionListHarness.hostSelector = '.mat-mdc-action-list';
29
- /** Harness for interacting with an action list item. */
30
- export class MatActionListItemHarness extends MatListItemHarnessBase {
31
- /**
32
- * Gets a `HarnessPredicate` that can be used to search for a list item with specific
33
- * attributes.
34
- * @param options Options for filtering which action list item instances are considered a match.
35
- * @return a `HarnessPredicate` configured with the given options.
36
- */
37
- static with(options = {}) {
38
- return getListItemPredicate(this, options);
39
- }
40
- /** Clicks on the action list item. */
41
- async click() {
42
- return (await this.host()).click();
43
- }
44
- /** Focuses the action list item. */
45
- async focus() {
46
- return (await this.host()).focus();
47
- }
48
- /** Blurs the action list item. */
49
- async blur() {
50
- return (await this.host()).blur();
51
- }
52
- /** Whether the action list item is focused. */
53
- async isFocused() {
54
- return (await this.host()).isFocused();
55
- }
56
- }
57
- /** The selector for the host element of a `MatListItem` instance. */
58
- MatActionListItemHarness.hostSelector = `${MatActionListHarness.hostSelector} .mat-mdc-list-item`;
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWxpc3QtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC1leHBlcmltZW50YWwvbWRjLWxpc3QvdGVzdGluZy9hY3Rpb24tbGlzdC1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBOEIsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUV2RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUV0RixxRUFBcUU7QUFDckUsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGtCQUl6QztJQUpEOztRQXFCVyxpQkFBWSxHQUFHLHdCQUF3QixDQUFDO0lBQ25ELENBQUM7SUFkQzs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxJQUFJLENBRVQsVUFBb0MsRUFBRTtRQUV0QyxPQUFPLElBQUksZ0JBQWdCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7O0FBZEQsdUVBQXVFO0FBQ2hFLGlDQUFZLEdBQUcsc0JBQXNCLENBQUM7QUFrQi9DLHdEQUF3RDtBQUN4RCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsc0JBQXNCO0lBSWxFOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLElBQUksQ0FFVCxVQUF3QyxFQUFFO1FBRTFDLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxzQ0FBc0M7SUFDdEMsS0FBSyxDQUFDLEtBQUs7UUFDVCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsb0NBQW9DO0lBQ3BDLEtBQUssQ0FBQyxLQUFLO1FBQ1QsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELGtDQUFrQztJQUNsQyxLQUFLLENBQUMsSUFBSTtRQUNSLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCwrQ0FBK0M7SUFDL0MsS0FBSyxDQUFDLFNBQVM7UUFDYixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN6QyxDQUFDOztBQWxDRCxxRUFBcUU7QUFDOUQscUNBQVksR0FBRyxHQUFHLG9CQUFvQixDQUFDLFlBQVkscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnRIYXJuZXNzQ29uc3RydWN0b3IsIEhhcm5lc3NQcmVkaWNhdGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7TWF0TGlzdEhhcm5lc3NCYXNlfSBmcm9tICcuL2xpc3QtaGFybmVzcy1iYXNlJztcbmltcG9ydCB7QWN0aW9uTGlzdEhhcm5lc3NGaWx0ZXJzLCBBY3Rpb25MaXN0SXRlbUhhcm5lc3NGaWx0ZXJzfSBmcm9tICcuL2xpc3QtaGFybmVzcy1maWx0ZXJzJztcbmltcG9ydCB7Z2V0TGlzdEl0ZW1QcmVkaWNhdGUsIE1hdExpc3RJdGVtSGFybmVzc0Jhc2V9IGZyb20gJy4vbGlzdC1pdGVtLWhhcm5lc3MtYmFzZSc7XG5cbi8qKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgTURDLWJhc2VkIGFjdGlvbi1saXN0IGluIHRlc3RzLiAqL1xuZXhwb3J0IGNsYXNzIE1hdEFjdGlvbkxpc3RIYXJuZXNzIGV4dGVuZHMgTWF0TGlzdEhhcm5lc3NCYXNlPFxuICB0eXBlb2YgTWF0QWN0aW9uTGlzdEl0ZW1IYXJuZXNzLFxuICBNYXRBY3Rpb25MaXN0SXRlbUhhcm5lc3MsXG4gIEFjdGlvbkxpc3RJdGVtSGFybmVzc0ZpbHRlcnNcbj4ge1xuICAvKiogVGhlIHNlbGVjdG9yIGZvciB0aGUgaG9zdCBlbGVtZW50IG9mIGEgYE1hdEFjdGlvbkxpc3RgIGluc3RhbmNlLiAqL1xuICBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJy5tYXQtbWRjLWFjdGlvbi1saXN0JztcblxuICAvKipcbiAgICogR2V0cyBhIGBIYXJuZXNzUHJlZGljYXRlYCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlYXJjaCBmb3IgYW4gYWN0aW9uIGxpc3Qgd2l0aCBzcGVjaWZpY1xuICAgKiBhdHRyaWJ1dGVzLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25zIGZvciBmaWx0ZXJpbmcgd2hpY2ggYWN0aW9uIGxpc3QgaW5zdGFuY2VzIGFyZSBjb25zaWRlcmVkIGEgbWF0Y2guXG4gICAqIEByZXR1cm4gYSBgSGFybmVzc1ByZWRpY2F0ZWAgY29uZmlndXJlZCB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICAgKi9cbiAgc3RhdGljIHdpdGg8VCBleHRlbmRzIE1hdEFjdGlvbkxpc3RIYXJuZXNzPihcbiAgICB0aGlzOiBDb21wb25lbnRIYXJuZXNzQ29uc3RydWN0b3I8VD4sXG4gICAgb3B0aW9uczogQWN0aW9uTGlzdEhhcm5lc3NGaWx0ZXJzID0ge30sXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8VD4ge1xuICAgIHJldHVybiBuZXcgSGFybmVzc1ByZWRpY2F0ZSh0aGlzLCBvcHRpb25zKTtcbiAgfVxuXG4gIG92ZXJyaWRlIF9pdGVtSGFybmVzcyA9IE1hdEFjdGlvbkxpc3RJdGVtSGFybmVzcztcbn1cblxuLyoqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYW4gYWN0aW9uIGxpc3QgaXRlbS4gKi9cbmV4cG9ydCBjbGFzcyBNYXRBY3Rpb25MaXN0SXRlbUhhcm5lc3MgZXh0ZW5kcyBNYXRMaXN0SXRlbUhhcm5lc3NCYXNlIHtcbiAgLyoqIFRoZSBzZWxlY3RvciBmb3IgdGhlIGhvc3QgZWxlbWVudCBvZiBhIGBNYXRMaXN0SXRlbWAgaW5zdGFuY2UuICovXG4gIHN0YXRpYyBob3N0U2VsZWN0b3IgPSBgJHtNYXRBY3Rpb25MaXN0SGFybmVzcy5ob3N0U2VsZWN0b3J9IC5tYXQtbWRjLWxpc3QtaXRlbWA7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGEgbGlzdCBpdGVtIHdpdGggc3BlY2lmaWNcbiAgICogYXR0cmlidXRlcy5cbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9ucyBmb3IgZmlsdGVyaW5nIHdoaWNoIGFjdGlvbiBsaXN0IGl0ZW0gaW5zdGFuY2VzIGFyZSBjb25zaWRlcmVkIGEgbWF0Y2guXG4gICAqIEByZXR1cm4gYSBgSGFybmVzc1ByZWRpY2F0ZWAgY29uZmlndXJlZCB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICAgKi9cbiAgc3RhdGljIHdpdGg8VCBleHRlbmRzIE1hdEFjdGlvbkxpc3RJdGVtSGFybmVzcz4oXG4gICAgdGhpczogQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yPFQ+LFxuICAgIG9wdGlvbnM6IEFjdGlvbkxpc3RJdGVtSGFybmVzc0ZpbHRlcnMgPSB7fSxcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxUPiB7XG4gICAgcmV0dXJuIGdldExpc3RJdGVtUHJlZGljYXRlKHRoaXMsIG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqIENsaWNrcyBvbiB0aGUgYWN0aW9uIGxpc3QgaXRlbS4gKi9cbiAgYXN5bmMgY2xpY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmhvc3QoKSkuY2xpY2soKTtcbiAgfVxuXG4gIC8qKiBGb2N1c2VzIHRoZSBhY3Rpb24gbGlzdCBpdGVtLiAqL1xuICBhc3luYyBmb2N1cygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS5mb2N1cygpO1xuICB9XG5cbiAgLyoqIEJsdXJzIHRoZSBhY3Rpb24gbGlzdCBpdGVtLiAqL1xuICBhc3luYyBibHVyKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5ob3N0KCkpLmJsdXIoKTtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRoZSBhY3Rpb24gbGlzdCBpdGVtIGlzIGZvY3VzZWQuICovXG4gIGFzeW5jIGlzRm9jdXNlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS5pc0ZvY3VzZWQoKTtcbiAgfVxufVxuIl19
@@ -1,9 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- export * from './public-api';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwtZXhwZXJpbWVudGFsL21kYy1saXN0L3Rlc3RpbmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,95 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { ComponentHarness, parallel, } from '@angular/cdk/testing';
9
- import { MatDividerHarness } from '@angular/material/divider/testing';
10
- import { MatSubheaderHarness } from './list-item-harness-base';
11
- /**
12
- * Shared behavior among the harnesses for the various `MatList` flavors.
13
- * @template T A constructor type for a list item harness type used by this list harness.
14
- * @template C The list item harness type that `T` constructs.
15
- * @template F The filter type used filter list item harness of type `C`.
16
- * @docs-private
17
- */
18
- export class MatListHarnessBase extends ComponentHarness {
19
- /**
20
- * Gets a list of harnesses representing the items in this list.
21
- * @param filters Optional filters used to narrow which harnesses are included
22
- * @return The list of items matching the given filters.
23
- */
24
- async getItems(filters) {
25
- return this.locatorForAll(this._itemHarness.with(filters))();
26
- }
27
- /**
28
- * Gets a list of `ListSection` representing the list items grouped by subheaders. If the list has
29
- * no subheaders it is represented as a single `ListSection` with an undefined `heading` property.
30
- * @param filters Optional filters used to narrow which list item harnesses are included
31
- * @return The list of items matching the given filters, grouped into sections by subheader.
32
- */
33
- async getItemsGroupedBySubheader(filters) {
34
- const listSections = [];
35
- let currentSection = { items: [] };
36
- const itemsAndSubheaders = await this.getItemsWithSubheadersAndDividers({
37
- item: filters,
38
- divider: false,
39
- });
40
- for (const itemOrSubheader of itemsAndSubheaders) {
41
- if (itemOrSubheader instanceof MatSubheaderHarness) {
42
- if (currentSection.heading !== undefined || currentSection.items.length) {
43
- listSections.push(currentSection);
44
- }
45
- currentSection = { heading: itemOrSubheader.getText(), items: [] };
46
- }
47
- else {
48
- currentSection.items.push(itemOrSubheader);
49
- }
50
- }
51
- if (currentSection.heading !== undefined ||
52
- currentSection.items.length ||
53
- !listSections.length) {
54
- listSections.push(currentSection);
55
- }
56
- // Concurrently wait for all sections to resolve their heading if present.
57
- return parallel(() => listSections.map(async (s) => ({ items: s.items, heading: await s.heading })));
58
- }
59
- /**
60
- * Gets a list of sub-lists representing the list items grouped by dividers. If the list has no
61
- * dividers it is represented as a list with a single sub-list.
62
- * @param filters Optional filters used to narrow which list item harnesses are included
63
- * @return The list of items matching the given filters, grouped into sub-lists by divider.
64
- */
65
- async getItemsGroupedByDividers(filters) {
66
- const listSections = [[]];
67
- const itemsAndDividers = await this.getItemsWithSubheadersAndDividers({
68
- item: filters,
69
- subheader: false,
70
- });
71
- for (const itemOrDivider of itemsAndDividers) {
72
- if (itemOrDivider instanceof MatDividerHarness) {
73
- listSections.push([]);
74
- }
75
- else {
76
- listSections[listSections.length - 1].push(itemOrDivider);
77
- }
78
- }
79
- return listSections;
80
- }
81
- async getItemsWithSubheadersAndDividers(filters = {}) {
82
- const query = [];
83
- if (filters.item !== false) {
84
- query.push(this._itemHarness.with(filters.item || {}));
85
- }
86
- if (filters.subheader !== false) {
87
- query.push(MatSubheaderHarness.with(filters.subheader));
88
- }
89
- if (filters.divider !== false) {
90
- query.push(MatDividerHarness.with(filters.divider));
91
- }
92
- return this.locatorForAll(...query)();
93
- }
94
- }
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1oYXJuZXNzLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwtZXhwZXJpbWVudGFsL21kYy1saXN0L3Rlc3RpbmcvbGlzdC1oYXJuZXNzLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUNMLGdCQUFnQixFQUdoQixRQUFRLEdBQ1QsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQXdCLGlCQUFpQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFFM0YsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFXN0Q7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFnQixrQkFJcEIsU0FBUSxnQkFBZ0I7SUFHeEI7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBVztRQUN4QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxPQUFXO1FBRTFDLE1BQU0sWUFBWSxHQUFjLEVBQUUsQ0FBQztRQUNuQyxJQUFJLGNBQWMsR0FBWSxFQUFDLEtBQUssRUFBRSxFQUFFLEVBQUMsQ0FBQztRQUMxQyxNQUFNLGtCQUFrQixHQUFHLE1BQU0sSUFBSSxDQUFDLGlDQUFpQyxDQUFDO1lBQ3RFLElBQUksRUFBRSxPQUFPO1lBQ2IsT0FBTyxFQUFFLEtBQUs7U0FDZixDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sZUFBZSxJQUFJLGtCQUFrQixFQUFFO1lBQ2hELElBQUksZUFBZSxZQUFZLG1CQUFtQixFQUFFO2dCQUNsRCxJQUFJLGNBQWMsQ0FBQyxPQUFPLEtBQUssU0FBUyxJQUFJLGNBQWMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO29CQUN2RSxZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUNuQztnQkFDRCxjQUFjLEdBQUcsRUFBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUMsQ0FBQzthQUNsRTtpQkFBTTtnQkFDTCxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUM1QztTQUNGO1FBQ0QsSUFDRSxjQUFjLENBQUMsT0FBTyxLQUFLLFNBQVM7WUFDcEMsY0FBYyxDQUFDLEtBQUssQ0FBQyxNQUFNO1lBQzNCLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFDcEI7WUFDQSxZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ25DO1FBRUQsMEVBQTBFO1FBQzFFLE9BQU8sUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUNuQixZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBQyxDQUFDLEVBQUMsRUFBRSxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFDLENBQUMsQ0FBQyxDQUMxRSxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLHlCQUF5QixDQUFDLE9BQVc7UUFDekMsTUFBTSxZQUFZLEdBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqQyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sSUFBSSxDQUFDLGlDQUFpQyxDQUFDO1lBQ3BFLElBQUksRUFBRSxPQUFPO1lBQ2IsU0FBUyxFQUFFLEtBQUs7U0FDakIsQ0FBQyxDQUFDO1FBQ0gsS0FBSyxNQUFNLGFBQWEsSUFBSSxnQkFBZ0IsRUFBRTtZQUM1QyxJQUFJLGFBQWEsWUFBWSxpQkFBaUIsRUFBRTtnQkFDOUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQzthQUN2QjtpQkFBTTtnQkFDTCxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDM0Q7U0FDRjtRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFvREQsS0FBSyxDQUFDLGlDQUFpQyxDQUNyQyxVQUlJLEVBQUU7UUFFTixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxPQUFPLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTtZQUMxQixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUssRUFBUSxDQUFDLENBQUMsQ0FBQztTQUMvRDtRQUNELElBQUksT0FBTyxDQUFDLFNBQVMsS0FBSyxLQUFLLEVBQUU7WUFDL0IsS0FBSyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDekQ7UUFDRCxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssS0FBSyxFQUFFO1lBQzdCLEtBQUssQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1NBQ3JEO1FBQ0QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtcbiAgQ29tcG9uZW50SGFybmVzcyxcbiAgQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yLFxuICBIYXJuZXNzUHJlZGljYXRlLFxuICBwYXJhbGxlbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHtEaXZpZGVySGFybmVzc0ZpbHRlcnMsIE1hdERpdmlkZXJIYXJuZXNzfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaXZpZGVyL3Rlc3RpbmcnO1xuaW1wb3J0IHtCYXNlTGlzdEl0ZW1IYXJuZXNzRmlsdGVycywgU3ViaGVhZGVySGFybmVzc0ZpbHRlcnN9IGZyb20gJy4vbGlzdC1oYXJuZXNzLWZpbHRlcnMnO1xuaW1wb3J0IHtNYXRTdWJoZWFkZXJIYXJuZXNzfSBmcm9tICcuL2xpc3QtaXRlbS1oYXJuZXNzLWJhc2UnO1xuXG4vKiogUmVwcmVzZW50cyBhIHNlY3Rpb24gb2YgYSBsaXN0IGZhbGxpbmcgdW5kZXIgYSBzcGVjaWZpYyBoZWFkZXIuICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3RTZWN0aW9uPEk+IHtcbiAgLyoqIFRoZSBoZWFkaW5nIGZvciB0aGlzIGxpc3Qgc2VjdGlvbi4gYHVuZGVmaW5lZGAgaWYgdGhlcmUgaXMgbm8gaGVhZGluZy4gKi9cbiAgaGVhZGluZz86IHN0cmluZztcblxuICAvKiogVGhlIGl0ZW1zIGluIHRoaXMgbGlzdCBzZWN0aW9uLiAqL1xuICBpdGVtczogSVtdO1xufVxuXG4vKipcbiAqIFNoYXJlZCBiZWhhdmlvciBhbW9uZyB0aGUgaGFybmVzc2VzIGZvciB0aGUgdmFyaW91cyBgTWF0TGlzdGAgZmxhdm9ycy5cbiAqIEB0ZW1wbGF0ZSBUIEEgY29uc3RydWN0b3IgdHlwZSBmb3IgYSBsaXN0IGl0ZW0gaGFybmVzcyB0eXBlIHVzZWQgYnkgdGhpcyBsaXN0IGhhcm5lc3MuXG4gKiBAdGVtcGxhdGUgQyBUaGUgbGlzdCBpdGVtIGhhcm5lc3MgdHlwZSB0aGF0IGBUYCBjb25zdHJ1Y3RzLlxuICogQHRlbXBsYXRlIEYgVGhlIGZpbHRlciB0eXBlIHVzZWQgZmlsdGVyIGxpc3QgaXRlbSBoYXJuZXNzIG9mIHR5cGUgYENgLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTWF0TGlzdEhhcm5lc3NCYXNlPFxuICBUIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yPEM+ICYge3dpdGg6IChvcHRpb25zPzogRikgPT4gSGFybmVzc1ByZWRpY2F0ZTxDPn0sXG4gIEMgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzLFxuICBGIGV4dGVuZHMgQmFzZUxpc3RJdGVtSGFybmVzc0ZpbHRlcnMsXG4+IGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHByb3RlY3RlZCBfaXRlbUhhcm5lc3M6IFQ7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBsaXN0IG9mIGhhcm5lc3NlcyByZXByZXNlbnRpbmcgdGhlIGl0ZW1zIGluIHRoaXMgbGlzdC5cbiAgICogQHBhcmFtIGZpbHRlcnMgT3B0aW9uYWwgZmlsdGVycyB1c2VkIHRvIG5hcnJvdyB3aGljaCBoYXJuZXNzZXMgYXJlIGluY2x1ZGVkXG4gICAqIEByZXR1cm4gVGhlIGxpc3Qgb2YgaXRlbXMgbWF0Y2hpbmcgdGhlIGdpdmVuIGZpbHRlcnMuXG4gICAqL1xuICBhc3luYyBnZXRJdGVtcyhmaWx0ZXJzPzogRik6IFByb21pc2U8Q1tdPiB7XG4gICAgcmV0dXJuIHRoaXMubG9jYXRvckZvckFsbCh0aGlzLl9pdGVtSGFybmVzcy53aXRoKGZpbHRlcnMpKSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBsaXN0IG9mIGBMaXN0U2VjdGlvbmAgcmVwcmVzZW50aW5nIHRoZSBsaXN0IGl0ZW1zIGdyb3VwZWQgYnkgc3ViaGVhZGVycy4gSWYgdGhlIGxpc3QgaGFzXG4gICAqIG5vIHN1YmhlYWRlcnMgaXQgaXMgcmVwcmVzZW50ZWQgYXMgYSBzaW5nbGUgYExpc3RTZWN0aW9uYCB3aXRoIGFuIHVuZGVmaW5lZCBgaGVhZGluZ2AgcHJvcGVydHkuXG4gICAqIEBwYXJhbSBmaWx0ZXJzIE9wdGlvbmFsIGZpbHRlcnMgdXNlZCB0byBuYXJyb3cgd2hpY2ggbGlzdCBpdGVtIGhhcm5lc3NlcyBhcmUgaW5jbHVkZWRcbiAgICogQHJldHVybiBUaGUgbGlzdCBvZiBpdGVtcyBtYXRjaGluZyB0aGUgZ2l2ZW4gZmlsdGVycywgZ3JvdXBlZCBpbnRvIHNlY3Rpb25zIGJ5IHN1YmhlYWRlci5cbiAgICovXG4gIGFzeW5jIGdldEl0ZW1zR3JvdXBlZEJ5U3ViaGVhZGVyKGZpbHRlcnM/OiBGKTogUHJvbWlzZTxMaXN0U2VjdGlvbjxDPltdPiB7XG4gICAgdHlwZSBTZWN0aW9uID0ge2l0ZW1zOiBDW107IGhlYWRpbmc/OiBQcm9taXNlPHN0cmluZz59O1xuICAgIGNvbnN0IGxpc3RTZWN0aW9uczogU2VjdGlvbltdID0gW107XG4gICAgbGV0IGN1cnJlbnRTZWN0aW9uOiBTZWN0aW9uID0ge2l0ZW1zOiBbXX07XG4gICAgY29uc3QgaXRlbXNBbmRTdWJoZWFkZXJzID0gYXdhaXQgdGhpcy5nZXRJdGVtc1dpdGhTdWJoZWFkZXJzQW5kRGl2aWRlcnMoe1xuICAgICAgaXRlbTogZmlsdGVycyxcbiAgICAgIGRpdmlkZXI6IGZhbHNlLFxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCBpdGVtT3JTdWJoZWFkZXIgb2YgaXRlbXNBbmRTdWJoZWFkZXJzKSB7XG4gICAgICBpZiAoaXRlbU9yU3ViaGVhZGVyIGluc3RhbmNlb2YgTWF0U3ViaGVhZGVySGFybmVzcykge1xuICAgICAgICBpZiAoY3VycmVudFNlY3Rpb24uaGVhZGluZyAhPT0gdW5kZWZpbmVkIHx8IGN1cnJlbnRTZWN0aW9uLml0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgIGxpc3RTZWN0aW9ucy5wdXNoKGN1cnJlbnRTZWN0aW9uKTtcbiAgICAgICAgfVxuICAgICAgICBjdXJyZW50U2VjdGlvbiA9IHtoZWFkaW5nOiBpdGVtT3JTdWJoZWFkZXIuZ2V0VGV4dCgpLCBpdGVtczogW119O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY3VycmVudFNlY3Rpb24uaXRlbXMucHVzaChpdGVtT3JTdWJoZWFkZXIpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoXG4gICAgICBjdXJyZW50U2VjdGlvbi5oZWFkaW5nICE9PSB1bmRlZmluZWQgfHxcbiAgICAgIGN1cnJlbnRTZWN0aW9uLml0ZW1zLmxlbmd0aCB8fFxuICAgICAgIWxpc3RTZWN0aW9ucy5sZW5ndGhcbiAgICApIHtcbiAgICAgIGxpc3RTZWN0aW9ucy5wdXNoKGN1cnJlbnRTZWN0aW9uKTtcbiAgICB9XG5cbiAgICAvLyBDb25jdXJyZW50bHkgd2FpdCBmb3IgYWxsIHNlY3Rpb25zIHRvIHJlc29sdmUgdGhlaXIgaGVhZGluZyBpZiBwcmVzZW50LlxuICAgIHJldHVybiBwYXJhbGxlbCgoKSA9PlxuICAgICAgbGlzdFNlY3Rpb25zLm1hcChhc3luYyBzID0+ICh7aXRlbXM6IHMuaXRlbXMsIGhlYWRpbmc6IGF3YWl0IHMuaGVhZGluZ30pKSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBsaXN0IG9mIHN1Yi1saXN0cyByZXByZXNlbnRpbmcgdGhlIGxpc3QgaXRlbXMgZ3JvdXBlZCBieSBkaXZpZGVycy4gSWYgdGhlIGxpc3QgaGFzIG5vXG4gICAqIGRpdmlkZXJzIGl0IGlzIHJlcHJlc2VudGVkIGFzIGEgbGlzdCB3aXRoIGEgc2luZ2xlIHN1Yi1saXN0LlxuICAgKiBAcGFyYW0gZmlsdGVycyBPcHRpb25hbCBmaWx0ZXJzIHVzZWQgdG8gbmFycm93IHdoaWNoIGxpc3QgaXRlbSBoYXJuZXNzZXMgYXJlIGluY2x1ZGVkXG4gICAqIEByZXR1cm4gVGhlIGxpc3Qgb2YgaXRlbXMgbWF0Y2hpbmcgdGhlIGdpdmVuIGZpbHRlcnMsIGdyb3VwZWQgaW50byBzdWItbGlzdHMgYnkgZGl2aWRlci5cbiAgICovXG4gIGFzeW5jIGdldEl0ZW1zR3JvdXBlZEJ5RGl2aWRlcnMoZmlsdGVycz86IEYpOiBQcm9taXNlPENbXVtdPiB7XG4gICAgY29uc3QgbGlzdFNlY3Rpb25zOiBDW11bXSA9IFtbXV07XG4gICAgY29uc3QgaXRlbXNBbmREaXZpZGVycyA9IGF3YWl0IHRoaXMuZ2V0SXRlbXNXaXRoU3ViaGVhZGVyc0FuZERpdmlkZXJzKHtcbiAgICAgIGl0ZW06IGZpbHRlcnMsXG4gICAgICBzdWJoZWFkZXI6IGZhbHNlLFxuICAgIH0pO1xuICAgIGZvciAoY29uc3QgaXRlbU9yRGl2aWRlciBvZiBpdGVtc0FuZERpdmlkZXJzKSB7XG4gICAgICBpZiAoaXRlbU9yRGl2aWRlciBpbnN0YW5jZW9mIE1hdERpdmlkZXJIYXJuZXNzKSB7XG4gICAgICAgIGxpc3RTZWN0aW9ucy5wdXNoKFtdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxpc3RTZWN0aW9uc1tsaXN0U2VjdGlvbnMubGVuZ3RoIC0gMV0ucHVzaChpdGVtT3JEaXZpZGVyKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGxpc3RTZWN0aW9ucztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgbGlzdCBvZiBoYXJuZXNzZXMgcmVwcmVzZW50aW5nIGFsbCBvZiB0aGUgaXRlbXMsIHN1YmhlYWRlcnMsIGFuZCBkaXZpZGVyc1xuICAgKiAoaW4gdGhlIG9yZGVyIHRoZXkgYXBwZWFyIGluIHRoZSBsaXN0KS4gVXNlIGBpbnN0YW5jZW9mYCB0byBjaGVjayB3aGljaCB0eXBlIG9mIGhhcm5lc3MgYSBnaXZlblxuICAgKiBpdGVtIGlzLlxuICAgKiBAcGFyYW0gZmlsdGVycyBPcHRpb25hbCBmaWx0ZXJzIHVzZWQgdG8gbmFycm93IHdoaWNoIGxpc3QgaXRlbXMsIHN1YmhlYWRlcnMsIGFuZCBkaXZpZGVycyBhcmVcbiAgICogICAgIGluY2x1ZGVkLiBBIHZhbHVlIG9mIGBmYWxzZWAgZm9yIHRoZSBgaXRlbWAsIGBzdWJoZWFkZXJgLCBvciBgZGl2aWRlcmAgcHJvcGVydGllcyBpbmRpY2F0ZXNcbiAgICogICAgIHRoYXQgdGhlIHJlc3BlY3RpdmUgaGFybmVzcyB0eXBlIHNob3VsZCBiZSBvbWl0dGVkIGNvbXBsZXRlbHkuXG4gICAqIEByZXR1cm4gVGhlIGxpc3Qgb2YgaGFybmVzc2VzIHJlcHJlc2VudGluZyB0aGUgaXRlbXMsIHN1YmhlYWRlcnMsIGFuZCBkaXZpZGVycyBtYXRjaGluZyB0aGVcbiAgICogICAgIGdpdmVuIGZpbHRlcnMuXG4gICAqL1xuICBnZXRJdGVtc1dpdGhTdWJoZWFkZXJzQW5kRGl2aWRlcnMoZmlsdGVyczoge1xuICAgIGl0ZW06IGZhbHNlO1xuICAgIHN1YmhlYWRlcjogZmFsc2U7XG4gICAgZGl2aWRlcjogZmFsc2U7XG4gIH0pOiBQcm9taXNlPFtdPjtcbiAgZ2V0SXRlbXNXaXRoU3ViaGVhZGVyc0FuZERpdmlkZXJzKGZpbHRlcnM6IHtcbiAgICBpdGVtPzogRiB8IGZhbHNlO1xuICAgIHN1YmhlYWRlcjogZmFsc2U7XG4gICAgZGl2aWRlcjogZmFsc2U7XG4gIH0pOiBQcm9taXNlPENbXT47XG4gIGdldEl0ZW1zV2l0aFN1YmhlYWRlcnNBbmREaXZpZGVycyhmaWx0ZXJzOiB7XG4gICAgaXRlbTogZmFsc2U7XG4gICAgc3ViaGVhZGVyPzogU3ViaGVhZGVySGFybmVzc0ZpbHRlcnMgfCBmYWxzZTtcbiAgICBkaXZpZGVyOiBmYWxzZTtcbiAgfSk6IFByb21pc2U8TWF0U3ViaGVhZGVySGFybmVzc1tdPjtcbiAgZ2V0SXRlbXNXaXRoU3ViaGVhZGVyc0FuZERpdmlkZXJzKGZpbHRlcnM6IHtcbiAgICBpdGVtOiBmYWxzZTtcbiAgICBzdWJoZWFkZXI6IGZhbHNlO1xuICAgIGRpdmlkZXI/OiBEaXZpZGVySGFybmVzc0ZpbHRlcnMgfCBmYWxzZTtcbiAgfSk6IFByb21pc2U8TWF0RGl2aWRlckhhcm5lc3NbXT47XG4gIGdldEl0ZW1zV2l0aFN1YmhlYWRlcnNBbmREaXZpZGVycyhmaWx0ZXJzOiB7XG4gICAgaXRlbT86IEYgfCBmYWxzZTtcbiAgICBzdWJoZWFkZXI/OiBTdWJoZWFkZXJIYXJuZXNzRmlsdGVycyB8IGZhbHNlO1xuICAgIGRpdmlkZXI6IGZhbHNlO1xuICB9KTogUHJvbWlzZTwoQyB8IE1hdFN1YmhlYWRlckhhcm5lc3MpW10+O1xuICBnZXRJdGVtc1dpdGhTdWJoZWFkZXJzQW5kRGl2aWRlcnMoZmlsdGVyczoge1xuICAgIGl0ZW0/OiBGIHwgZmFsc2U7XG4gICAgc3ViaGVhZGVyOiBmYWxzZTtcbiAgICBkaXZpZGVyPzogZmFsc2UgfCBEaXZpZGVySGFybmVzc0ZpbHRlcnM7XG4gIH0pOiBQcm9taXNlPChDIHwgTWF0RGl2aWRlckhhcm5lc3MpW10+O1xuICBnZXRJdGVtc1dpdGhTdWJoZWFkZXJzQW5kRGl2aWRlcnMoZmlsdGVyczoge1xuICAgIGl0ZW06IGZhbHNlO1xuICAgIHN1YmhlYWRlcj86IGZhbHNlIHwgU3ViaGVhZGVySGFybmVzc0ZpbHRlcnM7XG4gICAgZGl2aWRlcj86IGZhbHNlIHwgRGl2aWRlckhhcm5lc3NGaWx0ZXJzO1xuICB9KTogUHJvbWlzZTwoTWF0U3ViaGVhZGVySGFybmVzcyB8IE1hdERpdmlkZXJIYXJuZXNzKVtdPjtcbiAgZ2V0SXRlbXNXaXRoU3ViaGVhZGVyc0FuZERpdmlkZXJzKGZpbHRlcnM/OiB7XG4gICAgaXRlbT86IEYgfCBmYWxzZTtcbiAgICBzdWJoZWFkZXI/OiBTdWJoZWFkZXJIYXJuZXNzRmlsdGVycyB8IGZhbHNlO1xuICAgIGRpdmlkZXI/OiBEaXZpZGVySGFybmVzc0ZpbHRlcnMgfCBmYWxzZTtcbiAgfSk6IFByb21pc2U8KEMgfCBNYXRTdWJoZWFkZXJIYXJuZXNzIHwgTWF0RGl2aWRlckhhcm5lc3MpW10+O1xuICBhc3luYyBnZXRJdGVtc1dpdGhTdWJoZWFkZXJzQW5kRGl2aWRlcnMoXG4gICAgZmlsdGVyczoge1xuICAgICAgaXRlbT86IEYgfCBmYWxzZTtcbiAgICAgIHN1YmhlYWRlcj86IFN1YmhlYWRlckhhcm5lc3NGaWx0ZXJzIHwgZmFsc2U7XG4gICAgICBkaXZpZGVyPzogRGl2aWRlckhhcm5lc3NGaWx0ZXJzIHwgZmFsc2U7XG4gICAgfSA9IHt9LFxuICApOiBQcm9taXNlPChDIHwgTWF0U3ViaGVhZGVySGFybmVzcyB8IE1hdERpdmlkZXJIYXJuZXNzKVtdPiB7XG4gICAgY29uc3QgcXVlcnkgPSBbXTtcbiAgICBpZiAoZmlsdGVycy5pdGVtICE9PSBmYWxzZSkge1xuICAgICAgcXVlcnkucHVzaCh0aGlzLl9pdGVtSGFybmVzcy53aXRoKGZpbHRlcnMuaXRlbSB8fCAoe30gYXMgRikpKTtcbiAgICB9XG4gICAgaWYgKGZpbHRlcnMuc3ViaGVhZGVyICE9PSBmYWxzZSkge1xuICAgICAgcXVlcnkucHVzaChNYXRTdWJoZWFkZXJIYXJuZXNzLndpdGgoZmlsdGVycy5zdWJoZWFkZXIpKTtcbiAgICB9XG4gICAgaWYgKGZpbHRlcnMuZGl2aWRlciAhPT0gZmFsc2UpIHtcbiAgICAgIHF1ZXJ5LnB1c2goTWF0RGl2aWRlckhhcm5lc3Mud2l0aChmaWx0ZXJzLmRpdmlkZXIpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubG9jYXRvckZvckFsbCguLi5xdWVyeSkoKTtcbiAgfVxufVxuIl19
@@ -1,9 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- export {};
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1oYXJuZXNzLWZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwtZXhwZXJpbWVudGFsL21kYy1saXN0L3Rlc3RpbmcvbGlzdC1oYXJuZXNzLWZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7QmFzZUhhcm5lc3NGaWx0ZXJzfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgQmFzZUhhcm5lc3NGaWx0ZXJzIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uTGlzdEhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgQmFzZUhhcm5lc3NGaWx0ZXJzIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF2TGlzdEhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgQmFzZUhhcm5lc3NGaWx0ZXJzIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0aW9uTGlzdEhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgQmFzZUhhcm5lc3NGaWx0ZXJzIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUxpc3RJdGVtSGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBCYXNlSGFybmVzc0ZpbHRlcnMge1xuICB0aXRsZT86IHN0cmluZyB8IFJlZ0V4cDtcbiAgc2Vjb25kYXJ5VGV4dD86IHN0cmluZyB8IFJlZ0V4cCB8IG51bGw7XG4gIHRlcnRpYXJ5VGV4dD86IHN0cmluZyB8IFJlZ0V4cCB8IG51bGw7XG4gIGZ1bGxUZXh0Pzogc3RyaW5nIHwgUmVnRXhwO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBgZnVsbFRleHRgIGZpbHRlciBpbnN0ZWFkLlxuICAgKiBAYnJlYWtpbmctY2hhbmdlIDE2LjAuMFxuICAgKi9cbiAgdGV4dD86IHN0cmluZyB8IFJlZ0V4cDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0SXRlbUhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgQmFzZUxpc3RJdGVtSGFybmVzc0ZpbHRlcnMge31cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25MaXN0SXRlbUhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgQmFzZUxpc3RJdGVtSGFybmVzc0ZpbHRlcnMge31cblxuZXhwb3J0IGludGVyZmFjZSBOYXZMaXN0SXRlbUhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgQmFzZUxpc3RJdGVtSGFybmVzc0ZpbHRlcnMge1xuICBocmVmPzogc3RyaW5nIHwgUmVnRXhwIHwgbnVsbDtcbiAgYWN0aXZhdGVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0T3B0aW9uSGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBCYXNlTGlzdEl0ZW1IYXJuZXNzRmlsdGVycyB7XG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdWJoZWFkZXJIYXJuZXNzRmlsdGVycyBleHRlbmRzIEJhc2VIYXJuZXNzRmlsdGVycyB7XG4gIHRleHQ/OiBzdHJpbmcgfCBSZWdFeHA7XG59XG4iXX0=
@@ -1,41 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { HarnessPredicate } from '@angular/cdk/testing';
9
- import { MatListHarnessBase } from './list-harness-base';
10
- import { getListItemPredicate, MatListItemHarnessBase } from './list-item-harness-base';
11
- /** Harness for interacting with a MDC-based list in tests. */
12
- export class MatListHarness extends MatListHarnessBase {
13
- constructor() {
14
- super(...arguments);
15
- this._itemHarness = MatListItemHarness;
16
- }
17
- /**
18
- * Gets a `HarnessPredicate` that can be used to search for a list with specific attributes.
19
- * @param options Options for filtering which list instances are considered a match.
20
- * @return a `HarnessPredicate` configured with the given options.
21
- */
22
- static with(options = {}) {
23
- return new HarnessPredicate(this, options);
24
- }
25
- }
26
- /** The selector for the host element of a `MatList` instance. */
27
- MatListHarness.hostSelector = '.mat-mdc-list';
28
- /** Harness for interacting with a list item. */
29
- export class MatListItemHarness extends MatListItemHarnessBase {
30
- /**
31
- * Gets a `HarnessPredicate` that can be used to search for a list item with specific attributes.
32
- * @param options Options for filtering which list item instances are considered a match.
33
- * @return a `HarnessPredicate` configured with the given options.
34
- */
35
- static with(options = {}) {
36
- return getListItemPredicate(this, options);
37
- }
38
- }
39
- /** The selector for the host element of a `MatListItem` instance. */
40
- MatListItemHarness.hostSelector = `${MatListHarness.hostSelector} .mat-mdc-list-item`;
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsLWV4cGVyaW1lbnRhbC9tZGMtbGlzdC90ZXN0aW5nL2xpc3QtaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQThCLGdCQUFnQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFDLG9CQUFvQixFQUFFLHNCQUFzQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFdEYsOERBQThEO0FBQzlELE1BQU0sT0FBTyxjQUFlLFNBQVEsa0JBSW5DO0lBSkQ7O1FBb0JXLGlCQUFZLEdBQUcsa0JBQWtCLENBQUM7SUFDN0MsQ0FBQztJQWJDOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsSUFBSSxDQUVULFVBQThCLEVBQUU7UUFFaEMsT0FBTyxJQUFJLGdCQUFnQixDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDOztBQWJELGlFQUFpRTtBQUMxRCwyQkFBWSxHQUFHLGVBQWUsQ0FBQztBQWlCeEMsZ0RBQWdEO0FBQ2hELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxzQkFBc0I7SUFJNUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxJQUFJLENBRVQsVUFBa0MsRUFBRTtRQUVwQyxPQUFPLG9CQUFvQixDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDOztBQWJELHFFQUFxRTtBQUM5RCwrQkFBWSxHQUFHLEdBQUcsY0FBYyxDQUFDLFlBQVkscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnRIYXJuZXNzQ29uc3RydWN0b3IsIEhhcm5lc3NQcmVkaWNhdGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7TWF0TGlzdEhhcm5lc3NCYXNlfSBmcm9tICcuL2xpc3QtaGFybmVzcy1iYXNlJztcbmltcG9ydCB7TGlzdEhhcm5lc3NGaWx0ZXJzLCBMaXN0SXRlbUhhcm5lc3NGaWx0ZXJzfSBmcm9tICcuL2xpc3QtaGFybmVzcy1maWx0ZXJzJztcbmltcG9ydCB7Z2V0TGlzdEl0ZW1QcmVkaWNhdGUsIE1hdExpc3RJdGVtSGFybmVzc0Jhc2V9IGZyb20gJy4vbGlzdC1pdGVtLWhhcm5lc3MtYmFzZSc7XG5cbi8qKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgTURDLWJhc2VkIGxpc3QgaW4gdGVzdHMuICovXG5leHBvcnQgY2xhc3MgTWF0TGlzdEhhcm5lc3MgZXh0ZW5kcyBNYXRMaXN0SGFybmVzc0Jhc2U8XG4gIHR5cGVvZiBNYXRMaXN0SXRlbUhhcm5lc3MsXG4gIE1hdExpc3RJdGVtSGFybmVzcyxcbiAgTGlzdEl0ZW1IYXJuZXNzRmlsdGVyc1xuPiB7XG4gIC8qKiBUaGUgc2VsZWN0b3IgZm9yIHRoZSBob3N0IGVsZW1lbnQgb2YgYSBgTWF0TGlzdGAgaW5zdGFuY2UuICovXG4gIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnLm1hdC1tZGMtbGlzdCc7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGEgbGlzdCB3aXRoIHNwZWNpZmljIGF0dHJpYnV0ZXMuXG4gICAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbnMgZm9yIGZpbHRlcmluZyB3aGljaCBsaXN0IGluc3RhbmNlcyBhcmUgY29uc2lkZXJlZCBhIG1hdGNoLlxuICAgKiBAcmV0dXJuIGEgYEhhcm5lc3NQcmVkaWNhdGVgIGNvbmZpZ3VyZWQgd2l0aCB0aGUgZ2l2ZW4gb3B0aW9ucy5cbiAgICovXG4gIHN0YXRpYyB3aXRoPFQgZXh0ZW5kcyBNYXRMaXN0SGFybmVzcz4oXG4gICAgdGhpczogQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yPFQ+LFxuICAgIG9wdGlvbnM6IExpc3RIYXJuZXNzRmlsdGVycyA9IHt9LFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFQ+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUodGhpcywgb3B0aW9ucyk7XG4gIH1cblxuICBvdmVycmlkZSBfaXRlbUhhcm5lc3MgPSBNYXRMaXN0SXRlbUhhcm5lc3M7XG59XG5cbi8qKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgbGlzdCBpdGVtLiAqL1xuZXhwb3J0IGNsYXNzIE1hdExpc3RJdGVtSGFybmVzcyBleHRlbmRzIE1hdExpc3RJdGVtSGFybmVzc0Jhc2Uge1xuICAvKiogVGhlIHNlbGVjdG9yIGZvciB0aGUgaG9zdCBlbGVtZW50IG9mIGEgYE1hdExpc3RJdGVtYCBpbnN0YW5jZS4gKi9cbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9IGAke01hdExpc3RIYXJuZXNzLmhvc3RTZWxlY3Rvcn0gLm1hdC1tZGMtbGlzdC1pdGVtYDtcblxuICAvKipcbiAgICogR2V0cyBhIGBIYXJuZXNzUHJlZGljYXRlYCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlYXJjaCBmb3IgYSBsaXN0IGl0ZW0gd2l0aCBzcGVjaWZpYyBhdHRyaWJ1dGVzLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25zIGZvciBmaWx0ZXJpbmcgd2hpY2ggbGlzdCBpdGVtIGluc3RhbmNlcyBhcmUgY29uc2lkZXJlZCBhIG1hdGNoLlxuICAgKiBAcmV0dXJuIGEgYEhhcm5lc3NQcmVkaWNhdGVgIGNvbmZpZ3VyZWQgd2l0aCB0aGUgZ2l2ZW4gb3B0aW9ucy5cbiAgICovXG4gIHN0YXRpYyB3aXRoPFQgZXh0ZW5kcyBNYXRMaXN0SXRlbUhhcm5lc3M+KFxuICAgIHRoaXM6IENvbXBvbmVudEhhcm5lc3NDb25zdHJ1Y3RvcjxUPixcbiAgICBvcHRpb25zOiBMaXN0SXRlbUhhcm5lc3NGaWx0ZXJzID0ge30sXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8VD4ge1xuICAgIHJldHVybiBnZXRMaXN0SXRlbVByZWRpY2F0ZSh0aGlzLCBvcHRpb25zKTtcbiAgfVxufVxuIl19
@@ -1,150 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { ComponentHarness, ContentContainerComponentHarness, HarnessPredicate, parallel, } from '@angular/cdk/testing';
9
- const iconSelector = '.mat-mdc-list-item-icon';
10
- const avatarSelector = '.mat-mdc-list-item-avatar';
11
- /**
12
- * Gets a `HarnessPredicate` that applies the given `BaseListItemHarnessFilters` to the given
13
- * list item harness.
14
- * @template H The type of list item harness to create a predicate for.
15
- * @param harnessType A constructor for a list item harness.
16
- * @param options An instance of `BaseListItemHarnessFilters` to apply.
17
- * @return A `HarnessPredicate` for the given harness type with the given options applied.
18
- */
19
- export function getListItemPredicate(harnessType, options) {
20
- return new HarnessPredicate(harnessType, options)
21
- .addOption('text', options.text, (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text))
22
- .addOption('fullText', options.fullText, (harness, fullText) => HarnessPredicate.stringMatches(harness.getFullText(), fullText))
23
- .addOption('title', options.title, (harness, title) => HarnessPredicate.stringMatches(harness.getTitle(), title))
24
- .addOption('secondaryText', options.secondaryText, (harness, secondaryText) => HarnessPredicate.stringMatches(harness.getSecondaryText(), secondaryText))
25
- .addOption('tertiaryText', options.tertiaryText, (harness, tertiaryText) => HarnessPredicate.stringMatches(harness.getTertiaryText(), tertiaryText));
26
- }
27
- /** Harness for interacting with a MDC-based list subheader. */
28
- export class MatSubheaderHarness extends ComponentHarness {
29
- static with(options = {}) {
30
- return new HarnessPredicate(MatSubheaderHarness, options).addOption('text', options.text, (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text));
31
- }
32
- /** Gets the full text content of the list item (including text from any font icons). */
33
- async getText() {
34
- return (await this.host()).text();
35
- }
36
- }
37
- MatSubheaderHarness.hostSelector = '.mat-mdc-subheader';
38
- /**
39
- * Shared behavior among the harnesses for the various `MatListItem` flavors.
40
- * @docs-private
41
- */
42
- export class MatListItemHarnessBase extends ContentContainerComponentHarness {
43
- constructor() {
44
- super(...arguments);
45
- this._lines = this.locatorForAll('.mat-mdc-list-item-line');
46
- this._primaryText = this.locatorFor('.mdc-list-item__primary-text');
47
- this._avatar = this.locatorForOptional('.mat-mdc-list-item-avatar');
48
- this._icon = this.locatorForOptional('.mat-mdc-list-item-icon');
49
- this._unscopedTextContent = this.locatorFor('.mat-mdc-list-item-unscoped-content');
50
- }
51
- /** Gets the type of the list item, currently describing how many lines there are. */
52
- async getType() {
53
- const host = await this.host();
54
- const [isOneLine, isTwoLine] = await parallel(() => [
55
- host.hasClass('mdc-list-item--with-one-line'),
56
- host.hasClass('mdc-list-item--with-two-lines'),
57
- ]);
58
- if (isOneLine) {
59
- return 0 /* MatListItemType.ONE_LINE_ITEM */;
60
- }
61
- else if (isTwoLine) {
62
- return 1 /* MatListItemType.TWO_LINE_ITEM */;
63
- }
64
- else {
65
- return 2 /* MatListItemType.THREE_LINE_ITEM */;
66
- }
67
- }
68
- /**
69
- * Gets the full text content of the list item, excluding text
70
- * from icons and avatars.
71
- *
72
- * @deprecated Use the `getFullText` method instead.
73
- * @breaking-change 16.0.0
74
- */
75
- async getText() {
76
- return this.getFullText();
77
- }
78
- /**
79
- * Gets the full text content of the list item, excluding text
80
- * from icons and avatars.
81
- */
82
- async getFullText() {
83
- return (await this.host()).text({ exclude: `${iconSelector}, ${avatarSelector}` });
84
- }
85
- /** Gets the title of the list item. */
86
- async getTitle() {
87
- return (await this._primaryText()).text();
88
- }
89
- /** Whether the list item is disabled. */
90
- async isDisabled() {
91
- return (await this.host()).hasClass('mdc-list-item--disabled');
92
- }
93
- /**
94
- * Gets the secondary line text of the list item. Null if the list item
95
- * does not have a secondary line.
96
- */
97
- async getSecondaryText() {
98
- const type = await this.getType();
99
- if (type === 0 /* MatListItemType.ONE_LINE_ITEM */) {
100
- return null;
101
- }
102
- const [lines, unscopedTextContent] = await parallel(() => [
103
- this._lines(),
104
- this._unscopedTextContent(),
105
- ]);
106
- // If there is no explicit line for the secondary text, the unscoped text content
107
- // is rendered as the secondary text (with potential text wrapping enabled).
108
- if (lines.length >= 1) {
109
- return lines[0].text();
110
- }
111
- else {
112
- return unscopedTextContent.text();
113
- }
114
- }
115
- /**
116
- * Gets the tertiary line text of the list item. Null if the list item
117
- * does not have a tertiary line.
118
- */
119
- async getTertiaryText() {
120
- const type = await this.getType();
121
- if (type !== 2 /* MatListItemType.THREE_LINE_ITEM */) {
122
- return null;
123
- }
124
- const [lines, unscopedTextContent] = await parallel(() => [
125
- this._lines(),
126
- this._unscopedTextContent(),
127
- ]);
128
- // First we check if there is an explicit line for the tertiary text. If so, we return it.
129
- // If there is at least an explicit secondary line though, then we know that the unscoped
130
- // text content corresponds to the tertiary line. If there are no explicit lines at all,
131
- // we know that the unscoped text content from the secondary text just wraps into the third
132
- // line, but there *no* actual dedicated tertiary text.
133
- if (lines.length === 2) {
134
- return lines[1].text();
135
- }
136
- else if (lines.length === 1) {
137
- return unscopedTextContent.text();
138
- }
139
- return null;
140
- }
141
- /** Whether this list item has an avatar. */
142
- async hasAvatar() {
143
- return !!(await this._avatar());
144
- }
145
- /** Whether this list item has an icon. */
146
- async hasIcon() {
147
- return !!(await this._icon());
148
- }
149
- }
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pdGVtLWhhcm5lc3MtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC1leHBlcmltZW50YWwvbWRjLWxpc3QvdGVzdGluZy9saXN0LWl0ZW0taGFybmVzcy1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFDTCxnQkFBZ0IsRUFFaEIsZ0NBQWdDLEVBQ2hDLGdCQUFnQixFQUNoQixRQUFRLEdBQ1QsTUFBTSxzQkFBc0IsQ0FBQztBQUc5QixNQUFNLFlBQVksR0FBRyx5QkFBeUIsQ0FBQztBQUMvQyxNQUFNLGNBQWMsR0FBRywyQkFBMkIsQ0FBQztBQUVuRDs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxXQUEyQyxFQUMzQyxPQUFtQztJQUVuQyxPQUFPLElBQUksZ0JBQWdCLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQztTQUM5QyxTQUFTLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FDakQsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FDeEQ7U0FDQSxTQUFTLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FDN0QsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FDaEU7U0FDQSxTQUFTLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FDcEQsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FDMUQ7U0FDQSxTQUFTLENBQUMsZUFBZSxFQUFFLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FDNUUsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLGFBQWEsQ0FBQyxDQUMxRTtTQUNBLFNBQVMsQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsRUFBRSxDQUN6RSxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxFQUFFLFlBQVksQ0FBQyxDQUN4RSxDQUFDO0FBQ04sQ0FBQztBQUVELCtEQUErRDtBQUMvRCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsZ0JBQWdCO0lBR3ZELE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBbUMsRUFBRTtRQUMvQyxPQUFPLElBQUksZ0JBQWdCLENBQUMsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUNqRSxNQUFNLEVBQ04sT0FBTyxDQUFDLElBQUksRUFDWixDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQzNFLENBQUM7SUFDSixDQUFDO0lBRUQsd0ZBQXdGO0lBQ3hGLEtBQUssQ0FBQyxPQUFPO1FBQ1gsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEMsQ0FBQzs7QUFiTSxnQ0FBWSxHQUFHLG9CQUFvQixDQUFDO0FBNEI3Qzs7O0dBR0c7QUFDSCxNQUFNLE9BQWdCLHNCQUF1QixTQUFRLGdDQUFvRDtJQUF6Rzs7UUFDVSxXQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3ZELGlCQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBQy9ELFlBQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUMvRCxVQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDM0QseUJBQW9CLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0lBNEd4RixDQUFDO0lBMUdDLHFGQUFxRjtJQUNyRixLQUFLLENBQUMsT0FBTztRQUNYLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLEdBQUcsTUFBTSxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDbEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyw4QkFBOEIsQ0FBQztZQUM3QyxJQUFJLENBQUMsUUFBUSxDQUFDLCtCQUErQixDQUFDO1NBQy9DLENBQUMsQ0FBQztRQUNILElBQUksU0FBUyxFQUFFO1lBQ2IsNkNBQXFDO1NBQ3RDO2FBQU0sSUFBSSxTQUFTLEVBQUU7WUFDcEIsNkNBQXFDO1NBQ3RDO2FBQU07WUFDTCwrQ0FBdUM7U0FDeEM7SUFDSCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLE9BQU87UUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLFdBQVc7UUFDZixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBQyxPQUFPLEVBQUUsR0FBRyxZQUFZLEtBQUssY0FBYyxFQUFFLEVBQUMsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCx1Q0FBdUM7SUFDdkMsS0FBSyxDQUFDLFFBQVE7UUFDWixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRUQseUNBQXlDO0lBQ3pDLEtBQUssQ0FBQyxVQUFVO1FBQ2QsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxnQkFBZ0I7UUFDcEIsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbEMsSUFBSSxJQUFJLDBDQUFrQyxFQUFFO1lBQzFDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLG1CQUFtQixDQUFDLEdBQUcsTUFBTSxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDeEQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNiLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtTQUM1QixDQUFDLENBQUM7UUFFSCxpRkFBaUY7UUFDakYsNEVBQTRFO1FBQzVFLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7WUFDckIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDeEI7YUFBTTtZQUNMLE9BQU8sbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbkM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLGVBQWU7UUFDbkIsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbEMsSUFBSSxJQUFJLDRDQUFvQyxFQUFFO1lBQzVDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLG1CQUFtQixDQUFDLEdBQUcsTUFBTSxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDeEQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNiLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtTQUM1QixDQUFDLENBQUM7UUFFSCwwRkFBMEY7UUFDMUYseUZBQXlGO1FBQ3pGLHdGQUF3RjtRQUN4RiwyRkFBMkY7UUFDM0YsdURBQXVEO1FBQ3ZELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDdEIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDeEI7YUFBTSxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzdCLE9BQU8sbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbkM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCw0Q0FBNEM7SUFDNUMsS0FBSyxDQUFDLFNBQVM7UUFDYixPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELDBDQUEwQztJQUMxQyxLQUFLLENBQUMsT0FBTztRQUNYLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNoQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtcbiAgQ29tcG9uZW50SGFybmVzcyxcbiAgQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yLFxuICBDb250ZW50Q29udGFpbmVyQ29tcG9uZW50SGFybmVzcyxcbiAgSGFybmVzc1ByZWRpY2F0ZSxcbiAgcGFyYWxsZWwsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7QmFzZUxpc3RJdGVtSGFybmVzc0ZpbHRlcnMsIFN1YmhlYWRlckhhcm5lc3NGaWx0ZXJzfSBmcm9tICcuL2xpc3QtaGFybmVzcy1maWx0ZXJzJztcblxuY29uc3QgaWNvblNlbGVjdG9yID0gJy5tYXQtbWRjLWxpc3QtaXRlbS1pY29uJztcbmNvbnN0IGF2YXRhclNlbGVjdG9yID0gJy5tYXQtbWRjLWxpc3QtaXRlbS1hdmF0YXInO1xuXG4vKipcbiAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBhcHBsaWVzIHRoZSBnaXZlbiBgQmFzZUxpc3RJdGVtSGFybmVzc0ZpbHRlcnNgIHRvIHRoZSBnaXZlblxuICogbGlzdCBpdGVtIGhhcm5lc3MuXG4gKiBAdGVtcGxhdGUgSCBUaGUgdHlwZSBvZiBsaXN0IGl0ZW0gaGFybmVzcyB0byBjcmVhdGUgYSBwcmVkaWNhdGUgZm9yLlxuICogQHBhcmFtIGhhcm5lc3NUeXBlIEEgY29uc3RydWN0b3IgZm9yIGEgbGlzdCBpdGVtIGhhcm5lc3MuXG4gKiBAcGFyYW0gb3B0aW9ucyBBbiBpbnN0YW5jZSBvZiBgQmFzZUxpc3RJdGVtSGFybmVzc0ZpbHRlcnNgIHRvIGFwcGx5LlxuICogQHJldHVybiBBIGBIYXJuZXNzUHJlZGljYXRlYCBmb3IgdGhlIGdpdmVuIGhhcm5lc3MgdHlwZSB3aXRoIHRoZSBnaXZlbiBvcHRpb25zIGFwcGxpZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaXN0SXRlbVByZWRpY2F0ZTxIIGV4dGVuZHMgTWF0TGlzdEl0ZW1IYXJuZXNzQmFzZT4oXG4gIGhhcm5lc3NUeXBlOiBDb21wb25lbnRIYXJuZXNzQ29uc3RydWN0b3I8SD4sXG4gIG9wdGlvbnM6IEJhc2VMaXN0SXRlbUhhcm5lc3NGaWx0ZXJzLFxuKTogSGFybmVzc1ByZWRpY2F0ZTxIPiB7XG4gIHJldHVybiBuZXcgSGFybmVzc1ByZWRpY2F0ZShoYXJuZXNzVHlwZSwgb3B0aW9ucylcbiAgICAuYWRkT3B0aW9uKCd0ZXh0Jywgb3B0aW9ucy50ZXh0LCAoaGFybmVzcywgdGV4dCkgPT5cbiAgICAgIEhhcm5lc3NQcmVkaWNhdGUuc3RyaW5nTWF0Y2hlcyhoYXJuZXNzLmdldFRleHQoKSwgdGV4dCksXG4gICAgKVxuICAgIC5hZGRPcHRpb24oJ2Z1bGxUZXh0Jywgb3B0aW9ucy5mdWxsVGV4dCwgKGhhcm5lc3MsIGZ1bGxUZXh0KSA9PlxuICAgICAgSGFybmVzc1ByZWRpY2F0ZS5zdHJpbmdNYXRjaGVzKGhhcm5lc3MuZ2V0RnVsbFRleHQoKSwgZnVsbFRleHQpLFxuICAgIClcbiAgICAuYWRkT3B0aW9uKCd0aXRsZScsIG9wdGlvbnMudGl0bGUsIChoYXJuZXNzLCB0aXRsZSkgPT5cbiAgICAgIEhhcm5lc3NQcmVkaWNhdGUuc3RyaW5nTWF0Y2hlcyhoYXJuZXNzLmdldFRpdGxlKCksIHRpdGxlKSxcbiAgICApXG4gICAgLmFkZE9wdGlvbignc2Vjb25kYXJ5VGV4dCcsIG9wdGlvbnMuc2Vjb25kYXJ5VGV4dCwgKGhhcm5lc3MsIHNlY29uZGFyeVRleHQpID0+XG4gICAgICBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXRTZWNvbmRhcnlUZXh0KCksIHNlY29uZGFyeVRleHQpLFxuICAgIClcbiAgICAuYWRkT3B0aW9uKCd0ZXJ0aWFyeVRleHQnLCBvcHRpb25zLnRlcnRpYXJ5VGV4dCwgKGhhcm5lc3MsIHRlcnRpYXJ5VGV4dCkgPT5cbiAgICAgIEhhcm5lc3NQcmVkaWNhdGUuc3RyaW5nTWF0Y2hlcyhoYXJuZXNzLmdldFRlcnRpYXJ5VGV4dCgpLCB0ZXJ0aWFyeVRleHQpLFxuICAgICk7XG59XG5cbi8qKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgTURDLWJhc2VkIGxpc3Qgc3ViaGVhZGVyLiAqL1xuZXhwb3J0IGNsYXNzIE1hdFN1YmhlYWRlckhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICcubWF0LW1kYy1zdWJoZWFkZXInO1xuXG4gIHN0YXRpYyB3aXRoKG9wdGlvbnM6IFN1YmhlYWRlckhhcm5lc3NGaWx0ZXJzID0ge30pOiBIYXJuZXNzUHJlZGljYXRlPE1hdFN1YmhlYWRlckhhcm5lc3M+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUoTWF0U3ViaGVhZGVySGFybmVzcywgb3B0aW9ucykuYWRkT3B0aW9uKFxuICAgICAgJ3RleHQnLFxuICAgICAgb3B0aW9ucy50ZXh0LFxuICAgICAgKGhhcm5lc3MsIHRleHQpID0+IEhhcm5lc3NQcmVkaWNhdGUuc3RyaW5nTWF0Y2hlcyhoYXJuZXNzLmdldFRleHQoKSwgdGV4dCksXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBmdWxsIHRleHQgY29udGVudCBvZiB0aGUgbGlzdCBpdGVtIChpbmNsdWRpbmcgdGV4dCBmcm9tIGFueSBmb250IGljb25zKS4gKi9cbiAgYXN5bmMgZ2V0VGV4dCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5ob3N0KCkpLnRleHQoKTtcbiAgfVxufVxuXG4vKiogU2VsZWN0b3JzIGZvciB0aGUgdmFyaW91cyBsaXN0IGl0ZW0gc2VjdGlvbnMgdGhhdCBtYXkgY29udGFpbiB1c2VyIGNvbnRlbnQuICovXG5leHBvcnQgY29uc3QgZW51bSBNYXRMaXN0SXRlbVNlY3Rpb24ge1xuICBDT05URU5UID0gJy5tZGMtbGlzdC1pdGVtX19jb250ZW50Jyxcbn1cblxuLyoqIEVudW0gZGVzY3JpYmluZyB0aGUgcG9zc2libGUgdmFyaWFudHMgb2YgYSBsaXN0IGl0ZW0uICovXG5leHBvcnQgY29uc3QgZW51bSBNYXRMaXN0SXRlbVR5cGUge1xuICBPTkVfTElORV9JVEVNLFxuICBUV09fTElORV9JVEVNLFxuICBUSFJFRV9MSU5FX0lURU0sXG59XG5cbi8qKlxuICogU2hhcmVkIGJlaGF2aW9yIGFtb25nIHRoZSBoYXJuZXNzZXMgZm9yIHRoZSB2YXJpb3VzIGBNYXRMaXN0SXRlbWAgZmxhdm9ycy5cbiAqIEBkb2NzLXByaXZhdGVcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1hdExpc3RJdGVtSGFybmVzc0Jhc2UgZXh0ZW5kcyBDb250ZW50Q29udGFpbmVyQ29tcG9uZW50SGFybmVzczxNYXRMaXN0SXRlbVNlY3Rpb24+IHtcbiAgcHJpdmF0ZSBfbGluZXMgPSB0aGlzLmxvY2F0b3JGb3JBbGwoJy5tYXQtbWRjLWxpc3QtaXRlbS1saW5lJyk7XG4gIHByaXZhdGUgX3ByaW1hcnlUZXh0ID0gdGhpcy5sb2NhdG9yRm9yKCcubWRjLWxpc3QtaXRlbV9fcHJpbWFyeS10ZXh0Jyk7XG4gIHByaXZhdGUgX2F2YXRhciA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKCcubWF0LW1kYy1saXN0LWl0ZW0tYXZhdGFyJyk7XG4gIHByaXZhdGUgX2ljb24gPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbCgnLm1hdC1tZGMtbGlzdC1pdGVtLWljb24nKTtcbiAgcHJpdmF0ZSBfdW5zY29wZWRUZXh0Q29udGVudCA9IHRoaXMubG9jYXRvckZvcignLm1hdC1tZGMtbGlzdC1pdGVtLXVuc2NvcGVkLWNvbnRlbnQnKTtcblxuICAvKiogR2V0cyB0aGUgdHlwZSBvZiB0aGUgbGlzdCBpdGVtLCBjdXJyZW50bHkgZGVzY3JpYmluZyBob3cgbWFueSBsaW5lcyB0aGVyZSBhcmUuICovXG4gIGFzeW5jIGdldFR5cGUoKTogUHJvbWlzZTxNYXRMaXN0SXRlbVR5cGU+IHtcbiAgICBjb25zdCBob3N0ID0gYXdhaXQgdGhpcy5ob3N0KCk7XG4gICAgY29uc3QgW2lzT25lTGluZSwgaXNUd29MaW5lXSA9IGF3YWl0IHBhcmFsbGVsKCgpID0+IFtcbiAgICAgIGhvc3QuaGFzQ2xhc3MoJ21kYy1saXN0LWl0ZW0tLXdpdGgtb25lLWxpbmUnKSxcbiAgICAgIGhvc3QuaGFzQ2xhc3MoJ21kYy1saXN0LWl0ZW0tLXdpdGgtdHdvLWxpbmVzJyksXG4gICAgXSk7XG4gICAgaWYgKGlzT25lTGluZSkge1xuICAgICAgcmV0dXJuIE1hdExpc3RJdGVtVHlwZS5PTkVfTElORV9JVEVNO1xuICAgIH0gZWxzZSBpZiAoaXNUd29MaW5lKSB7XG4gICAgICByZXR1cm4gTWF0TGlzdEl0ZW1UeXBlLlRXT19MSU5FX0lURU07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBNYXRMaXN0SXRlbVR5cGUuVEhSRUVfTElORV9JVEVNO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBmdWxsIHRleHQgY29udGVudCBvZiB0aGUgbGlzdCBpdGVtLCBleGNsdWRpbmcgdGV4dFxuICAgKiBmcm9tIGljb25zIGFuZCBhdmF0YXJzLlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgdGhlIGBnZXRGdWxsVGV4dGAgbWV0aG9kIGluc3RlYWQuXG4gICAqIEBicmVha2luZy1jaGFuZ2UgMTYuMC4wXG4gICAqL1xuICBhc3luYyBnZXRUZXh0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RnVsbFRleHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBmdWxsIHRleHQgY29udGVudCBvZiB0aGUgbGlzdCBpdGVtLCBleGNsdWRpbmcgdGV4dFxuICAgKiBmcm9tIGljb25zIGFuZCBhdmF0YXJzLlxuICAgKi9cbiAgYXN5bmMgZ2V0RnVsbFRleHQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS50ZXh0KHtleGNsdWRlOiBgJHtpY29uU2VsZWN0b3J9LCAke2F2YXRhclNlbGVjdG9yfWB9KTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSB0aXRsZSBvZiB0aGUgbGlzdCBpdGVtLiAqL1xuICBhc3luYyBnZXRUaXRsZSgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5fcHJpbWFyeVRleHQoKSkudGV4dCgpO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGxpc3QgaXRlbSBpcyBkaXNhYmxlZC4gKi9cbiAgYXN5bmMgaXNEaXNhYmxlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS5oYXNDbGFzcygnbWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBzZWNvbmRhcnkgbGluZSB0ZXh0IG9mIHRoZSBsaXN0IGl0ZW0uIE51bGwgaWYgdGhlIGxpc3QgaXRlbVxuICAgKiBkb2VzIG5vdCBoYXZlIGEgc2Vjb25kYXJ5IGxpbmUuXG4gICAqL1xuICBhc3luYyBnZXRTZWNvbmRhcnlUZXh0KCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIGNvbnN0IHR5cGUgPSBhd2FpdCB0aGlzLmdldFR5cGUoKTtcbiAgICBpZiAodHlwZSA9PT0gTWF0TGlzdEl0ZW1UeXBlLk9ORV9MSU5FX0lURU0pIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IFtsaW5lcywgdW5zY29wZWRUZXh0Q29udGVudF0gPSBhd2FpdCBwYXJhbGxlbCgoKSA9PiBbXG4gICAgICB0aGlzLl9saW5lcygpLFxuICAgICAgdGhpcy5fdW5zY29wZWRUZXh0Q29udGVudCgpLFxuICAgIF0pO1xuXG4gICAgLy8gSWYgdGhlcmUgaXMgbm8gZXhwbGljaXQgbGluZSBmb3IgdGhlIHNlY29uZGFyeSB0ZXh0LCB0aGUgdW5zY29wZWQgdGV4dCBjb250ZW50XG4gICAgLy8gaXMgcmVuZGVyZWQgYXMgdGhlIHNlY29uZGFyeSB0ZXh0ICh3aXRoIHBvdGVudGlhbCB0ZXh0IHdyYXBwaW5nIGVuYWJsZWQpLlxuICAgIGlmIChsaW5lcy5sZW5ndGggPj0gMSkge1xuICAgICAgcmV0dXJuIGxpbmVzWzBdLnRleHQoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuc2NvcGVkVGV4dENvbnRlbnQudGV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB0ZXJ0aWFyeSBsaW5lIHRleHQgb2YgdGhlIGxpc3QgaXRlbS4gTnVsbCBpZiB0aGUgbGlzdCBpdGVtXG4gICAqIGRvZXMgbm90IGhhdmUgYSB0ZXJ0aWFyeSBsaW5lLlxuICAgKi9cbiAgYXN5bmMgZ2V0VGVydGlhcnlUZXh0KCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIGNvbnN0IHR5cGUgPSBhd2FpdCB0aGlzLmdldFR5cGUoKTtcbiAgICBpZiAodHlwZSAhPT0gTWF0TGlzdEl0ZW1UeXBlLlRIUkVFX0xJTkVfSVRFTSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgW2xpbmVzLCB1bnNjb3BlZFRleHRDb250ZW50XSA9IGF3YWl0IHBhcmFsbGVsKCgpID0+IFtcbiAgICAgIHRoaXMuX2xpbmVzKCksXG4gICAgICB0aGlzLl91bnNjb3BlZFRleHRDb250ZW50KCksXG4gICAgXSk7XG5cbiAgICAvLyBGaXJzdCB3ZSBjaGVjayBpZiB0aGVyZSBpcyBhbiBleHBsaWNpdCBsaW5lIGZvciB0aGUgdGVydGlhcnkgdGV4dC4gSWYgc28sIHdlIHJldHVybiBpdC5cbiAgICAvLyBJZiB0aGVyZSBpcyBhdCBsZWFzdCBhbiBleHBsaWNpdCBzZWNvbmRhcnkgbGluZSB0aG91Z2gsIHRoZW4gd2Uga25vdyB0aGF0IHRoZSB1bnNjb3BlZFxuICAgIC8vIHRleHQgY29udGVudCBjb3JyZXNwb25kcyB0byB0aGUgdGVydGlhcnkgbGluZS4gSWYgdGhlcmUgYXJlIG5vIGV4cGxpY2l0IGxpbmVzIGF0IGFsbCxcbiAgICAvLyB3ZSBrbm93IHRoYXQgdGhlIHVuc2NvcGVkIHRleHQgY29udGVudCBmcm9tIHRoZSBzZWNvbmRhcnkgdGV4dCBqdXN0IHdyYXBzIGludG8gdGhlIHRoaXJkXG4gICAgLy8gbGluZSwgYnV0IHRoZXJlICpubyogYWN0dWFsIGRlZGljYXRlZCB0ZXJ0aWFyeSB0ZXh0LlxuICAgIGlmIChsaW5lcy5sZW5ndGggPT09IDIpIHtcbiAgICAgIHJldHVybiBsaW5lc1sxXS50ZXh0KCk7XG4gICAgfSBlbHNlIGlmIChsaW5lcy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiB1bnNjb3BlZFRleHRDb250ZW50LnRleHQoKTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKiogV2hldGhlciB0aGlzIGxpc3QgaXRlbSBoYXMgYW4gYXZhdGFyLiAqL1xuICBhc3luYyBoYXNBdmF0YXIoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuICEhKGF3YWl0IHRoaXMuX2F2YXRhcigpKTtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRoaXMgbGlzdCBpdGVtIGhhcyBhbiBpY29uLiAqL1xuICBhc3luYyBoYXNJY29uKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAhIShhd2FpdCB0aGlzLl9pY29uKCkpO1xuICB9XG59XG4iXX0=
@@ -1,69 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { HarnessPredicate } from '@angular/cdk/testing';
9
- import { MatListHarnessBase } from './list-harness-base';
10
- import { getListItemPredicate, MatListItemHarnessBase } from './list-item-harness-base';
11
- /** Harness for interacting with a MDC-based mat-nav-list in tests. */
12
- export class MatNavListHarness extends MatListHarnessBase {
13
- constructor() {
14
- super(...arguments);
15
- this._itemHarness = MatNavListItemHarness;
16
- }
17
- /**
18
- * Gets a `HarnessPredicate` that can be used to search for a nav list with specific
19
- * attributes.
20
- * @param options Options for filtering which nav list instances are considered a match.
21
- * @return a `HarnessPredicate` configured with the given options.
22
- */
23
- static with(options = {}) {
24
- return new HarnessPredicate(this, options);
25
- }
26
- }
27
- /** The selector for the host element of a `MatNavList` instance. */
28
- MatNavListHarness.hostSelector = '.mat-mdc-nav-list';
29
- /** Harness for interacting with a MDC-based nav-list item. */
30
- export class MatNavListItemHarness extends MatListItemHarnessBase {
31
- /**
32
- * Gets a `HarnessPredicate` that can be used to search for a nav list item with specific
33
- * attributes.
34
- * @param options Options for filtering which nav list item instances are considered a match.
35
- * @return a `HarnessPredicate` configured with the given options.
36
- */
37
- static with(options = {}) {
38
- return getListItemPredicate(this, options)
39
- .addOption('href', options.href, async (harness, href) => HarnessPredicate.stringMatches(harness.getHref(), href))
40
- .addOption('activated', options.activated, async (harness, activated) => (await harness.isActivated()) === activated);
41
- }
42
- /** Gets the href for this nav list item. */
43
- async getHref() {
44
- return (await this.host()).getAttribute('href');
45
- }
46
- /** Clicks on the nav list item. */
47
- async click() {
48
- return (await this.host()).click();
49
- }
50
- /** Focuses the nav list item. */
51
- async focus() {
52
- return (await this.host()).focus();
53
- }
54
- /** Blurs the nav list item. */
55
- async blur() {
56
- return (await this.host()).blur();
57
- }
58
- /** Whether the nav list item is focused. */
59
- async isFocused() {
60
- return (await this.host()).isFocused();
61
- }
62
- /** Whether the list item is activated. Should only be used for nav list items. */
63
- async isActivated() {
64
- return (await this.host()).hasClass('mdc-list-item--activated');
65
- }
66
- }
67
- /** The selector for the host element of a `MatListItem` instance. */
68
- MatNavListItemHarness.hostSelector = `${MatNavListHarness.hostSelector} .mat-mdc-list-item`;
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LWxpc3QtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC1leHBlcmltZW50YWwvbWRjLWxpc3QvdGVzdGluZy9uYXYtbGlzdC1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBOEIsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUV2RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUV0RixzRUFBc0U7QUFDdEUsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGtCQUl0QztJQUpEOztRQXFCVyxpQkFBWSxHQUFHLHFCQUFxQixDQUFDO0lBQ2hELENBQUM7SUFkQzs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxJQUFJLENBRVQsVUFBaUMsRUFBRTtRQUVuQyxPQUFPLElBQUksZ0JBQWdCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7O0FBZEQsb0VBQW9FO0FBQzdELDhCQUFZLEdBQUcsbUJBQW1CLENBQUM7QUFrQjVDLDhEQUE4RDtBQUM5RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsc0JBQXNCO0lBSS9EOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLElBQUksQ0FFVCxVQUFxQyxFQUFFO1FBRXZDLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQzthQUN2QyxTQUFTLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUN2RCxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksQ0FBQyxDQUN4RDthQUNBLFNBQVMsQ0FDUixXQUFXLEVBQ1gsT0FBTyxDQUFDLFNBQVMsRUFDakIsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxTQUFTLENBQzFFLENBQUM7SUFDTixDQUFDO0lBRUQsNENBQTRDO0lBQzVDLEtBQUssQ0FBQyxPQUFPO1FBQ1gsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxtQ0FBbUM7SUFDbkMsS0FBSyxDQUFDLEtBQUs7UUFDVCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsaUNBQWlDO0lBQ2pDLEtBQUssQ0FBQyxLQUFLO1FBQ1QsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELCtCQUErQjtJQUMvQixLQUFLLENBQUMsSUFBSTtRQUNSLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCw0Q0FBNEM7SUFDNUMsS0FBSyxDQUFDLFNBQVM7UUFDYixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsa0ZBQWtGO0lBQ2xGLEtBQUssQ0FBQyxXQUFXO1FBQ2YsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFDbEUsQ0FBQzs7QUFwREQscUVBQXFFO0FBQzlELGtDQUFZLEdBQUcsR0FBRyxpQkFBaUIsQ0FBQyxZQUFZLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yLCBIYXJuZXNzUHJlZGljYXRlfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQge01hdExpc3RIYXJuZXNzQmFzZX0gZnJvbSAnLi9saXN0LWhhcm5lc3MtYmFzZSc7XG5pbXBvcnQge05hdkxpc3RIYXJuZXNzRmlsdGVycywgTmF2TGlzdEl0ZW1IYXJuZXNzRmlsdGVyc30gZnJvbSAnLi9saXN0LWhhcm5lc3MtZmlsdGVycyc7XG5pbXBvcnQge2dldExpc3RJdGVtUHJlZGljYXRlLCBNYXRMaXN0SXRlbUhhcm5lc3NCYXNlfSBmcm9tICcuL2xpc3QtaXRlbS1oYXJuZXNzLWJhc2UnO1xuXG4vKiogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhIE1EQy1iYXNlZCBtYXQtbmF2LWxpc3QgaW4gdGVzdHMuICovXG5leHBvcnQgY2xhc3MgTWF0TmF2TGlzdEhhcm5lc3MgZXh0ZW5kcyBNYXRMaXN0SGFybmVzc0Jhc2U8XG4gIHR5cGVvZiBNYXROYXZMaXN0SXRlbUhhcm5lc3MsXG4gIE1hdE5hdkxpc3RJdGVtSGFybmVzcyxcbiAgTmF2TGlzdEl0ZW1IYXJuZXNzRmlsdGVyc1xuPiB7XG4gIC8qKiBUaGUgc2VsZWN0b3IgZm9yIHRoZSBob3N0IGVsZW1lbnQgb2YgYSBgTWF0TmF2TGlzdGAgaW5zdGFuY2UuICovXG4gIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnLm1hdC1tZGMtbmF2LWxpc3QnO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhIG5hdiBsaXN0IHdpdGggc3BlY2lmaWNcbiAgICogYXR0cmlidXRlcy5cbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9ucyBmb3IgZmlsdGVyaW5nIHdoaWNoIG5hdiBsaXN0IGluc3RhbmNlcyBhcmUgY29uc2lkZXJlZCBhIG1hdGNoLlxuICAgKiBAcmV0dXJuIGEgYEhhcm5lc3NQcmVkaWNhdGVgIGNvbmZpZ3VyZWQgd2l0aCB0aGUgZ2l2ZW4gb3B0aW9ucy5cbiAgICovXG4gIHN0YXRpYyB3aXRoPFQgZXh0ZW5kcyBNYXROYXZMaXN0SGFybmVzcz4oXG4gICAgdGhpczogQ29tcG9uZW50SGFybmVzc0NvbnN0cnVjdG9yPFQ+LFxuICAgIG9wdGlvbnM6IE5hdkxpc3RIYXJuZXNzRmlsdGVycyA9IHt9LFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFQ+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUodGhpcywgb3B0aW9ucyk7XG4gIH1cblxuICBvdmVycmlkZSBfaXRlbUhhcm5lc3MgPSBNYXROYXZMaXN0SXRlbUhhcm5lc3M7XG59XG5cbi8qKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgTURDLWJhc2VkIG5hdi1saXN0IGl0ZW0uICovXG5leHBvcnQgY2xhc3MgTWF0TmF2TGlzdEl0ZW1IYXJuZXNzIGV4dGVuZHMgTWF0TGlzdEl0ZW1IYXJuZXNzQmFzZSB7XG4gIC8qKiBUaGUgc2VsZWN0b3IgZm9yIHRoZSBob3N0IGVsZW1lbnQgb2YgYSBgTWF0TGlzdEl0ZW1gIGluc3RhbmNlLiAqL1xuICBzdGF0aWMgaG9zdFNlbGVjdG9yID0gYCR7TWF0TmF2TGlzdEhhcm5lc3MuaG9zdFNlbGVjdG9yfSAubWF0LW1kYy1saXN0LWl0ZW1gO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhIG5hdiBsaXN0IGl0ZW0gd2l0aCBzcGVjaWZpY1xuICAgKiBhdHRyaWJ1dGVzLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25zIGZvciBmaWx0ZXJpbmcgd2hpY2ggbmF2IGxpc3QgaXRlbSBpbnN0YW5jZXMgYXJlIGNvbnNpZGVyZWQgYSBtYXRjaC5cbiAgICogQHJldHVybiBhIGBIYXJuZXNzUHJlZGljYXRlYCBjb25maWd1cmVkIHdpdGggdGhlIGdpdmVuIG9wdGlvbnMuXG4gICAqL1xuICBzdGF0aWMgd2l0aDxUIGV4dGVuZHMgTWF0TmF2TGlzdEl0ZW1IYXJuZXNzPihcbiAgICB0aGlzOiBDb21wb25lbnRIYXJuZXNzQ29uc3RydWN0b3I8VD4sXG4gICAgb3B0aW9uczogTmF2TGlzdEl0ZW1IYXJuZXNzRmlsdGVycyA9IHt9LFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFQ+IHtcbiAgICByZXR1cm4gZ2V0TGlzdEl0ZW1QcmVkaWNhdGUodGhpcywgb3B0aW9ucylcbiAgICAgIC5hZGRPcHRpb24oJ2hyZWYnLCBvcHRpb25zLmhyZWYsIGFzeW5jIChoYXJuZXNzLCBocmVmKSA9PlxuICAgICAgICBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXRIcmVmKCksIGhyZWYpLFxuICAgICAgKVxuICAgICAgLmFkZE9wdGlvbihcbiAgICAgICAgJ2FjdGl2YXRlZCcsXG4gICAgICAgIG9wdGlvbnMuYWN0aXZhdGVkLFxuICAgICAgICBhc3luYyAoaGFybmVzcywgYWN0aXZhdGVkKSA9PiAoYXdhaXQgaGFybmVzcy5pc0FjdGl2YXRlZCgpKSA9PT0gYWN0aXZhdGVkLFxuICAgICAgKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBocmVmIGZvciB0aGlzIG5hdiBsaXN0IGl0ZW0uICovXG4gIGFzeW5jIGdldEhyZWYoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmhvc3QoKSkuZ2V0QXR0cmlidXRlKCdocmVmJyk7XG4gIH1cblxuICAvKiogQ2xpY2tzIG9uIHRoZSBuYXYgbGlzdCBpdGVtLiAqL1xuICBhc3luYyBjbGljaygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqIEZvY3VzZXMgdGhlIG5hdiBsaXN0IGl0ZW0uICovXG4gIGFzeW5jIGZvY3VzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5ob3N0KCkpLmZvY3VzKCk7XG4gIH1cblxuICAvKiogQmx1cnMgdGhlIG5hdiBsaXN0IGl0ZW0uICovXG4gIGFzeW5jIGJsdXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmhvc3QoKSkuYmx1cigpO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIG5hdiBsaXN0IGl0ZW0gaXMgZm9jdXNlZC4gKi9cbiAgYXN5bmMgaXNGb2N1c2VkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5ob3N0KCkpLmlzRm9jdXNlZCgpO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGxpc3QgaXRlbSBpcyBhY3RpdmF0ZWQuIFNob3VsZCBvbmx5IGJlIHVzZWQgZm9yIG5hdiBsaXN0IGl0ZW1zLiAqL1xuICBhc3luYyBpc0FjdGl2YXRlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS5oYXNDbGFzcygnbWRjLWxpc3QtaXRlbS0tYWN0aXZhdGVkJyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,14 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- export * from './action-list-harness';
9
- export * from './list-harness';
10
- export * from './list-harness-filters';
11
- export * from './nav-list-harness';
12
- export * from './selection-list-harness';
13
- export { MatSubheaderHarness } from './list-item-harness-base';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC1leHBlcmltZW50YWwvbWRjLWxpc3QvdGVzdGluZy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxPQUFPLEVBQXFCLG1CQUFtQixFQUFrQixNQUFNLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uLWxpc3QtaGFybmVzcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3QtaGFybmVzcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3QtaGFybmVzcy1maWx0ZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbmF2LWxpc3QtaGFybmVzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdGlvbi1saXN0LWhhcm5lc3MnO1xuZXhwb3J0IHtNYXRMaXN0SXRlbVNlY3Rpb24sIE1hdFN1YmhlYWRlckhhcm5lc3MsIE1hdExpc3RJdGVtVHlwZX0gZnJvbSAnLi9saXN0LWl0ZW0taGFybmVzcy1iYXNlJztcbiJdfQ==