@angular/material 16.0.0-next.3 → 16.0.0-next.5

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 (791) hide show
  1. package/autocomplete/index.d.ts +10 -5
  2. package/badge/index.d.ts +1 -1
  3. package/button/_icon-button-theme.scss +85 -35
  4. package/button/index.d.ts +52 -11
  5. package/button-toggle/index.d.ts +2 -2
  6. package/card/index.d.ts +2 -2
  7. package/checkbox/index.d.ts +2 -2
  8. package/chips/index.d.ts +9 -10
  9. package/core/index.d.ts +7 -7
  10. package/core/mdc-helpers/_mdc-helpers.scss +31 -3
  11. package/core/option/_option-theme.scss +3 -2
  12. package/core/tokens/_token-utils.scss +1 -1
  13. package/core/tokens/m2/mat/_radio.scss +46 -0
  14. package/core/tokens/m2/mdc/_dialog.scss +115 -0
  15. package/core/tokens/m2/mdc/_icon-button.scss +79 -0
  16. package/core/tokens/m2/mdc/_linear-progress.scss +60 -0
  17. package/core/tokens/m2/mdc/_radio.scss +94 -0
  18. package/core/typography/_typography-utils.scss +7 -5
  19. package/datepicker/index.d.ts +13 -13
  20. package/dialog/_dialog-theme.scss +5 -37
  21. package/dialog/index.d.ts +3 -3
  22. package/divider/index.d.ts +1 -1
  23. package/esm2020/autocomplete/autocomplete-origin.mjs +6 -6
  24. package/esm2020/autocomplete/autocomplete-trigger.mjs +24 -12
  25. package/esm2020/autocomplete/autocomplete.mjs +32 -10
  26. package/esm2020/autocomplete/module.mjs +4 -4
  27. package/esm2020/badge/badge-module.mjs +4 -4
  28. package/esm2020/badge/badge.mjs +3 -3
  29. package/esm2020/bottom-sheet/bottom-sheet-container.mjs +3 -3
  30. package/esm2020/bottom-sheet/bottom-sheet-module.mjs +4 -4
  31. package/esm2020/bottom-sheet/bottom-sheet.mjs +3 -3
  32. package/esm2020/button/button-base.mjs +39 -14
  33. package/esm2020/button/button-lazy-loader.mjs +114 -0
  34. package/esm2020/button/button.mjs +9 -10
  35. package/esm2020/button/fab.mjs +17 -18
  36. package/esm2020/button/icon-button.mjs +21 -10
  37. package/esm2020/button/module.mjs +4 -4
  38. package/esm2020/button-toggle/button-toggle-module.mjs +4 -4
  39. package/esm2020/button-toggle/button-toggle.mjs +6 -6
  40. package/esm2020/card/card.mjs +42 -42
  41. package/esm2020/card/module.mjs +4 -4
  42. package/esm2020/checkbox/checkbox-required-validator.mjs +3 -3
  43. package/esm2020/checkbox/checkbox.mjs +8 -8
  44. package/esm2020/checkbox/module.mjs +8 -8
  45. package/esm2020/chips/chip-action.mjs +3 -3
  46. package/esm2020/chips/chip-edit-input.mjs +3 -3
  47. package/esm2020/chips/chip-grid.mjs +3 -3
  48. package/esm2020/chips/chip-icons.mjs +9 -9
  49. package/esm2020/chips/chip-input.mjs +6 -12
  50. package/esm2020/chips/chip-listbox.mjs +3 -3
  51. package/esm2020/chips/chip-option.mjs +3 -3
  52. package/esm2020/chips/chip-row.mjs +3 -3
  53. package/esm2020/chips/chip-set.mjs +3 -3
  54. package/esm2020/chips/chip.mjs +3 -3
  55. package/esm2020/chips/module.mjs +4 -4
  56. package/esm2020/core/common-behaviors/common-module.mjs +4 -4
  57. package/esm2020/core/datetime/index.mjs +8 -8
  58. package/esm2020/core/datetime/native-date-adapter.mjs +3 -3
  59. package/esm2020/core/error/error-options.mjs +6 -6
  60. package/esm2020/core/line/line.mjs +7 -7
  61. package/esm2020/core/option/index.mjs +4 -4
  62. package/esm2020/core/option/optgroup.mjs +6 -6
  63. package/esm2020/core/option/option.mjs +7 -7
  64. package/esm2020/core/ripple/index.mjs +4 -4
  65. package/esm2020/core/ripple/ripple.mjs +5 -5
  66. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +4 -4
  67. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
  68. package/esm2020/core/version.mjs +1 -1
  69. package/esm2020/datepicker/calendar-body.mjs +5 -5
  70. package/esm2020/datepicker/calendar.mjs +6 -6
  71. package/esm2020/datepicker/date-range-input-parts.mjs +9 -9
  72. package/esm2020/datepicker/date-range-input.mjs +3 -3
  73. package/esm2020/datepicker/date-range-picker.mjs +3 -3
  74. package/esm2020/datepicker/date-range-selection-strategy.mjs +3 -3
  75. package/esm2020/datepicker/date-selection-model.mjs +9 -9
  76. package/esm2020/datepicker/datepicker-actions.mjs +9 -9
  77. package/esm2020/datepicker/datepicker-base.mjs +6 -6
  78. package/esm2020/datepicker/datepicker-input-base.mjs +3 -3
  79. package/esm2020/datepicker/datepicker-input.mjs +3 -3
  80. package/esm2020/datepicker/datepicker-intl.mjs +3 -3
  81. package/esm2020/datepicker/datepicker-module.mjs +4 -4
  82. package/esm2020/datepicker/datepicker-toggle.mjs +6 -6
  83. package/esm2020/datepicker/datepicker.mjs +3 -3
  84. package/esm2020/datepicker/month-view.mjs +3 -3
  85. package/esm2020/datepicker/multi-year-view.mjs +3 -3
  86. package/esm2020/datepicker/year-view.mjs +3 -3
  87. package/esm2020/dialog/dialog-container.mjs +7 -7
  88. package/esm2020/dialog/dialog-content-directives.mjs +12 -12
  89. package/esm2020/dialog/dialog.mjs +6 -6
  90. package/esm2020/dialog/module.mjs +4 -4
  91. package/esm2020/divider/divider-module.mjs +4 -4
  92. package/esm2020/divider/divider.mjs +3 -3
  93. package/esm2020/expansion/accordion.mjs +3 -3
  94. package/esm2020/expansion/expansion-module.mjs +4 -4
  95. package/esm2020/expansion/expansion-panel-content.mjs +3 -3
  96. package/esm2020/expansion/expansion-panel-header.mjs +9 -9
  97. package/esm2020/expansion/expansion-panel.mjs +6 -6
  98. package/esm2020/form-field/directives/error.mjs +3 -3
  99. package/esm2020/form-field/directives/floating-label.mjs +3 -3
  100. package/esm2020/form-field/directives/hint.mjs +3 -3
  101. package/esm2020/form-field/directives/label.mjs +3 -3
  102. package/esm2020/form-field/directives/line-ripple.mjs +3 -3
  103. package/esm2020/form-field/directives/notched-outline.mjs +3 -3
  104. package/esm2020/form-field/directives/prefix.mjs +3 -3
  105. package/esm2020/form-field/directives/suffix.mjs +3 -3
  106. package/esm2020/form-field/form-field-control.mjs +3 -3
  107. package/esm2020/form-field/form-field.mjs +3 -3
  108. package/esm2020/form-field/module.mjs +4 -4
  109. package/esm2020/grid-list/grid-list-module.mjs +4 -4
  110. package/esm2020/grid-list/grid-list.mjs +3 -3
  111. package/esm2020/grid-list/grid-tile.mjs +15 -15
  112. package/esm2020/icon/icon-module.mjs +4 -4
  113. package/esm2020/icon/icon-registry.mjs +3 -3
  114. package/esm2020/icon/icon.mjs +3 -3
  115. package/esm2020/icon/testing/fake-icon-registry.mjs +7 -7
  116. package/esm2020/input/input.mjs +3 -3
  117. package/esm2020/input/module.mjs +4 -4
  118. package/esm2020/legacy-autocomplete/autocomplete-module.mjs +4 -4
  119. package/esm2020/legacy-autocomplete/autocomplete-origin.mjs +3 -3
  120. package/esm2020/legacy-autocomplete/autocomplete-trigger.mjs +3 -3
  121. package/esm2020/legacy-autocomplete/autocomplete.mjs +3 -3
  122. package/esm2020/legacy-button/button-module.mjs +4 -4
  123. package/esm2020/legacy-button/button.mjs +6 -6
  124. package/esm2020/legacy-card/card-module.mjs +4 -4
  125. package/esm2020/legacy-card/card.mjs +42 -42
  126. package/esm2020/legacy-checkbox/checkbox-module.mjs +4 -4
  127. package/esm2020/legacy-checkbox/checkbox.mjs +3 -3
  128. package/esm2020/legacy-chips/chip-input.mjs +6 -12
  129. package/esm2020/legacy-chips/chip-list.mjs +3 -3
  130. package/esm2020/legacy-chips/chip.mjs +12 -12
  131. package/esm2020/legacy-chips/chips-module.mjs +4 -4
  132. package/esm2020/legacy-core/option/index.mjs +4 -4
  133. package/esm2020/legacy-core/option/optgroup.mjs +3 -3
  134. package/esm2020/legacy-core/option/option.mjs +3 -3
  135. package/esm2020/legacy-dialog/dialog-container.mjs +3 -3
  136. package/esm2020/legacy-dialog/dialog-content-directives.mjs +12 -12
  137. package/esm2020/legacy-dialog/dialog-module.mjs +4 -4
  138. package/esm2020/legacy-dialog/dialog.mjs +3 -3
  139. package/esm2020/legacy-form-field/error.mjs +3 -3
  140. package/esm2020/legacy-form-field/form-field-module.mjs +4 -4
  141. package/esm2020/legacy-form-field/form-field.mjs +3 -3
  142. package/esm2020/legacy-form-field/hint.mjs +3 -3
  143. package/esm2020/legacy-form-field/label.mjs +3 -3
  144. package/esm2020/legacy-form-field/placeholder.mjs +3 -3
  145. package/esm2020/legacy-form-field/prefix.mjs +3 -3
  146. package/esm2020/legacy-form-field/suffix.mjs +3 -3
  147. package/esm2020/legacy-input/input-module.mjs +4 -4
  148. package/esm2020/legacy-input/input.mjs +3 -3
  149. package/esm2020/legacy-list/list-module.mjs +4 -4
  150. package/esm2020/legacy-list/list.mjs +18 -18
  151. package/esm2020/legacy-list/selection-list.mjs +6 -6
  152. package/esm2020/legacy-menu/menu-content.mjs +3 -3
  153. package/esm2020/legacy-menu/menu-item.mjs +3 -3
  154. package/esm2020/legacy-menu/menu-module.mjs +4 -4
  155. package/esm2020/legacy-menu/menu-trigger.mjs +3 -3
  156. package/esm2020/legacy-menu/menu.mjs +3 -3
  157. package/esm2020/legacy-paginator/paginator-module.mjs +4 -4
  158. package/esm2020/legacy-paginator/paginator.mjs +3 -3
  159. package/esm2020/legacy-progress-bar/progress-bar-module.mjs +4 -4
  160. package/esm2020/legacy-progress-bar/progress-bar.mjs +3 -3
  161. package/esm2020/legacy-progress-spinner/progress-spinner-module.mjs +4 -4
  162. package/esm2020/legacy-progress-spinner/progress-spinner.mjs +3 -3
  163. package/esm2020/legacy-radio/radio-module.mjs +4 -4
  164. package/esm2020/legacy-radio/radio.mjs +6 -6
  165. package/esm2020/legacy-select/select-module.mjs +4 -4
  166. package/esm2020/legacy-select/select.mjs +6 -6
  167. package/esm2020/legacy-slide-toggle/slide-toggle-module.mjs +4 -4
  168. package/esm2020/legacy-slide-toggle/slide-toggle.mjs +3 -3
  169. package/esm2020/legacy-slider/slider-module.mjs +4 -4
  170. package/esm2020/legacy-slider/slider.mjs +3 -3
  171. package/esm2020/legacy-snack-bar/simple-snack-bar.mjs +3 -3
  172. package/esm2020/legacy-snack-bar/snack-bar-container.mjs +3 -3
  173. package/esm2020/legacy-snack-bar/snack-bar-module.mjs +4 -4
  174. package/esm2020/legacy-snack-bar/snack-bar.mjs +3 -3
  175. package/esm2020/legacy-table/cell.mjs +21 -21
  176. package/esm2020/legacy-table/row.mjs +21 -21
  177. package/esm2020/legacy-table/table-module.mjs +4 -4
  178. package/esm2020/legacy-table/table.mjs +6 -6
  179. package/esm2020/legacy-table/text-column.mjs +3 -3
  180. package/esm2020/legacy-tabs/ink-bar.mjs +3 -3
  181. package/esm2020/legacy-tabs/tab-body.mjs +6 -6
  182. package/esm2020/legacy-tabs/tab-content.mjs +3 -3
  183. package/esm2020/legacy-tabs/tab-group.mjs +3 -3
  184. package/esm2020/legacy-tabs/tab-header.mjs +3 -3
  185. package/esm2020/legacy-tabs/tab-label-wrapper.mjs +3 -3
  186. package/esm2020/legacy-tabs/tab-label.mjs +3 -3
  187. package/esm2020/legacy-tabs/tab-nav-bar/tab-nav-bar.mjs +9 -9
  188. package/esm2020/legacy-tabs/tab.mjs +3 -3
  189. package/esm2020/legacy-tabs/tabs-module.mjs +4 -4
  190. package/esm2020/legacy-tooltip/tooltip-module.mjs +4 -4
  191. package/esm2020/legacy-tooltip/tooltip.mjs +9 -11
  192. package/esm2020/list/action-list.mjs +3 -3
  193. package/esm2020/list/list-base.mjs +6 -6
  194. package/esm2020/list/list-item-sections.mjs +18 -18
  195. package/esm2020/list/list-module.mjs +4 -4
  196. package/esm2020/list/list-option.mjs +5 -5
  197. package/esm2020/list/list.mjs +6 -6
  198. package/esm2020/list/nav-list.mjs +3 -3
  199. package/esm2020/list/selection-list.mjs +3 -3
  200. package/esm2020/list/subheader.mjs +3 -3
  201. package/esm2020/menu/menu-content.mjs +6 -6
  202. package/esm2020/menu/menu-item.mjs +3 -3
  203. package/esm2020/menu/menu-trigger.mjs +6 -6
  204. package/esm2020/menu/menu.mjs +14 -17
  205. package/esm2020/menu/module.mjs +4 -4
  206. package/esm2020/paginator/module.mjs +4 -4
  207. package/esm2020/paginator/paginator-intl.mjs +3 -3
  208. package/esm2020/paginator/paginator.mjs +6 -6
  209. package/esm2020/progress-bar/module.mjs +4 -4
  210. package/esm2020/progress-bar/progress-bar.mjs +4 -4
  211. package/esm2020/progress-spinner/module.mjs +4 -4
  212. package/esm2020/progress-spinner/progress-spinner.mjs +3 -3
  213. package/esm2020/radio/module.mjs +4 -4
  214. package/esm2020/radio/radio.mjs +14 -14
  215. package/esm2020/select/module.mjs +4 -4
  216. package/esm2020/select/select.mjs +52 -13
  217. package/esm2020/sidenav/drawer.mjs +9 -9
  218. package/esm2020/sidenav/sidenav-module.mjs +4 -4
  219. package/esm2020/sidenav/sidenav.mjs +9 -9
  220. package/esm2020/slide-toggle/module.mjs +8 -8
  221. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +3 -3
  222. package/esm2020/slide-toggle/slide-toggle.mjs +8 -8
  223. package/esm2020/slider/module.mjs +4 -4
  224. package/esm2020/slider/slider-input.mjs +6 -6
  225. package/esm2020/slider/slider-thumb.mjs +3 -3
  226. package/esm2020/slider/slider.mjs +3 -3
  227. package/esm2020/snack-bar/module.mjs +4 -4
  228. package/esm2020/snack-bar/simple-snack-bar.mjs +3 -3
  229. package/esm2020/snack-bar/snack-bar-container.mjs +6 -6
  230. package/esm2020/snack-bar/snack-bar-content.mjs +9 -9
  231. package/esm2020/snack-bar/snack-bar.mjs +6 -6
  232. package/esm2020/sort/sort-header-intl.mjs +3 -3
  233. package/esm2020/sort/sort-header.mjs +3 -3
  234. package/esm2020/sort/sort-module.mjs +4 -4
  235. package/esm2020/sort/sort.mjs +4 -5
  236. package/esm2020/stepper/step-content.mjs +3 -3
  237. package/esm2020/stepper/step-header.mjs +3 -3
  238. package/esm2020/stepper/step-label.mjs +3 -3
  239. package/esm2020/stepper/stepper-button.mjs +6 -6
  240. package/esm2020/stepper/stepper-icon.mjs +3 -3
  241. package/esm2020/stepper/stepper-intl.mjs +3 -3
  242. package/esm2020/stepper/stepper-module.mjs +4 -4
  243. package/esm2020/stepper/stepper.mjs +6 -6
  244. package/esm2020/table/cell.mjs +21 -21
  245. package/esm2020/table/module.mjs +4 -4
  246. package/esm2020/table/row.mjs +21 -21
  247. package/esm2020/table/table.mjs +6 -6
  248. package/esm2020/table/text-column.mjs +3 -3
  249. package/esm2020/tabs/module.mjs +4 -4
  250. package/esm2020/tabs/paginated-tab-header.mjs +3 -3
  251. package/esm2020/tabs/tab-body.mjs +9 -9
  252. package/esm2020/tabs/tab-content.mjs +3 -3
  253. package/esm2020/tabs/tab-group.mjs +6 -6
  254. package/esm2020/tabs/tab-header.mjs +6 -6
  255. package/esm2020/tabs/tab-label-wrapper.mjs +6 -6
  256. package/esm2020/tabs/tab-label.mjs +3 -3
  257. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +15 -15
  258. package/esm2020/tabs/tab.mjs +6 -6
  259. package/esm2020/toolbar/toolbar-module.mjs +4 -4
  260. package/esm2020/toolbar/toolbar.mjs +6 -6
  261. package/esm2020/tooltip/module.mjs +4 -4
  262. package/esm2020/tooltip/tooltip.mjs +27 -19
  263. package/esm2020/tree/node.mjs +9 -9
  264. package/esm2020/tree/outlet.mjs +3 -3
  265. package/esm2020/tree/padding.mjs +3 -3
  266. package/esm2020/tree/toggle.mjs +3 -3
  267. package/esm2020/tree/tree-module.mjs +4 -4
  268. package/esm2020/tree/tree.mjs +4 -4
  269. package/expansion/index.d.ts +3 -3
  270. package/fesm2015/autocomplete/testing.mjs +0 -16
  271. package/fesm2015/autocomplete/testing.mjs.map +1 -1
  272. package/fesm2015/autocomplete.mjs +64 -81
  273. package/fesm2015/autocomplete.mjs.map +1 -1
  274. package/fesm2015/badge/testing.mjs +0 -16
  275. package/fesm2015/badge/testing.mjs.map +1 -1
  276. package/fesm2015/badge.mjs +7 -30
  277. package/fesm2015/badge.mjs.map +1 -1
  278. package/fesm2015/bottom-sheet/testing.mjs +0 -16
  279. package/fesm2015/bottom-sheet/testing.mjs.map +1 -1
  280. package/fesm2015/bottom-sheet.mjs +10 -61
  281. package/fesm2015/bottom-sheet.mjs.map +1 -1
  282. package/fesm2015/button/testing.mjs +0 -16
  283. package/fesm2015/button/testing.mjs.map +1 -1
  284. package/fesm2015/button-toggle/testing.mjs +0 -16
  285. package/fesm2015/button-toggle/testing.mjs.map +1 -1
  286. package/fesm2015/button-toggle.mjs +10 -33
  287. package/fesm2015/button-toggle.mjs.map +1 -1
  288. package/fesm2015/button.mjs +198 -86
  289. package/fesm2015/button.mjs.map +1 -1
  290. package/fesm2015/card/testing.mjs +0 -16
  291. package/fesm2015/card/testing.mjs.map +1 -1
  292. package/fesm2015/card.mjs +46 -76
  293. package/fesm2015/card.mjs.map +1 -1
  294. package/fesm2015/checkbox/testing.mjs +0 -16
  295. package/fesm2015/checkbox/testing.mjs.map +1 -1
  296. package/fesm2015/checkbox.mjs +18 -62
  297. package/fesm2015/checkbox.mjs.map +1 -1
  298. package/fesm2015/chips/testing.mjs +0 -23
  299. package/fesm2015/chips/testing.mjs.map +1 -1
  300. package/fesm2015/chips.mjs +42 -148
  301. package/fesm2015/chips.mjs.map +1 -1
  302. package/fesm2015/core/testing.mjs +0 -16
  303. package/fesm2015/core/testing.mjs.map +1 -1
  304. package/fesm2015/core.mjs +61 -247
  305. package/fesm2015/core.mjs.map +1 -1
  306. package/fesm2015/datepicker/testing.mjs +0 -16
  307. package/fesm2015/datepicker/testing.mjs.map +1 -1
  308. package/fesm2015/datepicker.mjs +83 -239
  309. package/fesm2015/datepicker.mjs.map +1 -1
  310. package/fesm2015/dialog/testing.mjs +0 -23
  311. package/fesm2015/dialog/testing.mjs.map +1 -1
  312. package/fesm2015/dialog.mjs +29 -87
  313. package/fesm2015/dialog.mjs.map +1 -1
  314. package/fesm2015/divider/testing.mjs +0 -16
  315. package/fesm2015/divider/testing.mjs.map +1 -1
  316. package/fesm2015/divider.mjs +7 -37
  317. package/fesm2015/divider.mjs.map +1 -1
  318. package/fesm2015/expansion/testing.mjs +0 -16
  319. package/fesm2015/expansion/testing.mjs.map +1 -1
  320. package/fesm2015/expansion.mjs +25 -83
  321. package/fesm2015/expansion.mjs.map +1 -1
  322. package/fesm2015/form-field/testing/control.mjs +0 -15
  323. package/fesm2015/form-field/testing/control.mjs.map +1 -1
  324. package/fesm2015/form-field/testing.mjs +1 -15
  325. package/fesm2015/form-field/testing.mjs.map +1 -1
  326. package/fesm2015/form-field.mjs +34 -127
  327. package/fesm2015/form-field.mjs.map +1 -1
  328. package/fesm2015/grid-list/testing.mjs +0 -16
  329. package/fesm2015/grid-list/testing.mjs.map +1 -1
  330. package/fesm2015/grid-list.mjs +22 -79
  331. package/fesm2015/grid-list.mjs.map +1 -1
  332. package/fesm2015/icon/testing.mjs +7 -30
  333. package/fesm2015/icon/testing.mjs.map +1 -1
  334. package/fesm2015/icon.mjs +10 -54
  335. package/fesm2015/icon.mjs.map +1 -1
  336. package/fesm2015/input/testing.mjs +0 -16
  337. package/fesm2015/input/testing.mjs.map +1 -1
  338. package/fesm2015/input.mjs +7 -51
  339. package/fesm2015/input.mjs.map +1 -1
  340. package/fesm2015/legacy-autocomplete/testing.mjs +0 -16
  341. package/fesm2015/legacy-autocomplete/testing.mjs.map +1 -1
  342. package/fesm2015/legacy-autocomplete.mjs +13 -57
  343. package/fesm2015/legacy-autocomplete.mjs.map +1 -1
  344. package/fesm2015/legacy-button/testing.mjs +0 -16
  345. package/fesm2015/legacy-button/testing.mjs.map +1 -1
  346. package/fesm2015/legacy-button.mjs +10 -33
  347. package/fesm2015/legacy-button.mjs.map +1 -1
  348. package/fesm2015/legacy-card/testing.mjs +0 -16
  349. package/fesm2015/legacy-card/testing.mjs.map +1 -1
  350. package/fesm2015/legacy-card.mjs +46 -76
  351. package/fesm2015/legacy-card.mjs.map +1 -1
  352. package/fesm2015/legacy-checkbox/testing.mjs +0 -16
  353. package/fesm2015/legacy-checkbox/testing.mjs.map +1 -1
  354. package/fesm2015/legacy-checkbox.mjs +7 -30
  355. package/fesm2015/legacy-checkbox.mjs.map +1 -1
  356. package/fesm2015/legacy-chips/testing.mjs +0 -23
  357. package/fesm2015/legacy-chips/testing.mjs.map +1 -1
  358. package/fesm2015/legacy-chips.mjs +24 -74
  359. package/fesm2015/legacy-chips.mjs.map +1 -1
  360. package/fesm2015/legacy-core/testing.mjs +0 -16
  361. package/fesm2015/legacy-core/testing.mjs.map +1 -1
  362. package/fesm2015/legacy-core.mjs +10 -47
  363. package/fesm2015/legacy-core.mjs.map +1 -1
  364. package/fesm2015/legacy-dialog/testing.mjs +0 -30
  365. package/fesm2015/legacy-dialog/testing.mjs.map +1 -1
  366. package/fesm2015/legacy-dialog.mjs +22 -80
  367. package/fesm2015/legacy-dialog.mjs.map +1 -1
  368. package/fesm2015/legacy-form-field/testing.mjs +0 -23
  369. package/fesm2015/legacy-form-field/testing.mjs.map +1 -1
  370. package/fesm2015/legacy-form-field.mjs +25 -90
  371. package/fesm2015/legacy-form-field.mjs.map +1 -1
  372. package/fesm2015/legacy-input/testing.mjs +0 -16
  373. package/fesm2015/legacy-input/testing.mjs.map +1 -1
  374. package/fesm2015/legacy-input.mjs +7 -37
  375. package/fesm2015/legacy-input.mjs.map +1 -1
  376. package/fesm2015/legacy-list/testing.mjs +0 -23
  377. package/fesm2015/legacy-list/testing.mjs.map +1 -1
  378. package/fesm2015/legacy-list.mjs +28 -65
  379. package/fesm2015/legacy-list.mjs.map +1 -1
  380. package/fesm2015/legacy-menu/testing.mjs +0 -16
  381. package/fesm2015/legacy-menu/testing.mjs.map +1 -1
  382. package/fesm2015/legacy-menu.mjs +16 -67
  383. package/fesm2015/legacy-menu.mjs.map +1 -1
  384. package/fesm2015/legacy-paginator/testing.mjs +0 -23
  385. package/fesm2015/legacy-paginator/testing.mjs.map +1 -1
  386. package/fesm2015/legacy-paginator.mjs +7 -37
  387. package/fesm2015/legacy-paginator.mjs.map +1 -1
  388. package/fesm2015/legacy-progress-bar/testing.mjs +0 -16
  389. package/fesm2015/legacy-progress-bar/testing.mjs.map +1 -1
  390. package/fesm2015/legacy-progress-bar.mjs +7 -37
  391. package/fesm2015/legacy-progress-bar.mjs.map +1 -1
  392. package/fesm2015/legacy-progress-spinner/testing.mjs +0 -16
  393. package/fesm2015/legacy-progress-spinner/testing.mjs.map +1 -1
  394. package/fesm2015/legacy-progress-spinner.mjs +7 -36
  395. package/fesm2015/legacy-progress-spinner.mjs.map +1 -1
  396. package/fesm2015/legacy-radio/testing.mjs +0 -16
  397. package/fesm2015/legacy-radio/testing.mjs.map +1 -1
  398. package/fesm2015/legacy-radio.mjs +10 -33
  399. package/fesm2015/legacy-radio.mjs.map +1 -1
  400. package/fesm2015/legacy-select/testing.mjs +0 -16
  401. package/fesm2015/legacy-select/testing.mjs.map +1 -1
  402. package/fesm2015/legacy-select.mjs +10 -40
  403. package/fesm2015/legacy-select.mjs.map +1 -1
  404. package/fesm2015/legacy-slide-toggle/testing.mjs +0 -16
  405. package/fesm2015/legacy-slide-toggle/testing.mjs.map +1 -1
  406. package/fesm2015/legacy-slide-toggle.mjs +7 -37
  407. package/fesm2015/legacy-slide-toggle.mjs.map +1 -1
  408. package/fesm2015/legacy-slider/testing.mjs +0 -16
  409. package/fesm2015/legacy-slider/testing.mjs.map +1 -1
  410. package/fesm2015/legacy-slider.mjs +7 -30
  411. package/fesm2015/legacy-slider.mjs.map +1 -1
  412. package/fesm2015/legacy-snack-bar/testing.mjs +0 -16
  413. package/fesm2015/legacy-snack-bar/testing.mjs.map +1 -1
  414. package/fesm2015/legacy-snack-bar.mjs +13 -50
  415. package/fesm2015/legacy-snack-bar.mjs.map +1 -1
  416. package/fesm2015/legacy-table/testing.mjs +0 -37
  417. package/fesm2015/legacy-table/testing.mjs.map +1 -1
  418. package/fesm2015/legacy-table.mjs +55 -113
  419. package/fesm2015/legacy-table.mjs.map +1 -1
  420. package/fesm2015/legacy-tabs/testing.mjs +0 -16
  421. package/fesm2015/legacy-tabs/testing.mjs.map +1 -1
  422. package/fesm2015/legacy-tabs.mjs +40 -120
  423. package/fesm2015/legacy-tabs.mjs.map +1 -1
  424. package/fesm2015/legacy-tooltip/testing.mjs +0 -23
  425. package/fesm2015/legacy-tooltip/testing.mjs.map +1 -1
  426. package/fesm2015/legacy-tooltip.mjs +12 -44
  427. package/fesm2015/legacy-tooltip.mjs.map +1 -1
  428. package/fesm2015/list/testing.mjs +0 -23
  429. package/fesm2015/list/testing.mjs.map +1 -1
  430. package/fesm2015/list.mjs +51 -137
  431. package/fesm2015/list.mjs.map +1 -1
  432. package/fesm2015/material.mjs +0 -7
  433. package/fesm2015/material.mjs.map +1 -1
  434. package/fesm2015/menu/testing.mjs +0 -16
  435. package/fesm2015/menu/testing.mjs.map +1 -1
  436. package/fesm2015/menu.mjs +32 -107
  437. package/fesm2015/menu.mjs.map +1 -1
  438. package/fesm2015/paginator/testing.mjs +0 -16
  439. package/fesm2015/paginator/testing.mjs.map +1 -1
  440. package/fesm2015/paginator.mjs +13 -50
  441. package/fesm2015/paginator.mjs.map +1 -1
  442. package/fesm2015/progress-bar/testing.mjs +0 -16
  443. package/fesm2015/progress-bar/testing.mjs.map +1 -1
  444. package/fesm2015/progress-bar.mjs +8 -38
  445. package/fesm2015/progress-bar.mjs.map +1 -1
  446. package/fesm2015/progress-spinner/testing.mjs +0 -16
  447. package/fesm2015/progress-spinner/testing.mjs.map +1 -1
  448. package/fesm2015/progress-spinner.mjs +7 -37
  449. package/fesm2015/progress-spinner.mjs.map +1 -1
  450. package/fesm2015/radio/testing.mjs +0 -16
  451. package/fesm2015/radio/testing.mjs.map +1 -1
  452. package/fesm2015/radio.mjs +17 -47
  453. package/fesm2015/radio.mjs.map +1 -1
  454. package/fesm2015/select/testing.mjs +0 -16
  455. package/fesm2015/select/testing.mjs.map +1 -1
  456. package/fesm2015/select.mjs +55 -60
  457. package/fesm2015/select.mjs.map +1 -1
  458. package/fesm2015/sidenav/testing.mjs +0 -30
  459. package/fesm2015/sidenav/testing.mjs.map +1 -1
  460. package/fesm2015/sidenav.mjs +22 -59
  461. package/fesm2015/sidenav.mjs.map +1 -1
  462. package/fesm2015/slide-toggle/testing.mjs +0 -16
  463. package/fesm2015/slide-toggle/testing.mjs.map +1 -1
  464. package/fesm2015/slide-toggle.mjs +18 -62
  465. package/fesm2015/slide-toggle.mjs.map +1 -1
  466. package/fesm2015/slider/testing.mjs +0 -16
  467. package/fesm2015/slider/testing.mjs.map +1 -1
  468. package/fesm2015/slider.mjs +16 -60
  469. package/fesm2015/slider.mjs.map +1 -1
  470. package/fesm2015/snack-bar/testing.mjs +0 -16
  471. package/fesm2015/snack-bar/testing.mjs.map +1 -1
  472. package/fesm2015/snack-bar.mjs +28 -93
  473. package/fesm2015/snack-bar.mjs.map +1 -1
  474. package/fesm2015/sort/testing.mjs +0 -16
  475. package/fesm2015/sort/testing.mjs.map +1 -1
  476. package/fesm2015/sort.mjs +13 -65
  477. package/fesm2015/sort.mjs.map +1 -1
  478. package/fesm2015/stepper/testing.mjs +0 -16
  479. package/fesm2015/stepper/testing.mjs.map +1 -1
  480. package/fesm2015/stepper.mjs +31 -96
  481. package/fesm2015/stepper.mjs.map +1 -1
  482. package/fesm2015/table/testing.mjs +0 -16
  483. package/fesm2015/table/testing.mjs.map +1 -1
  484. package/fesm2015/table.mjs +55 -113
  485. package/fesm2015/table.mjs.map +1 -1
  486. package/fesm2015/tabs/testing.mjs +0 -16
  487. package/fesm2015/tabs/testing.mjs.map +1 -1
  488. package/fesm2015/tabs.mjs +61 -168
  489. package/fesm2015/tabs.mjs.map +1 -1
  490. package/fesm2015/toolbar/testing.mjs +0 -16
  491. package/fesm2015/toolbar/testing.mjs.map +1 -1
  492. package/fesm2015/toolbar.mjs +10 -33
  493. package/fesm2015/toolbar.mjs.map +1 -1
  494. package/fesm2015/tooltip/testing.mjs +0 -16
  495. package/fesm2015/tooltip/testing.mjs.map +1 -1
  496. package/fesm2015/tooltip.mjs +30 -59
  497. package/fesm2015/tooltip.mjs.map +1 -1
  498. package/fesm2015/tree/testing.mjs +0 -16
  499. package/fesm2015/tree/testing.mjs.map +1 -1
  500. package/fesm2015/tree.mjs +25 -90
  501. package/fesm2015/tree.mjs.map +1 -1
  502. package/fesm2020/autocomplete/testing.mjs +0 -31
  503. package/fesm2020/autocomplete/testing.mjs.map +1 -1
  504. package/fesm2020/autocomplete.mjs +64 -81
  505. package/fesm2020/autocomplete.mjs.map +1 -1
  506. package/fesm2020/badge/testing.mjs +0 -31
  507. package/fesm2020/badge/testing.mjs.map +1 -1
  508. package/fesm2020/badge.mjs +7 -37
  509. package/fesm2020/badge.mjs.map +1 -1
  510. package/fesm2020/bottom-sheet/testing.mjs +0 -31
  511. package/fesm2020/bottom-sheet/testing.mjs.map +1 -1
  512. package/fesm2020/bottom-sheet.mjs +10 -61
  513. package/fesm2020/bottom-sheet.mjs.map +1 -1
  514. package/fesm2020/button/testing.mjs +0 -31
  515. package/fesm2020/button/testing.mjs.map +1 -1
  516. package/fesm2020/button-toggle/testing.mjs +0 -46
  517. package/fesm2020/button-toggle/testing.mjs.map +1 -1
  518. package/fesm2020/button-toggle.mjs +10 -40
  519. package/fesm2020/button-toggle.mjs.map +1 -1
  520. package/fesm2020/button.mjs +194 -107
  521. package/fesm2020/button.mjs.map +1 -1
  522. package/fesm2020/card/testing.mjs +0 -31
  523. package/fesm2020/card/testing.mjs.map +1 -1
  524. package/fesm2020/card.mjs +46 -76
  525. package/fesm2020/card.mjs.map +1 -1
  526. package/fesm2020/checkbox/testing.mjs +0 -23
  527. package/fesm2020/checkbox/testing.mjs.map +1 -1
  528. package/fesm2020/checkbox.mjs +18 -62
  529. package/fesm2020/checkbox.mjs.map +1 -1
  530. package/fesm2020/chips/testing.mjs +0 -94
  531. package/fesm2020/chips/testing.mjs.map +1 -1
  532. package/fesm2020/chips.mjs +42 -156
  533. package/fesm2020/chips.mjs.map +1 -1
  534. package/fesm2020/core/testing.mjs +0 -46
  535. package/fesm2020/core/testing.mjs.map +1 -1
  536. package/fesm2020/core.mjs +61 -268
  537. package/fesm2020/core.mjs.map +1 -1
  538. package/fesm2020/datepicker/testing.mjs +0 -73
  539. package/fesm2020/datepicker/testing.mjs.map +1 -1
  540. package/fesm2020/datepicker.mjs +83 -246
  541. package/fesm2020/datepicker.mjs.map +1 -1
  542. package/fesm2020/dialog/testing.mjs +0 -30
  543. package/fesm2020/dialog/testing.mjs.map +1 -1
  544. package/fesm2020/dialog.mjs +29 -94
  545. package/fesm2020/dialog.mjs.map +1 -1
  546. package/fesm2020/divider/testing.mjs +0 -31
  547. package/fesm2020/divider/testing.mjs.map +1 -1
  548. package/fesm2020/divider.mjs +7 -37
  549. package/fesm2020/divider.mjs.map +1 -1
  550. package/fesm2020/expansion/testing.mjs +0 -38
  551. package/fesm2020/expansion/testing.mjs.map +1 -1
  552. package/fesm2020/expansion.mjs +25 -90
  553. package/fesm2020/expansion.mjs.map +1 -1
  554. package/fesm2020/form-field/testing/control.mjs +0 -15
  555. package/fesm2020/form-field/testing/control.mjs.map +1 -1
  556. package/fesm2020/form-field/testing.mjs +1 -37
  557. package/fesm2020/form-field/testing.mjs.map +1 -1
  558. package/fesm2020/form-field.mjs +34 -134
  559. package/fesm2020/form-field.mjs.map +1 -1
  560. package/fesm2020/grid-list/testing.mjs +0 -38
  561. package/fesm2020/grid-list/testing.mjs.map +1 -1
  562. package/fesm2020/grid-list.mjs +22 -79
  563. package/fesm2020/grid-list.mjs.map +1 -1
  564. package/fesm2020/icon/testing.mjs +7 -45
  565. package/fesm2020/icon/testing.mjs.map +1 -1
  566. package/fesm2020/icon.mjs +10 -54
  567. package/fesm2020/icon.mjs.map +1 -1
  568. package/fesm2020/input/testing.mjs +0 -53
  569. package/fesm2020/input/testing.mjs.map +1 -1
  570. package/fesm2020/input.mjs +7 -51
  571. package/fesm2020/input.mjs.map +1 -1
  572. package/fesm2020/legacy-autocomplete/testing.mjs +0 -23
  573. package/fesm2020/legacy-autocomplete/testing.mjs.map +1 -1
  574. package/fesm2020/legacy-autocomplete.mjs +13 -57
  575. package/fesm2020/legacy-autocomplete.mjs.map +1 -1
  576. package/fesm2020/legacy-button/testing.mjs +0 -23
  577. package/fesm2020/legacy-button/testing.mjs.map +1 -1
  578. package/fesm2020/legacy-button.mjs +10 -40
  579. package/fesm2020/legacy-button.mjs.map +1 -1
  580. package/fesm2020/legacy-card/testing.mjs +0 -23
  581. package/fesm2020/legacy-card/testing.mjs.map +1 -1
  582. package/fesm2020/legacy-card.mjs +46 -76
  583. package/fesm2020/legacy-card.mjs.map +1 -1
  584. package/fesm2020/legacy-checkbox/testing.mjs +0 -23
  585. package/fesm2020/legacy-checkbox/testing.mjs.map +1 -1
  586. package/fesm2020/legacy-checkbox.mjs +7 -37
  587. package/fesm2020/legacy-checkbox.mjs.map +1 -1
  588. package/fesm2020/legacy-chips/testing.mjs +0 -65
  589. package/fesm2020/legacy-chips/testing.mjs.map +1 -1
  590. package/fesm2020/legacy-chips.mjs +24 -74
  591. package/fesm2020/legacy-chips.mjs.map +1 -1
  592. package/fesm2020/legacy-core/testing.mjs +0 -46
  593. package/fesm2020/legacy-core/testing.mjs.map +1 -1
  594. package/fesm2020/legacy-core.mjs +10 -47
  595. package/fesm2020/legacy-core.mjs.map +1 -1
  596. package/fesm2020/legacy-dialog/testing.mjs +0 -30
  597. package/fesm2020/legacy-dialog/testing.mjs.map +1 -1
  598. package/fesm2020/legacy-dialog.mjs +22 -80
  599. package/fesm2020/legacy-dialog.mjs.map +1 -1
  600. package/fesm2020/legacy-form-field/testing.mjs +0 -30
  601. package/fesm2020/legacy-form-field/testing.mjs.map +1 -1
  602. package/fesm2020/legacy-form-field.mjs +25 -97
  603. package/fesm2020/legacy-form-field.mjs.map +1 -1
  604. package/fesm2020/legacy-input/testing.mjs +0 -16
  605. package/fesm2020/legacy-input/testing.mjs.map +1 -1
  606. package/fesm2020/legacy-input.mjs +7 -37
  607. package/fesm2020/legacy-input.mjs.map +1 -1
  608. package/fesm2020/legacy-list/testing.mjs +0 -58
  609. package/fesm2020/legacy-list/testing.mjs.map +1 -1
  610. package/fesm2020/legacy-list.mjs +28 -65
  611. package/fesm2020/legacy-list.mjs.map +1 -1
  612. package/fesm2020/legacy-menu/testing.mjs +0 -23
  613. package/fesm2020/legacy-menu/testing.mjs.map +1 -1
  614. package/fesm2020/legacy-menu.mjs +16 -67
  615. package/fesm2020/legacy-menu.mjs.map +1 -1
  616. package/fesm2020/legacy-paginator/testing.mjs +0 -23
  617. package/fesm2020/legacy-paginator/testing.mjs.map +1 -1
  618. package/fesm2020/legacy-paginator.mjs +7 -37
  619. package/fesm2020/legacy-paginator.mjs.map +1 -1
  620. package/fesm2020/legacy-progress-bar/testing.mjs +0 -23
  621. package/fesm2020/legacy-progress-bar/testing.mjs.map +1 -1
  622. package/fesm2020/legacy-progress-bar.mjs +7 -37
  623. package/fesm2020/legacy-progress-bar.mjs.map +1 -1
  624. package/fesm2020/legacy-progress-spinner/testing.mjs +0 -23
  625. package/fesm2020/legacy-progress-spinner/testing.mjs.map +1 -1
  626. package/fesm2020/legacy-progress-spinner.mjs +7 -36
  627. package/fesm2020/legacy-progress-spinner.mjs.map +1 -1
  628. package/fesm2020/legacy-radio/testing.mjs +0 -23
  629. package/fesm2020/legacy-radio/testing.mjs.map +1 -1
  630. package/fesm2020/legacy-radio.mjs +10 -40
  631. package/fesm2020/legacy-radio.mjs.map +1 -1
  632. package/fesm2020/legacy-select/testing.mjs +0 -23
  633. package/fesm2020/legacy-select/testing.mjs.map +1 -1
  634. package/fesm2020/legacy-select.mjs +10 -40
  635. package/fesm2020/legacy-select.mjs.map +1 -1
  636. package/fesm2020/legacy-slide-toggle/testing.mjs +0 -23
  637. package/fesm2020/legacy-slide-toggle/testing.mjs.map +1 -1
  638. package/fesm2020/legacy-slide-toggle.mjs +7 -44
  639. package/fesm2020/legacy-slide-toggle.mjs.map +1 -1
  640. package/fesm2020/legacy-slider/testing.mjs +0 -23
  641. package/fesm2020/legacy-slider/testing.mjs.map +1 -1
  642. package/fesm2020/legacy-slider.mjs +7 -37
  643. package/fesm2020/legacy-slider.mjs.map +1 -1
  644. package/fesm2020/legacy-snack-bar/testing.mjs +0 -23
  645. package/fesm2020/legacy-snack-bar/testing.mjs.map +1 -1
  646. package/fesm2020/legacy-snack-bar.mjs +13 -57
  647. package/fesm2020/legacy-snack-bar.mjs.map +1 -1
  648. package/fesm2020/legacy-table/testing.mjs +0 -37
  649. package/fesm2020/legacy-table/testing.mjs.map +1 -1
  650. package/fesm2020/legacy-table.mjs +55 -113
  651. package/fesm2020/legacy-table.mjs.map +1 -1
  652. package/fesm2020/legacy-tabs/testing.mjs +0 -51
  653. package/fesm2020/legacy-tabs/testing.mjs.map +1 -1
  654. package/fesm2020/legacy-tabs.mjs +40 -134
  655. package/fesm2020/legacy-tabs.mjs.map +1 -1
  656. package/fesm2020/legacy-tooltip/testing.mjs +0 -23
  657. package/fesm2020/legacy-tooltip/testing.mjs.map +1 -1
  658. package/fesm2020/legacy-tooltip.mjs +12 -51
  659. package/fesm2020/legacy-tooltip.mjs.map +1 -1
  660. package/fesm2020/list/testing.mjs +0 -66
  661. package/fesm2020/list/testing.mjs.map +1 -1
  662. package/fesm2020/list.mjs +51 -144
  663. package/fesm2020/list.mjs.map +1 -1
  664. package/fesm2020/material.mjs +0 -7
  665. package/fesm2020/material.mjs.map +1 -1
  666. package/fesm2020/menu/testing.mjs +0 -31
  667. package/fesm2020/menu/testing.mjs.map +1 -1
  668. package/fesm2020/menu.mjs +32 -115
  669. package/fesm2020/menu.mjs.map +1 -1
  670. package/fesm2020/paginator/testing.mjs +0 -31
  671. package/fesm2020/paginator/testing.mjs.map +1 -1
  672. package/fesm2020/paginator.mjs +13 -50
  673. package/fesm2020/paginator.mjs.map +1 -1
  674. package/fesm2020/progress-bar/testing.mjs +0 -31
  675. package/fesm2020/progress-bar/testing.mjs.map +1 -1
  676. package/fesm2020/progress-bar.mjs +8 -38
  677. package/fesm2020/progress-bar.mjs.map +1 -1
  678. package/fesm2020/progress-spinner/testing.mjs +0 -31
  679. package/fesm2020/progress-spinner/testing.mjs.map +1 -1
  680. package/fesm2020/progress-spinner.mjs +7 -37
  681. package/fesm2020/progress-spinner.mjs.map +1 -1
  682. package/fesm2020/radio/testing.mjs +0 -31
  683. package/fesm2020/radio/testing.mjs.map +1 -1
  684. package/fesm2020/radio.mjs +17 -47
  685. package/fesm2020/radio.mjs.map +1 -1
  686. package/fesm2020/select/testing.mjs +0 -31
  687. package/fesm2020/select/testing.mjs.map +1 -1
  688. package/fesm2020/select.mjs +55 -60
  689. package/fesm2020/select.mjs.map +1 -1
  690. package/fesm2020/sidenav/testing.mjs +0 -66
  691. package/fesm2020/sidenav/testing.mjs.map +1 -1
  692. package/fesm2020/sidenav.mjs +22 -59
  693. package/fesm2020/sidenav.mjs.map +1 -1
  694. package/fesm2020/slide-toggle/testing.mjs +0 -31
  695. package/fesm2020/slide-toggle/testing.mjs.map +1 -1
  696. package/fesm2020/slide-toggle.mjs +18 -62
  697. package/fesm2020/slide-toggle.mjs.map +1 -1
  698. package/fesm2020/slider/testing.mjs +0 -30
  699. package/fesm2020/slider/testing.mjs.map +1 -1
  700. package/fesm2020/slider.mjs +16 -67
  701. package/fesm2020/slider.mjs.map +1 -1
  702. package/fesm2020/snack-bar/testing.mjs +0 -31
  703. package/fesm2020/snack-bar/testing.mjs.map +1 -1
  704. package/fesm2020/snack-bar.mjs +28 -100
  705. package/fesm2020/snack-bar.mjs.map +1 -1
  706. package/fesm2020/sort/testing.mjs +0 -30
  707. package/fesm2020/sort/testing.mjs.map +1 -1
  708. package/fesm2020/sort.mjs +13 -80
  709. package/fesm2020/sort.mjs.map +1 -1
  710. package/fesm2020/stepper/testing.mjs +0 -37
  711. package/fesm2020/stepper/testing.mjs.map +1 -1
  712. package/fesm2020/stepper.mjs +31 -110
  713. package/fesm2020/stepper.mjs.map +1 -1
  714. package/fesm2020/table/testing.mjs +0 -37
  715. package/fesm2020/table/testing.mjs.map +1 -1
  716. package/fesm2020/table.mjs +55 -113
  717. package/fesm2020/table.mjs.map +1 -1
  718. package/fesm2020/tabs/testing.mjs +0 -51
  719. package/fesm2020/tabs/testing.mjs.map +1 -1
  720. package/fesm2020/tabs.mjs +61 -168
  721. package/fesm2020/tabs.mjs.map +1 -1
  722. package/fesm2020/toolbar/testing.mjs +0 -31
  723. package/fesm2020/toolbar/testing.mjs.map +1 -1
  724. package/fesm2020/toolbar.mjs +10 -40
  725. package/fesm2020/toolbar.mjs.map +1 -1
  726. package/fesm2020/tooltip/testing.mjs +0 -31
  727. package/fesm2020/tooltip/testing.mjs.map +1 -1
  728. package/fesm2020/tooltip.mjs +30 -59
  729. package/fesm2020/tooltip.mjs.map +1 -1
  730. package/fesm2020/tree/testing.mjs +0 -38
  731. package/fesm2020/tree/testing.mjs.map +1 -1
  732. package/fesm2020/tree.mjs +25 -90
  733. package/fesm2020/tree.mjs.map +1 -1
  734. package/form-field/index.d.ts +7 -7
  735. package/grid-list/index.d.ts +2 -2
  736. package/icon/index.d.ts +1 -1
  737. package/input/index.d.ts +1 -1
  738. package/legacy-autocomplete/index.d.ts +1 -1
  739. package/legacy-button/index.d.ts +2 -2
  740. package/legacy-card/index.d.ts +1 -1
  741. package/legacy-checkbox/index.d.ts +1 -1
  742. package/legacy-chips/index.d.ts +4 -5
  743. package/legacy-core/index.d.ts +1 -1
  744. package/legacy-dialog/index.d.ts +3 -3
  745. package/legacy-form-field/index.d.ts +3 -3
  746. package/legacy-list/index.d.ts +5 -5
  747. package/legacy-menu/index.d.ts +1 -1
  748. package/legacy-paginator/index.d.ts +1 -1
  749. package/legacy-prebuilt-themes/legacy-deeppurple-amber.css +1 -1
  750. package/legacy-prebuilt-themes/legacy-indigo-pink.css +1 -1
  751. package/legacy-prebuilt-themes/legacy-pink-bluegrey.css +1 -1
  752. package/legacy-prebuilt-themes/legacy-purple-green.css +1 -1
  753. package/legacy-progress-bar/index.d.ts +1 -1
  754. package/legacy-progress-spinner/index.d.ts +1 -1
  755. package/legacy-radio/index.d.ts +1 -1
  756. package/legacy-select/index.d.ts +1 -1
  757. package/legacy-slide-toggle/index.d.ts +1 -1
  758. package/legacy-slider/index.d.ts +1 -1
  759. package/legacy-table/index.d.ts +4 -4
  760. package/legacy-tabs/index.d.ts +7 -7
  761. package/legacy-tooltip/index.d.ts +1 -2
  762. package/list/_list-theme.scss +20 -23
  763. package/list/index.d.ts +5 -5
  764. package/menu/index.d.ts +3 -4
  765. package/package.json +2 -2
  766. package/paginator/index.d.ts +2 -2
  767. package/prebuilt-themes/deeppurple-amber.css +1 -1
  768. package/prebuilt-themes/indigo-pink.css +1 -1
  769. package/prebuilt-themes/pink-bluegrey.css +1 -1
  770. package/prebuilt-themes/purple-green.css +1 -1
  771. package/progress-bar/_progress-bar-theme.scss +17 -24
  772. package/progress-bar/index.d.ts +1 -1
  773. package/progress-spinner/index.d.ts +1 -1
  774. package/radio/_radio-theme.scss +33 -17
  775. package/radio/index.d.ts +3 -3
  776. package/schematics/ng-add/index.js +1 -1
  777. package/schematics/ng-add/index.mjs +1 -1
  778. package/schematics/ng-generate/mdc-migration/index_bundled.js +789 -360
  779. package/schematics/ng-generate/mdc-migration/index_bundled.js.map +2 -2
  780. package/select/index.d.ts +5 -3
  781. package/sidenav/index.d.ts +3 -3
  782. package/slide-toggle/index.d.ts +2 -2
  783. package/slider/index.d.ts +3 -3
  784. package/sort/index.d.ts +2 -2
  785. package/stepper/index.d.ts +6 -6
  786. package/table/index.d.ts +4 -4
  787. package/tabs/index.d.ts +14 -14
  788. package/toolbar/index.d.ts +1 -1
  789. package/tooltip/index.d.ts +1 -1
  790. package/tree/index.d.ts +5 -5
  791. package/radio/_radio-private.scss +0 -60
