@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
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-form-field.mjs","sources":["../../../../../../src/material/legacy-form-field/error.ts","../../../../../../src/material/legacy-form-field/hint.ts","../../../../../../src/material/legacy-form-field/label.ts","../../../../../../src/material/legacy-form-field/placeholder.ts","../../../../../../src/material/legacy-form-field/form-field.ts","../../../../../../src/material/legacy-form-field/form-field.html","../../../../../../src/material/legacy-form-field/prefix.ts","../../../../../../src/material/legacy-form-field/suffix.ts","../../../../../../src/material/legacy-form-field/form-field-module.ts","../../../../../../src/material/legacy-form-field/public-api.ts","../../../../../../src/material/legacy-form-field/index.ts","../../../../../../src/material/legacy-form-field/legacy-form-field_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 {Attribute, Directive, ElementRef, Input} from '@angular/core';\nimport {MAT_ERROR} from '@angular/material/form-field';\n\nlet nextUniqueId = 0;\n\n/**\n * Single error message to be shown underneath the form field.\n * @deprecated Use `MatError` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: 'mat-error',\n host: {\n 'class': 'mat-error',\n '[attr.id]': 'id',\n 'aria-atomic': 'true',\n },\n providers: [{provide: MAT_ERROR, useExisting: MatLegacyError}],\n})\nexport class MatLegacyError {\n @Input() id: string = `mat-error-${nextUniqueId++}`;\n\n constructor(@Attribute('aria-live') ariaLive: string, elementRef: ElementRef) {\n // If no aria-live value is set add 'polite' as a default. This is preferred over setting\n // role='alert' so that screen readers do not interrupt the current task to read this aloud.\n if (!ariaLive) {\n elementRef.nativeElement.setAttribute('aria-live', 'polite');\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 {Directive, InjectionToken, Input} from '@angular/core';\n\nlet nextUniqueId = 0;\n\n/**\n * Injection token that can be used to reference instances of `MatHint`. It serves as\n * alternative token to the actual `MatHint` class which could cause unnecessary\n * retention of the class and its directive metadata.\n *\n * *Note*: This is not part of the public API as the MDC-based form-field will not\n * need a lightweight token for `MatHint` and we want to reduce breaking changes.\n *\n * @deprecated Use `_MAT_HINT` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport const _MAT_LEGACY_HINT = new InjectionToken<MatLegacyHint>('MatHint');\n\n/**\n * Hint text to be shown underneath the form field control.\n * @deprecated Use `MatHint` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: 'mat-hint',\n host: {\n 'class': 'mat-hint',\n '[class.mat-form-field-hint-end]': 'align === \"end\"',\n '[attr.id]': 'id',\n // Remove align attribute to prevent it from interfering with layout.\n '[attr.align]': 'null',\n },\n providers: [{provide: _MAT_LEGACY_HINT, useExisting: MatLegacyHint}],\n})\nexport class MatLegacyHint {\n /** Whether to align the hint label at the start or end of the line. */\n @Input() align: 'start' | 'end' = 'start';\n\n /** Unique ID for the hint. Used for the aria-describedby on the form field control. */\n @Input() id: string = `mat-hint-${nextUniqueId++}`;\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 {Directive} from '@angular/core';\n\n/**\n * The floating label for a `mat-form-field`.\n * @deprecated Use `MatLabel` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: 'mat-label',\n})\nexport class MatLegacyLabel {}\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 {Directive} from '@angular/core';\n\n/**\n * The placeholder text for an `MatFormField`.\n * @deprecated Use `<mat-label>` to specify the label and the `placeholder` attribute to specify the\n * placeholder.\n * @breaking-change 8.0.0\n */\n@Directive({\n selector: 'mat-placeholder',\n})\nexport class MatLegacyPlaceholder {}\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 {Directionality} from '@angular/cdk/bidi';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {\n AfterContentChecked,\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n Inject,\n Input,\n NgZone,\n Optional,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n OnDestroy,\n InjectionToken,\n} from '@angular/core';\nimport {CanColor, mixinColor, ThemePalette} from '@angular/material/core';\nimport {fromEvent, merge, Subject} from 'rxjs';\nimport {startWith, take, takeUntil} from 'rxjs/operators';\nimport {MatLegacyError} from './error';\nimport {_MAT_LEGACY_HINT, MatLegacyHint} from './hint';\nimport {MatLegacyLabel} from './label';\nimport {MatLegacyPlaceholder} from './placeholder';\nimport {MatLegacyPrefix} from './prefix';\nimport {MatLegacySuffix} from './suffix';\nimport {Platform} from '@angular/cdk/platform';\nimport {AbstractControlDirective} from '@angular/forms';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n getMatFormFieldDuplicatedHintError,\n getMatFormFieldMissingControlError,\n getMatFormFieldPlaceholderConflictError,\n matFormFieldAnimations,\n MatFormFieldControl,\n MAT_ERROR,\n MAT_FORM_FIELD,\n MAT_PREFIX,\n MAT_SUFFIX,\n} from '@angular/material/form-field';\n\nlet nextUniqueId = 0;\nconst floatingLabelScale = 0.75;\nconst outlineGapPadding = 5;\n\n/**\n * Boilerplate for applying mixins to MatFormField.\n * @docs-private\n */\nconst _MatFormFieldBase = mixinColor(\n class {\n constructor(public _elementRef: ElementRef) {}\n },\n 'primary',\n);\n\n/**\n * Possible appearance styles for the form field.\n * @deprecated Use `MatFormFieldAppearance` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport type MatLegacyFormFieldAppearance = 'legacy' | 'standard' | 'fill' | 'outline';\n\n/**\n * Possible values for the \"floatLabel\" form field input.\n * @deprecated Use `FloatLabelType` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport type LegacyFloatLabelType = 'always' | 'never' | 'auto';\n\n/**\n * Represents the default options for the form field that can be configured\n * using the `MAT_FORM_FIELD_DEFAULT_OPTIONS` injection token.\n * @deprecated Use `MatFormFieldDefaultOptions` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport interface MatLegacyFormFieldDefaultOptions {\n /** Default form field appearance style. */\n appearance?: MatLegacyFormFieldAppearance;\n /** Default color of the form field. */\n color?: ThemePalette;\n /** Whether the required marker should be hidden by default. */\n hideRequiredMarker?: boolean;\n /**\n * Whether the label for form fields should by default float `always`,\n * `never`, or `auto` (only when necessary).\n */\n floatLabel?: LegacyFloatLabelType;\n}\n\n/**\n * Injection token that can be used to configure the\n * default options for all form field within an app.\n * @deprecated Use `MAT_FORM_FIELD_DEFAULT_OPTIONS` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport const MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS =\n new InjectionToken<MatLegacyFormFieldDefaultOptions>('MAT_FORM_FIELD_DEFAULT_OPTIONS');\n\n/**\n * Container for form controls that applies Material Design styling and behavior.\n * @deprecated Use `MatFormField` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Component({\n selector: 'mat-form-field',\n exportAs: 'matFormField',\n templateUrl: 'form-field.html',\n // MatInput is a directive and can't have styles, so we need to include its styles here\n // in form-field-input.css. The MatInput styles are fairly minimal so it shouldn't be a\n // big deal for people who aren't using MatInput.\n styleUrls: [\n 'form-field.css',\n 'form-field-fill.css',\n 'form-field-input.css',\n 'form-field-legacy.css',\n 'form-field-outline.css',\n 'form-field-standard.css',\n ],\n animations: [matFormFieldAnimations.transitionMessages],\n host: {\n 'class': 'mat-form-field',\n '[class.mat-form-field-appearance-standard]': 'appearance == \"standard\"',\n '[class.mat-form-field-appearance-fill]': 'appearance == \"fill\"',\n '[class.mat-form-field-appearance-outline]': 'appearance == \"outline\"',\n '[class.mat-form-field-appearance-legacy]': 'appearance == \"legacy\"',\n '[class.mat-form-field-invalid]': '_control.errorState',\n '[class.mat-form-field-can-float]': '_canLabelFloat()',\n '[class.mat-form-field-should-float]': '_shouldLabelFloat()',\n '[class.mat-form-field-has-label]': '_hasFloatingLabel()',\n '[class.mat-form-field-hide-placeholder]': '_hideControlPlaceholder()',\n '[class.mat-form-field-disabled]': '_control.disabled',\n '[class.mat-form-field-autofilled]': '_control.autofilled',\n '[class.mat-focused]': '_control.focused',\n '[class.ng-untouched]': '_shouldForward(\"untouched\")',\n '[class.ng-touched]': '_shouldForward(\"touched\")',\n '[class.ng-pristine]': '_shouldForward(\"pristine\")',\n '[class.ng-dirty]': '_shouldForward(\"dirty\")',\n '[class.ng-valid]': '_shouldForward(\"valid\")',\n '[class.ng-invalid]': '_shouldForward(\"invalid\")',\n '[class.ng-pending]': '_shouldForward(\"pending\")',\n '[class._mat-animation-noopable]': '!_animationsEnabled',\n 'ngSkipHydration': 'true',\n },\n inputs: ['color'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{provide: MAT_FORM_FIELD, useExisting: MatLegacyFormField}],\n})\nexport class MatLegacyFormField\n extends _MatFormFieldBase\n implements AfterContentInit, AfterContentChecked, AfterViewInit, OnDestroy, CanColor\n{\n /**\n * Whether the outline gap needs to be calculated\n * immediately on the next change detection run.\n */\n private _outlineGapCalculationNeededImmediately = false;\n\n /** Whether the outline gap needs to be calculated next time the zone has stabilized. */\n private _outlineGapCalculationNeededOnStable = false;\n\n private readonly _destroyed = new Subject<void>();\n\n /** The form field appearance style. */\n @Input()\n get appearance(): MatLegacyFormFieldAppearance {\n return this._appearance;\n }\n set appearance(value: MatLegacyFormFieldAppearance) {\n const oldValue = this._appearance;\n\n this._appearance = value || this._defaults?.appearance || 'legacy';\n\n if (this._appearance === 'outline' && oldValue !== value) {\n this._outlineGapCalculationNeededOnStable = true;\n }\n }\n _appearance: MatLegacyFormFieldAppearance;\n\n /** Whether the required marker should be hidden. */\n @Input()\n get hideRequiredMarker(): boolean {\n return this._hideRequiredMarker;\n }\n set hideRequiredMarker(value: BooleanInput) {\n this._hideRequiredMarker = coerceBooleanProperty(value);\n }\n private _hideRequiredMarker = false;\n\n /** Override for the logic that disables the label animation in certain cases. */\n private _showAlwaysAnimate = false;\n\n /** Whether the floating label should always float or not. */\n _shouldAlwaysFloat(): boolean {\n return this.floatLabel === 'always' && !this._showAlwaysAnimate;\n }\n\n /** Whether the label can float or not. */\n _canLabelFloat(): boolean {\n return this.floatLabel !== 'never';\n }\n\n /** State of the mat-hint and mat-error animations. */\n _subscriptAnimationState: string = '';\n\n /** Text for the form field hint. */\n @Input()\n get hintLabel(): string {\n return this._hintLabel;\n }\n set hintLabel(value: string) {\n this._hintLabel = value;\n this._processHints();\n }\n private _hintLabel = '';\n\n // Unique id for the hint label.\n readonly _hintLabelId: string = `mat-hint-${nextUniqueId++}`;\n\n // Unique id for the label element.\n readonly _labelId = `mat-form-field-label-${nextUniqueId++}`;\n\n /**\n * Whether the label should always float, never float or float as the user types.\n *\n * Note: only the legacy appearance supports the `never` option. `never` was originally added as a\n * way to make the floating label emulate the behavior of a standard input placeholder. However\n * the form field now supports both floating labels and placeholders. Therefore in the non-legacy\n * appearances the `never` option has been disabled in favor of just using the placeholder.\n */\n @Input()\n get floatLabel(): LegacyFloatLabelType {\n return this.appearance !== 'legacy' && this._floatLabel === 'never' ? 'auto' : this._floatLabel;\n }\n set floatLabel(value: LegacyFloatLabelType) {\n if (value !== this._floatLabel) {\n this._floatLabel = value || this._getDefaultFloatLabelState();\n this._changeDetectorRef.markForCheck();\n }\n }\n private _floatLabel: LegacyFloatLabelType;\n\n /** Whether the Angular animations are enabled. */\n _animationsEnabled: boolean;\n\n @ViewChild('connectionContainer', {static: true}) _connectionContainerRef: ElementRef;\n @ViewChild('inputContainer') _inputContainerRef: ElementRef;\n @ViewChild('label') private _label: ElementRef<HTMLElement>;\n\n @ContentChild(MatFormFieldControl) _controlNonStatic: MatFormFieldControl<any>;\n @ContentChild(MatFormFieldControl, {static: true}) _controlStatic: MatFormFieldControl<any>;\n get _control() {\n // TODO(crisbeto): we need this workaround in order to support both Ivy and ViewEngine.\n // We should clean this up once Ivy is the default renderer.\n return this._explicitFormFieldControl || this._controlNonStatic || this._controlStatic;\n }\n set _control(value) {\n this._explicitFormFieldControl = value;\n }\n private _explicitFormFieldControl: MatFormFieldControl<any>;\n\n @ContentChild(MatLegacyLabel) _labelChildNonStatic: MatLegacyLabel;\n @ContentChild(MatLegacyLabel, {static: true}) _labelChildStatic: MatLegacyLabel;\n @ContentChild(MatLegacyPlaceholder) _placeholderChild: MatLegacyPlaceholder;\n\n @ContentChildren(MAT_ERROR, {descendants: true}) _errorChildren: QueryList<MatLegacyError>;\n @ContentChildren(_MAT_LEGACY_HINT, {descendants: true}) _hintChildren: QueryList<MatLegacyHint>;\n @ContentChildren(MAT_PREFIX, {descendants: true})\n _prefixChildren: QueryList<MatLegacyPrefix>;\n @ContentChildren(MAT_SUFFIX, {descendants: true})\n _suffixChildren: QueryList<MatLegacySuffix>;\n\n constructor(\n elementRef: ElementRef,\n private _changeDetectorRef: ChangeDetectorRef,\n @Optional() private _dir: Directionality,\n @Optional()\n @Inject(MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS)\n private _defaults: MatLegacyFormFieldDefaultOptions,\n private _platform: Platform,\n private _ngZone: NgZone,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) _animationMode: string,\n ) {\n super(elementRef);\n\n this.floatLabel = this._getDefaultFloatLabelState();\n this._animationsEnabled = _animationMode !== 'NoopAnimations';\n\n // Set the default through here so we invoke the setter on the first run.\n this.appearance = _defaults?.appearance || 'legacy';\n if (_defaults) {\n this._hideRequiredMarker = Boolean(_defaults.hideRequiredMarker);\n if (_defaults.color) {\n this.color = this.defaultColor = _defaults.color;\n }\n }\n }\n\n /**\n * Gets the id of the label element. If no label is present, returns `null`.\n */\n getLabelId(): string | null {\n return this._hasFloatingLabel() ? this._labelId : null;\n }\n\n /**\n * Gets an ElementRef for the element that a overlay attached to the form field should be\n * positioned relative to.\n */\n getConnectedOverlayOrigin(): ElementRef {\n return this._connectionContainerRef || this._elementRef;\n }\n\n ngAfterContentInit() {\n this._validateControlChild();\n\n const control = this._control;\n\n if (control.controlType) {\n this._elementRef.nativeElement.classList.add(`mat-form-field-type-${control.controlType}`);\n }\n\n // Subscribe to changes in the child control state in order to update the form field UI.\n control.stateChanges.pipe(startWith(null)).subscribe(() => {\n this._validatePlaceholders();\n this._syncDescribedByIds();\n this._changeDetectorRef.markForCheck();\n });\n\n // Run change detection if the value changes.\n if (control.ngControl && control.ngControl.valueChanges) {\n control.ngControl.valueChanges\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._changeDetectorRef.markForCheck());\n }\n\n // Note that we have to run outside of the `NgZone` explicitly,\n // in order to avoid throwing users into an infinite loop\n // if `zone-patch-rxjs` is included.\n this._ngZone.runOutsideAngular(() => {\n this._ngZone.onStable.pipe(takeUntil(this._destroyed)).subscribe(() => {\n if (this._outlineGapCalculationNeededOnStable) {\n this.updateOutlineGap();\n }\n });\n });\n\n // Run change detection and update the outline if the suffix or prefix changes.\n merge(this._prefixChildren.changes, this._suffixChildren.changes).subscribe(() => {\n this._outlineGapCalculationNeededOnStable = true;\n this._changeDetectorRef.markForCheck();\n });\n\n // Re-validate when the number of hints changes.\n this._hintChildren.changes.pipe(startWith(null)).subscribe(() => {\n this._processHints();\n this._changeDetectorRef.markForCheck();\n });\n\n // Update the aria-described by when the number of errors changes.\n this._errorChildren.changes.pipe(startWith(null)).subscribe(() => {\n this._syncDescribedByIds();\n this._changeDetectorRef.markForCheck();\n });\n\n if (this._dir) {\n this._dir.change.pipe(takeUntil(this._destroyed)).subscribe(() => {\n if (typeof requestAnimationFrame === 'function') {\n this._ngZone.runOutsideAngular(() => {\n requestAnimationFrame(() => this.updateOutlineGap());\n });\n } else {\n this.updateOutlineGap();\n }\n });\n }\n }\n\n ngAfterContentChecked() {\n this._validateControlChild();\n if (this._outlineGapCalculationNeededImmediately) {\n this.updateOutlineGap();\n }\n }\n\n ngAfterViewInit() {\n // Avoid animations on load.\n this._subscriptAnimationState = 'enter';\n this._changeDetectorRef.detectChanges();\n }\n\n ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /**\n * Determines whether a class from the AbstractControlDirective\n * should be forwarded to the host element.\n */\n _shouldForward(prop: keyof AbstractControlDirective): boolean {\n const control = this._control ? this._control.ngControl : null;\n return control && control[prop];\n }\n\n _hasPlaceholder() {\n return !!((this._control && this._control.placeholder) || this._placeholderChild);\n }\n\n _hasLabel() {\n return !!(this._labelChildNonStatic || this._labelChildStatic);\n }\n\n _shouldLabelFloat() {\n return (\n this._canLabelFloat() &&\n ((this._control && this._control.shouldLabelFloat) || this._shouldAlwaysFloat())\n );\n }\n\n _hideControlPlaceholder() {\n // In the legacy appearance the placeholder is promoted to a label if no label is given.\n return (\n (this.appearance === 'legacy' && !this._hasLabel()) ||\n (this._hasLabel() && !this._shouldLabelFloat())\n );\n }\n\n _hasFloatingLabel() {\n // In the legacy appearance the placeholder is promoted to a label if no label is given.\n return this._hasLabel() || (this.appearance === 'legacy' && this._hasPlaceholder());\n }\n\n /** Determines whether to display hints or errors. */\n _getDisplayedMessages(): 'error' | 'hint' {\n return this._errorChildren && this._errorChildren.length > 0 && this._control.errorState\n ? 'error'\n : 'hint';\n }\n\n /** Animates the placeholder up and locks it in position. */\n _animateAndLockLabel(): void {\n if (this._hasFloatingLabel() && this._canLabelFloat()) {\n // If animations are disabled, we shouldn't go in here,\n // because the `transitionend` will never fire.\n if (this._animationsEnabled && this._label) {\n this._showAlwaysAnimate = true;\n\n fromEvent(this._label.nativeElement, 'transitionend')\n .pipe(take(1))\n .subscribe(() => {\n this._showAlwaysAnimate = false;\n });\n }\n\n this.floatLabel = 'always';\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /**\n * Ensure that there is only one placeholder (either `placeholder` attribute on the child control\n * or child element with the `mat-placeholder` directive).\n */\n private _validatePlaceholders() {\n if (\n this._control.placeholder &&\n this._placeholderChild &&\n (typeof ngDevMode === 'undefined' || ngDevMode)\n ) {\n throw getMatFormFieldPlaceholderConflictError();\n }\n }\n\n /** Does any extra processing that is required when handling the hints. */\n private _processHints() {\n this._validateHints();\n this._syncDescribedByIds();\n }\n\n /**\n * Ensure that there is a maximum of one of each `<mat-hint>` alignment specified, with the\n * attribute being considered as `align=\"start\"`.\n */\n private _validateHints() {\n if (this._hintChildren && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n let startHint: MatLegacyHint;\n let endHint: MatLegacyHint;\n this._hintChildren.forEach((hint: MatLegacyHint) => {\n if (hint.align === 'start') {\n if (startHint || this.hintLabel) {\n throw getMatFormFieldDuplicatedHintError('start');\n }\n startHint = hint;\n } else if (hint.align === 'end') {\n if (endHint) {\n throw getMatFormFieldDuplicatedHintError('end');\n }\n endHint = hint;\n }\n });\n }\n }\n\n /** Gets the default float label state. */\n private _getDefaultFloatLabelState(): LegacyFloatLabelType {\n return (this._defaults && this._defaults.floatLabel) || 'auto';\n }\n\n /**\n * Sets the list of element IDs that describe the child control. This allows the control to update\n * its `aria-describedby` attribute accordingly.\n */\n private _syncDescribedByIds() {\n if (this._control) {\n let ids: string[] = [];\n\n // TODO(wagnermaciel): Remove the type check when we find the root cause of this bug.\n if (\n this._control.userAriaDescribedBy &&\n typeof this._control.userAriaDescribedBy === 'string'\n ) {\n ids.push(...this._control.userAriaDescribedBy.split(' '));\n }\n\n if (this._getDisplayedMessages() === 'hint') {\n const startHint = this._hintChildren\n ? this._hintChildren.find(hint => hint.align === 'start')\n : null;\n const endHint = this._hintChildren\n ? this._hintChildren.find(hint => hint.align === 'end')\n : null;\n\n if (startHint) {\n ids.push(startHint.id);\n } else if (this._hintLabel) {\n ids.push(this._hintLabelId);\n }\n\n if (endHint) {\n ids.push(endHint.id);\n }\n } else if (this._errorChildren) {\n ids.push(...this._errorChildren.map(error => error.id));\n }\n\n this._control.setDescribedByIds(ids);\n }\n }\n\n /** Throws an error if the form field's control is missing. */\n protected _validateControlChild() {\n if (!this._control && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw getMatFormFieldMissingControlError();\n }\n }\n\n /**\n * Updates the width and position of the gap in the outline. Only relevant for the outline\n * appearance.\n */\n updateOutlineGap() {\n const labelEl = this._label ? this._label.nativeElement : null;\n const container = this._connectionContainerRef.nativeElement;\n const outlineStartSelector = '.mat-form-field-outline-start';\n const outlineGapSelector = '.mat-form-field-outline-gap';\n\n // getBoundingClientRect isn't available on the server.\n if (this.appearance !== 'outline' || !this._platform.isBrowser) {\n return;\n }\n\n // If there is no content, set the gap elements to zero.\n if (!labelEl || !labelEl.children.length || !labelEl.textContent!.trim()) {\n const gapElements = container.querySelectorAll(\n `${outlineStartSelector}, ${outlineGapSelector}`,\n );\n for (let i = 0; i < gapElements.length; i++) {\n gapElements[i].style.width = '0';\n }\n return;\n }\n\n // If the element is not present in the DOM, the outline gap will need to be calculated\n // the next time it is checked and in the DOM.\n if (!this._isAttachedToDOM()) {\n this._outlineGapCalculationNeededImmediately = true;\n return;\n }\n\n let startWidth = 0;\n let gapWidth = 0;\n\n const startEls = container.querySelectorAll(outlineStartSelector);\n const gapEls = container.querySelectorAll(outlineGapSelector);\n\n if (this._label && this._label.nativeElement.children.length) {\n const containerRect = container.getBoundingClientRect();\n\n // If the container's width and height are zero, it means that the element is\n // invisible and we can't calculate the outline gap. Mark the element as needing\n // to be checked the next time the zone stabilizes. We can't do this immediately\n // on the next change detection, because even if the element becomes visible,\n // the `ClientRect` won't be recalculated immediately. We reset the\n // `_outlineGapCalculationNeededImmediately` flag some we don't run the checks twice.\n if (containerRect.width === 0 && containerRect.height === 0) {\n this._outlineGapCalculationNeededOnStable = true;\n this._outlineGapCalculationNeededImmediately = false;\n return;\n }\n\n const containerStart = this._getStartEnd(containerRect);\n const labelChildren = labelEl.children;\n const labelStart = this._getStartEnd(labelChildren[0].getBoundingClientRect());\n let labelWidth = 0;\n\n for (let i = 0; i < labelChildren.length; i++) {\n labelWidth += (labelChildren[i] as HTMLElement).offsetWidth;\n }\n startWidth = Math.abs(labelStart - containerStart) - outlineGapPadding;\n gapWidth = labelWidth > 0 ? labelWidth * floatingLabelScale + outlineGapPadding * 2 : 0;\n }\n\n for (let i = 0; i < startEls.length; i++) {\n startEls[i].style.width = `${startWidth}px`;\n }\n for (let i = 0; i < gapEls.length; i++) {\n gapEls[i].style.width = `${gapWidth}px`;\n }\n\n this._outlineGapCalculationNeededOnStable = this._outlineGapCalculationNeededImmediately =\n false;\n }\n\n /** Gets the start end of the rect considering the current directionality. */\n private _getStartEnd(rect: ClientRect): number {\n return this._dir && this._dir.value === 'rtl' ? rect.right : rect.left;\n }\n\n /** Checks whether the form field is attached to the DOM. */\n private _isAttachedToDOM(): boolean {\n const element: HTMLElement = this._elementRef.nativeElement;\n\n if (element.getRootNode) {\n const rootNode = element.getRootNode();\n // If the element is inside the DOM the root node will be either the document\n // or the closest shadow root, otherwise it'll be the element itself.\n return rootNode && rootNode !== element;\n }\n\n // Otherwise fall back to checking if it's in the document. This doesn't account for\n // shadow DOM, however browser that support shadow DOM should support `getRootNode` as well.\n return document.documentElement!.contains(element);\n }\n}\n","<div class=\"mat-form-field-wrapper\">\n <div class=\"mat-form-field-flex\" #connectionContainer\n (click)=\"_control.onContainerClick($event)\">\n\n <!-- Outline used for outline appearance. -->\n <ng-container *ngIf=\"appearance == 'outline'\">\n <div class=\"mat-form-field-outline\">\n <div class=\"mat-form-field-outline-start\"></div>\n <div class=\"mat-form-field-outline-gap\"></div>\n <div class=\"mat-form-field-outline-end\"></div>\n </div>\n <div class=\"mat-form-field-outline mat-form-field-outline-thick\">\n <div class=\"mat-form-field-outline-start\"></div>\n <div class=\"mat-form-field-outline-gap\"></div>\n <div class=\"mat-form-field-outline-end\"></div>\n </div>\n </ng-container>\n\n <div\n class=\"mat-form-field-prefix\"\n *ngIf=\"_prefixChildren.length\"\n (cdkObserveContent)=\"updateOutlineGap()\"\n [cdkObserveContentDisabled]=\"appearance != 'outline'\">\n <ng-content select=\"[matPrefix]\"></ng-content>\n </div>\n\n <div class=\"mat-form-field-infix\" #inputContainer>\n <ng-content></ng-content>\n\n <span class=\"mat-form-field-label-wrapper\">\n <!-- We add aria-owns as a workaround for an issue in JAWS & NVDA where the label isn't\n read if it comes before the control in the DOM. -->\n <label class=\"mat-form-field-label\"\n (cdkObserveContent)=\"updateOutlineGap()\"\n [cdkObserveContentDisabled]=\"appearance != 'outline'\"\n [id]=\"_labelId\"\n [attr.for]=\"_control.id\"\n [attr.aria-owns]=\"_control.id\"\n [class.mat-empty]=\"_control.empty && !_shouldAlwaysFloat()\"\n [class.mat-form-field-empty]=\"_control.empty && !_shouldAlwaysFloat()\"\n [class.mat-accent]=\"color == 'accent'\"\n [class.mat-warn]=\"color == 'warn'\"\n #label\n *ngIf=\"_hasFloatingLabel()\"\n [ngSwitch]=\"_hasLabel()\">\n\n <!-- @breaking-change 8.0.0 remove in favor of mat-label element an placeholder attr. -->\n <ng-container *ngSwitchCase=\"false\">\n <ng-content select=\"mat-placeholder\"></ng-content>\n <span>{{_control.placeholder}}</span>\n </ng-container>\n\n <ng-content select=\"mat-label\" *ngSwitchCase=\"true\"></ng-content>\n\n <!-- @breaking-change 8.0.0 remove `mat-placeholder-required` class -->\n <span\n class=\"mat-placeholder-required mat-form-field-required-marker\"\n aria-hidden=\"true\"\n *ngIf=\"!hideRequiredMarker && _control.required && !_control.disabled\">&#32;*</span>\n </label>\n </span>\n </div>\n\n <div class=\"mat-form-field-suffix\" *ngIf=\"_suffixChildren.length\">\n <ng-content select=\"[matSuffix]\"></ng-content>\n </div>\n </div>\n\n <!-- Underline used for legacy, standard, and box appearances. -->\n <div class=\"mat-form-field-underline\"\n *ngIf=\"appearance != 'outline'\">\n <span class=\"mat-form-field-ripple\"\n [class.mat-accent]=\"color == 'accent'\"\n [class.mat-warn]=\"color == 'warn'\"></span>\n </div>\n\n <div class=\"mat-form-field-subscript-wrapper\"\n [ngSwitch]=\"_getDisplayedMessages()\">\n <div *ngSwitchCase=\"'error'\" [@transitionMessages]=\"_subscriptAnimationState\">\n <ng-content select=\"mat-error\"></ng-content>\n </div>\n\n <div class=\"mat-form-field-hint-wrapper\" *ngSwitchCase=\"'hint'\"\n [@transitionMessages]=\"_subscriptAnimationState\">\n <!-- TODO(mmalerba): use an actual <mat-hint> once all selectors are switched to mat-* -->\n <div *ngIf=\"hintLabel\" [id]=\"_hintLabelId\" class=\"mat-hint\">{{hintLabel}}</div>\n <ng-content select=\"mat-hint:not([align='end'])\"></ng-content>\n <div class=\"mat-form-field-hint-spacer\"></div>\n <ng-content select=\"mat-hint[align='end']\"></ng-content>\n </div>\n </div>\n</div>\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 {Directive} from '@angular/core';\nimport {MAT_PREFIX} from '@angular/material/form-field';\n\n/**\n * Prefix to be placed in front of the form field.\n * @deprecated Use `MatPrefix` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: '[matPrefix]',\n providers: [{provide: MAT_PREFIX, useExisting: MatLegacyPrefix}],\n})\nexport class MatLegacyPrefix {}\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 {Directive} from '@angular/core';\nimport {MAT_SUFFIX} from '@angular/material/form-field';\n\n/**\n * Suffix to be placed at the end of the form field.\n * @deprecated Use `MatSuffix` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: '[matSuffix]',\n providers: [{provide: MAT_SUFFIX, useExisting: MatLegacySuffix}],\n})\nexport class MatLegacySuffix {}\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 {ObserversModule} from '@angular/cdk/observers';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatLegacyError} from './error';\nimport {MatLegacyFormField} from './form-field';\nimport {MatLegacyHint} from './hint';\nimport {MatLegacyLabel} from './label';\nimport {MatLegacyPlaceholder} from './placeholder';\nimport {MatLegacyPrefix} from './prefix';\nimport {MatLegacySuffix} from './suffix';\n\n/**\n * @deprecated Use `MatFormFieldModule` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@NgModule({\n declarations: [\n MatLegacyError,\n MatLegacyFormField,\n MatLegacyHint,\n MatLegacyLabel,\n MatLegacyPlaceholder,\n MatLegacyPrefix,\n MatLegacySuffix,\n ],\n imports: [CommonModule, MatCommonModule, ObserversModule],\n exports: [\n MatCommonModule,\n MatLegacyError,\n MatLegacyFormField,\n MatLegacyHint,\n MatLegacyLabel,\n MatLegacyPlaceholder,\n MatLegacyPrefix,\n MatLegacySuffix,\n ],\n})\nexport class MatLegacyFormFieldModule {}\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 {MatLegacyFormFieldModule} from './form-field-module';\nexport {MatLegacyError} from './error';\nexport {\n MatLegacyFormFieldAppearance,\n LegacyFloatLabelType,\n MatLegacyFormFieldDefaultOptions,\n MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS,\n MatLegacyFormField,\n} from './form-field';\nexport {_MAT_LEGACY_HINT, MatLegacyHint} from './hint';\nexport {MatLegacyPlaceholder} from './placeholder';\nexport {MatLegacyPrefix} from './prefix';\nexport {MatLegacySuffix} from './suffix';\nexport {MatLegacyLabel} from './label';\n\nexport {\n /**\n * @deprecated Use `MAT_FORM_FIELD` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MAT_FORM_FIELD as MAT_LEGACY_FORM_FIELD,\n\n /**\n * @deprecated Use `MatFormFieldControl` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MatFormFieldControl as MatLegacyFormFieldControl,\n\n /**\n * @deprecated Use `getMatFormFieldDuplicatedHintError` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n getMatFormFieldDuplicatedHintError as getMatLegacyFormFieldDuplicatedHintError,\n\n /**\n * @deprecated Use `getMatFormFieldMissingControlError` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n getMatFormFieldMissingControlError as getMatLegacyFormFieldMissingControlError,\n\n /**\n * @deprecated Use `getMatFormFieldPlaceholderConflictError` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n getMatFormFieldPlaceholderConflictError as getMatLegacyFormFieldPlaceholderConflictError,\n\n /**\n * @deprecated Use `matFormFieldAnimations` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n matFormFieldAnimations as matLegacyFormFieldAnimations,\n\n /**\n * @deprecated Use `MAT_SUFFIX` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MAT_SUFFIX as MAT_LEGACY_SUFFIX,\n\n /**\n * @deprecated Use `MAT_ERROR` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MAT_ERROR as MAT_LEGACY_ERROR,\n\n /**\n * @deprecated Use `MAT_PREFIX` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MAT_PREFIX as MAT_LEGACY_PREFIX,\n} from '@angular/material/form-field';\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":["nextUniqueId"],"mappings":"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"}
1
+ {"version":3,"file":"legacy-form-field.mjs","sources":["../../../../../../src/material/legacy-form-field/error.ts","../../../../../../src/material/legacy-form-field/hint.ts","../../../../../../src/material/legacy-form-field/label.ts","../../../../../../src/material/legacy-form-field/placeholder.ts","../../../../../../src/material/legacy-form-field/form-field.ts","../../../../../../src/material/legacy-form-field/form-field.html","../../../../../../src/material/legacy-form-field/prefix.ts","../../../../../../src/material/legacy-form-field/suffix.ts","../../../../../../src/material/legacy-form-field/form-field-module.ts","../../../../../../src/material/legacy-form-field/legacy-form-field_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 {Attribute, Directive, ElementRef, Input} from '@angular/core';\nimport {MAT_ERROR} from '@angular/material/form-field';\n\nlet nextUniqueId = 0;\n\n/**\n * Single error message to be shown underneath the form field.\n * @deprecated Use `MatError` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: 'mat-error',\n host: {\n 'class': 'mat-error',\n '[attr.id]': 'id',\n 'aria-atomic': 'true',\n },\n providers: [{provide: MAT_ERROR, useExisting: MatLegacyError}],\n})\nexport class MatLegacyError {\n @Input() id: string = `mat-error-${nextUniqueId++}`;\n\n constructor(@Attribute('aria-live') ariaLive: string, elementRef: ElementRef) {\n // If no aria-live value is set add 'polite' as a default. This is preferred over setting\n // role='alert' so that screen readers do not interrupt the current task to read this aloud.\n if (!ariaLive) {\n elementRef.nativeElement.setAttribute('aria-live', 'polite');\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 {Directive, InjectionToken, Input} from '@angular/core';\n\nlet nextUniqueId = 0;\n\n/**\n * Injection token that can be used to reference instances of `MatHint`. It serves as\n * alternative token to the actual `MatHint` class which could cause unnecessary\n * retention of the class and its directive metadata.\n *\n * *Note*: This is not part of the public API as the MDC-based form-field will not\n * need a lightweight token for `MatHint` and we want to reduce breaking changes.\n *\n * @deprecated Use `_MAT_HINT` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport const _MAT_LEGACY_HINT = new InjectionToken<MatLegacyHint>('MatHint');\n\n/**\n * Hint text to be shown underneath the form field control.\n * @deprecated Use `MatHint` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: 'mat-hint',\n host: {\n 'class': 'mat-hint',\n '[class.mat-form-field-hint-end]': 'align === \"end\"',\n '[attr.id]': 'id',\n // Remove align attribute to prevent it from interfering with layout.\n '[attr.align]': 'null',\n },\n providers: [{provide: _MAT_LEGACY_HINT, useExisting: MatLegacyHint}],\n})\nexport class MatLegacyHint {\n /** Whether to align the hint label at the start or end of the line. */\n @Input() align: 'start' | 'end' = 'start';\n\n /** Unique ID for the hint. Used for the aria-describedby on the form field control. */\n @Input() id: string = `mat-hint-${nextUniqueId++}`;\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 {Directive} from '@angular/core';\n\n/**\n * The floating label for a `mat-form-field`.\n * @deprecated Use `MatLabel` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: 'mat-label',\n})\nexport class MatLegacyLabel {}\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 {Directive} from '@angular/core';\n\n/**\n * The placeholder text for an `MatFormField`.\n * @deprecated Use `<mat-label>` to specify the label and the `placeholder` attribute to specify the\n * placeholder.\n * @breaking-change 8.0.0\n */\n@Directive({\n selector: 'mat-placeholder',\n})\nexport class MatLegacyPlaceholder {}\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 {Directionality} from '@angular/cdk/bidi';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {\n AfterContentChecked,\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n Inject,\n Input,\n NgZone,\n Optional,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n OnDestroy,\n InjectionToken,\n} from '@angular/core';\nimport {CanColor, mixinColor, ThemePalette} from '@angular/material/core';\nimport {fromEvent, merge, Subject} from 'rxjs';\nimport {startWith, take, takeUntil} from 'rxjs/operators';\nimport {MatLegacyError} from './error';\nimport {_MAT_LEGACY_HINT, MatLegacyHint} from './hint';\nimport {MatLegacyLabel} from './label';\nimport {MatLegacyPlaceholder} from './placeholder';\nimport {MatLegacyPrefix} from './prefix';\nimport {MatLegacySuffix} from './suffix';\nimport {Platform} from '@angular/cdk/platform';\nimport {AbstractControlDirective} from '@angular/forms';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n getMatFormFieldDuplicatedHintError,\n getMatFormFieldMissingControlError,\n getMatFormFieldPlaceholderConflictError,\n matFormFieldAnimations,\n MatFormFieldControl,\n MAT_ERROR,\n MAT_FORM_FIELD,\n MAT_PREFIX,\n MAT_SUFFIX,\n} from '@angular/material/form-field';\n\nlet nextUniqueId = 0;\nconst floatingLabelScale = 0.75;\nconst outlineGapPadding = 5;\n\n/**\n * Boilerplate for applying mixins to MatFormField.\n * @docs-private\n */\nconst _MatFormFieldBase = mixinColor(\n class {\n constructor(public _elementRef: ElementRef) {}\n },\n 'primary',\n);\n\n/**\n * Possible appearance styles for the form field.\n * @deprecated Use `MatFormFieldAppearance` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport type MatLegacyFormFieldAppearance = 'legacy' | 'standard' | 'fill' | 'outline';\n\n/**\n * Possible values for the \"floatLabel\" form field input.\n * @deprecated Use `FloatLabelType` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport type LegacyFloatLabelType = 'always' | 'never' | 'auto';\n\n/**\n * Represents the default options for the form field that can be configured\n * using the `MAT_FORM_FIELD_DEFAULT_OPTIONS` injection token.\n * @deprecated Use `MatFormFieldDefaultOptions` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport interface MatLegacyFormFieldDefaultOptions {\n /** Default form field appearance style. */\n appearance?: MatLegacyFormFieldAppearance;\n /** Default color of the form field. */\n color?: ThemePalette;\n /** Whether the required marker should be hidden by default. */\n hideRequiredMarker?: boolean;\n /**\n * Whether the label for form fields should by default float `always`,\n * `never`, or `auto` (only when necessary).\n */\n floatLabel?: LegacyFloatLabelType;\n}\n\n/**\n * Injection token that can be used to configure the\n * default options for all form field within an app.\n * @deprecated Use `MAT_FORM_FIELD_DEFAULT_OPTIONS` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport const MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS =\n new InjectionToken<MatLegacyFormFieldDefaultOptions>('MAT_FORM_FIELD_DEFAULT_OPTIONS');\n\n/**\n * Container for form controls that applies Material Design styling and behavior.\n * @deprecated Use `MatFormField` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Component({\n selector: 'mat-form-field',\n exportAs: 'matFormField',\n templateUrl: 'form-field.html',\n // MatInput is a directive and can't have styles, so we need to include its styles here\n // in form-field-input.css. The MatInput styles are fairly minimal so it shouldn't be a\n // big deal for people who aren't using MatInput.\n styleUrls: [\n 'form-field.css',\n 'form-field-fill.css',\n 'form-field-input.css',\n 'form-field-legacy.css',\n 'form-field-outline.css',\n 'form-field-standard.css',\n ],\n animations: [matFormFieldAnimations.transitionMessages],\n host: {\n 'class': 'mat-form-field',\n '[class.mat-form-field-appearance-standard]': 'appearance == \"standard\"',\n '[class.mat-form-field-appearance-fill]': 'appearance == \"fill\"',\n '[class.mat-form-field-appearance-outline]': 'appearance == \"outline\"',\n '[class.mat-form-field-appearance-legacy]': 'appearance == \"legacy\"',\n '[class.mat-form-field-invalid]': '_control.errorState',\n '[class.mat-form-field-can-float]': '_canLabelFloat()',\n '[class.mat-form-field-should-float]': '_shouldLabelFloat()',\n '[class.mat-form-field-has-label]': '_hasFloatingLabel()',\n '[class.mat-form-field-hide-placeholder]': '_hideControlPlaceholder()',\n '[class.mat-form-field-disabled]': '_control.disabled',\n '[class.mat-form-field-autofilled]': '_control.autofilled',\n '[class.mat-focused]': '_control.focused',\n '[class.ng-untouched]': '_shouldForward(\"untouched\")',\n '[class.ng-touched]': '_shouldForward(\"touched\")',\n '[class.ng-pristine]': '_shouldForward(\"pristine\")',\n '[class.ng-dirty]': '_shouldForward(\"dirty\")',\n '[class.ng-valid]': '_shouldForward(\"valid\")',\n '[class.ng-invalid]': '_shouldForward(\"invalid\")',\n '[class.ng-pending]': '_shouldForward(\"pending\")',\n '[class._mat-animation-noopable]': '!_animationsEnabled',\n 'ngSkipHydration': 'true',\n },\n inputs: ['color'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{provide: MAT_FORM_FIELD, useExisting: MatLegacyFormField}],\n})\nexport class MatLegacyFormField\n extends _MatFormFieldBase\n implements AfterContentInit, AfterContentChecked, AfterViewInit, OnDestroy, CanColor\n{\n /**\n * Whether the outline gap needs to be calculated\n * immediately on the next change detection run.\n */\n private _outlineGapCalculationNeededImmediately = false;\n\n /** Whether the outline gap needs to be calculated next time the zone has stabilized. */\n private _outlineGapCalculationNeededOnStable = false;\n\n private readonly _destroyed = new Subject<void>();\n\n /** The form field appearance style. */\n @Input()\n get appearance(): MatLegacyFormFieldAppearance {\n return this._appearance;\n }\n set appearance(value: MatLegacyFormFieldAppearance) {\n const oldValue = this._appearance;\n\n this._appearance = value || this._defaults?.appearance || 'legacy';\n\n if (this._appearance === 'outline' && oldValue !== value) {\n this._outlineGapCalculationNeededOnStable = true;\n }\n }\n _appearance: MatLegacyFormFieldAppearance;\n\n /** Whether the required marker should be hidden. */\n @Input()\n get hideRequiredMarker(): boolean {\n return this._hideRequiredMarker;\n }\n set hideRequiredMarker(value: BooleanInput) {\n this._hideRequiredMarker = coerceBooleanProperty(value);\n }\n private _hideRequiredMarker = false;\n\n /** Override for the logic that disables the label animation in certain cases. */\n private _showAlwaysAnimate = false;\n\n /** Whether the floating label should always float or not. */\n _shouldAlwaysFloat(): boolean {\n return this.floatLabel === 'always' && !this._showAlwaysAnimate;\n }\n\n /** Whether the label can float or not. */\n _canLabelFloat(): boolean {\n return this.floatLabel !== 'never';\n }\n\n /** State of the mat-hint and mat-error animations. */\n _subscriptAnimationState: string = '';\n\n /** Text for the form field hint. */\n @Input()\n get hintLabel(): string {\n return this._hintLabel;\n }\n set hintLabel(value: string) {\n this._hintLabel = value;\n this._processHints();\n }\n private _hintLabel = '';\n\n // Unique id for the hint label.\n readonly _hintLabelId: string = `mat-hint-${nextUniqueId++}`;\n\n // Unique id for the label element.\n readonly _labelId = `mat-form-field-label-${nextUniqueId++}`;\n\n /**\n * Whether the label should always float, never float or float as the user types.\n *\n * Note: only the legacy appearance supports the `never` option. `never` was originally added as a\n * way to make the floating label emulate the behavior of a standard input placeholder. However\n * the form field now supports both floating labels and placeholders. Therefore in the non-legacy\n * appearances the `never` option has been disabled in favor of just using the placeholder.\n */\n @Input()\n get floatLabel(): LegacyFloatLabelType {\n return this.appearance !== 'legacy' && this._floatLabel === 'never' ? 'auto' : this._floatLabel;\n }\n set floatLabel(value: LegacyFloatLabelType) {\n if (value !== this._floatLabel) {\n this._floatLabel = value || this._getDefaultFloatLabelState();\n this._changeDetectorRef.markForCheck();\n }\n }\n private _floatLabel: LegacyFloatLabelType;\n\n /** Whether the Angular animations are enabled. */\n _animationsEnabled: boolean;\n\n @ViewChild('connectionContainer', {static: true}) _connectionContainerRef: ElementRef;\n @ViewChild('inputContainer') _inputContainerRef: ElementRef;\n @ViewChild('label') private _label: ElementRef<HTMLElement>;\n\n @ContentChild(MatFormFieldControl) _controlNonStatic: MatFormFieldControl<any>;\n @ContentChild(MatFormFieldControl, {static: true}) _controlStatic: MatFormFieldControl<any>;\n get _control() {\n // TODO(crisbeto): we need this workaround in order to support both Ivy and ViewEngine.\n // We should clean this up once Ivy is the default renderer.\n return this._explicitFormFieldControl || this._controlNonStatic || this._controlStatic;\n }\n set _control(value) {\n this._explicitFormFieldControl = value;\n }\n private _explicitFormFieldControl: MatFormFieldControl<any>;\n\n @ContentChild(MatLegacyLabel) _labelChildNonStatic: MatLegacyLabel;\n @ContentChild(MatLegacyLabel, {static: true}) _labelChildStatic: MatLegacyLabel;\n @ContentChild(MatLegacyPlaceholder) _placeholderChild: MatLegacyPlaceholder;\n\n @ContentChildren(MAT_ERROR, {descendants: true}) _errorChildren: QueryList<MatLegacyError>;\n @ContentChildren(_MAT_LEGACY_HINT, {descendants: true}) _hintChildren: QueryList<MatLegacyHint>;\n @ContentChildren(MAT_PREFIX, {descendants: true})\n _prefixChildren: QueryList<MatLegacyPrefix>;\n @ContentChildren(MAT_SUFFIX, {descendants: true})\n _suffixChildren: QueryList<MatLegacySuffix>;\n\n constructor(\n elementRef: ElementRef,\n private _changeDetectorRef: ChangeDetectorRef,\n @Optional() private _dir: Directionality,\n @Optional()\n @Inject(MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS)\n private _defaults: MatLegacyFormFieldDefaultOptions,\n private _platform: Platform,\n private _ngZone: NgZone,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) _animationMode: string,\n ) {\n super(elementRef);\n\n this.floatLabel = this._getDefaultFloatLabelState();\n this._animationsEnabled = _animationMode !== 'NoopAnimations';\n\n // Set the default through here so we invoke the setter on the first run.\n this.appearance = _defaults?.appearance || 'legacy';\n if (_defaults) {\n this._hideRequiredMarker = Boolean(_defaults.hideRequiredMarker);\n if (_defaults.color) {\n this.color = this.defaultColor = _defaults.color;\n }\n }\n }\n\n /**\n * Gets the id of the label element. If no label is present, returns `null`.\n */\n getLabelId(): string | null {\n return this._hasFloatingLabel() ? this._labelId : null;\n }\n\n /**\n * Gets an ElementRef for the element that a overlay attached to the form field should be\n * positioned relative to.\n */\n getConnectedOverlayOrigin(): ElementRef {\n return this._connectionContainerRef || this._elementRef;\n }\n\n ngAfterContentInit() {\n this._validateControlChild();\n\n const control = this._control;\n\n if (control.controlType) {\n this._elementRef.nativeElement.classList.add(`mat-form-field-type-${control.controlType}`);\n }\n\n // Subscribe to changes in the child control state in order to update the form field UI.\n control.stateChanges.pipe(startWith(null)).subscribe(() => {\n this._validatePlaceholders();\n this._syncDescribedByIds();\n this._changeDetectorRef.markForCheck();\n });\n\n // Run change detection if the value changes.\n if (control.ngControl && control.ngControl.valueChanges) {\n control.ngControl.valueChanges\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._changeDetectorRef.markForCheck());\n }\n\n // Note that we have to run outside of the `NgZone` explicitly,\n // in order to avoid throwing users into an infinite loop\n // if `zone-patch-rxjs` is included.\n this._ngZone.runOutsideAngular(() => {\n this._ngZone.onStable.pipe(takeUntil(this._destroyed)).subscribe(() => {\n if (this._outlineGapCalculationNeededOnStable) {\n this.updateOutlineGap();\n }\n });\n });\n\n // Run change detection and update the outline if the suffix or prefix changes.\n merge(this._prefixChildren.changes, this._suffixChildren.changes).subscribe(() => {\n this._outlineGapCalculationNeededOnStable = true;\n this._changeDetectorRef.markForCheck();\n });\n\n // Re-validate when the number of hints changes.\n this._hintChildren.changes.pipe(startWith(null)).subscribe(() => {\n this._processHints();\n this._changeDetectorRef.markForCheck();\n });\n\n // Update the aria-described by when the number of errors changes.\n this._errorChildren.changes.pipe(startWith(null)).subscribe(() => {\n this._syncDescribedByIds();\n this._changeDetectorRef.markForCheck();\n });\n\n if (this._dir) {\n this._dir.change.pipe(takeUntil(this._destroyed)).subscribe(() => {\n if (typeof requestAnimationFrame === 'function') {\n this._ngZone.runOutsideAngular(() => {\n requestAnimationFrame(() => this.updateOutlineGap());\n });\n } else {\n this.updateOutlineGap();\n }\n });\n }\n }\n\n ngAfterContentChecked() {\n this._validateControlChild();\n if (this._outlineGapCalculationNeededImmediately) {\n this.updateOutlineGap();\n }\n }\n\n ngAfterViewInit() {\n // Avoid animations on load.\n this._subscriptAnimationState = 'enter';\n this._changeDetectorRef.detectChanges();\n }\n\n ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /**\n * Determines whether a class from the AbstractControlDirective\n * should be forwarded to the host element.\n */\n _shouldForward(prop: keyof AbstractControlDirective): boolean {\n const control = this._control ? this._control.ngControl : null;\n return control && control[prop];\n }\n\n _hasPlaceholder() {\n return !!((this._control && this._control.placeholder) || this._placeholderChild);\n }\n\n _hasLabel() {\n return !!(this._labelChildNonStatic || this._labelChildStatic);\n }\n\n _shouldLabelFloat() {\n return (\n this._canLabelFloat() &&\n ((this._control && this._control.shouldLabelFloat) || this._shouldAlwaysFloat())\n );\n }\n\n _hideControlPlaceholder() {\n // In the legacy appearance the placeholder is promoted to a label if no label is given.\n return (\n (this.appearance === 'legacy' && !this._hasLabel()) ||\n (this._hasLabel() && !this._shouldLabelFloat())\n );\n }\n\n _hasFloatingLabel() {\n // In the legacy appearance the placeholder is promoted to a label if no label is given.\n return this._hasLabel() || (this.appearance === 'legacy' && this._hasPlaceholder());\n }\n\n /** Determines whether to display hints or errors. */\n _getDisplayedMessages(): 'error' | 'hint' {\n return this._errorChildren && this._errorChildren.length > 0 && this._control.errorState\n ? 'error'\n : 'hint';\n }\n\n /** Animates the placeholder up and locks it in position. */\n _animateAndLockLabel(): void {\n if (this._hasFloatingLabel() && this._canLabelFloat()) {\n // If animations are disabled, we shouldn't go in here,\n // because the `transitionend` will never fire.\n if (this._animationsEnabled && this._label) {\n this._showAlwaysAnimate = true;\n\n fromEvent(this._label.nativeElement, 'transitionend')\n .pipe(take(1))\n .subscribe(() => {\n this._showAlwaysAnimate = false;\n });\n }\n\n this.floatLabel = 'always';\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /**\n * Ensure that there is only one placeholder (either `placeholder` attribute on the child control\n * or child element with the `mat-placeholder` directive).\n */\n private _validatePlaceholders() {\n if (\n this._control.placeholder &&\n this._placeholderChild &&\n (typeof ngDevMode === 'undefined' || ngDevMode)\n ) {\n throw getMatFormFieldPlaceholderConflictError();\n }\n }\n\n /** Does any extra processing that is required when handling the hints. */\n private _processHints() {\n this._validateHints();\n this._syncDescribedByIds();\n }\n\n /**\n * Ensure that there is a maximum of one of each `<mat-hint>` alignment specified, with the\n * attribute being considered as `align=\"start\"`.\n */\n private _validateHints() {\n if (this._hintChildren && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n let startHint: MatLegacyHint;\n let endHint: MatLegacyHint;\n this._hintChildren.forEach((hint: MatLegacyHint) => {\n if (hint.align === 'start') {\n if (startHint || this.hintLabel) {\n throw getMatFormFieldDuplicatedHintError('start');\n }\n startHint = hint;\n } else if (hint.align === 'end') {\n if (endHint) {\n throw getMatFormFieldDuplicatedHintError('end');\n }\n endHint = hint;\n }\n });\n }\n }\n\n /** Gets the default float label state. */\n private _getDefaultFloatLabelState(): LegacyFloatLabelType {\n return (this._defaults && this._defaults.floatLabel) || 'auto';\n }\n\n /**\n * Sets the list of element IDs that describe the child control. This allows the control to update\n * its `aria-describedby` attribute accordingly.\n */\n private _syncDescribedByIds() {\n if (this._control) {\n let ids: string[] = [];\n\n // TODO(wagnermaciel): Remove the type check when we find the root cause of this bug.\n if (\n this._control.userAriaDescribedBy &&\n typeof this._control.userAriaDescribedBy === 'string'\n ) {\n ids.push(...this._control.userAriaDescribedBy.split(' '));\n }\n\n if (this._getDisplayedMessages() === 'hint') {\n const startHint = this._hintChildren\n ? this._hintChildren.find(hint => hint.align === 'start')\n : null;\n const endHint = this._hintChildren\n ? this._hintChildren.find(hint => hint.align === 'end')\n : null;\n\n if (startHint) {\n ids.push(startHint.id);\n } else if (this._hintLabel) {\n ids.push(this._hintLabelId);\n }\n\n if (endHint) {\n ids.push(endHint.id);\n }\n } else if (this._errorChildren) {\n ids.push(...this._errorChildren.map(error => error.id));\n }\n\n this._control.setDescribedByIds(ids);\n }\n }\n\n /** Throws an error if the form field's control is missing. */\n protected _validateControlChild() {\n if (!this._control && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw getMatFormFieldMissingControlError();\n }\n }\n\n /**\n * Updates the width and position of the gap in the outline. Only relevant for the outline\n * appearance.\n */\n updateOutlineGap() {\n const labelEl = this._label ? this._label.nativeElement : null;\n const container = this._connectionContainerRef.nativeElement;\n const outlineStartSelector = '.mat-form-field-outline-start';\n const outlineGapSelector = '.mat-form-field-outline-gap';\n\n // getBoundingClientRect isn't available on the server.\n if (this.appearance !== 'outline' || !this._platform.isBrowser) {\n return;\n }\n\n // If there is no content, set the gap elements to zero.\n if (!labelEl || !labelEl.children.length || !labelEl.textContent!.trim()) {\n const gapElements = container.querySelectorAll(\n `${outlineStartSelector}, ${outlineGapSelector}`,\n );\n for (let i = 0; i < gapElements.length; i++) {\n gapElements[i].style.width = '0';\n }\n return;\n }\n\n // If the element is not present in the DOM, the outline gap will need to be calculated\n // the next time it is checked and in the DOM.\n if (!this._isAttachedToDOM()) {\n this._outlineGapCalculationNeededImmediately = true;\n return;\n }\n\n let startWidth = 0;\n let gapWidth = 0;\n\n const startEls = container.querySelectorAll(outlineStartSelector);\n const gapEls = container.querySelectorAll(outlineGapSelector);\n\n if (this._label && this._label.nativeElement.children.length) {\n const containerRect = container.getBoundingClientRect();\n\n // If the container's width and height are zero, it means that the element is\n // invisible and we can't calculate the outline gap. Mark the element as needing\n // to be checked the next time the zone stabilizes. We can't do this immediately\n // on the next change detection, because even if the element becomes visible,\n // the `ClientRect` won't be recalculated immediately. We reset the\n // `_outlineGapCalculationNeededImmediately` flag some we don't run the checks twice.\n if (containerRect.width === 0 && containerRect.height === 0) {\n this._outlineGapCalculationNeededOnStable = true;\n this._outlineGapCalculationNeededImmediately = false;\n return;\n }\n\n const containerStart = this._getStartEnd(containerRect);\n const labelChildren = labelEl.children;\n const labelStart = this._getStartEnd(labelChildren[0].getBoundingClientRect());\n let labelWidth = 0;\n\n for (let i = 0; i < labelChildren.length; i++) {\n labelWidth += (labelChildren[i] as HTMLElement).offsetWidth;\n }\n startWidth = Math.abs(labelStart - containerStart) - outlineGapPadding;\n gapWidth = labelWidth > 0 ? labelWidth * floatingLabelScale + outlineGapPadding * 2 : 0;\n }\n\n for (let i = 0; i < startEls.length; i++) {\n startEls[i].style.width = `${startWidth}px`;\n }\n for (let i = 0; i < gapEls.length; i++) {\n gapEls[i].style.width = `${gapWidth}px`;\n }\n\n this._outlineGapCalculationNeededOnStable = this._outlineGapCalculationNeededImmediately =\n false;\n }\n\n /** Gets the start end of the rect considering the current directionality. */\n private _getStartEnd(rect: ClientRect): number {\n return this._dir && this._dir.value === 'rtl' ? rect.right : rect.left;\n }\n\n /** Checks whether the form field is attached to the DOM. */\n private _isAttachedToDOM(): boolean {\n const element: HTMLElement = this._elementRef.nativeElement;\n\n if (element.getRootNode) {\n const rootNode = element.getRootNode();\n // If the element is inside the DOM the root node will be either the document\n // or the closest shadow root, otherwise it'll be the element itself.\n return rootNode && rootNode !== element;\n }\n\n // Otherwise fall back to checking if it's in the document. This doesn't account for\n // shadow DOM, however browser that support shadow DOM should support `getRootNode` as well.\n return document.documentElement!.contains(element);\n }\n}\n","<div class=\"mat-form-field-wrapper\">\n <div class=\"mat-form-field-flex\" #connectionContainer\n (click)=\"_control.onContainerClick($event)\">\n\n <!-- Outline used for outline appearance. -->\n <ng-container *ngIf=\"appearance == 'outline'\">\n <div class=\"mat-form-field-outline\">\n <div class=\"mat-form-field-outline-start\"></div>\n <div class=\"mat-form-field-outline-gap\"></div>\n <div class=\"mat-form-field-outline-end\"></div>\n </div>\n <div class=\"mat-form-field-outline mat-form-field-outline-thick\">\n <div class=\"mat-form-field-outline-start\"></div>\n <div class=\"mat-form-field-outline-gap\"></div>\n <div class=\"mat-form-field-outline-end\"></div>\n </div>\n </ng-container>\n\n <div\n class=\"mat-form-field-prefix\"\n *ngIf=\"_prefixChildren.length\"\n (cdkObserveContent)=\"updateOutlineGap()\"\n [cdkObserveContentDisabled]=\"appearance != 'outline'\">\n <ng-content select=\"[matPrefix]\"></ng-content>\n </div>\n\n <div class=\"mat-form-field-infix\" #inputContainer>\n <ng-content></ng-content>\n\n <span class=\"mat-form-field-label-wrapper\">\n <!-- We add aria-owns as a workaround for an issue in JAWS & NVDA where the label isn't\n read if it comes before the control in the DOM. -->\n <label class=\"mat-form-field-label\"\n (cdkObserveContent)=\"updateOutlineGap()\"\n [cdkObserveContentDisabled]=\"appearance != 'outline'\"\n [id]=\"_labelId\"\n [attr.for]=\"_control.id\"\n [attr.aria-owns]=\"_control.id\"\n [class.mat-empty]=\"_control.empty && !_shouldAlwaysFloat()\"\n [class.mat-form-field-empty]=\"_control.empty && !_shouldAlwaysFloat()\"\n [class.mat-accent]=\"color == 'accent'\"\n [class.mat-warn]=\"color == 'warn'\"\n #label\n *ngIf=\"_hasFloatingLabel()\"\n [ngSwitch]=\"_hasLabel()\">\n\n <!-- @breaking-change 8.0.0 remove in favor of mat-label element an placeholder attr. -->\n <ng-container *ngSwitchCase=\"false\">\n <ng-content select=\"mat-placeholder\"></ng-content>\n <span>{{_control.placeholder}}</span>\n </ng-container>\n\n <ng-content select=\"mat-label\" *ngSwitchCase=\"true\"></ng-content>\n\n <!-- @breaking-change 8.0.0 remove `mat-placeholder-required` class -->\n <span\n class=\"mat-placeholder-required mat-form-field-required-marker\"\n aria-hidden=\"true\"\n *ngIf=\"!hideRequiredMarker && _control.required && !_control.disabled\">&#32;*</span>\n </label>\n </span>\n </div>\n\n <div class=\"mat-form-field-suffix\" *ngIf=\"_suffixChildren.length\">\n <ng-content select=\"[matSuffix]\"></ng-content>\n </div>\n </div>\n\n <!-- Underline used for legacy, standard, and box appearances. -->\n <div class=\"mat-form-field-underline\"\n *ngIf=\"appearance != 'outline'\">\n <span class=\"mat-form-field-ripple\"\n [class.mat-accent]=\"color == 'accent'\"\n [class.mat-warn]=\"color == 'warn'\"></span>\n </div>\n\n <div class=\"mat-form-field-subscript-wrapper\"\n [ngSwitch]=\"_getDisplayedMessages()\">\n <div *ngSwitchCase=\"'error'\" [@transitionMessages]=\"_subscriptAnimationState\">\n <ng-content select=\"mat-error\"></ng-content>\n </div>\n\n <div class=\"mat-form-field-hint-wrapper\" *ngSwitchCase=\"'hint'\"\n [@transitionMessages]=\"_subscriptAnimationState\">\n <!-- TODO(mmalerba): use an actual <mat-hint> once all selectors are switched to mat-* -->\n <div *ngIf=\"hintLabel\" [id]=\"_hintLabelId\" class=\"mat-hint\">{{hintLabel}}</div>\n <ng-content select=\"mat-hint:not([align='end'])\"></ng-content>\n <div class=\"mat-form-field-hint-spacer\"></div>\n <ng-content select=\"mat-hint[align='end']\"></ng-content>\n </div>\n </div>\n</div>\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 {Directive} from '@angular/core';\nimport {MAT_PREFIX} from '@angular/material/form-field';\n\n/**\n * Prefix to be placed in front of the form field.\n * @deprecated Use `MatPrefix` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: '[matPrefix]',\n providers: [{provide: MAT_PREFIX, useExisting: MatLegacyPrefix}],\n})\nexport class MatLegacyPrefix {}\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 {Directive} from '@angular/core';\nimport {MAT_SUFFIX} from '@angular/material/form-field';\n\n/**\n * Suffix to be placed at the end of the form field.\n * @deprecated Use `MatSuffix` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: '[matSuffix]',\n providers: [{provide: MAT_SUFFIX, useExisting: MatLegacySuffix}],\n})\nexport class MatLegacySuffix {}\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 {ObserversModule} from '@angular/cdk/observers';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatLegacyError} from './error';\nimport {MatLegacyFormField} from './form-field';\nimport {MatLegacyHint} from './hint';\nimport {MatLegacyLabel} from './label';\nimport {MatLegacyPlaceholder} from './placeholder';\nimport {MatLegacyPrefix} from './prefix';\nimport {MatLegacySuffix} from './suffix';\n\n/**\n * @deprecated Use `MatFormFieldModule` from `@angular/material/form-field` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@NgModule({\n declarations: [\n MatLegacyError,\n MatLegacyFormField,\n MatLegacyHint,\n MatLegacyLabel,\n MatLegacyPlaceholder,\n MatLegacyPrefix,\n MatLegacySuffix,\n ],\n imports: [CommonModule, MatCommonModule, ObserversModule],\n exports: [\n MatCommonModule,\n MatLegacyError,\n MatLegacyFormField,\n MatLegacyHint,\n MatLegacyLabel,\n MatLegacyPlaceholder,\n MatLegacyPrefix,\n MatLegacySuffix,\n ],\n})\nexport class MatLegacyFormFieldModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["nextUniqueId"],"mappings":"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"}
@@ -1,18 +1,2 @@
1
1
  export { MatInputHarness as MatLegacyInputHarness, MatNativeOptionHarness as MatLegacyNativeOptionHarness, MatNativeSelectHarness as MatLegacyNativeSelectHarness } from '@angular/material/input/testing';
2
-
3
- /**
4
- * @license
5
- * Copyright Google LLC All Rights Reserved.
6
- *
7
- * Use of this source code is governed by an MIT-style license that can be
8
- * found in the LICENSE file at https://angular.io/license
9
- */
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
2
  //# sourceMappingURL=testing.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing.mjs","sources":["../../../../../../../src/material/legacy-input/testing/public-api.ts","../../../../../../../src/material/legacy-input/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\nexport {\n /**\n * @deprecated Use `InputHarnessFilters` from `@angular/material/input/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n InputHarnessFilters as LegacyInputHarnessFilters,\n\n /**\n * @deprecated Use `MatInputHarness` from `@angular/material/input/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MatInputHarness as MatLegacyInputHarness,\n\n /**\n * @deprecated Use `MatNativeSelectHarness` from `@angular/material/input/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MatNativeSelectHarness as MatLegacyNativeSelectHarness,\n\n /**\n * @deprecated Use `MatNativeOptionHarness` from `@angular/material/input/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MatNativeOptionHarness as MatLegacyNativeOptionHarness,\n\n /**\n * @deprecated Use `NativeOptionHarnessFilters` from `@angular/material/input/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n NativeOptionHarnessFilters as LegacyNativeOptionHarnessFilters,\n\n /**\n * @deprecated Use `NativeSelectHarnessFilters` from `@angular/material/input/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n NativeSelectHarnessFilters as LegacyNativeSelectHarnessFilters,\n} from '@angular/material/input/testing';\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":";;AAAA;;;;;;AAMG;;ACNH;;;;;;AAMG"}
1
+ {"version":3,"file":"testing.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -6,13 +6,6 @@ import { MAT_LEGACY_FORM_FIELD, MatLegacyFormFieldControl, MatLegacyFormFieldMod
6
6
  import { TextFieldModule } from '@angular/cdk/text-field';
7
7
  import { MatCommonModule, ErrorStateMatcher } from '@angular/material/core';
8
8
 
9
- /**
10
- * @license
11
- * Copyright Google LLC All Rights Reserved.
12
- *
13
- * Use of this source code is governed by an MIT-style license that can be
14
- * found in the LICENSE file at https://angular.io/license
15
- */
16
9
  /**
17
10
  * Directive that allows a native input to work inside a `MatFormField`.
18
11
  * @deprecated Use `MatInput` from `@angular/material/input` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.
@@ -35,9 +28,9 @@ class MatLegacyInput extends MatInput {
35
28
  : this.placeholder;
36
29
  }
37
30
  }
38
- MatLegacyInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatLegacyInput, deps: null, target: i0.ɵɵFactoryTarget.Directive });
39
- MatLegacyInput.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.2", type: MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl],\n input[matNativeControl], textarea[matNativeControl]", host: { properties: { "class.mat-input-server": "_isServer", "class.mat-mdc-input-element": "false", "class.mat-mdc-form-field-textarea-control": "false", "class.mat-mdc-form-field-input-control": "false", "class.mdc-text-field__input": "false", "class.mat-mdc-native-select-inline": "false", "attr.data-placeholder": "placeholder", "class.mat-native-select-inline": "_isInlineSelect()" }, classAttribute: "mat-input-element mat-form-field-autofill-control" }, providers: [{ provide: MatLegacyFormFieldControl, useExisting: MatLegacyInput }], exportAs: ["matInput"], usesInheritance: true, ngImport: i0 });
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatLegacyInput, decorators: [{
31
+ MatLegacyInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatLegacyInput, deps: null, target: i0.ɵɵFactoryTarget.Directive });
32
+ MatLegacyInput.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-next.7", type: MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl],\n input[matNativeControl], textarea[matNativeControl]", host: { properties: { "class.mat-input-server": "_isServer", "class.mat-mdc-input-element": "false", "class.mat-mdc-form-field-textarea-control": "false", "class.mat-mdc-form-field-input-control": "false", "class.mdc-text-field__input": "false", "class.mat-mdc-native-select-inline": "false", "attr.data-placeholder": "placeholder", "class.mat-native-select-inline": "_isInlineSelect()" }, classAttribute: "mat-input-element mat-form-field-autofill-control" }, providers: [{ provide: MatLegacyFormFieldControl, useExisting: MatLegacyInput }], exportAs: ["matInput"], usesInheritance: true, ngImport: i0 });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatLegacyInput, decorators: [{
41
34
  type: Directive,
42
35
  args: [{
43
36
  selector: `input[matInput], textarea[matInput], select[matNativeControl],
@@ -65,30 +58,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2",
65
58
  }]
66
59
  }] });
67
60
 
68
- /**
69
- * @license
70
- * Copyright Google LLC All Rights Reserved.
71
- *
72
- * Use of this source code is governed by an MIT-style license that can be
73
- * found in the LICENSE file at https://angular.io/license
74
- */
75
61
  /**
76
62
  * @deprecated Use `MatInputModule` from `@angular/material/input` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.
77
63
  * @breaking-change 17.0.0
78
64
  */
79
65
  class MatLegacyInputModule {
80
66
  }
81
- MatLegacyInputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatLegacyInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
82
- MatLegacyInputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatLegacyInputModule, declarations: [MatLegacyInput], imports: [TextFieldModule, MatLegacyFormFieldModule, MatCommonModule], exports: [TextFieldModule,
67
+ MatLegacyInputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatLegacyInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
68
+ MatLegacyInputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatLegacyInputModule, declarations: [MatLegacyInput], imports: [TextFieldModule, MatLegacyFormFieldModule, MatCommonModule], exports: [TextFieldModule,
83
69
  // We re-export the `MatLegacyFormFieldModule` since `MatLegacyInput` will almost always
84
70
  // be used together with `MatLegacyFormField`.
85
71
  MatLegacyFormFieldModule,
86
72
  MatLegacyInput] });
87
- MatLegacyInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatLegacyInputModule, providers: [ErrorStateMatcher], imports: [TextFieldModule, MatLegacyFormFieldModule, MatCommonModule, TextFieldModule,
73
+ MatLegacyInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatLegacyInputModule, providers: [ErrorStateMatcher], imports: [TextFieldModule, MatLegacyFormFieldModule, MatCommonModule, TextFieldModule,
88
74
  // We re-export the `MatLegacyFormFieldModule` since `MatLegacyInput` will almost always
89
75
  // be used together with `MatLegacyFormField`.
90
76
  MatLegacyFormFieldModule] });
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2", ngImport: i0, type: MatLegacyInputModule, decorators: [{
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: MatLegacyInputModule, decorators: [{
92
78
  type: NgModule,
93
79
  args: [{
94
80
  declarations: [MatLegacyInput],
@@ -104,22 +90,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.2",
104
90
  }]
105
91
  }] });
