@angular/material 19.0.0-next.3 → 19.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 (210) hide show
  1. package/autocomplete/index.d.ts +5 -15
  2. package/badge/index.d.ts +3 -7
  3. package/bottom-sheet/index.d.ts +5 -15
  4. package/button/index.d.ts +20 -24
  5. package/button-toggle/index.d.ts +5 -8
  6. package/card/index.d.ts +2 -2
  7. package/checkbox/index.d.ts +16 -7
  8. package/chips/index.d.ts +13 -24
  9. package/core/_core-theme.scss +0 -22
  10. package/core/index.d.ts +30 -34
  11. package/core/tokens/m3/mat/_badge.scss +3 -3
  12. package/datepicker/index.d.ts +44 -70
  13. package/dialog/index.d.ts +10 -34
  14. package/dialog/testing/index.d.ts +1 -1
  15. package/expansion/index.d.ts +9 -13
  16. package/fesm2022/autocomplete/testing.mjs.map +1 -1
  17. package/fesm2022/autocomplete.mjs +42 -72
  18. package/fesm2022/autocomplete.mjs.map +1 -1
  19. package/fesm2022/badge/testing.mjs.map +1 -1
  20. package/fesm2022/badge.mjs +22 -29
  21. package/fesm2022/badge.mjs.map +1 -1
  22. package/fesm2022/bottom-sheet/testing.mjs.map +1 -1
  23. package/fesm2022/bottom-sheet.mjs +25 -40
  24. package/fesm2022/bottom-sheet.mjs.map +1 -1
  25. package/fesm2022/button/testing.mjs.map +1 -1
  26. package/fesm2022/button-toggle/testing.mjs.map +1 -1
  27. package/fesm2022/button-toggle.mjs +26 -42
  28. package/fesm2022/button-toggle.mjs.map +1 -1
  29. package/fesm2022/button.mjs +68 -137
  30. package/fesm2022/button.mjs.map +1 -1
  31. package/fesm2022/card/testing.mjs.map +1 -1
  32. package/fesm2022/card.mjs +50 -54
  33. package/fesm2022/card.mjs.map +1 -1
  34. package/fesm2022/checkbox/testing.mjs.map +1 -1
  35. package/fesm2022/checkbox.mjs +38 -39
  36. package/fesm2022/checkbox.mjs.map +1 -1
  37. package/fesm2022/chips/testing.mjs.map +1 -1
  38. package/fesm2022/chips.mjs +93 -144
  39. package/fesm2022/chips.mjs.map +1 -1
  40. package/fesm2022/core/testing.mjs.map +1 -1
  41. package/fesm2022/core.mjs +102 -215
  42. package/fesm2022/core.mjs.map +1 -1
  43. package/fesm2022/datepicker/testing.mjs.map +1 -1
  44. package/fesm2022/datepicker.mjs +192 -328
  45. package/fesm2022/datepicker.mjs.map +1 -1
  46. package/fesm2022/dialog/testing.mjs +3 -3
  47. package/fesm2022/dialog/testing.mjs.map +1 -1
  48. package/fesm2022/dialog.mjs +47 -105
  49. package/fesm2022/dialog.mjs.map +1 -1
  50. package/fesm2022/divider/testing.mjs.map +1 -1
  51. package/fesm2022/divider.mjs +7 -7
  52. package/fesm2022/divider.mjs.map +1 -1
  53. package/fesm2022/expansion/testing.mjs.map +1 -1
  54. package/fesm2022/expansion.mjs +54 -89
  55. package/fesm2022/expansion.mjs.map +1 -1
  56. package/fesm2022/form-field/testing/control.mjs.map +1 -1
  57. package/fesm2022/form-field/testing.mjs.map +1 -1
  58. package/fesm2022/form-field.mjs +89 -93
  59. package/fesm2022/form-field.mjs.map +1 -1
  60. package/fesm2022/grid-list/testing.mjs.map +1 -1
  61. package/fesm2022/grid-list.mjs +35 -42
  62. package/fesm2022/grid-list.mjs.map +1 -1
  63. package/fesm2022/icon/testing.mjs +7 -7
  64. package/fesm2022/icon/testing.mjs.map +1 -1
  65. package/fesm2022/icon.mjs +20 -29
  66. package/fesm2022/icon.mjs.map +1 -1
  67. package/fesm2022/input/testing.mjs.map +1 -1
  68. package/fesm2022/input.mjs +29 -53
  69. package/fesm2022/input.mjs.map +1 -1
  70. package/fesm2022/list/testing.mjs.map +1 -1
  71. package/fesm2022/list.mjs +106 -145
  72. package/fesm2022/list.mjs.map +1 -1
  73. package/fesm2022/material.mjs.map +1 -1
  74. package/fesm2022/menu/testing.mjs.map +1 -1
  75. package/fesm2022/menu.mjs +63 -111
  76. package/fesm2022/menu.mjs.map +1 -1
  77. package/fesm2022/paginator/testing.mjs.map +1 -1
  78. package/fesm2022/paginator.mjs +10 -10
  79. package/fesm2022/paginator.mjs.map +1 -1
  80. package/fesm2022/progress-bar/testing.mjs.map +1 -1
  81. package/fesm2022/progress-bar.mjs +18 -25
  82. package/fesm2022/progress-bar.mjs.map +1 -1
  83. package/fesm2022/progress-spinner/testing.mjs.map +1 -1
  84. package/fesm2022/progress-spinner.mjs +14 -20
  85. package/fesm2022/progress-spinner.mjs.map +1 -1
  86. package/fesm2022/radio/testing.mjs.map +1 -1
  87. package/fesm2022/radio.mjs +29 -42
  88. package/fesm2022/radio.mjs.map +1 -1
  89. package/fesm2022/select/testing.mjs.map +1 -1
  90. package/fesm2022/select.mjs +34 -66
  91. package/fesm2022/select.mjs.map +1 -1
  92. package/fesm2022/sidenav/testing.mjs.map +1 -1
  93. package/fesm2022/sidenav.mjs +67 -87
  94. package/fesm2022/sidenav.mjs.map +1 -1
  95. package/fesm2022/slide-toggle/testing.mjs.map +1 -1
  96. package/fesm2022/slide-toggle.mjs +26 -34
  97. package/fesm2022/slide-toggle.mjs.map +1 -1
  98. package/fesm2022/slider/testing.mjs.map +1 -1
  99. package/fesm2022/slider.mjs +61 -69
  100. package/fesm2022/slider.mjs.map +1 -1
  101. package/fesm2022/snack-bar/testing.mjs.map +1 -1
  102. package/fesm2022/snack-bar.mjs +49 -62
  103. package/fesm2022/snack-bar.mjs.map +1 -1
  104. package/fesm2022/sort/testing.mjs.map +1 -1
  105. package/fesm2022/sort.mjs +30 -49
  106. package/fesm2022/sort.mjs.map +1 -1
  107. package/fesm2022/stepper/testing.mjs.map +1 -1
  108. package/fesm2022/stepper.mjs +56 -68
  109. package/fesm2022/stepper.mjs.map +1 -1
  110. package/fesm2022/table/testing.mjs.map +1 -1
  111. package/fesm2022/table.mjs +55 -55
  112. package/fesm2022/table.mjs.map +1 -1
  113. package/fesm2022/tabs/testing.mjs.map +1 -1
  114. package/fesm2022/tabs.mjs +119 -174
  115. package/fesm2022/tabs.mjs.map +1 -1
  116. package/fesm2022/toolbar/testing.mjs.map +1 -1
  117. package/fesm2022/toolbar.mjs +17 -21
  118. package/fesm2022/toolbar.mjs.map +1 -1
  119. package/fesm2022/tooltip/testing.mjs.map +1 -1
  120. package/fesm2022/tooltip.mjs +53 -67
  121. package/fesm2022/tooltip.mjs.map +1 -1
  122. package/fesm2022/tree/testing.mjs.map +1 -1
  123. package/fesm2022/tree.mjs +35 -62
  124. package/fesm2022/tree.mjs.map +1 -1
  125. package/form-field/_mdc-text-field-structure.scss +49 -47
  126. package/form-field/index.d.ts +12 -24
  127. package/grid-list/index.d.ts +6 -8
  128. package/icon/index.d.ts +2 -2
  129. package/input/index.d.ts +3 -7
  130. package/list/_list-inherited-structure.scss +1 -13
  131. package/list/index.d.ts +10 -14
  132. package/menu/index.d.ts +15 -49
  133. package/package.json +2 -2
  134. package/prebuilt-themes/azure-blue.css +1 -1
  135. package/prebuilt-themes/cyan-orange.css +1 -1
  136. package/prebuilt-themes/deeppurple-amber.css +1 -1
  137. package/prebuilt-themes/indigo-pink.css +1 -1
  138. package/prebuilt-themes/magenta-violet.css +1 -1
  139. package/prebuilt-themes/pink-bluegrey.css +1 -1
  140. package/prebuilt-themes/purple-green.css +1 -1
  141. package/prebuilt-themes/rose-red.css +1 -1
  142. package/progress-bar/index.d.ts +3 -5
  143. package/progress-spinner/index.d.ts +2 -2
  144. package/radio/index.d.ts +5 -8
  145. package/schematics/ng-add/fonts/material-fonts.d.ts +1 -1
  146. package/schematics/ng-add/fonts/material-fonts.js +2 -2
  147. package/schematics/ng-add/fonts/material-fonts.mjs +2 -2
  148. package/schematics/ng-add/index.d.ts +1 -1
  149. package/schematics/ng-add/index.js +3 -3
  150. package/schematics/ng-add/index.mjs +3 -3
  151. package/schematics/ng-add/package-config.d.ts +1 -1
  152. package/schematics/ng-add/package-config.js +2 -2
  153. package/schematics/ng-add/package-config.mjs +2 -2
  154. package/schematics/ng-add/schema.d.ts +1 -1
  155. package/schematics/ng-add/schema.js +2 -2
  156. package/schematics/ng-add/schema.mjs +2 -2
  157. package/schematics/ng-add/setup-project.d.ts +1 -1
  158. package/schematics/ng-add/setup-project.js +3 -3
  159. package/schematics/ng-add/setup-project.mjs +3 -3
  160. package/schematics/ng-add/theming/create-custom-theme.d.ts +1 -1
  161. package/schematics/ng-add/theming/create-custom-theme.js +2 -2
  162. package/schematics/ng-add/theming/create-custom-theme.mjs +2 -2
  163. package/schematics/ng-add/theming/theming.d.ts +1 -1
  164. package/schematics/ng-add/theming/theming.js +2 -2
  165. package/schematics/ng-add/theming/theming.mjs +2 -2
  166. package/schematics/ng-generate/address-form/index.d.ts +1 -1
  167. package/schematics/ng-generate/address-form/index.js +2 -2
  168. package/schematics/ng-generate/address-form/index.mjs +2 -2
  169. package/schematics/ng-generate/address-form/schema.d.ts +1 -1
  170. package/schematics/ng-generate/address-form/schema.js +2 -2
  171. package/schematics/ng-generate/address-form/schema.mjs +2 -2
  172. package/schematics/ng-generate/dashboard/index.d.ts +1 -1
  173. package/schematics/ng-generate/dashboard/index.js +2 -2
  174. package/schematics/ng-generate/dashboard/index.mjs +2 -2
  175. package/schematics/ng-generate/dashboard/schema.d.ts +1 -1
  176. package/schematics/ng-generate/dashboard/schema.js +2 -2
  177. package/schematics/ng-generate/dashboard/schema.mjs +2 -2
  178. package/schematics/ng-generate/m3-theme/index_bundled.js +1 -1
  179. package/schematics/ng-generate/m3-theme/index_bundled.js.map +1 -1
  180. package/schematics/ng-generate/navigation/index.d.ts +1 -1
  181. package/schematics/ng-generate/navigation/index.js +2 -2
  182. package/schematics/ng-generate/navigation/index.mjs +2 -2
  183. package/schematics/ng-generate/navigation/schema.d.ts +1 -1
  184. package/schematics/ng-generate/navigation/schema.js +2 -2
  185. package/schematics/ng-generate/navigation/schema.mjs +2 -2
  186. package/schematics/ng-generate/table/index.d.ts +1 -1
  187. package/schematics/ng-generate/table/index.js +2 -2
  188. package/schematics/ng-generate/table/index.mjs +2 -2
  189. package/schematics/ng-generate/table/schema.d.ts +1 -1
  190. package/schematics/ng-generate/table/schema.js +2 -2
  191. package/schematics/ng-generate/table/schema.mjs +2 -2
  192. package/schematics/ng-generate/tree/index.d.ts +1 -1
  193. package/schematics/ng-generate/tree/index.js +2 -2
  194. package/schematics/ng-generate/tree/index.mjs +2 -2
  195. package/schematics/ng-generate/tree/schema.d.ts +1 -1
  196. package/schematics/ng-generate/tree/schema.js +2 -2
  197. package/schematics/ng-generate/tree/schema.mjs +2 -2
  198. package/schematics/ng-update/index_bundled.js +1 -1
  199. package/schematics/ng-update/index_bundled.js.map +1 -1
  200. package/select/index.d.ts +4 -14
  201. package/sidenav/index.d.ts +7 -17
  202. package/slide-toggle/index.d.ts +2 -2
  203. package/slider/index.d.ts +8 -8
  204. package/snack-bar/index.d.ts +6 -22
  205. package/sort/index.d.ts +4 -20
  206. package/stepper/index.d.ts +6 -13
  207. package/tabs/index.d.ts +21 -32
  208. package/toolbar/index.d.ts +3 -4
  209. package/tooltip/index.d.ts +5 -12
  210. package/tree/index.d.ts +5 -18
