@angular/material 19.0.0-next.9 → 19.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/autocomplete/_autocomplete-theme.scss +8 -4
  2. package/autocomplete/index.d.ts +5 -6
  3. package/badge/_badge-theme.scss +10 -6
  4. package/bottom-sheet/_bottom-sheet-theme.scss +8 -4
  5. package/button/_button-theme.scss +10 -6
  6. package/button/_fab-theme.scss +10 -6
  7. package/button/_icon-button-theme.scss +8 -4
  8. package/button/index.d.ts +1 -1
  9. package/button-toggle/_button-toggle-theme.scss +11 -6
  10. package/card/_card-theme.scss +8 -4
  11. package/card/index.d.ts +2 -3
  12. package/checkbox/_checkbox-theme.scss +10 -6
  13. package/chips/_chips-theme.scss +10 -6
  14. package/core/_core-theme.scss +4 -7
  15. package/core/_core.scss +2 -5
  16. package/core/option/_optgroup-theme.scss +8 -4
  17. package/core/option/_option-theme.scss +10 -6
  18. package/core/ripple/_ripple-theme.scss +8 -4
  19. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +10 -6
  20. package/core/theming/_config-validation.scss +4 -4
  21. package/core/theming/_definition.scss +12 -2
  22. package/core/tokens/_m3-system.scss +55 -39
  23. package/datepicker/_datepicker-theme.scss +10 -6
  24. package/datepicker/index.d.ts +32 -33
  25. package/dialog/_dialog-theme.scss +8 -4
  26. package/divider/_divider-theme.scss +8 -4
  27. package/expansion/_expansion-theme.scss +8 -4
  28. package/fesm2022/autocomplete/testing.mjs +2 -5
  29. package/fesm2022/autocomplete/testing.mjs.map +1 -1
  30. package/fesm2022/autocomplete.mjs +220 -141
  31. package/fesm2022/autocomplete.mjs.map +1 -1
  32. package/fesm2022/badge/testing.mjs +2 -5
  33. package/fesm2022/badge/testing.mjs.map +1 -1
  34. package/fesm2022/badge.mjs +41 -30
  35. package/fesm2022/badge.mjs.map +1 -1
  36. package/fesm2022/bottom-sheet/testing.mjs +1 -1
  37. package/fesm2022/bottom-sheet/testing.mjs.map +1 -1
  38. package/fesm2022/bottom-sheet.mjs +76 -54
  39. package/fesm2022/bottom-sheet.mjs.map +1 -1
  40. package/fesm2022/button/testing.mjs +2 -2
  41. package/fesm2022/button/testing.mjs.map +1 -1
  42. package/fesm2022/button-toggle/testing.mjs +4 -7
  43. package/fesm2022/button-toggle/testing.mjs.map +1 -1
  44. package/fesm2022/button-toggle.mjs +78 -40
  45. package/fesm2022/button-toggle.mjs.map +1 -1
  46. package/fesm2022/button.mjs +87 -60
  47. package/fesm2022/button.mjs.map +1 -1
  48. package/fesm2022/card/testing.mjs +3 -6
  49. package/fesm2022/card/testing.mjs.map +1 -1
  50. package/fesm2022/card.mjs +38 -40
  51. package/fesm2022/card.mjs.map +1 -1
  52. package/fesm2022/checkbox/testing.mjs +4 -7
  53. package/fesm2022/checkbox/testing.mjs.map +1 -1
  54. package/fesm2022/checkbox.mjs +99 -56
  55. package/fesm2022/checkbox.mjs.map +1 -1
  56. package/fesm2022/chips/testing.mjs +11 -14
  57. package/fesm2022/chips/testing.mjs.map +1 -1
  58. package/fesm2022/chips.mjs +303 -251
  59. package/fesm2022/chips.mjs.map +1 -1
  60. package/fesm2022/core/testing.mjs +5 -11
  61. package/fesm2022/core/testing.mjs.map +1 -1
  62. package/fesm2022/core.mjs +217 -160
  63. package/fesm2022/core.mjs.map +1 -1
  64. package/fesm2022/datepicker/testing.mjs +13 -22
  65. package/fesm2022/datepicker/testing.mjs.map +1 -1
  66. package/fesm2022/datepicker.mjs +788 -533
  67. package/fesm2022/datepicker.mjs.map +1 -1
  68. package/fesm2022/dialog/testing.mjs +15 -9
  69. package/fesm2022/dialog/testing.mjs.map +1 -1
  70. package/fesm2022/dialog.mjs +210 -140
  71. package/fesm2022/dialog.mjs.map +1 -1
  72. package/fesm2022/divider/testing.mjs +1 -1
  73. package/fesm2022/divider/testing.mjs.map +1 -1
  74. package/fesm2022/divider.mjs +7 -9
  75. package/fesm2022/divider.mjs.map +1 -1
  76. package/fesm2022/expansion/testing.mjs +7 -10
  77. package/fesm2022/expansion/testing.mjs.map +1 -1
  78. package/fesm2022/expansion.mjs +76 -65
  79. package/fesm2022/expansion.mjs.map +1 -1
  80. package/fesm2022/form-field/testing.mjs +12 -15
  81. package/fesm2022/form-field/testing.mjs.map +1 -1
  82. package/fesm2022/form-field.mjs +165 -111
  83. package/fesm2022/form-field.mjs.map +1 -1
  84. package/fesm2022/grid-list/testing.mjs +11 -17
  85. package/fesm2022/grid-list/testing.mjs.map +1 -1
  86. package/fesm2022/grid-list.mjs +65 -43
  87. package/fesm2022/grid-list.mjs.map +1 -1
  88. package/fesm2022/icon/testing.mjs +6 -6
  89. package/fesm2022/icon/testing.mjs.map +1 -1
  90. package/fesm2022/icon.mjs +62 -42
  91. package/fesm2022/icon.mjs.map +1 -1
  92. package/fesm2022/input/testing.mjs +3 -3
  93. package/fesm2022/input/testing.mjs.map +1 -1
  94. package/fesm2022/input.mjs +101 -69
  95. package/fesm2022/input.mjs.map +1 -1
  96. package/fesm2022/list/testing.mjs +21 -38
  97. package/fesm2022/list/testing.mjs.map +1 -1
  98. package/fesm2022/list.mjs +175 -164
  99. package/fesm2022/list.mjs.map +1 -1
  100. package/fesm2022/menu/testing.mjs +3 -6
  101. package/fesm2022/menu/testing.mjs.map +1 -1
  102. package/fesm2022/menu.mjs +171 -118
  103. package/fesm2022/menu.mjs.map +1 -1
  104. package/fesm2022/paginator/testing.mjs +10 -13
  105. package/fesm2022/paginator/testing.mjs.map +1 -1
  106. package/fesm2022/paginator.mjs +79 -54
  107. package/fesm2022/paginator.mjs.map +1 -1
  108. package/fesm2022/progress-bar/testing.mjs +1 -1
  109. package/fesm2022/progress-bar/testing.mjs.map +1 -1
  110. package/fesm2022/progress-bar.mjs +33 -32
  111. package/fesm2022/progress-bar.mjs.map +1 -1
  112. package/fesm2022/progress-spinner/testing.mjs +1 -1
  113. package/fesm2022/progress-spinner/testing.mjs.map +1 -1
  114. package/fesm2022/progress-spinner.mjs +25 -11
  115. package/fesm2022/progress-spinner.mjs.map +1 -1
  116. package/fesm2022/radio/testing.mjs +6 -12
  117. package/fesm2022/radio/testing.mjs.map +1 -1
  118. package/fesm2022/radio.mjs +119 -82
  119. package/fesm2022/radio.mjs.map +1 -1
  120. package/fesm2022/select/testing.mjs +6 -9
  121. package/fesm2022/select/testing.mjs.map +1 -1
  122. package/fesm2022/select.mjs +215 -177
  123. package/fesm2022/select.mjs.map +1 -1
  124. package/fesm2022/sidenav/testing.mjs +6 -6
  125. package/fesm2022/sidenav/testing.mjs.map +1 -1
  126. package/fesm2022/sidenav.mjs +125 -112
  127. package/fesm2022/sidenav.mjs.map +1 -1
  128. package/fesm2022/slide-toggle/testing.mjs +3 -6
  129. package/fesm2022/slide-toggle/testing.mjs.map +1 -1
  130. package/fesm2022/slide-toggle.mjs +72 -41
  131. package/fesm2022/slide-toggle.mjs.map +1 -1
  132. package/fesm2022/slider/testing.mjs +2 -2
  133. package/fesm2022/slider/testing.mjs.map +1 -1
  134. package/fesm2022/slider.mjs +255 -185
  135. package/fesm2022/slider.mjs.map +1 -1
  136. package/fesm2022/snack-bar/testing.mjs +4 -7
  137. package/fesm2022/snack-bar/testing.mjs.map +1 -1
  138. package/fesm2022/snack-bar.mjs +133 -98
  139. package/fesm2022/snack-bar.mjs.map +1 -1
  140. package/fesm2022/sort/testing.mjs +3 -6
  141. package/fesm2022/sort/testing.mjs.map +1 -1
  142. package/fesm2022/sort.mjs +89 -68
  143. package/fesm2022/sort.mjs.map +1 -1
  144. package/fesm2022/stepper/testing.mjs +4 -4
  145. package/fesm2022/stepper/testing.mjs.map +1 -1
  146. package/fesm2022/stepper.mjs +133 -95
  147. package/fesm2022/stepper.mjs.map +1 -1
  148. package/fesm2022/table/testing.mjs +13 -25
  149. package/fesm2022/table/testing.mjs.map +1 -1
  150. package/fesm2022/table.mjs +164 -159
  151. package/fesm2022/table.mjs.map +1 -1
  152. package/fesm2022/tabs/testing.mjs +5 -5
  153. package/fesm2022/tabs/testing.mjs.map +1 -1
  154. package/fesm2022/tabs.mjs +308 -225
  155. package/fesm2022/tabs.mjs.map +1 -1
  156. package/fesm2022/timepicker/testing.mjs +7 -16
  157. package/fesm2022/timepicker/testing.mjs.map +1 -1
  158. package/fesm2022/timepicker.mjs +152 -146
  159. package/fesm2022/timepicker.mjs.map +1 -1
  160. package/fesm2022/toolbar/testing.mjs +2 -5
  161. package/fesm2022/toolbar/testing.mjs.map +1 -1
  162. package/fesm2022/toolbar.mjs +22 -12
  163. package/fesm2022/toolbar.mjs.map +1 -1
  164. package/fesm2022/tooltip/testing.mjs +6 -9
  165. package/fesm2022/tooltip/testing.mjs.map +1 -1
  166. package/fesm2022/tooltip.mjs +93 -69
  167. package/fesm2022/tooltip.mjs.map +1 -1
  168. package/fesm2022/tree/testing.mjs +3 -6
  169. package/fesm2022/tree/testing.mjs.map +1 -1
  170. package/fesm2022/tree.mjs +48 -46
  171. package/fesm2022/tree.mjs.map +1 -1
  172. package/form-field/_form-field-theme.scss +9 -5
  173. package/form-field/index.d.ts +8 -9
  174. package/grid-list/_grid-list-theme.scss +8 -4
  175. package/icon/_icon-theme.scss +10 -6
  176. package/input/_input-theme.scss +8 -4
  177. package/list/_list-theme.scss +8 -4
  178. package/list/index.d.ts +20 -21
  179. package/menu/_menu-theme.scss +8 -4
  180. package/menu/index.d.ts +8 -9
  181. package/package.json +2 -2
  182. package/paginator/_paginator-theme.scss +8 -4
  183. package/prebuilt-themes/azure-blue.css +1 -1
  184. package/prebuilt-themes/cyan-orange.css +1 -1
  185. package/prebuilt-themes/deeppurple-amber.css +1 -1
  186. package/prebuilt-themes/indigo-pink.css +1 -1
  187. package/prebuilt-themes/magenta-violet.css +1 -1
  188. package/prebuilt-themes/pink-bluegrey.css +1 -1
  189. package/prebuilt-themes/purple-green.css +1 -1
  190. package/prebuilt-themes/rose-red.css +1 -1
  191. package/progress-bar/_progress-bar-theme.scss +11 -9
  192. package/progress-spinner/_progress-spinner-theme.scss +11 -9
  193. package/progress-spinner/index.d.ts +3 -4
  194. package/radio/_radio-theme.scss +10 -6
  195. package/radio/index.d.ts +2 -3
  196. package/schematics/ng-add/index.js +1 -1
  197. package/schematics/ng-add/index.mjs +1 -1
  198. package/schematics/ng-add/theming/create-custom-theme.js +1 -6
  199. package/schematics/ng-add/theming/create-custom-theme.mjs +1 -6
  200. package/schematics/ng-generate/theme-color/index_bundled.js +35 -9
  201. package/schematics/ng-generate/theme-color/index_bundled.js.map +2 -2
  202. package/schematics/ng-update/index_bundled.js +6 -1
  203. package/schematics/ng-update/index_bundled.js.map +1 -1
  204. package/select/_select-theme.scss +10 -6
  205. package/select/index.d.ts +6 -7
  206. package/sidenav/_sidenav-theme.scss +8 -4
  207. package/slide-toggle/_slide-toggle-theme.scss +10 -6
  208. package/slider/_slider-theme.scss +10 -6
  209. package/snack-bar/_snack-bar-theme.scss +10 -6
  210. package/sort/_sort-theme.scss +8 -4
  211. package/stepper/_stepper-theme.scss +10 -6
  212. package/stepper/index.d.ts +14 -15
  213. package/table/_table-theme.scss +8 -4
  214. package/tabs/_tabs-theme.scss +10 -6
  215. package/timepicker/_timepicker-theme.scss +10 -6
  216. package/toolbar/_toolbar-theme.scss +10 -6
  217. package/tooltip/_tooltip-theme.scss +8 -4
  218. package/tooltip/index.d.ts +5 -6
  219. package/tree/_tree-theme.scss +8 -4