106
92
 
107
- /**
108
- * @license
109
- * Copyright Google LLC All Rights Reserved.
110
- *
111
- * Use of this source code is governed by an MIT-style license that can be
112
- * found in the LICENSE file at https://angular.io/license
113
- */
114
-
115
- /**
116
- * @license
117
- * Copyright Google LLC All Rights Reserved.
118
- *
119
- * Use of this source code is governed by an MIT-style license that can be
120
- * found in the LICENSE file at https://angular.io/license
121
- */
122
-
123
93
  /**
124
94
  * Generated bundle index. Do not edit.
125
95
  */
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-input.mjs","sources":["../../../../../../src/material/legacy-input/input.ts","../../../../../../src/material/legacy-input/input-module.ts","../../../../../../src/material/legacy-input/public-api.ts","../../../../../../src/material/legacy-input/index.ts","../../../../../../src/material/legacy-input/legacy-input_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 {Directive, inject} from '@angular/core';\nimport {MatInput as BaseMatInput} from '@angular/material/input';\nimport {\n MatLegacyFormFieldControl,\n MatLegacyFormField,\n MAT_LEGACY_FORM_FIELD,\n} from '@angular/material/legacy-form-field';\n\n/**\n * Directive that allows a native input to work inside a `MatFormField`.\n * @deprecated Use `MatInput` from `@angular/material/input` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: `input[matInput], textarea[matInput], select[matNativeControl],\n input[matNativeControl], textarea[matNativeControl]`,\n exportAs: 'matInput',\n host: {\n /**\n * @breaking-change 8.0.0 remove .mat-form-field-autofill-control in favor of AutofillMonitor.\n */\n 'class': 'mat-input-element mat-form-field-autofill-control',\n '[class.mat-input-server]': '_isServer',\n // These classes are inherited from the base input class and need to be cleared.\n '[class.mat-mdc-input-element]': 'false',\n '[class.mat-mdc-form-field-textarea-control]': 'false',\n '[class.mat-mdc-form-field-input-control]': 'false',\n '[class.mdc-text-field__input]': 'false',\n '[class.mat-mdc-native-select-inline]': 'false',\n // At the time of writing, we have a lot of customer tests that look up the input based on its\n // placeholder. Since we sometimes omit the placeholder attribute from the DOM to prevent screen\n // readers from reading it twice, we have to keep it somewhere in the DOM for the lookup.\n '[attr.data-placeholder]': 'placeholder',\n '[class.mat-native-select-inline]': '_isInlineSelect()',\n },\n providers: [{provide: MatLegacyFormFieldControl, useExisting: MatLegacyInput}],\n})\nexport class MatLegacyInput extends BaseMatInput {\n private _legacyFormField = inject<MatLegacyFormField>(MAT_LEGACY_FORM_FIELD, {optional: true});\n\n protected override _getPlaceholder() {\n // If we're hiding the native placeholder, it should also be cleared from the DOM, otherwise\n // screen readers will read it out twice: once from the label and once from the attribute.\n // TODO: can be removed once we get rid of the `legacy` style for the form field, because it's\n // the only one that supports promoting the placeholder to a label.\n const formField = this._legacyFormField;\n return formField && formField.appearance === 'legacy' && !formField._hasLabel?.()\n ? null\n : this.placeholder;\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 {TextFieldModule} from '@angular/cdk/text-field';\nimport {NgModule} from '@angular/core';\nimport {ErrorStateMatcher, MatCommonModule} from '@angular/material/core';\nimport {MatLegacyFormFieldModule} from '@angular/material/legacy-form-field';\nimport {MatLegacyInput} from './input';\n\n/**\n * @deprecated Use `MatInputModule` from `@angular/material/input` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@NgModule({\n declarations: [MatLegacyInput],\n imports: [TextFieldModule, MatLegacyFormFieldModule, MatCommonModule],\n exports: [\n TextFieldModule,\n // We re-export the `MatLegacyFormFieldModule` since `MatLegacyInput` will almost always\n // be used together with `MatLegacyFormField`.\n MatLegacyFormFieldModule,\n MatLegacyInput,\n ],\n providers: [ErrorStateMatcher],\n})\nexport class MatLegacyInputModule {}\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 {MatLegacyInput} from './input';\nexport {MatLegacyInputModule} from './input-module';\nexport {\n /**\n * @deprecated Use `MAT_INPUT_VALUE_ACCESSOR` from `@angular/material/input` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n MAT_INPUT_VALUE_ACCESSOR as MAT_LEGACY_INPUT_VALUE_ACCESSOR,\n\n /**\n * @deprecated Use `getMatInputUnsupportedTypeError` from `@angular/material/input` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n getMatInputUnsupportedTypeError as getMatLegacyInputUnsupportedTypeError,\n} from '@angular/material/input';\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":["BaseMatInput"],"mappings":"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"}
1
+ {"version":3,"file":"legacy-input.mjs","sources":["../../../../../../src/material/legacy-input/input.ts","../../../../../../src/material/legacy-input/input-module.ts","../../../../../../src/material/legacy-input/legacy-input_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 {Directive, inject} from '@angular/core';\nimport {MatInput as BaseMatInput} from '@angular/material/input';\nimport {\n MatLegacyFormFieldControl,\n MatLegacyFormField,\n MAT_LEGACY_FORM_FIELD,\n} from '@angular/material/legacy-form-field';\n\n/**\n * Directive that allows a native input to work inside a `MatFormField`.\n * @deprecated Use `MatInput` from `@angular/material/input` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@Directive({\n selector: `input[matInput], textarea[matInput], select[matNativeControl],\n input[matNativeControl], textarea[matNativeControl]`,\n exportAs: 'matInput',\n host: {\n /**\n * @breaking-change 8.0.0 remove .mat-form-field-autofill-control in favor of AutofillMonitor.\n */\n 'class': 'mat-input-element mat-form-field-autofill-control',\n '[class.mat-input-server]': '_isServer',\n // These classes are inherited from the base input class and need to be cleared.\n '[class.mat-mdc-input-element]': 'false',\n '[class.mat-mdc-form-field-textarea-control]': 'false',\n '[class.mat-mdc-form-field-input-control]': 'false',\n '[class.mdc-text-field__input]': 'false',\n '[class.mat-mdc-native-select-inline]': 'false',\n // At the time of writing, we have a lot of customer tests that look up the input based on its\n // placeholder. Since we sometimes omit the placeholder attribute from the DOM to prevent screen\n // readers from reading it twice, we have to keep it somewhere in the DOM for the lookup.\n '[attr.data-placeholder]': 'placeholder',\n '[class.mat-native-select-inline]': '_isInlineSelect()',\n },\n providers: [{provide: MatLegacyFormFieldControl, useExisting: MatLegacyInput}],\n})\nexport class MatLegacyInput extends BaseMatInput {\n private _legacyFormField = inject<MatLegacyFormField>(MAT_LEGACY_FORM_FIELD, {optional: true});\n\n protected override _getPlaceholder() {\n // If we're hiding the native placeholder, it should also be cleared from the DOM, otherwise\n // screen readers will read it out twice: once from the label and once from the attribute.\n // TODO: can be removed once we get rid of the `legacy` style for the form field, because it's\n // the only one that supports promoting the placeholder to a label.\n const formField = this._legacyFormField;\n return formField && formField.appearance === 'legacy' && !formField._hasLabel?.()\n ? null\n : this.placeholder;\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 {TextFieldModule} from '@angular/cdk/text-field';\nimport {NgModule} from '@angular/core';\nimport {ErrorStateMatcher, MatCommonModule} from '@angular/material/core';\nimport {MatLegacyFormFieldModule} from '@angular/material/legacy-form-field';\nimport {MatLegacyInput} from './input';\n\n/**\n * @deprecated Use `MatInputModule` from `@angular/material/input` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\n@NgModule({\n declarations: [MatLegacyInput],\n imports: [TextFieldModule, MatLegacyFormFieldModule, MatCommonModule],\n exports: [\n TextFieldModule,\n // We re-export the `MatLegacyFormFieldModule` since `MatLegacyInput` will almost always\n // be used together with `MatLegacyFormField`.\n MatLegacyFormFieldModule,\n MatLegacyInput,\n ],\n providers: [ErrorStateMatcher],\n})\nexport class MatLegacyInputModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["BaseMatInput"],"mappings":"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"}
@@ -240,13 +240,6 @@ class MatLegacyActionListItemHarness extends MatLegacyListItemHarnessBase {
240
240
  /** The selector for the host element of a `MatListItem` instance. */
241
241
  MatLegacyActionListItemHarness.hostSelector = `${MatLegacyActionListHarness.hostSelector} .mat-list-item`;
242
242
 
243
- /**
244
- * @license
245
- * Copyright Google LLC All Rights Reserved.
246
- *
247
- * Use of this source code is governed by an MIT-style license that can be
248
- * found in the LICENSE file at https://angular.io/license
249
- */
250
243
  /**
251
244
  * Harness for interacting with a standard mat-list in tests.
252
245
  * @deprecated Use `MatListHarness` from `@angular/material/list/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.
@@ -502,21 +495,5 @@ class MatLegacyListOptionHarness extends MatLegacyListItemHarnessBase {
502
495
  /** The selector for the host element of a `MatListOption` instance. */
503
496
  MatLegacyListOptionHarness.hostSelector = '.mat-list-option';
504
497
 
505
- /**
506
- * @license
507
- * Copyright Google LLC All Rights Reserved.
508
- *
509
- * Use of this source code is governed by an MIT-style license that can be
510
- * found in the LICENSE file at https://angular.io/license
511
- */
512
-
513
- /**
514
- * @license
515
- * Copyright Google LLC All Rights Reserved.
516
- *
517
- * Use of this source code is governed by an MIT-style license that can be
518
- * found in the LICENSE file at https://angular.io/license
519
- */
520
-
521
498
  export { MatLegacyActionListHarness, MatLegacyActionListItemHarness, MatLegacyListHarness, MatLegacyListItemHarness, MatLegacyListOptionHarness, MatLegacyNavListHarness, MatLegacyNavListItemHarness, MatLegacySelectionListHarness };
522
499
  //# sourceMappingURL=testing.mjs.map