package/fesm2015/tree.mjs CHANGED
@@ -8,13 +8,6 @@ import { DataSource } from '@angular/cdk/collections';
8
8
  import { BehaviorSubject, merge } from 'rxjs';
9
9
  import { take, map } from 'rxjs/operators';
10
10
 
11
- /**
12
- * @license
13
- * Copyright Google LLC All Rights Reserved.
14
- *
15
- * Use of this source code is governed by an MIT-style license that can be
16
- * found in the LICENSE file at https://angular.io/license
17
- */
18
11
  const _MatTreeNodeBase = mixinTabIndex(mixinDisabled(CdkTreeNode));
19
12
  /**
20
13
  * Wrapper for the CdkTree node with Material design styles.
@@ -33,9 +26,9 @@ class MatTreeNode extends _MatTreeNodeBase {
33
26
  super.ngOnDestroy();
34
27
  }
35
28
  }
36
- MatTreeNode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNode, deps: [{ token: i0.ElementRef }, { token: i1.CdkTree }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Directive });
37
- MatTreeNode.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.2", type: MatTreeNode, selector: "mat-tree-node", inputs: { role: "role", disabled: "disabled", tabIndex: "tabIndex" }, host: { classAttribute: "mat-tree-node" }, providers: [{ provide: CdkTreeNode, useExisting: MatTreeNode }], exportAs: ["matTreeNode"], usesInheritance: true, ngImport: i0 });
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNode, decorators: [{
29
+ MatTreeNode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNode, deps: [{ token: i0.ElementRef }, { token: i1.CdkTree }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Directive });
30
+ MatTreeNode.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.7", type: MatTreeNode, selector: "mat-tree-node", inputs: { role: "role", disabled: "disabled", tabIndex: "tabIndex" }, host: { classAttribute: "mat-tree-node" }, providers: [{ provide: CdkTreeNode, useExisting: MatTreeNode }], exportAs: ["matTreeNode"], usesInheritance: true, ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNode, decorators: [{
39
32
  type: Directive,
40
33
  args: [{
41
34
  selector: 'mat-tree-node',
@@ -58,9 +51,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2",
58
51
  */