package/fesm2022/core.mjs CHANGED
@@ -6,25 +6,25 @@ import { Subject } from 'rxjs';
6
6
  import { startWith } from 'rxjs/operators';
7
7
  import { normalizePassiveListenerOptions, _getEventTarget, Platform } from '@angular/cdk/platform';
8
8
  import { coerceElement } from '@angular/cdk/coercion';
9
- import { _CdkPrivateStyleLoader } from '@angular/cdk/private';
9
+ import { _CdkPrivateStyleLoader, _VisuallyHiddenLoader } from '@angular/cdk/private';
10
10
  import { ENTER, SPACE, hasModifierKey } from '@angular/cdk/keycodes';
11
11
  import { DOCUMENT } from '@angular/common';
12
12
 
13
13
  /** Current version of Angular Material. */
14
- const VERSION = new Version('19.0.0-next.9');
14
+ const VERSION = new Version('19.0.0-rc.0');
15
15
 
16
16
  /** @docs-private */
17
17
  class AnimationCurves {
18
- static { this.STANDARD_CURVE = 'cubic-bezier(0.4,0.0,0.2,1)'; }
19
- static { this.DECELERATION_CURVE = 'cubic-bezier(0.0,0.0,0.2,1)'; }
20
- static { this.ACCELERATION_CURVE = 'cubic-bezier(0.4,0.0,1,1)'; }
21
- static { this.SHARP_CURVE = 'cubic-bezier(0.4,0.0,0.6,1)'; }
18
+ static STANDARD_CURVE = 'cubic-bezier(0.4,0.0,0.2,1)';
19
+ static DECELERATION_CURVE = 'cubic-bezier(0.0,0.0,0.2,1)';
20
+ static ACCELERATION_CURVE = 'cubic-bezier(0.4,0.0,1,1)';
21
+ static SHARP_CURVE = 'cubic-bezier(0.4,0.0,0.6,1)';
22
22
  }