@@ -1,7 +1,7 @@
1
- import * as i1 from '@angular/cdk/bidi';
1
+ import { Directionality } from '@angular/cdk/bidi';
2
2
  import { Platform } from '@angular/cdk/platform';
3
3
  import * as i0 from '@angular/core';
4
- import { InjectionToken, inject, Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, Input, ViewChild, ANIMATION_MODULE_TYPE, booleanAttribute, numberAttribute, Optional, ViewChildren, ContentChild, ContentChildren, forwardRef, EventEmitter, signal, Directive, Output, NgModule } from '@angular/core';
4
+ import { InjectionToken, inject, ChangeDetectorRef, NgZone, ElementRef, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, ViewChild, ANIMATION_MODULE_TYPE, booleanAttribute, numberAttribute, ViewChildren, ContentChild, ContentChildren, forwardRef, EventEmitter, signal, Directive, Output, NgModule } from '@angular/core';
5
5
  import { RippleState, MatRipple, MAT_RIPPLE_GLOBAL_OPTIONS, MatCommonModule, MatRippleModule } from '@angular/material/core';
6
6
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
7
7
  import { Subject } from 'rxjs';
@@ -62,16 +62,18 @@ class MatSliderChange {
62
62
  * @docs-private
63
63
  */
64
64
  class MatSliderVisualThumb {
65
- constructor(_cdr, _ngZone, _elementRef, _slider) {
66
- this._cdr = _cdr;
67
- this._ngZone = _ngZone;
68
- this._slider = _slider;
65
+ constructor() {
66
+ this._cdr = inject(ChangeDetectorRef);
67
+ this._ngZone = inject(NgZone);
68
+ this._slider = inject(MAT_SLIDER);
69
69
  /** Whether the slider thumb is currently being hovered. */
70
70
  this._isHovered = false;
71
71
  /** Whether the slider thumb is currently being pressed. */
72
72
  this._isActive = false;
73
73
  /** Whether the value indicator tooltip is visible. */
74
74
  this._isValueIndicatorVisible = false;
75
+ /** The host native HTML input element. */
76
+ this._hostElement = inject(ElementRef).nativeElement;
75
77
  this._platform = inject(Platform);
76
78
  this._onPointerMove = (event) => {
77
79
  if (this._sliderInput._isFocused) {
@@ -129,16 +131,21 @@ class MatSliderVisualThumb {
129
131
  this._showHoverRipple();
130
132
  }
131
133
  };
132
- this._hostElement = _elementRef.nativeElement;
133
134
  }
134
135
  ngAfterViewInit() {
136
+ const sliderInput = this._slider._getInput(this.thumbPosition);
137
+ // No-op if the slider isn't configured properly. `MatSlider` will
138
+ // throw an error instructing the user how to set up the slider.
139
+ if (!sliderInput) {
140
+ return;
141
+ }
135
142
  this._ripple.radius = 24;
136
- this._sliderInput = this._slider._getInput(this.thumbPosition);
143
+ this._sliderInput = sliderInput;
137
144
  this._sliderInputEl = this._sliderInput._hostElement;
138
- const input = this._sliderInputEl;
139
145
  // These listeners don't update any data bindings so we bind them outside
140
146
  // of the NgZone to prevent Angular from needlessly running change detection.
141
147
  this._ngZone.runOutsideAngular(() => {
148
+ const input = this._sliderInputEl;
142
149
  input.addEventListener('pointermove', this._onPointerMove);
143
150
  input.addEventListener('pointerdown', this._onDragStart);
144
151
  input.addEventListener('pointerup', this._onDragEnd);
@@ -245,18 +252,15 @@ class MatSliderVisualThumb {
245
252
  this._isShowingRipple(this._focusRippleRef) ||
246
253
  this._isShowingRipple(this._activeRippleRef));
247
254
  }
248
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderVisualThumb, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.ElementRef }, { token: MAT_SLIDER }], target: i0.ɵɵFactoryTarget.Component }); }
249
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.2", type: MatSliderVisualThumb, isStandalone: true, selector: "mat-slider-visual-thumb", inputs: { discrete: "discrete", thumbPosition: "thumbPosition", valueIndicatorText: "valueIndicatorText" }, host: { classAttribute: "mdc-slider__thumb mat-mdc-slider-visual-thumb" }, providers: [{ provide: MAT_SLIDER_VISUAL_THUMB, useExisting: MatSliderVisualThumb }], viewQueries: [{ propertyName: "_ripple", first: true, predicate: MatRipple, descendants: true }, { propertyName: "_knob", first: true, predicate: ["knob"], descendants: true }, { propertyName: "_valueIndicatorContainer", first: true, predicate: ["valueIndicatorContainer"], descendants: true }], ngImport: i0, template: "@if (discrete) {\n <div class=\"mdc-slider__value-indicator-container\" #valueIndicatorContainer>\n <div class=\"mdc-slider__value-indicator\">\n <span class=\"mdc-slider__value-indicator-text\">{{valueIndicatorText}}</span>\n </div>\n </div>\n}\n<div class=\"mdc-slider__thumb-knob\" #knob></div>\n<div matRipple class=\"mat-focus-indicator\" [matRippleDisabled]=\"true\"></div>\n", styles: [".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}.mat-mdc-slider .mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--active,.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--inactive{position:absolute;left:2px}"], dependencies: [{ 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 }); }
255
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderVisualThumb, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
256
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.3", type: MatSliderVisualThumb, isStandalone: true, selector: "mat-slider-visual-thumb", inputs: { discrete: "discrete", thumbPosition: "thumbPosition", valueIndicatorText: "valueIndicatorText" }, host: { classAttribute: "mdc-slider__thumb mat-mdc-slider-visual-thumb" }, providers: [{ provide: MAT_SLIDER_VISUAL_THUMB, useExisting: MatSliderVisualThumb }], viewQueries: [{ propertyName: "_ripple", first: true, predicate: MatRipple, descendants: true }, { propertyName: "_knob", first: true, predicate: ["knob"], descendants: true }, { propertyName: "_valueIndicatorContainer", first: true, predicate: ["valueIndicatorContainer"], descendants: true }], ngImport: i0, template: "@if (discrete) {\n <div class=\"mdc-slider__value-indicator-container\" #valueIndicatorContainer>\n <div class=\"mdc-slider__value-indicator\">\n <span class=\"mdc-slider__value-indicator-text\">{{valueIndicatorText}}</span>\n </div>\n </div>\n}\n<div class=\"mdc-slider__thumb-knob\" #knob></div>\n<div matRipple class=\"mat-focus-indicator\" [matRippleDisabled]=\"true\"></div>\n", styles: [".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}.mat-mdc-slider .mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--active,.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--inactive{position:absolute;left:2px}"], dependencies: [{ 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 }); }
250
257
  }