59
52
  class MatTreeNodeDef extends CdkTreeNodeDef {
60
53
  }
61
- MatTreeNodeDef.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNodeDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
62
- MatTreeNodeDef.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.2", type: MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: { when: ["matTreeNodeDefWhen", "when"], data: ["matTreeNode", "data"] }, providers: [{ provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef }], usesInheritance: true, ngImport: i0 });
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNodeDef, decorators: [{
54
+ MatTreeNodeDef.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNodeDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
55
+ MatTreeNodeDef.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.7", type: MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: { when: ["matTreeNodeDefWhen", "when"], data: ["matTreeNode", "data"] }, providers: [{ provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef }], usesInheritance: true, ngImport: i0 });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNodeDef, decorators: [{
64
57
  type: Directive,
65
58
  args: [{
66
59
  selector: '[matTreeNodeDef]',
@@ -108,13 +101,13 @@ class MatNestedTreeNode extends CdkNestedTreeNode {
108
101
  super.ngOnDestroy();
109
102
  }
110
103
  }
111
- MatNestedTreeNode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatNestedTreeNode, deps: [{ token: i0.ElementRef }, { token: i1.CdkTree }, { token: i0.IterableDiffers }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Directive });
112
- MatNestedTreeNode.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.2", type: MatNestedTreeNode, selector: "mat-nested-tree-node", inputs: { role: "role", disabled: "disabled", tabIndex: "tabIndex", node: ["matNestedTreeNode", "node"] }, host: { classAttribute: "mat-nested-tree-node" }, providers: [
104
+ MatNestedTreeNode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatNestedTreeNode, deps: [{ token: i0.ElementRef }, { token: i1.CdkTree }, { token: i0.IterableDiffers }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Directive });
105
+ MatNestedTreeNode.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.7", type: MatNestedTreeNode, selector: "mat-nested-tree-node", inputs: { role: "role", disabled: "disabled", tabIndex: "tabIndex", node: ["matNestedTreeNode", "node"] }, host: { classAttribute: "mat-nested-tree-node" }, providers: [
113
106
  { provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode },
114
107
  { provide: CdkTreeNode, useExisting: MatNestedTreeNode },
115
108
  { provide: CDK_TREE_NODE_OUTLET_NODE, useExisting: MatNestedTreeNode },
116
109
  ], exportAs: ["matNestedTreeNode"], usesInheritance: true, ngImport: i0 });
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatNestedTreeNode, decorators: [{
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatNestedTreeNode, decorators: [{
118
111
  type: Directive,
119
112
  args: [{
120
113
  selector: 'mat-nested-tree-node',
@@ -162,9 +155,9 @@ class MatTreeNodePadding extends CdkTreeNodePadding {
162
155
  this._setIndentInput(indent);
163
156
  }
164
157
  }
165
- MatTreeNodePadding.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNodePadding, deps: null, target: i0.ɵɵFactoryTarget.Directive });
166
- MatTreeNodePadding.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.2", type: MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: { level: ["matTreeNodePadding", "level"], indent: ["matTreeNodePaddingIndent", "indent"] }, providers: [{ provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding }], usesInheritance: true, ngImport: i0 });
167
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNodePadding, decorators: [{
158
+ MatTreeNodePadding.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNodePadding, deps: null, target: i0.ɵɵFactoryTarget.Directive });
159
+ MatTreeNodePadding.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.7", type: MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: { level: ["matTreeNodePadding", "level"], indent: ["matTreeNodePaddingIndent", "indent"] }, providers: [{ provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding }], usesInheritance: true, ngImport: i0 });
160
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNodePadding, decorators: [{
168
161
  type: Directive,
169
162
  args: [{
170
163
  selector: '[matTreeNodePadding]',
@@ -178,13 +171,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2",
178
171
  args: ['matTreeNodePaddingIndent']
179
172
  }] } });
180
173
 
181
- /**
182
- * @license
183
- * Copyright Google LLC All Rights Reserved.
184
- *
185
- * Use of this source code is governed by an MIT-style license that can be
186
- * found in the LICENSE file at https://angular.io/license
187
- */
188
174
  /**
189
175
  * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes
190
176
  * inside the outlet.
@@ -195,14 +181,14 @@ class MatTreeNodeOutlet {
195
181
  this._node = _node;
196
182
  }
197
183
  }
198
- MatTreeNodeOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNodeOutlet, deps: [{ token: i0.ViewContainerRef }, { token: CDK_TREE_NODE_OUTLET_NODE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
199
- MatTreeNodeOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.2", type: MatTreeNodeOutlet, selector: "[matTreeNodeOutlet]", providers: [
184
+ MatTreeNodeOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNodeOutlet, deps: [{ token: i0.ViewContainerRef }, { token: CDK_TREE_NODE_OUTLET_NODE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
185
+ MatTreeNodeOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.7", type: MatTreeNodeOutlet, selector: "[matTreeNodeOutlet]", providers: [
200
186
  {
201
187
  provide: CdkTreeNodeOutlet,
202
188
  useExisting: MatTreeNodeOutlet,
203
189
  },
204
190
  ], ngImport: i0 });
205
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNodeOutlet, decorators: [{
191
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNodeOutlet, decorators: [{
206
192
  type: Directive,
207
193
  args: [{
208
194
  selector: '[matTreeNodeOutlet]',
@@ -222,21 +208,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2",
222
208
  }] }];
223
209
  } });
224
210
 
225
- /**
226
- * @license
227
- * Copyright Google LLC All Rights Reserved.
228
- *
229
- * Use of this source code is governed by an MIT-style license that can be
230
- * found in the LICENSE file at https://angular.io/license
231
- */
232
211
  /**
233
212
  * Wrapper for the CdkTable with Material design styles.
234
213
  */
235
214
  class MatTree extends CdkTree {
236
215
  }
237
- MatTree.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTree, deps: null, target: i0.ɵɵFactoryTarget.Component });
238
- MatTree.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0-next.2", type: MatTree, selector: "mat-tree", host: { attributes: { "role": "tree" }, classAttribute: "mat-tree" }, providers: [{ provide: CdkTree, useExisting: MatTree }], viewQueries: [{ propertyName: "_nodeOutlet", first: true, predicate: MatTreeNodeOutlet, descendants: true, static: true }], exportAs: ["matTree"], usesInheritance: true, ngImport: i0, template: `<ng-container matTreeNodeOutlet></ng-container>`, isInline: true, styles: [".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}"], dependencies: [{ kind: "directive", type: MatTreeNodeOutlet, selector: "[matTreeNodeOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
239
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTree, decorators: [{
216
+ MatTree.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTree, deps: null, target: i0.ɵɵFactoryTarget.Component });
217
+ MatTree.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0-next.7", type: MatTree, selector: "mat-tree", host: { attributes: { "role": "tree" }, classAttribute: "mat-tree" }, providers: [{ provide: CdkTree, useExisting: MatTree }], viewQueries: [{ propertyName: "_nodeOutlet", first: true, predicate: MatTreeNodeOutlet, descendants: true, static: true }], exportAs: ["matTree"], usesInheritance: true, ngImport: i0, template: `<ng-container matTreeNodeOutlet></ng-container>`, isInline: true, styles: [".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}"], dependencies: [{ kind: "directive", type: MatTreeNodeOutlet, selector: "[matTreeNodeOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
218
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTree, decorators: [{
240
219
  type: Component,
241
220
  args: [{ selector: 'mat-tree', exportAs: 'matTree', template: `<ng-container matTreeNodeOutlet></ng-container>`, host: {
242
221
  'class': 'mat-tree',
@@ -247,21 +226,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2",
247
226
  args: [MatTreeNodeOutlet, { static: true }]
248
227
  }] } });
249
228
 
250
- /**
251
- * @license
252
- * Copyright Google LLC All Rights Reserved.
253
- *
254
- * Use of this source code is governed by an MIT-style license that can be
255
- * found in the LICENSE file at https://angular.io/license
256
- */
257
229
  /**
258
230
  * Wrapper for the CdkTree's toggle with Material design styles.
259
231
  */
260
232
  class MatTreeNodeToggle extends CdkTreeNodeToggle {
261
233
  }
262
- MatTreeNodeToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNodeToggle, deps: null, target: i0.ɵɵFactoryTarget.Directive });
263
- MatTreeNodeToggle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.2", type: MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: { recursive: ["matTreeNodeToggleRecursive", "recursive"] }, providers: [{ provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle }], usesInheritance: true, ngImport: i0 });
264
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeNodeToggle, decorators: [{
234
+ MatTreeNodeToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNodeToggle, deps: null, target: i0.ɵɵFactoryTarget.Directive });
235
+ MatTreeNodeToggle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.7", type: MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: { recursive: ["matTreeNodeToggleRecursive", "recursive"] }, providers: [{ provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle }], usesInheritance: true, ngImport: i0 });
236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeNodeToggle, decorators: [{
265
237
  type: Directive,
266
238
  args: [{
267
239
  selector: '[matTreeNodeToggle]',
@@ -270,13 +242,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2",
270
242
  }]
271
243
  }] });