23
23
  /** @docs-private */
24
24
  class AnimationDurations {
25
- static { this.COMPLEX = '375ms'; }
26
- static { this.ENTERING = '225ms'; }
27
- static { this.EXITING = '195ms'; }
25
+ static COMPLEX = '375ms';
26
+ static ENTERING = '225ms';
27
+ static EXITING = '195ms';
28
28
  }
29
29
 
30
30
  /**
@@ -50,9 +50,9 @@ class MatCommonModule {
50
50
  // in MatCommonModule.
51
51
  inject(HighContrastModeDetector)._applyBodyHighContrastModeCssClasses();
52
52
  }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
54
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, imports: [BidiModule], exports: [BidiModule] }); }
55
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, imports: [BidiModule, BidiModule] }); }
53
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
54
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, imports: [BidiModule], exports: [BidiModule] });
55
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, imports: [BidiModule, BidiModule] });
56
56
  }
57
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, decorators: [{
58
58
  type: NgModule,
@@ -67,14 +67,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
67
67
  * @docs-private
68
68
  */
69
69
  class _ErrorStateTracker {
70
+ _defaultMatcher;
71
+ ngControl;
72
+ _parentFormGroup;
73
+ _parentForm;
74
+ _stateChanges;
75
+ /** Whether the tracker is currently in an error state. */
76
+ errorState = false;
77
+ /** User-defined matcher for the error state. */
78
+ matcher;
70
79
  constructor(_defaultMatcher, ngControl, _parentFormGroup, _parentForm, _stateChanges) {
71
80
  this._defaultMatcher = _defaultMatcher;
72
81
  this.ngControl = ngControl;
73
82
  this._parentFormGroup = _parentFormGroup;
74
83
  this._parentForm = _parentForm;
75
84
  this._stateChanges = _stateChanges;
76
- /** Whether the tracker is currently in an error state. */
77
- this.errorState = false;
78
85
  }
79
86
  /** Updates the error state based on the provided error state matcher. */
80
87
  updateErrorState() {
@@ -102,11 +109,11 @@ function MAT_DATE_LOCALE_FACTORY() {
102
109
  const NOT_IMPLEMENTED = 'Method not implemented';
103
110
  /** Adapts type `D` to be usable as a date by cdk-based components that work with dates. */
104
111
  class DateAdapter {
105
- constructor() {
106
- this._localeChanges = new Subject();
107
- /** A stream that emits when the locale changes. */
108
- this.localeChanges = this._localeChanges;
109
- }
112
+ /** The locale to use for all dates. */
113
+ locale;
114
+ _localeChanges = new Subject();
115
+ /** A stream that emits when the locale changes. */
116
+ localeChanges = this._localeChanges;
110
117
  /**
111
118
  * Sets the time of one date to the time of another.
112
119
  * @param target Date whose time will be set.
@@ -299,15 +306,15 @@ function range(length, valueFunction) {
299
306
  }
300
307
  /** Adapts the native JS Date for use with cdk-based components that work with dates. */
301
308
  class NativeDateAdapter extends DateAdapter {
309
+ /**
310
+ * @deprecated No longer being used. To be removed.
311
+ * @breaking-change 14.0.0
312
+ */
313
+ useUtcForDisplay = false;
314
+ /** The injected locale. */
315
+ _matDateLocale = inject(MAT_DATE_LOCALE, { optional: true });
302
316
  constructor() {
303
317
  super();
304
- /**
305
- * @deprecated No longer being used. To be removed.
306
- * @breaking-change 14.0.0
307
- */
308
- this.useUtcForDisplay = false;
309
- /** The injected locale. */
310
- this._matDateLocale = inject(MAT_DATE_LOCALE, { optional: true });
311
318
  const matDateLocale = inject(MAT_DATE_LOCALE, { optional: true });
312
319
  if (matDateLocale !== undefined) {
313
320
  this._matDateLocale = matDateLocale;
@@ -569,8 +576,8 @@ class NativeDateAdapter extends DateAdapter {
569
576
  }
570
577
  return null;
571
578
  }
572
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
573
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateAdapter }); }
579
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
580
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateAdapter });
574
581
  }
575
582
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateAdapter, decorators: [{
576
583
  type: Injectable
@@ -596,9 +603,9 @@ const MAT_NATIVE_DATE_FORMATS = {
596
603
  };
597
604
 
598
605
  class NativeDateModule {
599
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
600
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule }); }
601
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule, providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }] }); }
606
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
607
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule });
608
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule, providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }] });
602
609
  }
603
610
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule, decorators: [{
604
611
  type: NgModule,
@@ -607,9 +614,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
607
614
  }]
608
615
  }] });
609
616
  class MatNativeDateModule {
610
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
611
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule }); }
612
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule, providers: [provideNativeDateAdapter()] }); }
617
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
618
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule });
619
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule, providers: [provideNativeDateAdapter()] });
613
620
  }
614
621
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule, decorators: [{
615
622
  type: NgModule,
@@ -629,8 +636,8 @@ class ShowOnDirtyErrorStateMatcher {
629
636
  isErrorState(control, form) {
630
637
  return !!(control && control.invalid && (control.dirty || (form && form.submitted)));
631
638
  }
632
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
633
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ShowOnDirtyErrorStateMatcher }); }
639
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
640
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ShowOnDirtyErrorStateMatcher });
634
641
  }
635
642
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, decorators: [{
636
643
  type: Injectable
@@ -640,8 +647,8 @@ class ErrorStateMatcher {
640
647
  isErrorState(control, form) {
641
648
  return !!(control && control.invalid && (control.touched || (form && form.submitted)));
642
649
  }
643
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
644
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ErrorStateMatcher, providedIn: 'root' }); }
650
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
651
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ErrorStateMatcher, providedIn: 'root' });
645
652
  }
646
653
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ErrorStateMatcher, decorators: [{
647
654
  type: Injectable,
@@ -653,8 +660,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
653
660
  * @docs-private
654
661
  */
655
662
  class _StructuralStylesLoader {
656
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _StructuralStylesLoader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
657
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _StructuralStylesLoader, isStandalone: true, selector: "structural-styles", ngImport: i0, template: '', isInline: true, styles: [".mat-focus-indicator{position:relative}.mat-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border-width:var(--mat-focus-indicator-border-width, 3px);border-style:var(--mat-focus-indicator-border-style, solid);border-color:var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator:focus::before{content:\"\"}@media(forced-colors: active){html{--mat-focus-indicator-display: block}}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
663
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _StructuralStylesLoader, deps: [], target: i0.ɵɵFactoryTarget.Component });
664
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _StructuralStylesLoader, isStandalone: true, selector: "structural-styles", ngImport: i0, template: '', isInline: true, styles: [".mat-focus-indicator{position:relative}.mat-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border-width:var(--mat-focus-indicator-border-width, 3px);border-style:var(--mat-focus-indicator-border-style, solid);border-color:var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator:focus::before{content:\"\"}@media(forced-colors: active){html{--mat-focus-indicator-display: block}}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
658
665
  }
659
666
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _StructuralStylesLoader, decorators: [{
660
667
  type: Component,
@@ -667,8 +674,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
667
674
  * counted by checking the query list's length.
668
675
  */
669
676
  class MatLine {
670
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLine, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
671
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatLine, isStandalone: true, selector: "[mat-line], [matLine]", host: { classAttribute: "mat-line" }, ngImport: i0 }); }
677
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLine, deps: [], target: i0.ɵɵFactoryTarget.Directive });
678
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatLine, isStandalone: true, selector: "[mat-line], [matLine]", host: { classAttribute: "mat-line" }, ngImport: i0 });
672
679
  }