251
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderVisualThumb, decorators: [{
258
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderVisualThumb, decorators: [{
252
259
  type: Component,
253
260
  args: [{ selector: 'mat-slider-visual-thumb', host: {
254
261
  'class': 'mdc-slider__thumb mat-mdc-slider-visual-thumb',
255
262
  }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: MAT_SLIDER_VISUAL_THUMB, useExisting: MatSliderVisualThumb }], standalone: true, imports: [MatRipple], template: "@if (discrete) {\n <div class=\"mdc-slider__value-indicator-container\" #valueIndicatorContainer>\n <div class=\"mdc-slider__value-indicator\">\n <span class=\"mdc-slider__value-indicator-text\">{{valueIndicatorText}}</span>\n </div>\n </div>\n}\n<div class=\"mdc-slider__thumb-knob\" #knob></div>\n<div matRipple class=\"mat-focus-indicator\" [matRippleDisabled]=\"true\"></div>\n", styles: [".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}.mat-mdc-slider .mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--active,.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--inactive{position:absolute;left:2px}"] }]
256
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.ElementRef }, { type: undefined, decorators: [{
257
- type: Inject,
258
- args: [MAT_SLIDER]
259
- }] }], propDecorators: { discrete: [{
263
+ }], ctorParameters: () => [], propDecorators: { discrete: [{
260
264
  type: Input
261
265
  }], thumbPosition: [{
262
266
  type: Input
@@ -458,12 +462,14 @@ class MatSlider {
458
462
  }
459
463
  }
460
464
  }
461
- constructor(_ngZone, _cdr, _elementRef, _dir, _globalRippleOptions, animationMode) {
462
- this._ngZone = _ngZone;
463
- this._cdr = _cdr;
464
- this._elementRef = _elementRef;
465
- this._dir = _dir;
466
- this._globalRippleOptions = _globalRippleOptions;
465
+ constructor() {
466
+ this._ngZone = inject(NgZone);
467
+ this._cdr = inject(ChangeDetectorRef);
468
+ this._elementRef = inject(ElementRef);
469
+ this._dir = inject(Directionality, { optional: true });
470
+ this._globalRippleOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, {
471
+ optional: true,
472
+ });
467
473
  this._disabled = false;
468
474
  this._discrete = false;
469
475
  /** Whether the slider displays tick marks along the slider track. */
@@ -501,9 +507,12 @@ class MatSlider {
501
507
  this._knobRadius = 8;
502
508
  /** Whether or not the slider thumbs overlap. */
503
509
  this._thumbsOverlap = false;
510
+ const animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
504
511
  this._noopAnimations = animationMode === 'NoopAnimations';
505
- this._dirChangeSubscription = this._dir.change.subscribe(() => this._onDirChange());
506
- this._isRtl = this._dir.value === 'rtl';
512
+ if (this._dir) {
513
+ this._dirChangeSubscription = this._dir.change.subscribe(() => this._onDirChange());
514
+ this._isRtl = this._dir.value === 'rtl';
515
+ }
507
516
  }
508
517
  ngAfterViewInit() {
509
518
  if (this._platform.isBrowser) {
@@ -556,7 +565,7 @@ class MatSlider {
556
565
  }
557
566
  /** Handles updating the slider ui after a dir change. */
558
567
  _onDirChange() {
559
- this._isRtl = this._dir.value === 'rtl';
568
+ this._isRtl = this._dir?.value === 'rtl';
560
569
  this._isRange ? this._onDirChangeRange() : this._onDirChangeNonRange();
561
570
  this._updateTickMarkUI();
562
571
  }
@@ -914,10 +923,10 @@ class MatSlider {
914
923
  const dy = event.clientY - centerY;
915
924
  return Math.pow(dx, 2) + Math.pow(dy, 2) < Math.pow(radius, 2);
916
925
  }
917
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSlider, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
918
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.2", type: MatSlider, isStandalone: true, selector: "mat-slider", inputs: { disabled: ["disabled", "disabled", booleanAttribute], discrete: ["discrete", "discrete", booleanAttribute], showTickMarks: ["showTickMarks", "showTickMarks", booleanAttribute], min: ["min", "min", numberAttribute], color: "color", disableRipple: ["disableRipple", "disableRipple", booleanAttribute], max: ["max", "max", numberAttribute], step: ["step", "step", numberAttribute], displayWith: "displayWith" }, host: { properties: { "class": "\"mat-\" + (color || \"primary\")", "class.mdc-slider--range": "_isRange", "class.mdc-slider--disabled": "disabled", "class.mdc-slider--discrete": "discrete", "class.mdc-slider--tick-marks": "showTickMarks", "class._mat-animation-noopable": "_noopAnimations" }, classAttribute: "mat-mdc-slider mdc-slider" }, providers: [{ provide: MAT_SLIDER, useExisting: MatSlider }], queries: [{ propertyName: "_input", first: true, predicate: MAT_SLIDER_THUMB, descendants: true }, { propertyName: "_inputs", predicate: MAT_SLIDER_RANGE_THUMB }], viewQueries: [{ propertyName: "_trackActive", first: true, predicate: ["trackActive"], descendants: true }, { propertyName: "_thumbs", predicate: MAT_SLIDER_VISUAL_THUMB, descendants: true }], exportAs: ["matSlider"], ngImport: i0, template: "<!-- Inputs -->\n<ng-content></ng-content>\n\n<!-- Track -->\n<div class=\"mdc-slider__track\">\n <div class=\"mdc-slider__track--inactive\"></div>\n <div class=\"mdc-slider__track--active\">\n <div #trackActive class=\"mdc-slider__track--active_fill\"></div>\n </div>\n @if (showTickMarks) {\n <div class=\"mdc-slider__tick-marks\" #tickMarkContainer>\n @if (_cachedWidth) {\n @for (tickMark of _tickMarks; track i; let i = $index) {\n <div\n [class]=\"tickMark === 0 ? 'mdc-slider__tick-mark--active' : 'mdc-slider__tick-mark--inactive'\"\n [style.transform]=\"_calcTickMarkTransform(i)\"></div>\n }\n }\n </div>\n }\n</div>\n\n<!-- Thumbs -->\n@if (_isRange) {\n <mat-slider-visual-thumb\n [discrete]=\"discrete\"\n [thumbPosition]=\"1\"\n [valueIndicatorText]=\"startValueIndicatorText\">\n </mat-slider-visual-thumb>\n}\n\n<mat-slider-visual-thumb\n [discrete]=\"discrete\"\n [thumbPosition]=\"2\"\n [valueIndicatorText]=\"endValueIndicatorText\">\n</mat-slider-visual-thumb>\n", styles: [".mdc-slider__track{position:absolute;top:50%;transform:translateY(-50%);width:100%;pointer-events:none;height:var(--mdc-slider-inactive-track-height, 4px)}.mdc-slider__track--active,.mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider__track--active{overflow:hidden;border-radius:var(--mdc-slider-active-track-shape, var(--mat-app-corner-full));height:var(--mdc-slider-active-track-height, 4px);top:calc((var(--mdc-slider-inactive-track-height, 4px) - var(--mdc-slider-active-track-height, 4px))/2)}.mdc-slider__track--active_fill{border-top-style:solid;box-sizing:border-box;height:100%;width:100%;position:relative;transform-origin:left;transition:transform 80ms ease;border-color:var(--mdc-slider-active-track-color, var(--mat-app-primary));border-top-width:var(--mdc-slider-active-track-height, 4px)}.mdc-slider--disabled .mdc-slider__track--active_fill{border-color:var(--mdc-slider-disabled-active-track-color, var(--mat-app-on-surface))}[dir=rtl] .mdc-slider__track--active_fill{-webkit-transform-origin:right;transform-origin:right}.mdc-slider__track--inactive{left:0;top:0;opacity:.24;background-color:var(--mdc-slider-inactive-track-color, var(--mat-app-surface-variant));height:var(--mdc-slider-inactive-track-height, 4px);border-radius:var(--mdc-slider-inactive-track-shape, var(--mat-app-corner-full))}.mdc-slider--disabled .mdc-slider__track--inactive{background-color:var(--mdc-slider-disabled-inactive-track-color, var(--mat-app-on-surface));opacity:.24}.mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:\"\";pointer-events:none}@media(forced-colors: active){.mdc-slider__track--inactive::before{border-color:CanvasText}}.mdc-slider__value-indicator-container{bottom:44px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);transform:var(--mat-slider-value-indicator-container-transform, translateX(-50%) rotate(-45deg))}.mdc-slider__thumb--with-indicator .mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider__value-indicator{display:flex;align-items:center;border-radius:4px;height:32px;padding:0 12px;transform:scale(0);transform-origin:bottom;opacity:1;transition:transform 100ms cubic-bezier(0.4, 0, 1, 1);word-break:normal;background-color:var(--mdc-slider-label-container-color, var(--mat-app-primary));color:var(--mdc-slider-label-label-text-color, var(--mat-app-on-primary));width:var(--mat-slider-value-indicator-width, 28px);height:var(--mat-slider-value-indicator-height, 28px);padding:var(--mat-slider-value-indicator-padding, 0);opacity:var(--mat-slider-value-indicator-opacity, 1);border-radius:var(--mat-slider-value-indicator-border-radius, 50% 50% 50% 0)}.mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:transform 100ms cubic-bezier(0, 0, 0.2, 1);transform:scale(1)}.mdc-slider__value-indicator::before{border-left:6px solid rgba(0,0,0,0);border-right:6px solid rgba(0,0,0,0);border-top:6px solid;bottom:-5px;content:\"\";height:0;left:50%;position:absolute;transform:translateX(-50%);width:0;display:var(--mat-slider-value-indicator-caret-display, none);border-top-color:var(--mdc-slider-label-container-color, var(--mat-app-primary))}.mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:\"\";pointer-events:none}@media(forced-colors: active){.mdc-slider__value-indicator::after{border-color:CanvasText}}.mdc-slider__value-indicator-text{text-align:center;width:var(--mat-slider-value-indicator-width, 28px);transform:var(--mat-slider-value-indicator-text-transform, rotate(45deg));font-family:var(--mdc-slider-label-label-text-font, var(--mat-app-label-medium-font));font-size:var(--mdc-slider-label-label-text-size, var(--mat-app-label-medium-size));font-weight:var(--mdc-slider-label-label-text-weight, var(--mat-app-label-medium-weight));line-height:var(--mdc-slider-label-label-text-line-height, var(--mat-app-label-medium-line-height));letter-spacing:var(--mdc-slider-label-label-text-tracking, var(--mat-app-label-medium-tracking))}.mdc-slider__thumb{-webkit-user-select:none;user-select:none;display:flex;left:-24px;outline:none;position:absolute;height:48px;width:48px;pointer-events:none}.mdc-slider--discrete .mdc-slider__thumb{transition:transform 80ms ease}.mdc-slider--disabled .mdc-slider__thumb{pointer-events:none}.mdc-slider__thumb--top{z-index:1}.mdc-slider__thumb-knob{position:absolute;box-sizing:border-box;left:50%;top:50%;transform:translate(-50%, -50%);border-style:solid;width:var(--mdc-slider-handle-width, 20px);height:var(--mdc-slider-handle-height, 20px);border-width:calc(var(--mdc-slider-handle-height, 20px)/2) calc(var(--mdc-slider-handle-width, 20px)/2);box-shadow:var(--mdc-slider-handle-elevation, var(--mat-app-level1));background-color:var(--mdc-slider-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-handle-color, var(--mat-app-primary));border-radius:var(--mdc-slider-handle-shape, var(--mat-app-corner-full))}.mdc-slider__thumb:hover .mdc-slider__thumb-knob{background-color:var(--mdc-slider-hover-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-hover-handle-color, var(--mat-app-primary))}.mdc-slider__thumb--focused .mdc-slider__thumb-knob{background-color:var(--mdc-slider-focus-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-focus-handle-color, var(--mat-app-primary))}.mdc-slider--disabled .mdc-slider__thumb-knob{background-color:var(--mdc-slider-disabled-handle-color, var(--mat-app-on-surface));border-color:var(--mdc-slider-disabled-handle-color, var(--mat-app-on-surface))}.mdc-slider__thumb--top .mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb:hover .mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb--focused .mdc-slider__thumb-knob{border:solid 1px #fff;box-sizing:content-box;border-color:var(--mdc-slider-with-overlap-handle-outline-color, var(--mat-app-on-primary));border-width:var(--mdc-slider-with-overlap-handle-outline-width, 1px)}.mdc-slider__tick-marks{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:space-between;padding:0 1px;position:absolute;width:100%}.mdc-slider__tick-mark--active,.mdc-slider__tick-mark--inactive{width:var(--mdc-slider-with-tick-marks-container-size, 2px);height:var(--mdc-slider-with-tick-marks-container-size, 2px);border-radius:var(--mdc-slider-with-tick-marks-container-shape, var(--mat-app-corner-full))}.mdc-slider__tick-mark--inactive{opacity:var(--mdc-slider-with-tick-marks-inactive-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-inactive-container-color, var(--mat-app-on-surface-variant))}.mdc-slider--disabled .mdc-slider__tick-mark--inactive{opacity:var(--mdc-slider-with-tick-marks-inactive-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-disabled-container-color, var(--mat-app-on-surface))}.mdc-slider__tick-mark--active{opacity:var(--mdc-slider-with-tick-marks-active-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-active-container-color, var(--mat-app-on-primary))}.mdc-slider__input{cursor:pointer;left:2px;margin:0;height:44px;opacity:0;position:absolute;top:2px;width:44px;box-sizing:content-box}.mdc-slider__input.mat-mdc-slider-input-no-pointer-events{pointer-events:none}.mdc-slider__input.mat-slider__right-input{left:auto;right:0}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;cursor:pointer;height:48px;margin:0 8px;position:relative;touch-action:pan-y;width:auto;min-width:112px;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-slider.mdc-slider--disabled{cursor:auto;opacity:.38}.mat-mdc-slider .mdc-slider__thumb,.mat-mdc-slider .mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider.mdc-slider--discrete .mdc-slider__thumb,.mat-mdc-slider.mdc-slider--discrete .mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider .mat-ripple .mat-ripple-element{background-color:var(--mat-slider-ripple-color, var(--mat-app-primary))}.mat-mdc-slider .mat-ripple .mat-mdc-slider-hover-ripple{background-color:var(--mat-slider-hover-state-layer-color, color-mix(in srgb, var(--mat-app-primary) 5%, transparent))}.mat-mdc-slider .mat-ripple .mat-mdc-slider-focus-ripple,.mat-mdc-slider .mat-ripple .mat-mdc-slider-active-ripple{background-color:var(--mat-slider-focus-state-layer-color, color-mix(in srgb, var(--mat-app-primary) 20%, transparent))}.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete .mdc-slider__thumb,.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete .mdc-slider__track--active_fill,.mat-mdc-slider._mat-animation-noopable .mdc-slider__value-indicator{transition:none}.mat-mdc-slider .mat-focus-indicator::before{border-radius:50%}.mdc-slider__thumb--focused .mat-focus-indicator::before{content:\"\"}"], dependencies: [{ kind: "component", type: MatSliderVisualThumb, selector: "mat-slider-visual-thumb", inputs: ["discrete", "thumbPosition", "valueIndicatorText"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
926
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSlider, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
927
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.3", type: MatSlider, isStandalone: true, selector: "mat-slider", inputs: { disabled: ["disabled", "disabled", booleanAttribute], discrete: ["discrete", "discrete", booleanAttribute], showTickMarks: ["showTickMarks", "showTickMarks", booleanAttribute], min: ["min", "min", numberAttribute], color: "color", disableRipple: ["disableRipple", "disableRipple", booleanAttribute], max: ["max", "max", numberAttribute], step: ["step", "step", numberAttribute], displayWith: "displayWith" }, host: { properties: { "class": "\"mat-\" + (color || \"primary\")", "class.mdc-slider--range": "_isRange", "class.mdc-slider--disabled": "disabled", "class.mdc-slider--discrete": "discrete", "class.mdc-slider--tick-marks": "showTickMarks", "class._mat-animation-noopable": "_noopAnimations" }, classAttribute: "mat-mdc-slider mdc-slider" }, providers: [{ provide: MAT_SLIDER, useExisting: MatSlider }], queries: [{ propertyName: "_input", first: true, predicate: MAT_SLIDER_THUMB, descendants: true }, { propertyName: "_inputs", predicate: MAT_SLIDER_RANGE_THUMB }], viewQueries: [{ propertyName: "_trackActive", first: true, predicate: ["trackActive"], descendants: true }, { propertyName: "_thumbs", predicate: MAT_SLIDER_VISUAL_THUMB, descendants: true }], exportAs: ["matSlider"], ngImport: i0, template: "<!-- Inputs -->\n<ng-content></ng-content>\n\n<!-- Track -->\n<div class=\"mdc-slider__track\">\n <div class=\"mdc-slider__track--inactive\"></div>\n <div class=\"mdc-slider__track--active\">\n <div #trackActive class=\"mdc-slider__track--active_fill\"></div>\n </div>\n @if (showTickMarks) {\n <div class=\"mdc-slider__tick-marks\" #tickMarkContainer>\n @if (_cachedWidth) {\n @for (tickMark of _tickMarks; track i; let i = $index) {\n <div\n [class]=\"tickMark === 0 ? 'mdc-slider__tick-mark--active' : 'mdc-slider__tick-mark--inactive'\"\n [style.transform]=\"_calcTickMarkTransform(i)\"></div>\n }\n }\n </div>\n }\n</div>\n\n<!-- Thumbs -->\n@if (_isRange) {\n <mat-slider-visual-thumb\n [discrete]=\"discrete\"\n [thumbPosition]=\"1\"\n [valueIndicatorText]=\"startValueIndicatorText\">\n </mat-slider-visual-thumb>\n}\n\n<mat-slider-visual-thumb\n [discrete]=\"discrete\"\n [thumbPosition]=\"2\"\n [valueIndicatorText]=\"endValueIndicatorText\">\n</mat-slider-visual-thumb>\n", styles: [".mdc-slider__track{position:absolute;top:50%;transform:translateY(-50%);width:100%;pointer-events:none;height:var(--mdc-slider-inactive-track-height, 4px)}.mdc-slider__track--active,.mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider__track--active{overflow:hidden;border-radius:var(--mdc-slider-active-track-shape, var(--mat-app-corner-full));height:var(--mdc-slider-active-track-height, 4px);top:calc((var(--mdc-slider-inactive-track-height, 4px) - var(--mdc-slider-active-track-height, 4px))/2)}.mdc-slider__track--active_fill{border-top-style:solid;box-sizing:border-box;height:100%;width:100%;position:relative;transform-origin:left;transition:transform 80ms ease;border-color:var(--mdc-slider-active-track-color, var(--mat-app-primary));border-top-width:var(--mdc-slider-active-track-height, 4px)}.mdc-slider--disabled .mdc-slider__track--active_fill{border-color:var(--mdc-slider-disabled-active-track-color, var(--mat-app-on-surface))}[dir=rtl] .mdc-slider__track--active_fill{-webkit-transform-origin:right;transform-origin:right}.mdc-slider__track--inactive{left:0;top:0;opacity:.24;background-color:var(--mdc-slider-inactive-track-color, var(--mat-app-surface-variant));height:var(--mdc-slider-inactive-track-height, 4px);border-radius:var(--mdc-slider-inactive-track-shape, var(--mat-app-corner-full))}.mdc-slider--disabled .mdc-slider__track--inactive{background-color:var(--mdc-slider-disabled-inactive-track-color, var(--mat-app-on-surface));opacity:.24}.mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:\"\";pointer-events:none}@media(forced-colors: active){.mdc-slider__track--inactive::before{border-color:CanvasText}}.mdc-slider__value-indicator-container{bottom:44px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);transform:var(--mat-slider-value-indicator-container-transform, translateX(-50%) rotate(-45deg))}.mdc-slider__thumb--with-indicator .mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider__value-indicator{display:flex;align-items:center;border-radius:4px;height:32px;padding:0 12px;transform:scale(0);transform-origin:bottom;opacity:1;transition:transform 100ms cubic-bezier(0.4, 0, 1, 1);word-break:normal;background-color:var(--mdc-slider-label-container-color, var(--mat-app-primary));color:var(--mdc-slider-label-label-text-color, var(--mat-app-on-primary));width:var(--mat-slider-value-indicator-width, 28px);height:var(--mat-slider-value-indicator-height, 28px);padding:var(--mat-slider-value-indicator-padding, 0);opacity:var(--mat-slider-value-indicator-opacity, 1);border-radius:var(--mat-slider-value-indicator-border-radius, 50% 50% 50% 0)}.mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:transform 100ms cubic-bezier(0, 0, 0.2, 1);transform:scale(1)}.mdc-slider__value-indicator::before{border-left:6px solid rgba(0,0,0,0);border-right:6px solid rgba(0,0,0,0);border-top:6px solid;bottom:-5px;content:\"\";height:0;left:50%;position:absolute;transform:translateX(-50%);width:0;display:var(--mat-slider-value-indicator-caret-display, none);border-top-color:var(--mdc-slider-label-container-color, var(--mat-app-primary))}.mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:\"\";pointer-events:none}@media(forced-colors: active){.mdc-slider__value-indicator::after{border-color:CanvasText}}.mdc-slider__value-indicator-text{text-align:center;width:var(--mat-slider-value-indicator-width, 28px);transform:var(--mat-slider-value-indicator-text-transform, rotate(45deg));font-family:var(--mdc-slider-label-label-text-font, var(--mat-app-label-medium-font));font-size:var(--mdc-slider-label-label-text-size, var(--mat-app-label-medium-size));font-weight:var(--mdc-slider-label-label-text-weight, var(--mat-app-label-medium-weight));line-height:var(--mdc-slider-label-label-text-line-height, var(--mat-app-label-medium-line-height));letter-spacing:var(--mdc-slider-label-label-text-tracking, var(--mat-app-label-medium-tracking))}.mdc-slider__thumb{-webkit-user-select:none;user-select:none;display:flex;left:-24px;outline:none;position:absolute;height:48px;width:48px;pointer-events:none}.mdc-slider--discrete .mdc-slider__thumb{transition:transform 80ms ease}.mdc-slider--disabled .mdc-slider__thumb{pointer-events:none}.mdc-slider__thumb--top{z-index:1}.mdc-slider__thumb-knob{position:absolute;box-sizing:border-box;left:50%;top:50%;transform:translate(-50%, -50%);border-style:solid;width:var(--mdc-slider-handle-width, 20px);height:var(--mdc-slider-handle-height, 20px);border-width:calc(var(--mdc-slider-handle-height, 20px)/2) calc(var(--mdc-slider-handle-width, 20px)/2);box-shadow:var(--mdc-slider-handle-elevation, var(--mat-app-level1));background-color:var(--mdc-slider-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-handle-color, var(--mat-app-primary));border-radius:var(--mdc-slider-handle-shape, var(--mat-app-corner-full))}.mdc-slider__thumb:hover .mdc-slider__thumb-knob{background-color:var(--mdc-slider-hover-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-hover-handle-color, var(--mat-app-primary))}.mdc-slider__thumb--focused .mdc-slider__thumb-knob{background-color:var(--mdc-slider-focus-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-focus-handle-color, var(--mat-app-primary))}.mdc-slider--disabled .mdc-slider__thumb-knob{background-color:var(--mdc-slider-disabled-handle-color, var(--mat-app-on-surface));border-color:var(--mdc-slider-disabled-handle-color, var(--mat-app-on-surface))}.mdc-slider__thumb--top .mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb:hover .mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb--focused .mdc-slider__thumb-knob{border:solid 1px #fff;box-sizing:content-box;border-color:var(--mdc-slider-with-overlap-handle-outline-color, var(--mat-app-on-primary));border-width:var(--mdc-slider-with-overlap-handle-outline-width, 1px)}.mdc-slider__tick-marks{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:space-between;padding:0 1px;position:absolute;width:100%}.mdc-slider__tick-mark--active,.mdc-slider__tick-mark--inactive{width:var(--mdc-slider-with-tick-marks-container-size, 2px);height:var(--mdc-slider-with-tick-marks-container-size, 2px);border-radius:var(--mdc-slider-with-tick-marks-container-shape, var(--mat-app-corner-full))}.mdc-slider__tick-mark--inactive{opacity:var(--mdc-slider-with-tick-marks-inactive-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-inactive-container-color, var(--mat-app-on-surface-variant))}.mdc-slider--disabled .mdc-slider__tick-mark--inactive{opacity:var(--mdc-slider-with-tick-marks-inactive-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-disabled-container-color, var(--mat-app-on-surface))}.mdc-slider__tick-mark--active{opacity:var(--mdc-slider-with-tick-marks-active-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-active-container-color, var(--mat-app-on-primary))}.mdc-slider__input{cursor:pointer;left:2px;margin:0;height:44px;opacity:0;position:absolute;top:2px;width:44px;box-sizing:content-box}.mdc-slider__input.mat-mdc-slider-input-no-pointer-events{pointer-events:none}.mdc-slider__input.mat-slider__right-input{left:auto;right:0}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;cursor:pointer;height:48px;margin:0 8px;position:relative;touch-action:pan-y;width:auto;min-width:112px;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-slider.mdc-slider--disabled{cursor:auto;opacity:.38}.mat-mdc-slider .mdc-slider__thumb,.mat-mdc-slider .mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider.mdc-slider--discrete .mdc-slider__thumb,.mat-mdc-slider.mdc-slider--discrete .mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider .mat-ripple .mat-ripple-element{background-color:var(--mat-slider-ripple-color, var(--mat-app-primary))}.mat-mdc-slider .mat-ripple .mat-mdc-slider-hover-ripple{background-color:var(--mat-slider-hover-state-layer-color, color-mix(in srgb, var(--mat-app-primary) 5%, transparent))}.mat-mdc-slider .mat-ripple .mat-mdc-slider-focus-ripple,.mat-mdc-slider .mat-ripple .mat-mdc-slider-active-ripple{background-color:var(--mat-slider-focus-state-layer-color, color-mix(in srgb, var(--mat-app-primary) 20%, transparent))}.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete .mdc-slider__thumb,.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete .mdc-slider__track--active_fill,.mat-mdc-slider._mat-animation-noopable .mdc-slider__value-indicator{transition:none}.mat-mdc-slider .mat-focus-indicator::before{border-radius:50%}.mdc-slider__thumb--focused .mat-focus-indicator::before{content:\"\"}"], dependencies: [{ kind: "component", type: MatSliderVisualThumb, selector: "mat-slider-visual-thumb", inputs: ["discrete", "thumbPosition", "valueIndicatorText"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
919
928
  }
920
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSlider, decorators: [{
929
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSlider, decorators: [{
921
930
  type: Component,
922
931
  args: [{ selector: 'mat-slider', host: {
923
932
  'class': 'mat-mdc-slider mdc-slider',
@@ -928,19 +937,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2",
928
937
  '[class.mdc-slider--tick-marks]': 'showTickMarks',
929
938
  '[class._mat-animation-noopable]': '_noopAnimations',
930
939
  }, exportAs: 'matSlider', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: MAT_SLIDER, useExisting: MatSlider }], standalone: true, imports: [MatSliderVisualThumb], template: "<!-- Inputs -->\n<ng-content></ng-content>\n\n<!-- Track -->\n<div class=\"mdc-slider__track\">\n <div class=\"mdc-slider__track--inactive\"></div>\n <div class=\"mdc-slider__track--active\">\n <div #trackActive class=\"mdc-slider__track--active_fill\"></div>\n </div>\n @if (showTickMarks) {\n <div class=\"mdc-slider__tick-marks\" #tickMarkContainer>\n @if (_cachedWidth) {\n @for (tickMark of _tickMarks; track i; let i = $index) {\n <div\n [class]=\"tickMark === 0 ? 'mdc-slider__tick-mark--active' : 'mdc-slider__tick-mark--inactive'\"\n [style.transform]=\"_calcTickMarkTransform(i)\"></div>\n }\n }\n </div>\n }\n</div>\n\n<!-- Thumbs -->\n@if (_isRange) {\n <mat-slider-visual-thumb\n [discrete]=\"discrete\"\n [thumbPosition]=\"1\"\n [valueIndicatorText]=\"startValueIndicatorText\">\n </mat-slider-visual-thumb>\n}\n\n<mat-slider-visual-thumb\n [discrete]=\"discrete\"\n [thumbPosition]=\"2\"\n [valueIndicatorText]=\"endValueIndicatorText\">\n</mat-slider-visual-thumb>\n", styles: [".mdc-slider__track{position:absolute;top:50%;transform:translateY(-50%);width:100%;pointer-events:none;height:var(--mdc-slider-inactive-track-height, 4px)}.mdc-slider__track--active,.mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider__track--active{overflow:hidden;border-radius:var(--mdc-slider-active-track-shape, var(--mat-app-corner-full));height:var(--mdc-slider-active-track-height, 4px);top:calc((var(--mdc-slider-inactive-track-height, 4px) - var(--mdc-slider-active-track-height, 4px))/2)}.mdc-slider__track--active_fill{border-top-style:solid;box-sizing:border-box;height:100%;width:100%;position:relative;transform-origin:left;transition:transform 80ms ease;border-color:var(--mdc-slider-active-track-color, var(--mat-app-primary));border-top-width:var(--mdc-slider-active-track-height, 4px)}.mdc-slider--disabled .mdc-slider__track--active_fill{border-color:var(--mdc-slider-disabled-active-track-color, var(--mat-app-on-surface))}[dir=rtl] .mdc-slider__track--active_fill{-webkit-transform-origin:right;transform-origin:right}.mdc-slider__track--inactive{left:0;top:0;opacity:.24;background-color:var(--mdc-slider-inactive-track-color, var(--mat-app-surface-variant));height:var(--mdc-slider-inactive-track-height, 4px);border-radius:var(--mdc-slider-inactive-track-shape, var(--mat-app-corner-full))}.mdc-slider--disabled .mdc-slider__track--inactive{background-color:var(--mdc-slider-disabled-inactive-track-color, var(--mat-app-on-surface));opacity:.24}.mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:\"\";pointer-events:none}@media(forced-colors: active){.mdc-slider__track--inactive::before{border-color:CanvasText}}.mdc-slider__value-indicator-container{bottom:44px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);transform:var(--mat-slider-value-indicator-container-transform, translateX(-50%) rotate(-45deg))}.mdc-slider__thumb--with-indicator .mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider__value-indicator{display:flex;align-items:center;border-radius:4px;height:32px;padding:0 12px;transform:scale(0);transform-origin:bottom;opacity:1;transition:transform 100ms cubic-bezier(0.4, 0, 1, 1);word-break:normal;background-color:var(--mdc-slider-label-container-color, var(--mat-app-primary));color:var(--mdc-slider-label-label-text-color, var(--mat-app-on-primary));width:var(--mat-slider-value-indicator-width, 28px);height:var(--mat-slider-value-indicator-height, 28px);padding:var(--mat-slider-value-indicator-padding, 0);opacity:var(--mat-slider-value-indicator-opacity, 1);border-radius:var(--mat-slider-value-indicator-border-radius, 50% 50% 50% 0)}.mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:transform 100ms cubic-bezier(0, 0, 0.2, 1);transform:scale(1)}.mdc-slider__value-indicator::before{border-left:6px solid rgba(0,0,0,0);border-right:6px solid rgba(0,0,0,0);border-top:6px solid;bottom:-5px;content:\"\";height:0;left:50%;position:absolute;transform:translateX(-50%);width:0;display:var(--mat-slider-value-indicator-caret-display, none);border-top-color:var(--mdc-slider-label-container-color, var(--mat-app-primary))}.mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:\"\";pointer-events:none}@media(forced-colors: active){.mdc-slider__value-indicator::after{border-color:CanvasText}}.mdc-slider__value-indicator-text{text-align:center;width:var(--mat-slider-value-indicator-width, 28px);transform:var(--mat-slider-value-indicator-text-transform, rotate(45deg));font-family:var(--mdc-slider-label-label-text-font, var(--mat-app-label-medium-font));font-size:var(--mdc-slider-label-label-text-size, var(--mat-app-label-medium-size));font-weight:var(--mdc-slider-label-label-text-weight, var(--mat-app-label-medium-weight));line-height:var(--mdc-slider-label-label-text-line-height, var(--mat-app-label-medium-line-height));letter-spacing:var(--mdc-slider-label-label-text-tracking, var(--mat-app-label-medium-tracking))}.mdc-slider__thumb{-webkit-user-select:none;user-select:none;display:flex;left:-24px;outline:none;position:absolute;height:48px;width:48px;pointer-events:none}.mdc-slider--discrete .mdc-slider__thumb{transition:transform 80ms ease}.mdc-slider--disabled .mdc-slider__thumb{pointer-events:none}.mdc-slider__thumb--top{z-index:1}.mdc-slider__thumb-knob{position:absolute;box-sizing:border-box;left:50%;top:50%;transform:translate(-50%, -50%);border-style:solid;width:var(--mdc-slider-handle-width, 20px);height:var(--mdc-slider-handle-height, 20px);border-width:calc(var(--mdc-slider-handle-height, 20px)/2) calc(var(--mdc-slider-handle-width, 20px)/2);box-shadow:var(--mdc-slider-handle-elevation, var(--mat-app-level1));background-color:var(--mdc-slider-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-handle-color, var(--mat-app-primary));border-radius:var(--mdc-slider-handle-shape, var(--mat-app-corner-full))}.mdc-slider__thumb:hover .mdc-slider__thumb-knob{background-color:var(--mdc-slider-hover-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-hover-handle-color, var(--mat-app-primary))}.mdc-slider__thumb--focused .mdc-slider__thumb-knob{background-color:var(--mdc-slider-focus-handle-color, var(--mat-app-primary));border-color:var(--mdc-slider-focus-handle-color, var(--mat-app-primary))}.mdc-slider--disabled .mdc-slider__thumb-knob{background-color:var(--mdc-slider-disabled-handle-color, var(--mat-app-on-surface));border-color:var(--mdc-slider-disabled-handle-color, var(--mat-app-on-surface))}.mdc-slider__thumb--top .mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb:hover .mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb--focused .mdc-slider__thumb-knob{border:solid 1px #fff;box-sizing:content-box;border-color:var(--mdc-slider-with-overlap-handle-outline-color, var(--mat-app-on-primary));border-width:var(--mdc-slider-with-overlap-handle-outline-width, 1px)}.mdc-slider__tick-marks{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:space-between;padding:0 1px;position:absolute;width:100%}.mdc-slider__tick-mark--active,.mdc-slider__tick-mark--inactive{width:var(--mdc-slider-with-tick-marks-container-size, 2px);height:var(--mdc-slider-with-tick-marks-container-size, 2px);border-radius:var(--mdc-slider-with-tick-marks-container-shape, var(--mat-app-corner-full))}.mdc-slider__tick-mark--inactive{opacity:var(--mdc-slider-with-tick-marks-inactive-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-inactive-container-color, var(--mat-app-on-surface-variant))}.mdc-slider--disabled .mdc-slider__tick-mark--inactive{opacity:var(--mdc-slider-with-tick-marks-inactive-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-disabled-container-color, var(--mat-app-on-surface))}.mdc-slider__tick-mark--active{opacity:var(--mdc-slider-with-tick-marks-active-container-opacity, 0.38);background-color:var(--mdc-slider-with-tick-marks-active-container-color, var(--mat-app-on-primary))}.mdc-slider__input{cursor:pointer;left:2px;margin:0;height:44px;opacity:0;position:absolute;top:2px;width:44px;box-sizing:content-box}.mdc-slider__input.mat-mdc-slider-input-no-pointer-events{pointer-events:none}.mdc-slider__input.mat-slider__right-input{left:auto;right:0}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;cursor:pointer;height:48px;margin:0 8px;position:relative;touch-action:pan-y;width:auto;min-width:112px;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-slider.mdc-slider--disabled{cursor:auto;opacity:.38}.mat-mdc-slider .mdc-slider__thumb,.mat-mdc-slider .mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider.mdc-slider--discrete .mdc-slider__thumb,.mat-mdc-slider.mdc-slider--discrete .mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation .mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider .mat-ripple .mat-ripple-element{background-color:var(--mat-slider-ripple-color, var(--mat-app-primary))}.mat-mdc-slider .mat-ripple .mat-mdc-slider-hover-ripple{background-color:var(--mat-slider-hover-state-layer-color, color-mix(in srgb, var(--mat-app-primary) 5%, transparent))}.mat-mdc-slider .mat-ripple .mat-mdc-slider-focus-ripple,.mat-mdc-slider .mat-ripple .mat-mdc-slider-active-ripple{background-color:var(--mat-slider-focus-state-layer-color, color-mix(in srgb, var(--mat-app-primary) 20%, transparent))}.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete .mdc-slider__thumb,.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete .mdc-slider__track--active_fill,.mat-mdc-slider._mat-animation-noopable .mdc-slider__value-indicator{transition:none}.mat-mdc-slider .mat-focus-indicator::before{border-radius:50%}.mdc-slider__thumb--focused .mat-focus-indicator::before{content:\"\"}"] }]
931
- }], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.Directionality, decorators: [{
932
- type: Optional
933
- }] }, { type: undefined, decorators: [{
934
- type: Optional
935
- }, {
936
- type: Inject,
937
- args: [MAT_RIPPLE_GLOBAL_OPTIONS]
938
- }] }, { type: undefined, decorators: [{
939
- type: Optional
940
- }, {
941
- type: Inject,
942
- args: [ANIMATION_MODULE_TYPE]
943
- }] }], propDecorators: { _trackActive: [{
940
+ }], ctorParameters: () => [], propDecorators: { _trackActive: [{
944
941
  type: ViewChild,
945
942
  args: ['trackActive']
946
943
  }], _thumbs: [{
@@ -981,7 +978,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2",
981
978
  /** Ensures that there is not an invalid configuration for the slider thumb inputs. */
982
979
  function _validateInputs(isRange, endInputElement, startInputElement) {
983
980
  const startValid = !isRange || startInputElement?._hostElement.hasAttribute('matSliderStartThumb');
984
- const endValid = endInputElement._hostElement.hasAttribute(isRange ? 'matSliderEndThumb' : 'matSliderThumb');
981
+ const endValid = endInputElement?._hostElement.hasAttribute(isRange ? 'matSliderEndThumb' : 'matSliderThumb');
985
982
  if (!startValid || !endValid) {
986
983
  _throwInvalidInputConfigurationError();
987
984
  }
@@ -1129,11 +1126,11 @@ class MatSliderThumb {
1129
1126
  _setIsFocused(v) {
1130
1127
  this._isFocused = v;
1131
1128
  }
1132
- constructor(_ngZone, _elementRef, _cdr, _slider) {
1133
- this._ngZone = _ngZone;
1134
- this._elementRef = _elementRef;
1135
- this._cdr = _cdr;
1136
- this._slider = _slider;
1129
+ constructor() {
1130
+ this._ngZone = inject(NgZone);
1131
+ this._elementRef = inject(ElementRef);
1132
+ this._cdr = inject(ChangeDetectorRef);
1133
+ this._slider = inject(MAT_SLIDER);
1137
1134
  /** Event emitted when the `value` is changed. */
1138
1135
  this.valueChange = new EventEmitter();
1139
1136
  /** Event emitted when the slider thumb starts being dragged. */
@@ -1145,6 +1142,8 @@ class MatSliderThumb {
1145
1142
  * @docs-private
1146
1143
  */
1147
1144
  this.thumbPosition = _MatThumb.END;
1145
+ /** The host native HTML input element. */
1146
+ this._hostElement = this._elementRef.nativeElement;
1148
1147
  /** The aria-valuetext string representation of the input's value. */
1149
1148
  this._valuetext = signal('');
1150
1149
  /** The radius of a native html slider's knob. */
@@ -1183,7 +1182,6 @@ class MatSliderThumb {
1183
1182
  */
1184
1183
  this._isControlInitialized = false;
1185
1184
  this._platform = inject(Platform);
1186
- this._hostElement = _elementRef.nativeElement;
1187
1185
  this._ngZone.runOutsideAngular(() => {
1188
1186
  this._hostElement.addEventListener('pointerdown', this._onPointerDown.bind(this));
1189
1187
  this._hostElement.addEventListener('pointermove', this._onPointerMove.bind(this));
@@ -1449,13 +1447,13 @@ class MatSliderThumb {
1449
1447
  blur() {
1450
1448
  this._hostElement.blur();
1451
1449
  }
1452
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderThumb, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_SLIDER }], target: i0.ɵɵFactoryTarget.Directive }); }
1453
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.0-next.2", type: MatSliderThumb, isStandalone: true, selector: "input[matSliderThumb]", inputs: { value: ["value", "value", numberAttribute] }, outputs: { valueChange: "valueChange", dragStart: "dragStart", dragEnd: "dragEnd" }, host: { attributes: { "type": "range" }, listeners: { "change": "_onChange()", "input": "_onInput()", "blur": "_onBlur()", "focus": "_onFocus()" }, properties: { "attr.aria-valuetext": "_valuetext()" }, classAttribute: "mdc-slider__input" }, providers: [
1450
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderThumb, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1451
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.0-next.3", type: MatSliderThumb, isStandalone: true, selector: "input[matSliderThumb]", inputs: { value: ["value", "value", numberAttribute] }, outputs: { valueChange: "valueChange", dragStart: "dragStart", dragEnd: "dragEnd" }, host: { attributes: { "type": "range" }, listeners: { "change": "_onChange()", "input": "_onInput()", "blur": "_onBlur()", "focus": "_onFocus()" }, properties: { "attr.aria-valuetext": "_valuetext()" }, classAttribute: "mdc-slider__input" }, providers: [
1454
1452
  MAT_SLIDER_THUMB_VALUE_ACCESSOR,
1455
1453
  { provide: MAT_SLIDER_THUMB, useExisting: MatSliderThumb },
1456
1454
  ], exportAs: ["matSliderThumb"], ngImport: i0 }); }
1457
1455
  }
1458
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderThumb, decorators: [{
1456
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderThumb, decorators: [{
1459
1457
  type: Directive,
1460
1458
  args: [{
1461
1459
  selector: 'input[matSliderThumb]',
@@ -1477,10 +1475,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2",
1477
1475
  ],
1478
1476
  standalone: true,
1479
1477
  }]
1480
- }], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
1481
- type: Inject,
1482
- args: [MAT_SLIDER]
1483
- }] }], propDecorators: { value: [{
1478
+ }], ctorParameters: () => [], propDecorators: { value: [{
1484
1479
  type: Input,
1485
1480
  args: [{ transform: numberAttribute }]
1486
1481
  }], valueChange: [{
@@ -1524,9 +1519,9 @@ class MatSliderRangeThumb extends MatSliderThumb {
1524
1519
  this._isLeftThumb =
1525
1520
  (this._isEndThumb && this._slider._isRtl) || (!this._isEndThumb && !this._slider._isRtl);
1526
1521
  }
1527
- constructor(_ngZone, _slider, _elementRef, _cdr) {
1528
- super(_ngZone, _elementRef, _cdr, _slider);
1529
- this._cdr = _cdr;
1522
+ constructor() {
1523
+ super();
1524
+ this._cdr = inject(ChangeDetectorRef);
1530
1525
  this._isEndThumb = this._hostElement.hasAttribute('matSliderEndThumb');
1531
1526
  this._setIsLeftThumb();
1532
1527
  this.thumbPosition = this._isEndThumb ? _MatThumb.END : _MatThumb.START;
@@ -1670,13 +1665,13 @@ class MatSliderRangeThumb extends MatSliderThumb {
1670
1665
  this._updateWidthInactive();
1671
1666
  this._updateSibling();
1672
1667
  }
1673
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderRangeThumb, deps: [{ token: i0.NgZone }, { token: MAT_SLIDER }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1674
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.2", type: MatSliderRangeThumb, isStandalone: true, selector: "input[matSliderStartThumb], input[matSliderEndThumb]", providers: [
1668
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderRangeThumb, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1669
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.3", type: MatSliderRangeThumb, isStandalone: true, selector: "input[matSliderStartThumb], input[matSliderEndThumb]", providers: [
1675
1670
  MAT_SLIDER_RANGE_THUMB_VALUE_ACCESSOR,
1676
1671
  { provide: MAT_SLIDER_RANGE_THUMB, useExisting: MatSliderRangeThumb },
1677
1672
  ], exportAs: ["matSliderRangeThumb"], usesInheritance: true, ngImport: i0 }); }
1678
1673
  }
1679
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderRangeThumb, decorators: [{
1674
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderRangeThumb, decorators: [{
1680
1675
  type: Directive,
1681
1676
  args: [{
1682
1677
  selector: 'input[matSliderStartThumb], input[matSliderEndThumb]',
@@ -1687,23 +1682,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2",
1687
1682
  ],
1688
1683
  standalone: true,
1689
1684
  }]
1690
- }], ctorParameters: () => [{ type: i0.NgZone }, { type: undefined, decorators: [{
1691
- type: Inject,
1692
- args: [MAT_SLIDER]
1693
- }] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }] });
1685
+ }], ctorParameters: () => [] });
1694
1686
 
1695
1687
  class MatSliderModule {
1696
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1697
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderModule, imports: [MatCommonModule,
1688
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1689
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderModule, imports: [MatCommonModule,
1698
1690
  MatRippleModule,
1699
1691
  MatSlider,
1700
1692
  MatSliderThumb,
1701
1693
  MatSliderRangeThumb,
1702
1694
  MatSliderVisualThumb], exports: [MatSlider, MatSliderThumb, MatSliderRangeThumb] }); }
1703
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderModule, imports: [MatCommonModule,
1695
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderModule, imports: [MatCommonModule,
1704
1696
  MatRippleModule] }); }
1705
1697
  }
1706
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.2", ngImport: i0, type: MatSliderModule, decorators: [{
1698
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.3", ngImport: i0, type: MatSliderModule, decorators: [{
1707
1699
  type: NgModule,
1708
1700
  args: [{
1709
1701
  imports: [