272
244
 
273
- /**
274
- * @license
275
- * Copyright Google LLC All Rights Reserved.
276
- *
277
- * Use of this source code is governed by an MIT-style license that can be
278
- * found in the LICENSE file at https://angular.io/license
279
- */
280
245
  const MAT_TREE_DIRECTIVES = [
281
246
  MatNestedTreeNode,
282
247
  MatTreeNodeDef,
@@ -288,8 +253,8 @@ const MAT_TREE_DIRECTIVES = [
288
253
  ];
289
254
  class MatTreeModule {
290
255
  }
291
- MatTreeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
292
- MatTreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeModule, declarations: [MatNestedTreeNode,
256
+ MatTreeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
257
+ MatTreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeModule, declarations: [MatNestedTreeNode,
293
258
  MatTreeNodeDef,
294
259
  MatTreeNodePadding,
295
260
  MatTreeNodeToggle,
@@ -302,8 +267,8 @@ MatTreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
302
267
  MatTree,
303
268
  MatTreeNode,
304
269
  MatTreeNodeOutlet] });
305
- MatTreeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeModule, imports: [CdkTreeModule, MatCommonModule, MatCommonModule] });
306
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatTreeModule, decorators: [{
270
+ MatTreeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeModule, imports: [CdkTreeModule, MatCommonModule, MatCommonModule] });
271
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatTreeModule, decorators: [{
307
272
  type: NgModule,
308
273
  args: [{
309
274
  imports: [CdkTreeModule, MatCommonModule],
@@ -312,13 +277,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2",
312
277
  }]
313
278
  }] });