673
680
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLine, decorators: [{
674
681
  type: Directive,
@@ -701,9 +708,9 @@ function setClass(element, className, isAdd) {
701
708
  element.nativeElement.classList.toggle(className, isAdd);
702
709
  }
703
710
  class MatLineModule {
704
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
705
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, imports: [MatCommonModule, MatLine], exports: [MatLine, MatCommonModule] }); }
706
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, imports: [MatCommonModule, MatCommonModule] }); }
711
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
712
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, imports: [MatCommonModule, MatLine], exports: [MatLine, MatCommonModule] });
713
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, imports: [MatCommonModule, MatCommonModule] });
707
714
  }
708
715
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, decorators: [{
709
716
  type: NgModule,
@@ -725,6 +732,12 @@ var RippleState;
725
732
  * Reference to a previously launched ripple element.
726
733
  */
727
734
  class RippleRef {
735
+ _renderer;
736
+ element;
737
+ config;
738
+ _animationForciblyDisabledThroughCss;
739
+ /** Current state of the ripple. */
740
+ state = RippleState.HIDDEN;
728
741
  constructor(_renderer,
729
742
  /** Reference to the ripple HTML element. */
730
743
  element,
@@ -736,8 +749,6 @@ class RippleRef {
736
749
  this.element = element;
737
750
  this.config = config;
738
751
  this._animationForciblyDisabledThroughCss = _animationForciblyDisabledThroughCss;
739
- /** Current state of the ripple. */
740
- this.state = RippleState.HIDDEN;
741
752
  }
742
753
  /** Fades out the ripple element. */
743
754
  fadeOut() {
@@ -752,20 +763,7 @@ const passiveCapturingEventOptions$1 = normalizePassiveListenerOptions({
752
763
  });
753
764
  /** Manages events through delegation so that as few event handlers as possible are bound. */
754
765
  class RippleEventManager {
755
- constructor() {
756
- this._events = new Map();
757
- /** Event handler that is bound and which dispatches the events to the different targets. */
758
- this._delegateEventHandler = (event) => {
759
- const target = _getEventTarget(event);
760
- if (target) {
761
- this._events.get(event.type)?.forEach((handlers, element) => {
762
- if (element === target || element.contains(target)) {
763
- handlers.forEach(handler => handler.handleEvent(event));
764
- }
765
- });
766
- }
767
- };
768
- }
766
+ _events = new Map();
769
767
  /** Adds an event handler. */
770
768
  addHandler(ngZone, name, element, handler) {
771
769
  const handlersForEvent = this._events.get(name);
@@ -804,6 +802,17 @@ class RippleEventManager {
804
802
  document.removeEventListener(name, this._delegateEventHandler, passiveCapturingEventOptions$1);
805
803
  }
806
804
  }
805
+ /** Event handler that is bound and which dispatches the events to the different targets. */
806
+ _delegateEventHandler = (event) => {
807
+ const target = _getEventTarget(event);
808
+ if (target) {
809
+ this._events.get(event.type)?.forEach((handlers, element) => {
810
+ if (element === target || element.contains(target)) {
811
+ handlers.forEach(handler => handler.handleEvent(event));
812
+ }
813
+ });
814
+ }
815
+ };
807
816
  }
808
817
 
809
818
  /**
@@ -829,8 +838,8 @@ const pointerDownEvents = ['mousedown', 'touchstart'];
829
838
  /** Events that signal that the pointer is up. */
830
839
  const pointerUpEvents = ['mouseup', 'mouseleave', 'touchend', 'touchcancel'];
831
840
  class _MatRippleStylesLoader {
832
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatRippleStylesLoader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
833
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _MatRippleStylesLoader, isStandalone: true, selector: "ng-component", host: { attributes: { "mat-ripple-style-loader": "" } }, ngImport: i0, template: '', isInline: true, styles: [".mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale3d(0, 0, 0);background-color:var(--mat-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface) 10%, transparent))}@media(forced-colors: active){.mat-ripple-element{display:none}}.cdk-drag-preview .mat-ripple-element,.cdk-drag-placeholder .mat-ripple-element{display:none}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
841
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatRippleStylesLoader, deps: [], target: i0.ɵɵFactoryTarget.Component });
842
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _MatRippleStylesLoader, isStandalone: true, selector: "ng-component", host: { attributes: { "mat-ripple-style-loader": "" } }, ngImport: i0, template: '', isInline: true, styles: [".mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale3d(0, 0, 0);background-color:var(--mat-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface) 10%, transparent))}@media(forced-colors: active){.mat-ripple-element{display:none}}.cdk-drag-preview .mat-ripple-element,.cdk-drag-placeholder .mat-ripple-element{display:none}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
834
843
  }
835
844
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatRippleStylesLoader, decorators: [{
836
845
  type: Component,
@@ -844,22 +853,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
844
853
  * @docs-private
845
854
  */
846
855
  class RippleRenderer {
847
- static { this._eventManager = new RippleEventManager(); }
856
+ _target;
857
+ _ngZone;
858
+ _platform;
859
+ /** Element where the ripples are being added to. */
860
+ _containerElement;
861
+ /** Element which triggers the ripple elements on mouse events. */
862
+ _triggerElement;
863
+ /** Whether the pointer is currently down or not. */
864
+ _isPointerDown = false;
865
+ /**
866
+ * Map of currently active ripple references.
867
+ * The ripple reference is mapped to its element event listeners.
868
+ * The reason why `| null` is used is that event listeners are added only
869
+ * when the condition is truthy (see the `_startFadeOutTransition` method).
870
+ */
871
+ _activeRipples = new Map();
872
+ /** Latest non-persistent ripple that was triggered. */
873
+ _mostRecentTransientRipple;
874
+ /** Time in milliseconds when the last touchstart event happened. */
875
+ _lastTouchStartEvent;
876
+ /** Whether pointer-up event listeners have been registered. */
877
+ _pointerUpEventsRegistered = false;
878
+ /**
879
+ * Cached dimensions of the ripple container. Set when the first
880
+ * ripple is shown and cleared once no more ripples are visible.
881
+ */
882
+ _containerRect;
883
+ static _eventManager = new RippleEventManager();
848
884
  constructor(_target, _ngZone, elementOrElementRef, _platform, injector) {
849
885
  this._target = _target;
850
886
  this._ngZone = _ngZone;
851
887
  this._platform = _platform;
852
- /** Whether the pointer is currently down or not. */
853
- this._isPointerDown = false;
854
- /**
855
- * Map of currently active ripple references.
856
- * The ripple reference is mapped to its element event listeners.
857
- * The reason why `| null` is used is that event listeners are added only
858
- * when the condition is truthy (see the `_startFadeOutTransition` method).
859
- */
860
- this._activeRipples = new Map();
861
- /** Whether pointer-up event listeners have been registered. */
862
- this._pointerUpEventsRegistered = false;
863
888
  // Only do anything if we're on the browser.
864
889
  if (_platform.isBrowser) {
865
890
  this._containerElement = coerceElement(elementOrElementRef);
@@ -1169,6 +1194,29 @@ function distanceToFurthestCorner(x, y, rect) {
1169
1194
  /** Injection token that can be used to specify the global ripple options. */
1170
1195
  const MAT_RIPPLE_GLOBAL_OPTIONS = new InjectionToken('mat-ripple-global-options');
1171
1196
  class MatRipple {
1197
+ _elementRef = inject(ElementRef);
1198
+ _animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
1199
+ /** Custom color for all ripples. */
1200
+ color;
1201
+ /** Whether the ripples should be visible outside the component's bounds. */
1202
+ unbounded;
1203
+ /**
1204
+ * Whether the ripple always originates from the center of the host element's bounds, rather
1205
+ * than originating from the location of the click event.
1206
+ */
1207
+ centered;
1208
+ /**
1209
+ * If set, the radius in pixels of foreground ripples when fully expanded. If unset, the radius
1210
+ * will be the distance from the center of the ripple to the furthest corner of the host element's
1211
+ * bounding rectangle.
1212
+ */
1213
+ radius = 0;
1214
+ /**
1215
+ * Configuration for the ripple animation. Allows modifying the enter and exit animation
1216
+ * duration of the ripples. The animation durations will be overwritten if the
1217
+ * `NoopAnimationsModule` is being used.
1218
+ */
1219
+ animation;
1172
1220
  /**
1173
1221
  * Whether click events will not trigger the ripple. Ripples can be still launched manually
1174
1222
  * by using the `launch()` method.
@@ -1183,6 +1231,7 @@ class MatRipple {
1183
1231
  this._disabled = value;
1184
1232
  this._setupTriggerEventsIfEnabled();
1185
1233
  }
1234
+ _disabled = false;
1186
1235
  /**
1187
1236
  * The element that triggers the ripple when click events are received.
1188
1237
  * Defaults to the directive's host element.
@@ -1194,18 +1243,14 @@ class MatRipple {
1194
1243
  this._trigger = trigger;
1195
1244
  this._setupTriggerEventsIfEnabled();
1196
1245
  }
1246
+ _trigger;
1247
+ /** Renderer for the ripple DOM manipulations. */
1248
+ _rippleRenderer;
1249
+ /** Options that are set globally for all ripples. */
1250
+ _globalOptions;
1251
+ /** @docs-private Whether ripple directive is initialized and the input bindings are set. */
1252
+ _isInitialized = false;
1197
1253
  constructor() {
1198
- this._elementRef = inject(ElementRef);
1199
- this._animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
1200
- /**
1201
- * If set, the radius in pixels of foreground ripples when fully expanded. If unset, the radius
1202
- * will be the distance from the center of the ripple to the furthest corner of the host element's
1203
- * bounding rectangle.
1204
- */
1205
- this.radius = 0;
1206
- this._disabled = false;
1207
- /** @docs-private Whether ripple directive is initialized and the input bindings are set. */
1208
- this._isInitialized = false;
1209
1254
  const ngZone = inject(NgZone);
1210
1255
  const platform = inject(Platform);
1211
1256
  const globalOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, { optional: true });
@@ -1269,8 +1314,8 @@ class MatRipple {
1269
1314
  return this._rippleRenderer.fadeInRipple(0, 0, { ...this.rippleConfig, ...configOrX });
1270
1315
  }
1271
1316
  }
1272
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRipple, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1273
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatRipple, isStandalone: true, selector: "[mat-ripple], [matRipple]", inputs: { color: ["matRippleColor", "color"], unbounded: ["matRippleUnbounded", "unbounded"], centered: ["matRippleCentered", "centered"], radius: ["matRippleRadius", "radius"], animation: ["matRippleAnimation", "animation"], disabled: ["matRippleDisabled", "disabled"], trigger: ["matRippleTrigger", "trigger"] }, host: { properties: { "class.mat-ripple-unbounded": "unbounded" }, classAttribute: "mat-ripple" }, exportAs: ["matRipple"], ngImport: i0 }); }
1317
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRipple, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1318
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatRipple, isStandalone: true, selector: "[mat-ripple], [matRipple]", inputs: { color: ["matRippleColor", "color"], unbounded: ["matRippleUnbounded", "unbounded"], centered: ["matRippleCentered", "centered"], radius: ["matRippleRadius", "radius"], animation: ["matRippleAnimation", "animation"], disabled: ["matRippleDisabled", "disabled"], trigger: ["matRippleTrigger", "trigger"] }, host: { properties: { "class.mat-ripple-unbounded": "unbounded" }, classAttribute: "mat-ripple" }, exportAs: ["matRipple"], ngImport: i0 });
1274
1319
  }
1275
1320
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRipple, decorators: [{
1276
1321
  type: Directive,
@@ -1306,9 +1351,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
1306
1351
  }] } });
1307
1352
 
1308
1353
  class MatRippleModule {
1309
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1310
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, imports: [MatCommonModule, MatRipple], exports: [MatRipple, MatCommonModule] }); }
1311
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, imports: [MatCommonModule, MatCommonModule] }); }
1354
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1355
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, imports: [MatCommonModule, MatRipple], exports: [MatRipple, MatCommonModule] });
1356
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, imports: [MatCommonModule, MatCommonModule] });
1312
1357
  }
1313
1358
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, decorators: [{
1314
1359
  type: NgModule,
@@ -1332,20 +1377,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
1332
1377
  * @docs-private
1333
1378
  */
1334
1379
  class MatPseudoCheckbox {
1335
- constructor() {
1336
- this._animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
1337
- /** Display state of the checkbox. */
1338
- this.state = 'unchecked';
1339
- /** Whether the checkbox is disabled. */
1340
- this.disabled = false;
1341
- /**
1342
- * Appearance of the pseudo checkbox. Default appearance of 'full' renders a checkmark/mixedmark
1343
- * indicator inside a square box. 'minimal' appearance only renders the checkmark/mixedmark.
1344
- */
1345
- this.appearance = 'full';
1346
- }
1347
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1348
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatPseudoCheckbox, isStandalone: true, selector: "mat-pseudo-checkbox", inputs: { state: "state", disabled: "disabled", appearance: "appearance" }, host: { properties: { "class.mat-pseudo-checkbox-indeterminate": "state === \"indeterminate\"", "class.mat-pseudo-checkbox-checked": "state === \"checked\"", "class.mat-pseudo-checkbox-disabled": "disabled", "class.mat-pseudo-checkbox-minimal": "appearance === \"minimal\"", "class.mat-pseudo-checkbox-full": "appearance === \"full\"", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-pseudo-checkbox" }, ngImport: i0, template: '', isInline: true, styles: [".mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-minimal-pseudo-checkbox-selected-checkmark-color, var(--mat-sys-primary))}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full{border-color:var(--mat-full-pseudo-checkbox-unselected-icon-color, var(--mat-sys-on-surface-variant));border-width:2px;border-style:solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-disabled{border-color:var(--mat-full-pseudo-checkbox-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{background-color:var(--mat-full-pseudo-checkbox-selected-icon-color, var(--mat-sys-primary));border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-full-pseudo-checkbox-selected-checkmark-color, var(--mat-sys-on-primary))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background-color:var(--mat-full-pseudo-checkbox-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-full-pseudo-checkbox-disabled-selected-checkmark-color, var(--mat-sys-surface))}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1380
+ _animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
1381
+ /** Display state of the checkbox. */
1382
+ state = 'unchecked';
1383
+ /** Whether the checkbox is disabled. */
1384
+ disabled = false;
1385
+ /**
1386
+ * Appearance of the pseudo checkbox. Default appearance of 'full' renders a checkmark/mixedmark
1387
+ * indicator inside a square box. 'minimal' appearance only renders the checkmark/mixedmark.
1388
+ */
1389
+ appearance = 'full';
1390
+ constructor() { }
1391
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Component });
1392
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatPseudoCheckbox, isStandalone: true, selector: "mat-pseudo-checkbox", inputs: { state: "state", disabled: "disabled", appearance: "appearance" }, host: { properties: { "class.mat-pseudo-checkbox-indeterminate": "state === \"indeterminate\"", "class.mat-pseudo-checkbox-checked": "state === \"checked\"", "class.mat-pseudo-checkbox-disabled": "disabled", "class.mat-pseudo-checkbox-minimal": "appearance === \"minimal\"", "class.mat-pseudo-checkbox-full": "appearance === \"full\"", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-pseudo-checkbox" }, ngImport: i0, template: '', isInline: true, styles: [".mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-minimal-pseudo-checkbox-selected-checkmark-color, var(--mat-sys-primary))}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full{border-color:var(--mat-full-pseudo-checkbox-unselected-icon-color, var(--mat-sys-on-surface-variant));border-width:2px;border-style:solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-disabled{border-color:var(--mat-full-pseudo-checkbox-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{background-color:var(--mat-full-pseudo-checkbox-selected-icon-color, var(--mat-sys-primary));border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-full-pseudo-checkbox-selected-checkmark-color, var(--mat-sys-on-primary))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background-color:var(--mat-full-pseudo-checkbox-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-full-pseudo-checkbox-disabled-selected-checkmark-color, var(--mat-sys-surface))}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1349
1393
  }
1350
1394
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckbox, decorators: [{
1351
1395
  type: Component,
@@ -1367,9 +1411,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
1367
1411
  }] } });
1368
1412
 
1369
1413
  class MatPseudoCheckboxModule {
1370
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1371
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, imports: [MatCommonModule, MatPseudoCheckbox], exports: [MatPseudoCheckbox] }); }
1372
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, imports: [MatCommonModule] }); }
1414
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1415
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, imports: [MatCommonModule, MatPseudoCheckbox], exports: [MatPseudoCheckbox] });
1416
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, imports: [MatCommonModule] });
1373
1417
  }