314
279
 
315
- /**
316
- * @license
317
- * Copyright Google LLC All Rights Reserved.
318
- *
319
- * Use of this source code is governed by an MIT-style license that can be
320
- * found in the LICENSE file at https://angular.io/license
321
- */
322
280
  /**
323
281
  * Tree flattener to convert a normal type of node to node with children & level information.
324
282
  * Transform nested nodes of type `T` to flattened nodes of type `F`.
@@ -457,13 +415,6 @@ class MatTreeFlatDataSource extends DataSource {
457
415
  }
458
416
  }
459
417
 
460
- /**
461
- * @license
462
- * Copyright Google LLC All Rights Reserved.
463
- *
464
- * Use of this source code is governed by an MIT-style license that can be
465
- * found in the LICENSE file at https://angular.io/license
466
- */
467
418
  /**
468
419
  * Data source for nested tree.
469
420
  *
@@ -492,22 +443,6 @@ class MatTreeNestedDataSource extends DataSource {
492
443
  }
493
444
  }
494
445
 
495
- /**
496
- * @license
497
- * Copyright Google LLC All Rights Reserved.
498
- *
499
- * Use of this source code is governed by an MIT-style license that can be
500
- * found in the LICENSE file at https://angular.io/license
501
- */
502
-
503
- /**
504
- * @license
505
- * Copyright Google LLC All Rights Reserved.
506
- *
507
- * Use of this source code is governed by an MIT-style license that can be
508
- * found in the LICENSE file at https://angular.io/license
509
- */
510
-
511
446
  /**
512
447
  * Generated bundle index. Do not edit.
513
448
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tree.mjs","sources":["../../../../../../src/material/tree/node.ts","../../../../../../src/material/tree/padding.ts","../../../../../../src/material/tree/outlet.ts","../../../../../../src/material/tree/tree.ts","../../../../../../src/material/tree/toggle.ts","../../../../../../src/material/tree/tree-module.ts","../../../../../../src/material/tree/data-source/flat-data-source.ts","../../../../../../src/material/tree/data-source/nested-data-source.ts","../../../../../../src/material/tree/public-api.ts","../../../../../../src/material/tree/index.ts","../../../../../../src/material/tree/tree_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n CDK_TREE_NODE_OUTLET_NODE,\n CdkNestedTreeNode,\n CdkTree,\n CdkTreeNode,\n CdkTreeNodeDef,\n} from '@angular/cdk/tree';\nimport {\n AfterContentInit,\n Attribute,\n Directive,\n ElementRef,\n Input,\n IterableDiffers,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport {CanDisable, HasTabIndex, mixinDisabled, mixinTabIndex} from '@angular/material/core';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\n\nconst _MatTreeNodeBase = mixinTabIndex(mixinDisabled(CdkTreeNode));\n\n/**\n * Wrapper for the CdkTree node with Material design styles.\n */\n@Directive({\n selector: 'mat-tree-node',\n exportAs: 'matTreeNode',\n inputs: ['role', 'disabled', 'tabIndex'],\n providers: [{provide: CdkTreeNode, useExisting: MatTreeNode}],\n host: {\n 'class': 'mat-tree-node',\n },\n})\nexport class MatTreeNode<T, K = T>\n extends _MatTreeNodeBase<T, K>\n implements CanDisable, HasTabIndex, OnInit, OnDestroy\n{\n constructor(\n elementRef: ElementRef<HTMLElement>,\n tree: CdkTree<T, K>,\n @Attribute('tabindex') tabIndex: string,\n ) {\n super(elementRef, tree);\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/23091\n // In aot mode, the lifecycle hooks from parent class are not called.\n override ngOnInit() {\n super.ngOnInit();\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n }\n}\n\n/**\n * Wrapper for the CdkTree node definition with Material design styles.\n * Captures the node's template and a when predicate that describes when this node should be used.\n */\n@Directive({\n selector: '[matTreeNodeDef]',\n inputs: ['when: matTreeNodeDefWhen'],\n providers: [{provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef}],\n})\nexport class MatTreeNodeDef<T> extends CdkTreeNodeDef<T> {\n @Input('matTreeNode') data: T;\n}\n\n/**\n * Wrapper for the CdkTree nested node with Material design styles.\n */\n@Directive({\n selector: 'mat-nested-tree-node',\n exportAs: 'matNestedTreeNode',\n inputs: ['role', 'disabled', 'tabIndex'],\n providers: [\n {provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode},\n {provide: CdkTreeNode, useExisting: MatNestedTreeNode},\n {provide: CDK_TREE_NODE_OUTLET_NODE, useExisting: MatNestedTreeNode},\n ],\n host: {\n 'class': 'mat-nested-tree-node',\n },\n})\nexport class MatNestedTreeNode<T, K = T>\n extends CdkNestedTreeNode<T, K>\n implements AfterContentInit, OnDestroy, OnInit\n{\n @Input('matNestedTreeNode') node: T;\n\n /** Whether the node is disabled. */\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: BooleanInput) {\n this._disabled = coerceBooleanProperty(value);\n }\n private _disabled = false;\n\n /** Tabindex for the node. */\n @Input()\n get tabIndex(): number {\n return this.disabled ? -1 : this._tabIndex;\n }\n set tabIndex(value: number) {\n // If the specified tabIndex value is null or undefined, fall back to the default value.\n this._tabIndex = value != null ? value : 0;\n }\n private _tabIndex: number;\n\n constructor(\n elementRef: ElementRef<HTMLElement>,\n tree: CdkTree<T, K>,\n differs: IterableDiffers,\n @Attribute('tabindex') tabIndex: string,\n ) {\n super(elementRef, tree, differs);\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/19145\n // In aot mode, the lifecycle hooks from parent class are not called.\n // TODO(tinayuangao): Remove when the angular issue #19145 is fixed\n override ngOnInit() {\n super.ngOnInit();\n }\n\n override ngAfterContentInit() {\n super.ngAfterContentInit();\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {NumberInput} from '@angular/cdk/coercion';\nimport {CdkTreeNodePadding} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n/**\n * Wrapper for the CdkTree padding with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodePadding]',\n providers: [{provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding}],\n})\nexport class MatTreeNodePadding<T, K = T> extends CdkTreeNodePadding<T, K> {\n /** The level of depth of the tree node. The padding will be `level * indent` pixels. */\n @Input('matTreeNodePadding')\n override get level(): number {\n return this._level;\n }\n override set level(value: NumberInput) {\n this._setLevelInput(value);\n }\n\n /** The indent for each level. Default number 40px from material design menu sub-menu spec. */\n @Input('matTreeNodePaddingIndent')\n override get indent(): number | string {\n return this._indent;\n }\n override set indent(indent: number | string) {\n this._setIndentInput(indent);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {CDK_TREE_NODE_OUTLET_NODE, CdkTreeNodeOutlet} from '@angular/cdk/tree';\nimport {Directive, Inject, Optional, ViewContainerRef} from '@angular/core';\n\n/**\n * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes\n * inside the outlet.\n */\n@Directive({\n selector: '[matTreeNodeOutlet]',\n providers: [\n {\n provide: CdkTreeNodeOutlet,\n useExisting: MatTreeNodeOutlet,\n },\n ],\n})\nexport class MatTreeNodeOutlet implements CdkTreeNodeOutlet {\n constructor(\n public viewContainer: ViewContainerRef,\n @Inject(CDK_TREE_NODE_OUTLET_NODE) @Optional() public _node?: any,\n ) {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkTree} from '@angular/cdk/tree';\nimport {ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n/**\n * Wrapper for the CdkTable with Material design styles.\n */\n@Component({\n selector: 'mat-tree',\n exportAs: 'matTree',\n template: `<ng-container matTreeNodeOutlet></ng-container>`,\n host: {\n 'class': 'mat-tree',\n 'role': 'tree',\n },\n styleUrls: ['tree.css'],\n encapsulation: ViewEncapsulation.None,\n // See note on CdkTree for explanation on why this uses the default change detection strategy.\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n providers: [{provide: CdkTree, useExisting: MatTree}],\n})\nexport class MatTree<T, K = T> extends CdkTree<T, K> {\n // Outlets within the tree's template where the dataNodes will be inserted.\n @ViewChild(MatTreeNodeOutlet, {static: true}) override _nodeOutlet: MatTreeNodeOutlet;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkTreeNodeToggle} from '@angular/cdk/tree';\nimport {Directive} from '@angular/core';\n\n/**\n * Wrapper for the CdkTree's toggle with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeToggle]',\n providers: [{provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle}],\n inputs: ['recursive: matTreeNodeToggleRecursive'],\n})\nexport class MatTreeNodeToggle<T, K = T> extends CdkTreeNodeToggle<T, K> {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\n\nimport {CdkTreeModule} from '@angular/cdk/tree';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatNestedTreeNode, MatTreeNodeDef, MatTreeNode} from './node';\nimport {MatTree} from './tree';\nimport {MatTreeNodeToggle} from './toggle';\nimport {MatTreeNodeOutlet} from './outlet';\nimport {MatTreeNodePadding} from './padding';\n\nconst MAT_TREE_DIRECTIVES = [\n MatNestedTreeNode,\n MatTreeNodeDef,\n MatTreeNodePadding,\n MatTreeNodeToggle,\n MatTree,\n MatTreeNode,\n MatTreeNodeOutlet,\n];\n\n@NgModule({\n imports: [CdkTreeModule, MatCommonModule],\n exports: [MatCommonModule, MAT_TREE_DIRECTIVES],\n declarations: MAT_TREE_DIRECTIVES,\n})\nexport class MatTreeModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {FlatTreeControl, TreeControl} from '@angular/cdk/tree';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\n\n/**\n * Tree flattener to convert a normal type of node to node with children & level information.\n * Transform nested nodes of type `T` to flattened nodes of type `F`.\n *\n * For example, the input data of type `T` is nested, and contains its children data:\n * SomeNode: {\n * key: 'Fruits',\n * children: [\n * NodeOne: {\n * key: 'Apple',\n * },\n * NodeTwo: {\n * key: 'Pear',\n * }\n * ]\n * }\n * After flattener flatten the tree, the structure will become\n * SomeNode: {\n * key: 'Fruits',\n * expandable: true,\n * level: 1\n * },\n * NodeOne: {\n * key: 'Apple',\n * expandable: false,\n * level: 2\n * },\n * NodeTwo: {\n * key: 'Pear',\n * expandable: false,\n * level: 2\n * }\n * and the output flattened type is `F` with additional information.\n */\nexport class MatTreeFlattener<T, F, K = F> {\n constructor(\n public transformFunction: (node: T, level: number) => F,\n public getLevel: (node: F) => number,\n public isExpandable: (node: F) => boolean,\n public getChildren: (node: T) => Observable<T[]> | T[] | undefined | null,\n ) {}\n\n _flattenNode(node: T, level: number, resultNodes: F[], parentMap: boolean[]): F[] {\n const flatNode = this.transformFunction(node, level);\n resultNodes.push(flatNode);\n\n if (this.isExpandable(flatNode)) {\n const childrenNodes = this.getChildren(node);\n if (childrenNodes) {\n if (Array.isArray(childrenNodes)) {\n this._flattenChildren(childrenNodes, level, resultNodes, parentMap);\n } else {\n childrenNodes.pipe(take(1)).subscribe(children => {\n this._flattenChildren(children, level, resultNodes, parentMap);\n });\n }\n }\n }\n return resultNodes;\n }\n\n _flattenChildren(children: T[], level: number, resultNodes: F[], parentMap: boolean[]): void {\n children.forEach((child, index) => {\n let childParentMap: boolean[] = parentMap.slice();\n childParentMap.push(index != children.length - 1);\n this._flattenNode(child, level + 1, resultNodes, childParentMap);\n });\n }\n\n /**\n * Flatten a list of node type T to flattened version of node F.\n * Please note that type T may be nested, and the length of `structuredData` may be different\n * from that of returned list `F[]`.\n */\n flattenNodes(structuredData: T[]): F[] {\n let resultNodes: F[] = [];\n structuredData.forEach(node => this._flattenNode(node, 0, resultNodes, []));\n return resultNodes;\n }\n\n /**\n * Expand flattened node with current expansion status.\n * The returned list may have different length.\n */\n expandFlattenedNodes(nodes: F[], treeControl: TreeControl<F, K>): F[] {\n let results: F[] = [];\n let currentExpand: boolean[] = [];\n currentExpand[0] = true;\n\n nodes.forEach(node => {\n let expand = true;\n for (let i = 0; i <= this.getLevel(node); i++) {\n expand = expand && currentExpand[i];\n }\n if (expand) {\n results.push(node);\n }\n if (this.isExpandable(node)) {\n currentExpand[this.getLevel(node) + 1] = treeControl.isExpanded(node);\n }\n });\n return results;\n }\n}\n\n/**\n * Data source for flat tree.\n * The data source need to handle expansion/collapsion of the tree node and change the data feed\n * to `MatTree`.\n * The nested tree nodes of type `T` are flattened through `MatTreeFlattener`, and converted\n * to type `F` for `MatTree` to consume.\n */\nexport class MatTreeFlatDataSource<T, F, K = F> extends DataSource<F> {\n private readonly _flattenedData = new BehaviorSubject<F[]>([]);\n private readonly _expandedData = new BehaviorSubject<F[]>([]);\n\n get data() {\n return this._data.value;\n }\n set data(value: T[]) {\n this._data.next(value);\n this._flattenedData.next(this._treeFlattener.flattenNodes(this.data));\n this._treeControl.dataNodes = this._flattenedData.value;\n }\n private readonly _data = new BehaviorSubject<T[]>([]);\n\n constructor(\n private _treeControl: FlatTreeControl<F, K>,\n private _treeFlattener: MatTreeFlattener<T, F, K>,\n initialData?: T[],\n ) {\n super();\n\n if (initialData) {\n // Assign the data through the constructor to ensure that all of the logic is executed.\n this.data = initialData;\n }\n }\n\n connect(collectionViewer: CollectionViewer): Observable<F[]> {\n return merge(\n collectionViewer.viewChange,\n this._treeControl.expansionModel.changed,\n this._flattenedData,\n ).pipe(\n map(() => {\n this._expandedData.next(\n this._treeFlattener.expandFlattenedNodes(this._flattenedData.value, this._treeControl),\n );\n return this._expandedData.value;\n }),\n );\n }\n\n disconnect() {\n // no op\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n/**\n * Data source for nested tree.\n *\n * The data source for nested tree doesn't have to consider node flattener, or the way to expand\n * or collapse. The expansion/collapsion will be handled by TreeControl and each non-leaf node.\n */\nexport class MatTreeNestedDataSource<T> extends DataSource<T> {\n /**\n * Data for the nested tree\n */\n get data() {\n return this._data.value;\n }\n set data(value: T[]) {\n this._data.next(value);\n }\n private readonly _data = new BehaviorSubject<T[]>([]);\n\n connect(collectionViewer: CollectionViewer): Observable<T[]> {\n return merge(...([collectionViewer.viewChange, this._data] as Observable<unknown>[])).pipe(\n map(() => this.data),\n );\n }\n\n disconnect() {\n // no op\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './node';\nexport * from './padding';\nexport * from './tree';\nexport * from './tree-module';\nexport * from './toggle';\nexport * from './outlet';\nexport * from './data-source/flat-data-source';\nexport * from './data-source/nested-data-source';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.MatTreeNodeOutlet"],"mappings":"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"}
1
+ {"version":3,"file":"tree.mjs","sources":["../../../../../../src/material/tree/node.ts","../../../../../../src/material/tree/padding.ts","../../../../../../src/material/tree/outlet.ts","../../../../../../src/material/tree/tree.ts","../../../../../../src/material/tree/toggle.ts","../../../../../../src/material/tree/tree-module.ts","../../../../../../src/material/tree/data-source/flat-data-source.ts","../../../../../../src/material/tree/data-source/nested-data-source.ts","../../../../../../src/material/tree/tree_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n CDK_TREE_NODE_OUTLET_NODE,\n CdkNestedTreeNode,\n CdkTree,\n CdkTreeNode,\n CdkTreeNodeDef,\n} from '@angular/cdk/tree';\nimport {\n AfterContentInit,\n Attribute,\n Directive,\n ElementRef,\n Input,\n IterableDiffers,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport {CanDisable, HasTabIndex, mixinDisabled, mixinTabIndex} from '@angular/material/core';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\n\nconst _MatTreeNodeBase = mixinTabIndex(mixinDisabled(CdkTreeNode));\n\n/**\n * Wrapper for the CdkTree node with Material design styles.\n */\n@Directive({\n selector: 'mat-tree-node',\n exportAs: 'matTreeNode',\n inputs: ['role', 'disabled', 'tabIndex'],\n providers: [{provide: CdkTreeNode, useExisting: MatTreeNode}],\n host: {\n 'class': 'mat-tree-node',\n },\n})\nexport class MatTreeNode<T, K = T>\n extends _MatTreeNodeBase<T, K>\n implements CanDisable, HasTabIndex, OnInit, OnDestroy\n{\n constructor(\n elementRef: ElementRef<HTMLElement>,\n tree: CdkTree<T, K>,\n @Attribute('tabindex') tabIndex: string,\n ) {\n super(elementRef, tree);\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/23091\n // In aot mode, the lifecycle hooks from parent class are not called.\n override ngOnInit() {\n super.ngOnInit();\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n }\n}\n\n/**\n * Wrapper for the CdkTree node definition with Material design styles.\n * Captures the node's template and a when predicate that describes when this node should be used.\n */\n@Directive({\n selector: '[matTreeNodeDef]',\n inputs: ['when: matTreeNodeDefWhen'],\n providers: [{provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef}],\n})\nexport class MatTreeNodeDef<T> extends CdkTreeNodeDef<T> {\n @Input('matTreeNode') data: T;\n}\n\n/**\n * Wrapper for the CdkTree nested node with Material design styles.\n */\n@Directive({\n selector: 'mat-nested-tree-node',\n exportAs: 'matNestedTreeNode',\n inputs: ['role', 'disabled', 'tabIndex'],\n providers: [\n {provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode},\n {provide: CdkTreeNode, useExisting: MatNestedTreeNode},\n {provide: CDK_TREE_NODE_OUTLET_NODE, useExisting: MatNestedTreeNode},\n ],\n host: {\n 'class': 'mat-nested-tree-node',\n },\n})\nexport class MatNestedTreeNode<T, K = T>\n extends CdkNestedTreeNode<T, K>\n implements AfterContentInit, OnDestroy, OnInit\n{\n @Input('matNestedTreeNode') node: T;\n\n /** Whether the node is disabled. */\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: BooleanInput) {\n this._disabled = coerceBooleanProperty(value);\n }\n private _disabled = false;\n\n /** Tabindex for the node. */\n @Input()\n get tabIndex(): number {\n return this.disabled ? -1 : this._tabIndex;\n }\n set tabIndex(value: number) {\n // If the specified tabIndex value is null or undefined, fall back to the default value.\n this._tabIndex = value != null ? value : 0;\n }\n private _tabIndex: number;\n\n constructor(\n elementRef: ElementRef<HTMLElement>,\n tree: CdkTree<T, K>,\n differs: IterableDiffers,\n @Attribute('tabindex') tabIndex: string,\n ) {\n super(elementRef, tree, differs);\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/19145\n // In aot mode, the lifecycle hooks from parent class are not called.\n // TODO(tinayuangao): Remove when the angular issue #19145 is fixed\n override ngOnInit() {\n super.ngOnInit();\n }\n\n override ngAfterContentInit() {\n super.ngAfterContentInit();\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {NumberInput} from '@angular/cdk/coercion';\nimport {CdkTreeNodePadding} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n/**\n * Wrapper for the CdkTree padding with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodePadding]',\n providers: [{provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding}],\n})\nexport class MatTreeNodePadding<T, K = T> extends CdkTreeNodePadding<T, K> {\n /** The level of depth of the tree node. The padding will be `level * indent` pixels. */\n @Input('matTreeNodePadding')\n override get level(): number {\n return this._level;\n }\n override set level(value: NumberInput) {\n this._setLevelInput(value);\n }\n\n /** The indent for each level. Default number 40px from material design menu sub-menu spec. */\n @Input('matTreeNodePaddingIndent')\n override get indent(): number | string {\n return this._indent;\n }\n override set indent(indent: number | string) {\n this._setIndentInput(indent);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {CDK_TREE_NODE_OUTLET_NODE, CdkTreeNodeOutlet} from '@angular/cdk/tree';\nimport {Directive, Inject, Optional, ViewContainerRef} from '@angular/core';\n\n/**\n * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes\n * inside the outlet.\n */\n@Directive({\n selector: '[matTreeNodeOutlet]',\n providers: [\n {\n provide: CdkTreeNodeOutlet,\n useExisting: MatTreeNodeOutlet,\n },\n ],\n})\nexport class MatTreeNodeOutlet implements CdkTreeNodeOutlet {\n constructor(\n public viewContainer: ViewContainerRef,\n @Inject(CDK_TREE_NODE_OUTLET_NODE) @Optional() public _node?: any,\n ) {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkTree} from '@angular/cdk/tree';\nimport {ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n/**\n * Wrapper for the CdkTable with Material design styles.\n */\n@Component({\n selector: 'mat-tree',\n exportAs: 'matTree',\n template: `<ng-container matTreeNodeOutlet></ng-container>`,\n host: {\n 'class': 'mat-tree',\n 'role': 'tree',\n },\n styleUrls: ['tree.css'],\n encapsulation: ViewEncapsulation.None,\n // See note on CdkTree for explanation on why this uses the default change detection strategy.\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n providers: [{provide: CdkTree, useExisting: MatTree}],\n})\nexport class MatTree<T, K = T> extends CdkTree<T, K> {\n // Outlets within the tree's template where the dataNodes will be inserted.\n // We need an initializer here to avoid a TS error. The value will be set in `ngAfterViewInit`.\n @ViewChild(MatTreeNodeOutlet, {static: true}) override _nodeOutlet: MatTreeNodeOutlet;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkTreeNodeToggle} from '@angular/cdk/tree';\nimport {Directive} from '@angular/core';\n\n/**\n * Wrapper for the CdkTree's toggle with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeToggle]',\n providers: [{provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle}],\n inputs: ['recursive: matTreeNodeToggleRecursive'],\n})\nexport class MatTreeNodeToggle<T, K = T> extends CdkTreeNodeToggle<T, K> {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\n\nimport {CdkTreeModule} from '@angular/cdk/tree';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatNestedTreeNode, MatTreeNodeDef, MatTreeNode} from './node';\nimport {MatTree} from './tree';\nimport {MatTreeNodeToggle} from './toggle';\nimport {MatTreeNodeOutlet} from './outlet';\nimport {MatTreeNodePadding} from './padding';\n\nconst MAT_TREE_DIRECTIVES = [\n MatNestedTreeNode,\n MatTreeNodeDef,\n MatTreeNodePadding,\n MatTreeNodeToggle,\n MatTree,\n MatTreeNode,\n MatTreeNodeOutlet,\n];\n\n@NgModule({\n imports: [CdkTreeModule, MatCommonModule],\n exports: [MatCommonModule, MAT_TREE_DIRECTIVES],\n declarations: MAT_TREE_DIRECTIVES,\n})\nexport class MatTreeModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {FlatTreeControl, TreeControl} from '@angular/cdk/tree';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\n\n/**\n * Tree flattener to convert a normal type of node to node with children & level information.\n * Transform nested nodes of type `T` to flattened nodes of type `F`.\n *\n * For example, the input data of type `T` is nested, and contains its children data:\n * SomeNode: {\n * key: 'Fruits',\n * children: [\n * NodeOne: {\n * key: 'Apple',\n * },\n * NodeTwo: {\n * key: 'Pear',\n * }\n * ]\n * }\n * After flattener flatten the tree, the structure will become\n * SomeNode: {\n * key: 'Fruits',\n * expandable: true,\n * level: 1\n * },\n * NodeOne: {\n * key: 'Apple',\n * expandable: false,\n * level: 2\n * },\n * NodeTwo: {\n * key: 'Pear',\n * expandable: false,\n * level: 2\n * }\n * and the output flattened type is `F` with additional information.\n */\nexport class MatTreeFlattener<T, F, K = F> {\n constructor(\n public transformFunction: (node: T, level: number) => F,\n public getLevel: (node: F) => number,\n public isExpandable: (node: F) => boolean,\n public getChildren: (node: T) => Observable<T[]> | T[] | undefined | null,\n ) {}\n\n _flattenNode(node: T, level: number, resultNodes: F[], parentMap: boolean[]): F[] {\n const flatNode = this.transformFunction(node, level);\n resultNodes.push(flatNode);\n\n if (this.isExpandable(flatNode)) {\n const childrenNodes = this.getChildren(node);\n if (childrenNodes) {\n if (Array.isArray(childrenNodes)) {\n this._flattenChildren(childrenNodes, level, resultNodes, parentMap);\n } else {\n childrenNodes.pipe(take(1)).subscribe(children => {\n this._flattenChildren(children, level, resultNodes, parentMap);\n });\n }\n }\n }\n return resultNodes;\n }\n\n _flattenChildren(children: T[], level: number, resultNodes: F[], parentMap: boolean[]): void {\n children.forEach((child, index) => {\n let childParentMap: boolean[] = parentMap.slice();\n childParentMap.push(index != children.length - 1);\n this._flattenNode(child, level + 1, resultNodes, childParentMap);\n });\n }\n\n /**\n * Flatten a list of node type T to flattened version of node F.\n * Please note that type T may be nested, and the length of `structuredData` may be different\n * from that of returned list `F[]`.\n */\n flattenNodes(structuredData: T[]): F[] {\n let resultNodes: F[] = [];\n structuredData.forEach(node => this._flattenNode(node, 0, resultNodes, []));\n return resultNodes;\n }\n\n /**\n * Expand flattened node with current expansion status.\n * The returned list may have different length.\n */\n expandFlattenedNodes(nodes: F[], treeControl: TreeControl<F, K>): F[] {\n let results: F[] = [];\n let currentExpand: boolean[] = [];\n currentExpand[0] = true;\n\n nodes.forEach(node => {\n let expand = true;\n for (let i = 0; i <= this.getLevel(node); i++) {\n expand = expand && currentExpand[i];\n }\n if (expand) {\n results.push(node);\n }\n if (this.isExpandable(node)) {\n currentExpand[this.getLevel(node) + 1] = treeControl.isExpanded(node);\n }\n });\n return results;\n }\n}\n\n/**\n * Data source for flat tree.\n * The data source need to handle expansion/collapsion of the tree node and change the data feed\n * to `MatTree`.\n * The nested tree nodes of type `T` are flattened through `MatTreeFlattener`, and converted\n * to type `F` for `MatTree` to consume.\n */\nexport class MatTreeFlatDataSource<T, F, K = F> extends DataSource<F> {\n private readonly _flattenedData = new BehaviorSubject<F[]>([]);\n private readonly _expandedData = new BehaviorSubject<F[]>([]);\n\n get data() {\n return this._data.value;\n }\n set data(value: T[]) {\n this._data.next(value);\n this._flattenedData.next(this._treeFlattener.flattenNodes(this.data));\n this._treeControl.dataNodes = this._flattenedData.value;\n }\n private readonly _data = new BehaviorSubject<T[]>([]);\n\n constructor(\n private _treeControl: FlatTreeControl<F, K>,\n private _treeFlattener: MatTreeFlattener<T, F, K>,\n initialData?: T[],\n ) {\n super();\n\n if (initialData) {\n // Assign the data through the constructor to ensure that all of the logic is executed.\n this.data = initialData;\n }\n }\n\n connect(collectionViewer: CollectionViewer): Observable<F[]> {\n return merge(\n collectionViewer.viewChange,\n this._treeControl.expansionModel.changed,\n this._flattenedData,\n ).pipe(\n map(() => {\n this._expandedData.next(\n this._treeFlattener.expandFlattenedNodes(this._flattenedData.value, this._treeControl),\n );\n return this._expandedData.value;\n }),\n );\n }\n\n disconnect() {\n // no op\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n/**\n * Data source for nested tree.\n *\n * The data source for nested tree doesn't have to consider node flattener, or the way to expand\n * or collapse. The expansion/collapsion will be handled by TreeControl and each non-leaf node.\n */\nexport class MatTreeNestedDataSource<T> extends DataSource<T> {\n /**\n * Data for the nested tree\n */\n get data() {\n return this._data.value;\n }\n set data(value: T[]) {\n this._data.next(value);\n }\n private readonly _data = new BehaviorSubject<T[]>([]);\n\n connect(collectionViewer: CollectionViewer): Observable<T[]> {\n return merge(...([collectionViewer.viewChange, this._data] as Observable<unknown>[])).pipe(\n map(() => this.data),\n );\n }\n\n disconnect() {\n // no op\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.MatTreeNodeOutlet"],"mappings":"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"}
@@ -2,13 +2,6 @@ import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
2
  import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
3
3
  import { MatOptionHarness, MatOptgroupHarness } from '@angular/material/core/testing';
4
4
 
5
- /**
6
- * @license
7
- * Copyright Google LLC All Rights Reserved.
8
- *
9
- * Use of this source code is governed by an MIT-style license that can be
10
- * found in the LICENSE file at https://angular.io/license
11
- */
12
5
  class _MatAutocompleteHarnessBase extends ComponentHarness {
13
6
  constructor() {
14
7
  super(...arguments);
@@ -113,29 +106,5 @@ class MatAutocompleteHarness extends _MatAutocompleteHarnessBase {
113
106
  /** The selector for the host element of a `MatAutocomplete` instance. */
114
107
  MatAutocompleteHarness.hostSelector = '.mat-mdc-autocomplete-trigger';
115
108
 
116
- /**
117
- * @license
118
- * Copyright Google LLC All Rights Reserved.
119
- *
120
- * Use of this source code is governed by an MIT-style license that can be
121
- * found in the LICENSE file at https://angular.io/license
122
- */
123
-
124
- /**
125
- * @license
126
- * Copyright Google LLC All Rights Reserved.
127
- *
128
- * Use of this source code is governed by an MIT-style license that can be
129
- * found in the LICENSE file at https://angular.io/license
130
- */
131
-
132
- /**
133
- * @license
134
- * Copyright Google LLC All Rights Reserved.
135
- *
136
- * Use of this source code is governed by an MIT-style license that can be
137
- * found in the LICENSE file at https://angular.io/license
138
- */
139
-
140
109
  export { MatAutocompleteHarness, _MatAutocompleteHarnessBase };
141
110
  //# sourceMappingURL=testing.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing.mjs","sources":["../../../../../../../src/material/autocomplete/testing/autocomplete-harness.ts","../../../../../../../src/material/autocomplete/testing/autocomplete-harness-filters.ts","../../../../../../../src/material/autocomplete/testing/public-api.ts","../../../../../../../src/material/autocomplete/testing/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {\n BaseHarnessFilters,\n ComponentHarness,\n ComponentHarnessConstructor,\n HarnessPredicate,\n TestElement,\n} from '@angular/cdk/testing';\nimport {\n MatOptgroupHarness,\n MatOptionHarness,\n OptgroupHarnessFilters,\n OptionHarnessFilters,\n} from '@angular/material/core/testing';\nimport {AutocompleteHarnessFilters} from './autocomplete-harness-filters';\n\nexport abstract class _MatAutocompleteHarnessBase<\n OptionType extends ComponentHarnessConstructor<Option> & {\n with: (options?: OptionFilters) => HarnessPredicate<Option>;\n },\n Option extends ComponentHarness & {click(): Promise<void>},\n OptionFilters extends BaseHarnessFilters,\n OptionGroupType extends ComponentHarnessConstructor<OptionGroup> & {\n with: (options?: OptionGroupFilters) => HarnessPredicate<OptionGroup>;\n },\n OptionGroup extends ComponentHarness,\n OptionGroupFilters extends BaseHarnessFilters,\n> extends ComponentHarness {\n private _documentRootLocator = this.documentRootLocatorFactory();\n protected abstract _prefix: string;\n protected abstract _optionClass: OptionType;\n protected abstract _optionGroupClass: OptionGroupType;\n\n /** Gets the value of the autocomplete input. */\n async getValue(): Promise<string> {\n return (await this.host()).getProperty<string>('value');\n }\n\n /** Whether the autocomplete input is disabled. */\n async isDisabled(): Promise<boolean> {\n const disabled = (await this.host()).getAttribute('disabled');\n return coerceBooleanProperty(await disabled);\n }\n\n /** Focuses the autocomplete input. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the autocomplete input. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the autocomplete input is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Enters text into the autocomplete. */\n async enterText(value: string): Promise<void> {\n return (await this.host()).sendKeys(value);\n }\n\n /** Clears the input value. */\n async clear(): Promise<void> {\n return (await this.host()).clear();\n }\n\n /** Gets the options inside the autocomplete panel. */\n async getOptions(filters?: Omit<OptionFilters, 'ancestor'>): Promise<Option[]> {\n if (!(await this.isOpen())) {\n throw new Error('Unable to retrieve options for autocomplete. Autocomplete panel is closed.');\n }\n\n return this._documentRootLocator.locatorForAll(\n this._optionClass.with({\n ...(filters || {}),\n ancestor: await this._getPanelSelector(),\n } as OptionFilters),\n )();\n }\n\n /** Gets the option groups inside the autocomplete panel. */\n async getOptionGroups(filters?: Omit<OptionGroupFilters, 'ancestor'>): Promise<OptionGroup[]> {\n if (!(await this.isOpen())) {\n throw new Error(\n 'Unable to retrieve option groups for autocomplete. Autocomplete panel is closed.',\n );\n }\n\n return this._documentRootLocator.locatorForAll(\n this._optionGroupClass.with({\n ...(filters || {}),\n ancestor: await this._getPanelSelector(),\n } as OptionGroupFilters),\n )();\n }\n\n /** Selects the first option matching the given filters. */\n async selectOption(filters: OptionFilters): Promise<void> {\n await this.focus(); // Focus the input to make sure the autocomplete panel is shown.\n const options = await this.getOptions(filters);\n if (!options.length) {\n throw Error(`Could not find a mat-option matching ${JSON.stringify(filters)}`);\n }\n await options[0].click();\n }\n\n /** Whether the autocomplete is open. */\n async isOpen(): Promise<boolean> {\n const panel = await this._getPanel();\n return !!panel && (await panel.hasClass(`${this._prefix}-autocomplete-visible`));\n }\n\n /** Gets the panel associated with this autocomplete trigger. */\n private async _getPanel(): Promise<TestElement | null> {\n // Technically this is static, but it needs to be in a\n // function, because the autocomplete's panel ID can changed.\n return this._documentRootLocator.locatorForOptional(await this._getPanelSelector())();\n }\n\n /** Gets the selector that can be used to find the autocomplete trigger's panel. */\n private async _getPanelSelector(): Promise<string> {\n return `#${await (await this.host()).getAttribute('aria-owns')}`;\n }\n}\n\n/** Harness for interacting with an MDC-based mat-autocomplete in tests. */\nexport class MatAutocompleteHarness extends _MatAutocompleteHarnessBase<\n typeof MatOptionHarness,\n MatOptionHarness,\n OptionHarnessFilters,\n typeof MatOptgroupHarness,\n MatOptgroupHarness,\n OptgroupHarnessFilters\n> {\n protected _prefix = 'mat-mdc';\n protected _optionClass = MatOptionHarness;\n protected _optionGroupClass = MatOptgroupHarness;\n\n /** The selector for the host element of a `MatAutocomplete` instance. */\n static hostSelector = '.mat-mdc-autocomplete-trigger';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for an autocomplete with specific\n * attributes.\n * @param options Options for filtering which autocomplete instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatAutocompleteHarness>(\n this: ComponentHarnessConstructor<T>,\n options: AutocompleteHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options)\n .addOption('value', options.value, (harness, value) =>\n HarnessPredicate.stringMatches(harness.getValue(), value),\n )\n .addOption('disabled', options.disabled, async (harness, disabled) => {\n return (await harness.isDisabled()) === disabled;\n });\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {BaseHarnessFilters} from '@angular/cdk/testing';\n\n/** A set of criteria that can be used to filter a list of `MatAutocompleteHarness` instances. */\nexport interface AutocompleteHarnessFilters extends BaseHarnessFilters {\n /** Only find instances whose associated input element matches the given value. */\n value?: string | RegExp;\n\n /** Only find instances which match the given disabled state. */\n disabled?: boolean;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './autocomplete-harness';\nexport * from './autocomplete-harness-filters';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testing.mjs","sources":["../../../../../../../src/material/autocomplete/testing/autocomplete-harness.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {\n BaseHarnessFilters,\n ComponentHarness,\n ComponentHarnessConstructor,\n HarnessPredicate,\n TestElement,\n} from '@angular/cdk/testing';\nimport {\n MatOptgroupHarness,\n MatOptionHarness,\n OptgroupHarnessFilters,\n OptionHarnessFilters,\n} from '@angular/material/core/testing';\nimport {AutocompleteHarnessFilters} from './autocomplete-harness-filters';\n\nexport abstract class _MatAutocompleteHarnessBase<\n OptionType extends ComponentHarnessConstructor<Option> & {\n with: (options?: OptionFilters) => HarnessPredicate<Option>;\n },\n Option extends ComponentHarness & {click(): Promise<void>},\n OptionFilters extends BaseHarnessFilters,\n OptionGroupType extends ComponentHarnessConstructor<OptionGroup> & {\n with: (options?: OptionGroupFilters) => HarnessPredicate<OptionGroup>;\n },\n OptionGroup extends ComponentHarness,\n OptionGroupFilters extends BaseHarnessFilters,\n> extends ComponentHarness {\n private _documentRootLocator = this.documentRootLocatorFactory();\n protected abstract _prefix: string;\n protected abstract _optionClass: OptionType;\n protected abstract _optionGroupClass: OptionGroupType;\n\n /** Gets the value of the autocomplete input. */\n async getValue(): Promise<string> {\n return (await this.host()).getProperty<string>('value');\n }\n\n /** Whether the autocomplete input is disabled. */\n async isDisabled(): Promise<boolean> {\n const disabled = (await this.host()).getAttribute('disabled');\n return coerceBooleanProperty(await disabled);\n }\n\n /** Focuses the autocomplete input. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the autocomplete input. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the autocomplete input is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Enters text into the autocomplete. */\n async enterText(value: string): Promise<void> {\n return (await this.host()).sendKeys(value);\n }\n\n /** Clears the input value. */\n async clear(): Promise<void> {\n return (await this.host()).clear();\n }\n\n /** Gets the options inside the autocomplete panel. */\n async getOptions(filters?: Omit<OptionFilters, 'ancestor'>): Promise<Option[]> {\n if (!(await this.isOpen())) {\n throw new Error('Unable to retrieve options for autocomplete. Autocomplete panel is closed.');\n }\n\n return this._documentRootLocator.locatorForAll(\n this._optionClass.with({\n ...(filters || {}),\n ancestor: await this._getPanelSelector(),\n } as OptionFilters),\n )();\n }\n\n /** Gets the option groups inside the autocomplete panel. */\n async getOptionGroups(filters?: Omit<OptionGroupFilters, 'ancestor'>): Promise<OptionGroup[]> {\n if (!(await this.isOpen())) {\n throw new Error(\n 'Unable to retrieve option groups for autocomplete. Autocomplete panel is closed.',\n );\n }\n\n return this._documentRootLocator.locatorForAll(\n this._optionGroupClass.with({\n ...(filters || {}),\n ancestor: await this._getPanelSelector(),\n } as OptionGroupFilters),\n )();\n }\n\n /** Selects the first option matching the given filters. */\n async selectOption(filters: OptionFilters): Promise<void> {\n await this.focus(); // Focus the input to make sure the autocomplete panel is shown.\n const options = await this.getOptions(filters);\n if (!options.length) {\n throw Error(`Could not find a mat-option matching ${JSON.stringify(filters)}`);\n }\n await options[0].click();\n }\n\n /** Whether the autocomplete is open. */\n async isOpen(): Promise<boolean> {\n const panel = await this._getPanel();\n return !!panel && (await panel.hasClass(`${this._prefix}-autocomplete-visible`));\n }\n\n /** Gets the panel associated with this autocomplete trigger. */\n private async _getPanel(): Promise<TestElement | null> {\n // Technically this is static, but it needs to be in a\n // function, because the autocomplete's panel ID can changed.\n return this._documentRootLocator.locatorForOptional(await this._getPanelSelector())();\n }\n\n /** Gets the selector that can be used to find the autocomplete trigger's panel. */\n private async _getPanelSelector(): Promise<string> {\n return `#${await (await this.host()).getAttribute('aria-owns')}`;\n }\n}\n\n/** Harness for interacting with an MDC-based mat-autocomplete in tests. */\nexport class MatAutocompleteHarness extends _MatAutocompleteHarnessBase<\n typeof MatOptionHarness,\n MatOptionHarness,\n OptionHarnessFilters,\n typeof MatOptgroupHarness,\n MatOptgroupHarness,\n OptgroupHarnessFilters\n> {\n protected _prefix = 'mat-mdc';\n protected _optionClass = MatOptionHarness;\n protected _optionGroupClass = MatOptgroupHarness;\n\n /** The selector for the host element of a `MatAutocomplete` instance. */\n static hostSelector = '.mat-mdc-autocomplete-trigger';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for an autocomplete with specific\n * attributes.\n * @param options Options for filtering which autocomplete instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatAutocompleteHarness>(\n this: ComponentHarnessConstructor<T>,\n options: AutocompleteHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options)\n .addOption('value', options.value, (harness, value) =>\n HarnessPredicate.stringMatches(harness.getValue(), value),\n )\n .addOption('disabled', options.disabled, async (harness, disabled) => {\n return (await harness.isDisabled()) === disabled;\n });\n }\n}\n"],"names":[],"mappings":"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"}