1374
1418
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, decorators: [{
1375
1419
  type: NgModule,
@@ -1415,16 +1459,20 @@ const MAT_OPTGROUP = new InjectionToken('MatOptgroup');
1415
1459
  * Component that is used to group instances of `mat-option`.
1416
1460
  */
1417
1461
  class MatOptgroup {
1462
+ /** Label for the option group. */
1463
+ label;
1464
+ /** whether the option group is disabled. */
1465
+ disabled = false;
1466
+ /** Unique id for the underlying label. */
1467
+ _labelId = `mat-optgroup-label-${_uniqueOptgroupIdCounter++}`;
1468
+ /** Whether the group is in inert a11y mode. */
1469
+ _inert;
1418
1470
  constructor() {
1419
- /** whether the option group is disabled. */
1420
- this.disabled = false;
1421
- /** Unique id for the underlying label. */
1422
- this._labelId = `mat-optgroup-label-${_uniqueOptgroupIdCounter++}`;
1423
1471
  const parent = inject(MAT_OPTION_PARENT_COMPONENT, { optional: true });
1424
1472
  this._inert = parent?.inertGroups ?? false;
1425
1473
  }
1426
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptgroup, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1427
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.0.0-next.10", type: MatOptgroup, isStandalone: true, selector: "mat-optgroup", inputs: { label: "label", disabled: ["disabled", "disabled", booleanAttribute] }, host: { properties: { "attr.role": "_inert ? null : \"group\"", "attr.aria-disabled": "_inert ? null : disabled.toString()", "attr.aria-labelledby": "_inert ? null : _labelId" }, classAttribute: "mat-mdc-optgroup" }, providers: [{ provide: MAT_OPTGROUP, useExisting: MatOptgroup }], exportAs: ["matOptgroup"], ngImport: i0, template: "<span\n class=\"mat-mdc-optgroup-label\"\n role=\"presentation\"\n [class.mdc-list-item--disabled]=\"disabled\"\n [id]=\"_labelId\">\n <span class=\"mdc-list-item__primary-text\">{{ label }} <ng-content></ng-content></span>\n</span>\n\n<ng-content select=\"mat-option, ng-container\"></ng-content>\n", styles: [".mat-mdc-optgroup{color:var(--mat-optgroup-label-text-color, var(--mat-sys-on-surface-variant));font-family:var(--mat-optgroup-label-text-font, var(--mat-sys-title-small-font));line-height:var(--mat-optgroup-label-text-line-height, var(--mat-sys-title-small-line-height));font-size:var(--mat-optgroup-label-text-size, var(--mat-sys-title-small-size));letter-spacing:var(--mat-optgroup-label-text-tracking, var(--mat-sys-title-small-tracking));font-weight:var(--mat-optgroup-label-text-weight, var(--mat-sys-title-small-weight))}.mat-mdc-optgroup-label{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;outline:none}.mat-mdc-optgroup-label.mdc-list-item--disabled{opacity:.38}.mat-mdc-optgroup-label .mdc-list-item__primary-text{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;white-space:normal}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1474
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptgroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
1475
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.0.0-next.10", type: MatOptgroup, isStandalone: true, selector: "mat-optgroup", inputs: { label: "label", disabled: ["disabled", "disabled", booleanAttribute] }, host: { properties: { "attr.role": "_inert ? null : \"group\"", "attr.aria-disabled": "_inert ? null : disabled.toString()", "attr.aria-labelledby": "_inert ? null : _labelId" }, classAttribute: "mat-mdc-optgroup" }, providers: [{ provide: MAT_OPTGROUP, useExisting: MatOptgroup }], exportAs: ["matOptgroup"], ngImport: i0, template: "<span\n class=\"mat-mdc-optgroup-label\"\n role=\"presentation\"\n [class.mdc-list-item--disabled]=\"disabled\"\n [id]=\"_labelId\">\n <span class=\"mdc-list-item__primary-text\">{{ label }} <ng-content></ng-content></span>\n</span>\n\n<ng-content select=\"mat-option, ng-container\"></ng-content>\n", styles: [".mat-mdc-optgroup{color:var(--mat-optgroup-label-text-color, var(--mat-sys-on-surface-variant));font-family:var(--mat-optgroup-label-text-font, var(--mat-sys-title-small-font));line-height:var(--mat-optgroup-label-text-line-height, var(--mat-sys-title-small-line-height));font-size:var(--mat-optgroup-label-text-size, var(--mat-sys-title-small-size));letter-spacing:var(--mat-optgroup-label-text-tracking, var(--mat-sys-title-small-tracking));font-weight:var(--mat-optgroup-label-text-weight, var(--mat-sys-title-small-weight))}.mat-mdc-optgroup-label{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;outline:none}.mat-mdc-optgroup-label.mdc-list-item--disabled{opacity:.38}.mat-mdc-optgroup-label .mdc-list-item__primary-text{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;white-space:normal}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1428
1476
  }
1429
1477
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptgroup, decorators: [{
1430
1478
  type: Component,
@@ -1448,6 +1496,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
1448
1496
  let _uniqueIdCounter = 0;
1449
1497
  /** Event object emitted by MatOption when selected or deselected. */
1450
1498
  class MatOptionSelectionChange {
1499
+ source;
1500
+ isUserInput;
1451
1501
  constructor(
1452
1502
  /** Reference to the option that emitted the event. */
1453
1503
  source,
@@ -1461,6 +1511,15 @@ class MatOptionSelectionChange {
1461
1511
  * Single option inside of a `<mat-select>` element.
1462
1512
  */
1463
1513
  class MatOption {
1514
+ _element = inject(ElementRef);
1515
+ _changeDetectorRef = inject(ChangeDetectorRef);
1516
+ _parent = inject(MAT_OPTION_PARENT_COMPONENT, { optional: true });
1517
+ group = inject(MAT_OPTGROUP, { optional: true });
1518
+ _signalDisableRipple = false;
1519
+ _selected = false;
1520
+ _active = false;
1521
+ _disabled = false;
1522
+ _mostRecentViewValue = '';
1464
1523
  /** Whether the wrapping component is in multiple selection mode. */
1465
1524
  get multiple() {
1466
1525
  return this._parent && this._parent.multiple;
@@ -1469,6 +1528,10 @@ class MatOption {
1469
1528
  get selected() {
1470
1529
  return this._selected;
1471
1530
  }
1531
+ /** The form value of the option. */
1532
+ value;
1533
+ /** The unique ID of the option. */
1534
+ id = `mat-option-${_uniqueIdCounter++}`;
1472
1535
  /** Whether the option is disabled. */
1473
1536
  get disabled() {
1474
1537
  return (this.group && this.group.disabled) || this._disabled;
@@ -1486,24 +1549,16 @@ class MatOption {
1486
1549
  get hideSingleSelectionIndicator() {
1487
1550
  return !!(this._parent && this._parent.hideSingleSelectionIndicator);
1488
1551
  }
1552
+ /** Event emitted when the option is selected or deselected. */
1553
+ // tslint:disable-next-line:no-output-on-prefix
1554
+ onSelectionChange = new EventEmitter();
1555
+ /** Element containing the option's text. */
1556
+ _text;
1557
+ /** Emits when the state of the option changes and any parents have to be notified. */
1558
+ _stateChanges = new Subject();
1489
1559
  constructor() {
1490
- this._element = inject(ElementRef);
1491
- this._changeDetectorRef = inject(ChangeDetectorRef);
1492
- this._parent = inject(MAT_OPTION_PARENT_COMPONENT, { optional: true });
1493
- this.group = inject(MAT_OPTGROUP, { optional: true });
1494
- this._signalDisableRipple = false;
1495
- this._selected = false;
1496
- this._active = false;
1497
- this._disabled = false;
1498
- this._mostRecentViewValue = '';
1499
- /** The unique ID of the option. */
1500
- this.id = `mat-option-${_uniqueIdCounter++}`;
1501
- /** Event emitted when the option is selected or deselected. */
1502
- // tslint:disable-next-line:no-output-on-prefix
1503
- this.onSelectionChange = new EventEmitter();
1504
- /** Emits when the state of the option changes and any parents have to be notified. */
1505
- this._stateChanges = new Subject();
1506
1560
  inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);
1561
+ inject(_CdkPrivateStyleLoader).load(_VisuallyHiddenLoader);
1507
1562
  this._signalDisableRipple = !!this._parent && isSignal(this._parent.disableRipple);
1508
1563
  }
1509
1564
  /**
@@ -1631,8 +1686,8 @@ class MatOption {
1631
1686
  _emitSelectionChangeEvent(isUserInput = false) {
1632
1687
  this.onSelectionChange.emit(new MatOptionSelectionChange(this, isUserInput));
1633
1688
  }
1634
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOption, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1635
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.10", type: MatOption, isStandalone: true, selector: "mat-option", inputs: { value: "value", id: "id", disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { onSelectionChange: "onSelectionChange" }, host: { attributes: { "role": "option" }, listeners: { "click": "_selectViaInteraction()", "keydown": "_handleKeydown($event)" }, properties: { "class.mdc-list-item--selected": "selected", "class.mat-mdc-option-multiple": "multiple", "class.mat-mdc-option-active": "active", "class.mdc-list-item--disabled": "disabled", "id": "id", "attr.aria-selected": "selected", "attr.aria-disabled": "disabled.toString()" }, classAttribute: "mat-mdc-option mdc-list-item" }, viewQueries: [{ propertyName: "_text", first: true, predicate: ["text"], descendants: true, static: true }], exportAs: ["matOption"], ngImport: i0, template: "<!-- Set aria-hidden=\"true\" to this DOM node and other decorative nodes in this file. This might\n be contributing to issue where sometimes VoiceOver focuses on a TextNode in the a11y tree instead\n of the Option node (#23202). Most assistive technology will generally ignore non-role,\n non-text-content elements. Adding aria-hidden seems to make VoiceOver behave more consistently. -->\n@if (multiple) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n [state]=\"selected ? 'checked' : 'unchecked'\"\n aria-hidden=\"true\"></mat-pseudo-checkbox>\n}\n\n<ng-content select=\"mat-icon\"></ng-content>\n\n<span class=\"mdc-list-item__primary-text\" #text><ng-content></ng-content></span>\n\n<!-- Render checkmark at the end for single-selection. -->\n@if (!multiple && selected && !hideSingleSelectionIndicator) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n state=\"checked\"\n aria-hidden=\"true\"\n appearance=\"minimal\"></mat-pseudo-checkbox>\n}\n\n<!-- See a11y notes inside optgroup.ts for context behind this element. -->\n@if (group && group._inert) {\n <span class=\"cdk-visually-hidden\">({{ group.label }})</span>\n}\n\n<div class=\"mat-mdc-option-ripple mat-focus-indicator\" aria-hidden=\"true\" mat-ripple\n [matRippleTrigger]=\"_getHostElement()\" [matRippleDisabled]=\"disabled || disableRipple\">\n</div>\n", styles: [".mat-mdc-option{-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-option-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-option-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-option-label-text-size, var(--mat-sys-body-large-size));letter-spacing:var(--mat-option-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-option-label-text-weight, var(--mat-sys-body-large-weight))}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent));outline:0}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-multiple){background-color:var(--mat-option-selected-state-layer-color, var(--mat-sys-secondary-container))}.mat-mdc-option .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option.mdc-list-item{align-items:center;background:rgba(0,0,0,0)}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}@media(forced-colors: active){.mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{content:\"\";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{right:auto;left:16px}}.mat-mdc-option-multiple{--mdc-list-list-item-selected-container-color:var(--mdc-list-list-item-container-color, transparent)}.mat-mdc-option-active .mat-focus-indicator::before{content:\"\"}"], dependencies: [{ kind: "component", type: MatPseudoCheckbox, selector: "mat-pseudo-checkbox", inputs: ["state", "disabled", "appearance"] }, { kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1689
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOption, deps: [], target: i0.ɵɵFactoryTarget.Component });
1690
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.10", type: MatOption, isStandalone: true, selector: "mat-option", inputs: { value: "value", id: "id", disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { onSelectionChange: "onSelectionChange" }, host: { attributes: { "role": "option" }, listeners: { "click": "_selectViaInteraction()", "keydown": "_handleKeydown($event)" }, properties: { "class.mdc-list-item--selected": "selected", "class.mat-mdc-option-multiple": "multiple", "class.mat-mdc-option-active": "active", "class.mdc-list-item--disabled": "disabled", "id": "id", "attr.aria-selected": "selected", "attr.aria-disabled": "disabled.toString()" }, classAttribute: "mat-mdc-option mdc-list-item" }, viewQueries: [{ propertyName: "_text", first: true, predicate: ["text"], descendants: true, static: true }], exportAs: ["matOption"], ngImport: i0, template: "<!-- Set aria-hidden=\"true\" to this DOM node and other decorative nodes in this file. This might\n be contributing to issue where sometimes VoiceOver focuses on a TextNode in the a11y tree instead\n of the Option node (#23202). Most assistive technology will generally ignore non-role,\n non-text-content elements. Adding aria-hidden seems to make VoiceOver behave more consistently. -->\n@if (multiple) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n [state]=\"selected ? 'checked' : 'unchecked'\"\n aria-hidden=\"true\"></mat-pseudo-checkbox>\n}\n\n<ng-content select=\"mat-icon\"></ng-content>\n\n<span class=\"mdc-list-item__primary-text\" #text><ng-content></ng-content></span>\n\n<!-- Render checkmark at the end for single-selection. -->\n@if (!multiple && selected && !hideSingleSelectionIndicator) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n state=\"checked\"\n aria-hidden=\"true\"\n appearance=\"minimal\"></mat-pseudo-checkbox>\n}\n\n<!-- See a11y notes inside optgroup.ts for context behind this element. -->\n@if (group && group._inert) {\n <span class=\"cdk-visually-hidden\">({{ group.label }})</span>\n}\n\n<div class=\"mat-mdc-option-ripple mat-focus-indicator\" aria-hidden=\"true\" mat-ripple\n [matRippleTrigger]=\"_getHostElement()\" [matRippleDisabled]=\"disabled || disableRipple\">\n</div>\n", styles: [".mat-mdc-option{-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-option-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-option-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-option-label-text-size, var(--mat-sys-body-large-size));letter-spacing:var(--mat-option-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-option-label-text-weight, var(--mat-sys-body-large-weight))}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent));outline:0}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-multiple){background-color:var(--mat-option-selected-state-layer-color, var(--mat-sys-secondary-container))}.mat-mdc-option .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option.mdc-list-item{align-items:center;background:rgba(0,0,0,0)}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}@media(forced-colors: active){.mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{content:\"\";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{right:auto;left:16px}}.mat-mdc-option-multiple{--mdc-list-list-item-selected-container-color:var(--mdc-list-list-item-container-color, transparent)}.mat-mdc-option-active .mat-focus-indicator::before{content:\"\"}"], dependencies: [{ kind: "component", type: MatPseudoCheckbox, selector: "mat-pseudo-checkbox", inputs: ["state", "disabled", "appearance"] }, { kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1636
1691
  }
1637
1692
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOption, decorators: [{
1638
1693
  type: Component,
@@ -1711,9 +1766,9 @@ function _getOptionScrollPosition(optionOffset, optionHeight, currentScrollPosit
1711
1766
  }
1712
1767
 
1713
1768
  class MatOptionModule {
1714
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1715
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, imports: [MatRippleModule, MatCommonModule, MatPseudoCheckboxModule, MatOption, MatOptgroup], exports: [MatOption, MatOptgroup] }); }
1716
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, imports: [MatRippleModule, MatCommonModule, MatPseudoCheckboxModule] }); }
1769
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1770
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, imports: [MatRippleModule, MatCommonModule, MatPseudoCheckboxModule, MatOption, MatOptgroup], exports: [MatOption, MatOptgroup] });
1771
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, imports: [MatRippleModule, MatCommonModule, MatPseudoCheckboxModule] });
1717
1772
  }
1718
1773
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, decorators: [{
1719
1774
  type: NgModule,
@@ -1748,28 +1803,14 @@ const matRippleDisabled = 'mat-ripple-loader-disabled';
1748
1803
  * @docs-private
1749
1804
  */
1750
1805
  class MatRippleLoader {
1806
+ _document = inject(DOCUMENT, { optional: true });
1807
+ _animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
1808
+ _globalRippleOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, { optional: true });
1809
+ _platform = inject(Platform);
1810
+ _ngZone = inject(NgZone);
1811
+ _injector = inject(Injector);
1812
+ _hosts = new Map();
1751
1813
  constructor() {
1752
- this._document = inject(DOCUMENT, { optional: true });
1753
- this._animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
1754
- this._globalRippleOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, { optional: true });
1755
- this._platform = inject(Platform);
1756
- this._ngZone = inject(NgZone);
1757
- this._injector = inject(Injector);
1758
- this._hosts = new Map();
1759
- /**
1760
- * Handles creating and attaching component internals
1761
- * when a component is initially interacted with.
1762
- */
1763
- this._onInteraction = (event) => {
1764
- const eventTarget = _getEventTarget(event);
1765
- if (eventTarget instanceof HTMLElement) {
1766
- // TODO(wagnermaciel): Consider batching these events to improve runtime performance.
1767
- const element = eventTarget.closest(`[${matRippleUninitialized}="${this._globalRippleOptions?.namespace ?? ''}"]`);
1768
- if (element) {
1769
- this._createRipple(element);
1770
- }
1771
- }
1772
- };
1773
1814
  this._ngZone.runOutsideAngular(() => {
1774
1815
  for (const event of rippleInteractionEvents) {
1775
1816
  this._document?.addEventListener(event, this._onInteraction, eventListenerOptions);
@@ -1826,6 +1867,20 @@ class MatRippleLoader {
1826
1867
  host.removeAttribute(matRippleDisabled);
1827
1868
  }
1828
1869
  }
1870
+ /**
1871
+ * Handles creating and attaching component internals
1872
+ * when a component is initially interacted with.
1873
+ */
1874
+ _onInteraction = (event) => {
1875
+ const eventTarget = _getEventTarget(event);
1876
+ if (eventTarget instanceof HTMLElement) {
1877
+ // TODO(wagnermaciel): Consider batching these events to improve runtime performance.
1878
+ const element = eventTarget.closest(`[${matRippleUninitialized}="${this._globalRippleOptions?.namespace ?? ''}"]`);
1879
+ if (element) {
1880
+ this._createRipple(element);
1881
+ }
1882
+ }
1883
+ };
1829
1884
  /** Creates a MatRipple and appends it to the given element. */
1830
1885
  _createRipple(host) {
1831
1886
  if (!this._document || this._hosts.has(host)) {
@@ -1874,8 +1929,8 @@ class MatRippleLoader {
1874
1929
  this._hosts.delete(host);
1875
1930
  }
1876
1931
  }
1877
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1878
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleLoader, providedIn: 'root' }); }
1932
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1933
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleLoader, providedIn: 'root' });
1879
1934
  }
1880
1935
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleLoader, decorators: [{
1881
1936
  type: Injectable,
@@ -1888,8 +1943,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
1888
1943
  * @docs-private
1889
1944
  */
1890
1945
  class _MatInternalFormField {
1891
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatInternalFormField, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1892
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _MatInternalFormField, isStandalone: true, selector: "div[mat-internal-form-field]", inputs: { labelPosition: "labelPosition" }, host: { properties: { "class.mdc-form-field--align-end": "labelPosition === \"before\"" }, classAttribute: "mdc-form-field mat-internal-form-field" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".mat-internal-form-field{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;vertical-align:middle}.mat-internal-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mat-internal-form-field>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end .mdc-form-field--align-end label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1946
+ /** Position of the label relative to the content. */
1947
+ labelPosition;
1948
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatInternalFormField, deps: [], target: i0.ɵɵFactoryTarget.Component });
1949
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _MatInternalFormField, isStandalone: true, selector: "div[mat-internal-form-field]", inputs: { labelPosition: "labelPosition" }, host: { properties: { "class.mdc-form-field--align-end": "labelPosition === \"before\"" }, classAttribute: "mdc-form-field mat-internal-form-field" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".mat-internal-form-field{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;vertical-align:middle}.mat-internal-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mat-internal-form-field>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end .mdc-form-field--align-end label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1893
1950
  }
1894
1951
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatInternalFormField, decorators: [{
1895
1952
  type: Component,