@angular/material-experimental 13.1.0-next.3 → 13.1.2

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 (232) hide show
  1. package/LICENSE +1 -1
  2. package/column-resize/_column-resize-theme.scss +51 -15
  3. package/column-resize/overlay-handle.d.ts +1 -0
  4. package/esm2020/column-resize/column-resize-directives/column-resize-flex.mjs +3 -3
  5. package/esm2020/column-resize/column-resize-directives/column-resize.mjs +3 -3
  6. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize-flex.mjs +3 -3
  7. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize.mjs +3 -3
  8. package/esm2020/column-resize/column-resize-module.mjs +12 -12
  9. package/esm2020/column-resize/overlay-handle.mjs +13 -8
  10. package/esm2020/column-resize/resizable-directives/default-enabled-resizable.mjs +3 -3
  11. package/esm2020/column-resize/resizable-directives/resizable.mjs +3 -3
  12. package/esm2020/column-resize/resize-strategy.mjs +3 -3
  13. package/esm2020/mdc-autocomplete/autocomplete-origin.mjs +3 -3
  14. package/esm2020/mdc-autocomplete/autocomplete-trigger.mjs +3 -3
  15. package/esm2020/mdc-autocomplete/autocomplete.mjs +3 -3
  16. package/esm2020/mdc-autocomplete/module.mjs +4 -4
  17. package/esm2020/mdc-button/button-base.mjs +14 -7
  18. package/esm2020/mdc-button/button.mjs +8 -8
  19. package/esm2020/mdc-button/fab.mjs +18 -18
  20. package/esm2020/mdc-button/icon-button.mjs +6 -6
  21. package/esm2020/mdc-button/module.mjs +4 -4
  22. package/esm2020/mdc-card/card.mjs +43 -43
  23. package/esm2020/mdc-card/module.mjs +4 -4
  24. package/esm2020/mdc-checkbox/checkbox.mjs +5 -5
  25. package/esm2020/mdc-checkbox/module.mjs +4 -4
  26. package/esm2020/mdc-chips/chip-edit-input.mjs +3 -3
  27. package/esm2020/mdc-chips/chip-grid.mjs +4 -6
  28. package/esm2020/mdc-chips/chip-icons.mjs +17 -10
  29. package/esm2020/mdc-chips/chip-input.mjs +4 -4
  30. package/esm2020/mdc-chips/chip-listbox.mjs +4 -4
  31. package/esm2020/mdc-chips/chip-option.mjs +4 -4
  32. package/esm2020/mdc-chips/chip-row.mjs +5 -5
  33. package/esm2020/mdc-chips/chip-set.mjs +4 -4
  34. package/esm2020/mdc-chips/chip.mjs +8 -8
  35. package/esm2020/mdc-chips/module.mjs +4 -4
  36. package/esm2020/mdc-core/option/index.mjs +4 -4
  37. package/esm2020/mdc-core/option/optgroup.mjs +3 -3
  38. package/esm2020/mdc-core/option/option.mjs +3 -3
  39. package/esm2020/mdc-dialog/dialog-container.mjs +4 -4
  40. package/esm2020/mdc-dialog/dialog-content-directives.mjs +12 -12
  41. package/esm2020/mdc-dialog/dialog.mjs +3 -3
  42. package/esm2020/mdc-dialog/module.mjs +4 -4
  43. package/esm2020/mdc-form-field/directives/error.mjs +3 -3
  44. package/esm2020/mdc-form-field/directives/floating-label.mjs +3 -3
  45. package/esm2020/mdc-form-field/directives/hint.mjs +3 -3
  46. package/esm2020/mdc-form-field/directives/label.mjs +3 -3
  47. package/esm2020/mdc-form-field/directives/line-ripple.mjs +3 -3
  48. package/esm2020/mdc-form-field/directives/notched-outline.mjs +3 -3
  49. package/esm2020/mdc-form-field/directives/prefix.mjs +3 -3
  50. package/esm2020/mdc-form-field/directives/suffix.mjs +3 -3
  51. package/esm2020/mdc-form-field/form-field.mjs +4 -4
  52. package/esm2020/mdc-form-field/module.mjs +4 -4
  53. package/esm2020/mdc-input/input.mjs +3 -3
  54. package/esm2020/mdc-input/module.mjs +4 -4
  55. package/esm2020/mdc-list/action-list.mjs +4 -4
  56. package/esm2020/mdc-list/interactive-list-base.mjs +12 -10
  57. package/esm2020/mdc-list/list-base.mjs +7 -7
  58. package/esm2020/mdc-list/list-option.mjs +6 -6
  59. package/esm2020/mdc-list/list-styling.mjs +12 -12
  60. package/esm2020/mdc-list/list.mjs +7 -7
  61. package/esm2020/mdc-list/module.mjs +4 -4
  62. package/esm2020/mdc-list/nav-list.mjs +4 -4
  63. package/esm2020/mdc-list/selection-list.mjs +6 -6
  64. package/esm2020/mdc-menu/directives.mjs +6 -6
  65. package/esm2020/mdc-menu/menu-item.mjs +3 -3
  66. package/esm2020/mdc-menu/menu.mjs +3 -3
  67. package/esm2020/mdc-menu/module.mjs +4 -4
  68. package/esm2020/mdc-paginator/module.mjs +4 -4
  69. package/esm2020/mdc-paginator/paginator.mjs +3 -3
  70. package/esm2020/mdc-progress-bar/module.mjs +4 -4
  71. package/esm2020/mdc-progress-bar/progress-bar.mjs +4 -4
  72. package/esm2020/mdc-progress-spinner/module.mjs +4 -4
  73. package/esm2020/mdc-progress-spinner/progress-spinner.mjs +4 -4
  74. package/esm2020/mdc-radio/module.mjs +4 -4
  75. package/esm2020/mdc-radio/radio.mjs +7 -7
  76. package/esm2020/mdc-select/module.mjs +4 -4
  77. package/esm2020/mdc-select/select.mjs +8 -8
  78. package/esm2020/mdc-sidenav/module.mjs +4 -4
  79. package/esm2020/mdc-slide-toggle/module.mjs +4 -4
  80. package/esm2020/mdc-slide-toggle/slide-toggle.mjs +5 -5
  81. package/esm2020/mdc-slider/global-change-and-input-listener.mjs +3 -3
  82. package/esm2020/mdc-slider/module.mjs +4 -4
  83. package/esm2020/mdc-slider/slider.mjs +44 -26
  84. package/esm2020/mdc-snack-bar/module.mjs +4 -4
  85. package/esm2020/mdc-snack-bar/simple-snack-bar.mjs +3 -3
  86. package/esm2020/mdc-snack-bar/snack-bar-container.mjs +4 -4
  87. package/esm2020/mdc-snack-bar/snack-bar-content.mjs +9 -9
  88. package/esm2020/mdc-snack-bar/snack-bar.mjs +3 -3
  89. package/esm2020/mdc-table/cell.mjs +21 -21
  90. package/esm2020/mdc-table/module.mjs +4 -4
  91. package/esm2020/mdc-table/row.mjs +21 -21
  92. package/esm2020/mdc-table/table.mjs +8 -8
  93. package/esm2020/mdc-table/text-column.mjs +3 -3
  94. package/esm2020/mdc-tabs/module.mjs +4 -4
  95. package/esm2020/mdc-tabs/tab-body.mjs +6 -6
  96. package/esm2020/mdc-tabs/tab-content.mjs +3 -3
  97. package/esm2020/mdc-tabs/tab-group.mjs +6 -6
  98. package/esm2020/mdc-tabs/tab-header.mjs +12 -5
  99. package/esm2020/mdc-tabs/tab-label-wrapper.mjs +4 -4
  100. package/esm2020/mdc-tabs/tab-label.mjs +3 -3
  101. package/esm2020/mdc-tabs/tab-nav-bar/tab-nav-bar.mjs +8 -8
  102. package/esm2020/mdc-tabs/tab.mjs +3 -3
  103. package/esm2020/mdc-tooltip/module.mjs +4 -4
  104. package/esm2020/mdc-tooltip/tooltip.mjs +8 -8
  105. package/esm2020/menubar/menubar-item.mjs +3 -3
  106. package/esm2020/menubar/menubar-module.mjs +4 -4
  107. package/esm2020/menubar/menubar.mjs +3 -3
  108. package/esm2020/popover-edit/lens-directives.mjs +9 -9
  109. package/esm2020/popover-edit/popover-edit-module.mjs +4 -4
  110. package/esm2020/popover-edit/table-directives.mjs +12 -12
  111. package/esm2020/selection/row-selection.mjs +3 -3
  112. package/esm2020/selection/select-all.mjs +3 -3
  113. package/esm2020/selection/selection-column.mjs +3 -3
  114. package/esm2020/selection/selection-module.mjs +4 -4
  115. package/esm2020/selection/selection-toggle.mjs +3 -3
  116. package/esm2020/selection/selection.mjs +3 -3
  117. package/esm2020/version.mjs +1 -1
  118. package/fesm2015/column-resize.mjs +45 -40
  119. package/fesm2015/column-resize.mjs.map +1 -1
  120. package/fesm2015/material-experimental.mjs +1 -1
  121. package/fesm2015/material-experimental.mjs.map +1 -1
  122. package/fesm2015/mdc-autocomplete.mjs +13 -13
  123. package/fesm2015/mdc-button.mjs +40 -40
  124. package/fesm2015/mdc-button.mjs.map +1 -1
  125. package/fesm2015/mdc-card.mjs +47 -47
  126. package/fesm2015/mdc-checkbox.mjs +8 -8
  127. package/fesm2015/mdc-checkbox.mjs.map +1 -1
  128. package/fesm2015/mdc-chips.mjs +49 -44
  129. package/fesm2015/mdc-chips.mjs.map +1 -1
  130. package/fesm2015/mdc-core.mjs +10 -10
  131. package/fesm2015/mdc-dialog.mjs +23 -23
  132. package/fesm2015/mdc-form-field.mjs +31 -31
  133. package/fesm2015/mdc-form-field.mjs.map +1 -1
  134. package/fesm2015/mdc-input.mjs +7 -7
  135. package/fesm2015/mdc-list.mjs +58 -56
  136. package/fesm2015/mdc-list.mjs.map +1 -1
  137. package/fesm2015/mdc-menu.mjs +16 -16
  138. package/fesm2015/mdc-paginator.mjs +7 -7
  139. package/fesm2015/mdc-progress-bar.mjs +8 -8
  140. package/fesm2015/mdc-progress-spinner.mjs +7 -7
  141. package/fesm2015/mdc-progress-spinner.mjs.map +1 -1
  142. package/fesm2015/mdc-radio.mjs +11 -11
  143. package/fesm2015/mdc-select.mjs +12 -12
  144. package/fesm2015/mdc-sidenav.mjs +4 -4
  145. package/fesm2015/mdc-slide-toggle.mjs +8 -8
  146. package/fesm2015/mdc-slide-toggle.mjs.map +1 -1
  147. package/fesm2015/mdc-slider.mjs +50 -32
  148. package/fesm2015/mdc-slider.mjs.map +1 -1
  149. package/fesm2015/mdc-snack-bar.mjs +23 -23
  150. package/fesm2015/mdc-table.mjs +57 -57
  151. package/fesm2015/mdc-tabs.mjs +45 -38
  152. package/fesm2015/mdc-tabs.mjs.map +1 -1
  153. package/fesm2015/mdc-tooltip.mjs +11 -11
  154. package/fesm2015/mdc-tooltip.mjs.map +1 -1
  155. package/fesm2015/menubar.mjs +10 -10
  156. package/fesm2015/popover-edit.mjs +25 -25
  157. package/fesm2015/selection.mjs +19 -19
  158. package/fesm2020/column-resize.mjs +45 -40
  159. package/fesm2020/column-resize.mjs.map +1 -1
  160. package/fesm2020/material-experimental.mjs +1 -1
  161. package/fesm2020/material-experimental.mjs.map +1 -1
  162. package/fesm2020/mdc-autocomplete.mjs +13 -13
  163. package/fesm2020/mdc-button.mjs +48 -41
  164. package/fesm2020/mdc-button.mjs.map +1 -1
  165. package/fesm2020/mdc-card.mjs +47 -47
  166. package/fesm2020/mdc-checkbox.mjs +8 -8
  167. package/fesm2020/mdc-checkbox.mjs.map +1 -1
  168. package/fesm2020/mdc-chips.mjs +49 -44
  169. package/fesm2020/mdc-chips.mjs.map +1 -1
  170. package/fesm2020/mdc-core.mjs +10 -10
  171. package/fesm2020/mdc-dialog.mjs +23 -23
  172. package/fesm2020/mdc-form-field.mjs +31 -31
  173. package/fesm2020/mdc-form-field.mjs.map +1 -1
  174. package/fesm2020/mdc-input.mjs +7 -7
  175. package/fesm2020/mdc-list.mjs +58 -56
  176. package/fesm2020/mdc-list.mjs.map +1 -1
  177. package/fesm2020/mdc-menu.mjs +16 -16
  178. package/fesm2020/mdc-paginator.mjs +7 -7
  179. package/fesm2020/mdc-progress-bar.mjs +8 -8
  180. package/fesm2020/mdc-progress-spinner.mjs +7 -7
  181. package/fesm2020/mdc-progress-spinner.mjs.map +1 -1
  182. package/fesm2020/mdc-radio.mjs +11 -11
  183. package/fesm2020/mdc-select.mjs +12 -12
  184. package/fesm2020/mdc-sidenav.mjs +4 -4
  185. package/fesm2020/mdc-slide-toggle.mjs +8 -8
  186. package/fesm2020/mdc-slide-toggle.mjs.map +1 -1
  187. package/fesm2020/mdc-slider.mjs +50 -32
  188. package/fesm2020/mdc-slider.mjs.map +1 -1
  189. package/fesm2020/mdc-snack-bar.mjs +23 -23
  190. package/fesm2020/mdc-table.mjs +57 -57
  191. package/fesm2020/mdc-tabs.mjs +45 -38
  192. package/fesm2020/mdc-tabs.mjs.map +1 -1
  193. package/fesm2020/mdc-tooltip.mjs +11 -11
  194. package/fesm2020/mdc-tooltip.mjs.map +1 -1
  195. package/fesm2020/menubar.mjs +10 -10
  196. package/fesm2020/popover-edit.mjs +25 -25
  197. package/fesm2020/selection.mjs +19 -19
  198. package/mdc-button/button-base.d.ts +0 -3
  199. package/mdc-button/fab.d.ts +5 -7
  200. package/mdc-checkbox/_checkbox-theme.scss +32 -39
  201. package/mdc-checkbox/checkbox.d.ts +4 -9
  202. package/mdc-chips/chip-grid.d.ts +2 -4
  203. package/mdc-chips/chip-icons.d.ts +0 -3
  204. package/mdc-chips/chip-input.d.ts +2 -4
  205. package/mdc-chips/chip-listbox.d.ts +3 -6
  206. package/mdc-chips/chip-option.d.ts +2 -4
  207. package/mdc-chips/chip-row.d.ts +0 -2
  208. package/mdc-chips/chip-set.d.ts +2 -4
  209. package/mdc-chips/chip.d.ts +4 -9
  210. package/mdc-form-field/form-field.d.ts +1 -2
  211. package/mdc-helpers/_focus-indicators.scss +4 -0
  212. package/mdc-list/_list-option-theme.scss +2 -2
  213. package/mdc-list/_list-theme.scss +7 -3
  214. package/mdc-list/list-base.d.ts +3 -7
  215. package/mdc-list/list-option.d.ts +1 -2
  216. package/mdc-list/selection-list.d.ts +1 -2
  217. package/mdc-progress-spinner/progress-spinner.d.ts +3 -6
  218. package/mdc-select/_select-theme.scss +6 -27
  219. package/mdc-slide-toggle/slide-toggle.d.ts +5 -10
  220. package/mdc-slider/slider.d.ts +20 -16
  221. package/mdc-table/_table-theme.scss +1 -1
  222. package/mdc-tabs/_tabs-common.scss +0 -1
  223. package/mdc-tabs/tab-group.d.ts +1 -2
  224. package/mdc-tabs/tab-header.d.ts +0 -2
  225. package/mdc-tabs/tab-label-wrapper.d.ts +1 -2
  226. package/mdc-tabs/tab-nav-bar/tab-nav-bar.d.ts +1 -3
  227. package/mdc-theming/prebuilt/deeppurple-amber.css +1 -0
  228. package/mdc-theming/prebuilt/indigo-pink.css +1 -1
  229. package/mdc-theming/prebuilt/pink-bluegrey.css +1 -0
  230. package/mdc-theming/prebuilt/purple-green.css +1 -0
  231. package/mdc-tooltip/_tooltip-theme.scss +1 -1
  232. package/package.json +17 -3
@@ -58,9 +58,9 @@ class GlobalChangeAndInputListener {
58
58
  return fromEvent(this._document, type, { capture: true, passive: true }).pipe(takeUntil(this._destroyed), finalize(() => this._observables.delete(type)), share());
59
59
  }
60
60
  }
61
- GlobalChangeAndInputListener.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: GlobalChangeAndInputListener, deps: [{ token: DOCUMENT }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
62
- GlobalChangeAndInputListener.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: GlobalChangeAndInputListener, providedIn: 'root' });
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: GlobalChangeAndInputListener, decorators: [{
61
+ GlobalChangeAndInputListener.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: GlobalChangeAndInputListener, deps: [{ token: DOCUMENT }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
62
+ GlobalChangeAndInputListener.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: GlobalChangeAndInputListener, providedIn: 'root' });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: GlobalChangeAndInputListener, decorators: [{
64
64
  type: Injectable,
65
65
  args: [{ providedIn: 'root' }]
66
66
  }], ctorParameters: function () {
@@ -209,17 +209,24 @@ class MatSliderVisualThumb {
209
209
  _getKnob() {
210
210
  return this._knob.nativeElement;
211
211
  }
212
+ /**
213
+ * Gets the native HTML element of the slider thumb value indicator
214
+ * container.
215
+ */
216
+ _getValueIndicatorContainer() {
217
+ return this._valueIndicatorContainer.nativeElement;
218
+ }
212
219
  }
213
- MatSliderVisualThumb.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSliderVisualThumb, deps: [{ token: i0.NgZone }, { token: forwardRef(() => MatSlider) }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
214
- MatSliderVisualThumb.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: MatSliderVisualThumb, selector: "mat-slider-visual-thumb", inputs: { discrete: "discrete", thumbPosition: "thumbPosition", valueIndicatorText: "valueIndicatorText", disableRipple: "disableRipple" }, host: { properties: { "class.mdc-slider__thumb--short-value": "_isShortValue()" }, classAttribute: "mdc-slider__thumb mat-mdc-slider-visual-thumb" }, viewQueries: [{ propertyName: "_ripple", first: true, predicate: MatRipple, descendants: true }, { propertyName: "_knob", first: true, predicate: ["knob"], descendants: true }], ngImport: i0, template: "<div class=\"mdc-slider__value-indicator-container\" *ngIf=\"discrete\">\n <div class=\"mdc-slider__value-indicator\">\n <span class=\"mdc-slider__value-indicator-text\">{{valueIndicatorText}}</span>\n </div>\n</div>\n<div class=\"mdc-slider__thumb-knob\" #knob></div>\n<div\n matRipple\n class=\"mat-mdc-focus-indicator\"\n [matRippleDisabled]=\"true\"></div>\n", styles: [".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
215
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSliderVisualThumb, decorators: [{
220
+ MatSliderVisualThumb.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSliderVisualThumb, deps: [{ token: i0.NgZone }, { token: forwardRef(() => MatSlider) }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
221
+ MatSliderVisualThumb.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: MatSliderVisualThumb, selector: "mat-slider-visual-thumb", inputs: { discrete: "discrete", thumbPosition: "thumbPosition", valueIndicatorText: "valueIndicatorText", disableRipple: "disableRipple" }, host: { properties: { "class.mdc-slider__thumb--short-value": "_isShortValue()" }, classAttribute: "mdc-slider__thumb mat-mdc-slider-visual-thumb" }, 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: "<div class=\"mdc-slider__value-indicator-container\" *ngIf=\"discrete\" #valueIndicatorContainer>\n <div class=\"mdc-slider__value-indicator\">\n <span class=\"mdc-slider__value-indicator-text\">{{valueIndicatorText}}</span>\n </div>\n</div>\n<div class=\"mdc-slider__thumb-knob\" #knob></div>\n<div\n matRipple\n class=\"mat-mdc-focus-indicator\"\n [matRippleDisabled]=\"true\"></div>\n", styles: [".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
222
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSliderVisualThumb, decorators: [{
216
223
  type: Component,
217
224
  args: [{ selector: 'mat-slider-visual-thumb', host: {
218
225
  'class': 'mdc-slider__thumb mat-mdc-slider-visual-thumb',
219
226
  // NOTE: This class is used internally.
220
227
  // TODO(wagnermaciel): Remove this once it is handled by the mdc foundation (cl/388828896).
221
228
  '[class.mdc-slider__thumb--short-value]': '_isShortValue()',
222
- }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"mdc-slider__value-indicator-container\" *ngIf=\"discrete\">\n <div class=\"mdc-slider__value-indicator\">\n <span class=\"mdc-slider__value-indicator-text\">{{valueIndicatorText}}</span>\n </div>\n</div>\n<div class=\"mdc-slider__thumb-knob\" #knob></div>\n<div\n matRipple\n class=\"mat-mdc-focus-indicator\"\n [matRippleDisabled]=\"true\"></div>\n", styles: [".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}\n"] }]
229
+ }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"mdc-slider__value-indicator-container\" *ngIf=\"discrete\" #valueIndicatorContainer>\n <div class=\"mdc-slider__value-indicator\">\n <span class=\"mdc-slider__value-indicator-text\">{{valueIndicatorText}}</span>\n </div>\n</div>\n<div class=\"mdc-slider__thumb-knob\" #knob></div>\n<div\n matRipple\n class=\"mat-mdc-focus-indicator\"\n [matRippleDisabled]=\"true\"></div>\n", styles: [".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}\n"] }]
223
230
  }], ctorParameters: function () {
224
231
  return [{ type: i0.NgZone }, { type: MatSlider, decorators: [{
225
232
  type: Inject,
@@ -239,6 +246,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
239
246
  }], _knob: [{
240
247
  type: ViewChild,
241
248
  args: ['knob']
249
+ }], _valueIndicatorContainer: [{
250
+ type: ViewChild,
251
+ args: ['valueIndicatorContainer']
242
252
  }] } });
243
253
  /**
244
254
  * Directive that adds slider-specific behaviors to an input element inside `<mat-slider>`.
@@ -446,15 +456,15 @@ class MatSliderThumb {
446
456
  this._hostElement.setAttribute('aria-valuetext', this._slider.displayWith(this.value));
447
457
  }
448
458
  }
449
- MatSliderThumb.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSliderThumb, deps: [{ token: DOCUMENT }, { token: forwardRef(() => MatSlider) }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
450
- MatSliderThumb.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.1", type: MatSliderThumb, selector: "input[matSliderThumb], input[matSliderStartThumb], input[matSliderEndThumb]", inputs: { value: "value" }, outputs: { valueChange: "valueChange", dragStart: "dragStart", dragEnd: "dragEnd", _blur: "_blur", _focus: "_focus" }, host: { attributes: { "type": "range" }, listeners: { "blur": "_onBlur()", "focus": "_focus.emit()" }, classAttribute: "mdc-slider__input" }, providers: [
459
+ MatSliderThumb.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSliderThumb, deps: [{ token: DOCUMENT }, { token: forwardRef(() => MatSlider) }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
460
+ MatSliderThumb.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.0", type: MatSliderThumb, selector: "input[matSliderThumb], input[matSliderStartThumb], input[matSliderEndThumb]", inputs: { value: "value" }, outputs: { valueChange: "valueChange", dragStart: "dragStart", dragEnd: "dragEnd", _blur: "_blur", _focus: "_focus" }, host: { attributes: { "type": "range" }, listeners: { "blur": "_onBlur()", "focus": "_focus.emit()" }, classAttribute: "mdc-slider__input" }, providers: [
451
461
  {
452
462
  provide: NG_VALUE_ACCESSOR,
453
463
  useExisting: MatSliderThumb,
454
464
  multi: true,
455
465
  },
456
466
  ], exportAs: ["matSliderThumb"], ngImport: i0 });
457
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSliderThumb, decorators: [{
467
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSliderThumb, decorators: [{
458
468
  type: Directive,
459
469
  args: [{
460
470
  selector: 'input[matSliderThumb], input[matSliderStartThumb], input[matSliderEndThumb]',
@@ -592,6 +602,7 @@ class MatSlider extends _MatSliderMixinBase {
592
602
  }
593
603
  ngAfterViewInit() {
594
604
  if (typeof ngDevMode === 'undefined' || ngDevMode) {
605
+ _validateThumbs(this._isRange(), this._getThumb(Thumb.START), this._getThumb(Thumb.END));
595
606
  _validateInputs(this._isRange(), this._getInputElement(Thumb.START), this._getInputElement(Thumb.END));
596
607
  }
597
608
  if (this._platform.isBrowser) {
@@ -732,6 +743,13 @@ class MatSlider extends _MatSliderMixinBase {
732
743
  _getKnobElement(thumbPosition) {
733
744
  return this._getThumb(thumbPosition)._getKnob();
734
745
  }
746
+ /**
747
+ * Gets the slider value indicator container HTML element of the given thumb
748
+ * position.
749
+ */
750
+ _getValueIndicatorContainerElement(thumbPosition) {
751
+ return this._getThumb(thumbPosition)._getValueIndicatorContainer();
752
+ }
735
753
  /**
736
754
  * Sets the value indicator text of the given thumb position using the given value.
737
755
  *
@@ -762,9 +780,9 @@ class MatSlider extends _MatSliderMixinBase {
762
780
  return this.disabled || this.disableRipple || !!((_a = this._globalRippleOptions) === null || _a === void 0 ? void 0 : _a.disabled);
763
781
  }
764
782
  }
765
- MatSlider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSlider, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i3.Platform }, { token: GlobalChangeAndInputListener }, { token: DOCUMENT }, { token: i5.Directionality, optional: true }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
766
- MatSlider.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: MatSlider, selector: "mat-slider", inputs: { color: "color", disableRipple: "disableRipple", disabled: "disabled", discrete: "discrete", showTickMarks: "showTickMarks", min: "min", max: "max", step: "step", displayWith: "displayWith" }, host: { properties: { "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" }, queries: [{ propertyName: "_inputs", predicate: MatSliderThumb }], viewQueries: [{ propertyName: "_trackActive", first: true, predicate: ["trackActive"], descendants: true }, { propertyName: "_thumbs", predicate: MatSliderVisualThumb, descendants: true }], exportAs: ["matSlider"], usesInheritance: true, 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 class=\"mdc-slider__track--active_fill\" #trackActive></div>\n </div>\n <div *ngIf=\"showTickMarks\" class=\"mdc-slider__tick-marks\" #tickMarkContainer>\n <div *ngFor=\"let tickMark of _tickMarks\" [class]=\"_getTickMarkClass(tickMark)\"></div>\n </div>\n</div>\n\n<!-- Thumbs -->\n<mat-slider-visual-thumb\n *ngFor=\"let thumb of _inputs\"\n [discrete]=\"discrete\"\n [disableRipple]=\"_isRippleDisabled()\"\n [thumbPosition]=\"thumb._thumbPosition\"\n [valueIndicatorText]=\"_getValueIndicatorText(thumb._thumbPosition)\">\n</mat-slider-visual-thumb>\n", styles: [".mdc-slider{cursor:pointer;height:48px;margin:0 24px;position:relative;touch-action:pan-y}.mdc-slider .mdc-slider__track{height:4px;position:absolute;top:50%;transform:translateY(-50%);width:100%}.mdc-slider .mdc-slider__track--active,.mdc-slider .mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider .mdc-slider__track--active{border-radius:3px;height:6px;overflow:hidden;top:-1px}.mdc-slider .mdc-slider__track--active_fill{border-top:6px solid;box-sizing:border-box;height:100%;width:100%;position:relative;-webkit-transform-origin:left;transform-origin:left}[dir=rtl] .mdc-slider .mdc-slider__track--active_fill,.mdc-slider .mdc-slider__track--active_fill[dir=rtl]{-webkit-transform-origin:right;transform-origin:right}.mdc-slider .mdc-slider__track--inactive{border-radius:2px;height:4px;left:0;top:0}.mdc-slider .mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:\"\";pointer-events:none}.mdc-slider .mdc-slider__value-indicator-container{bottom:44px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%)}.mdc-slider .mdc-slider__value-indicator{transition:transform 100ms 0ms cubic-bezier(0.4, 0, 1, 1);align-items:center;border-radius:4px;display:flex;height:32px;padding:0 12px;transform:scale(0);transform-origin:bottom}.mdc-slider .mdc-slider__value-indicator::before{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid;bottom:-5px;content:\"\";height:0;left:50%;position:absolute;transform:translateX(-50%);width:0}.mdc-slider .mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:\"\";pointer-events:none}.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:transform 100ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale(1)}@media(prefers-reduced-motion){.mdc-slider .mdc-slider__value-indicator,.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:none}}.mdc-slider .mdc-slider__thumb{display:flex;height:48px;left:-24px;outline:none;position:absolute;user-select:none;width:48px}.mdc-slider .mdc-slider__thumb--top{z-index:1}.mdc-slider .mdc-slider__thumb--top .mdc-slider__thumb-knob,.mdc-slider .mdc-slider__thumb--top.mdc-slider__thumb:hover .mdc-slider__thumb-knob,.mdc-slider .mdc-slider__thumb--top.mdc-slider__thumb--focused .mdc-slider__thumb-knob{border-style:solid;border-width:1px;box-sizing:content-box}.mdc-slider .mdc-slider__thumb-knob{border:10px solid;border-radius:50%;box-sizing:border-box;height:20px;left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);width:20px}.mdc-slider .mdc-slider__thumb.mdc-ripple-upgraded--background-focused::before,.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):focus::before{transition-duration:75ms}.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded)::after{transition:opacity 150ms linear}.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):active::after{transition-duration:75ms}.mdc-slider .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 .mdc-slider__tick-mark--active,.mdc-slider .mdc-slider__tick-mark--inactive{border-radius:50%;height:2px;width:2px}.mdc-slider.mdc-slider--disabled{cursor:auto}.mdc-slider.mdc-slider--disabled .mdc-slider__thumb{pointer-events:none}.mdc-slider--discrete .mdc-slider__thumb,.mdc-slider--discrete .mdc-slider__track--active_fill{transition:transform 80ms ease}@media(prefers-reduced-motion){.mdc-slider--discrete .mdc-slider__thumb,.mdc-slider--discrete .mdc-slider__track--active_fill{transition:none}}.mdc-slider__input{cursor:pointer;left:0;margin:0;height:100%;opacity:0;pointer-events:none;position:absolute;top:0;width:100%}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;margin-left:8px;margin-right:8px;width:auto;min-width:112px}.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}\n"], components: [{ type: MatSliderVisualThumb, selector: "mat-slider-visual-thumb", inputs: ["discrete", "thumbPosition", "valueIndicatorText", "disableRipple"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
767
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSlider, decorators: [{
783
+ MatSlider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSlider, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i3.Platform }, { token: GlobalChangeAndInputListener }, { token: DOCUMENT }, { token: i5.Directionality, optional: true }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
784
+ MatSlider.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: MatSlider, selector: "mat-slider", inputs: { color: "color", disableRipple: "disableRipple", disabled: "disabled", discrete: "discrete", showTickMarks: "showTickMarks", min: "min", max: "max", step: "step", displayWith: "displayWith" }, host: { properties: { "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" }, queries: [{ propertyName: "_inputs", predicate: MatSliderThumb }], viewQueries: [{ propertyName: "_trackActive", first: true, predicate: ["trackActive"], descendants: true }, { propertyName: "_thumbs", predicate: MatSliderVisualThumb, descendants: true }], exportAs: ["matSlider"], usesInheritance: true, 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 class=\"mdc-slider__track--active_fill\" #trackActive></div>\n </div>\n <div *ngIf=\"showTickMarks\" class=\"mdc-slider__tick-marks\" #tickMarkContainer>\n <div *ngFor=\"let tickMark of _tickMarks\" [class]=\"_getTickMarkClass(tickMark)\"></div>\n </div>\n</div>\n\n<!-- Thumbs -->\n<mat-slider-visual-thumb\n *ngFor=\"let thumb of _inputs\"\n [discrete]=\"discrete\"\n [disableRipple]=\"_isRippleDisabled()\"\n [thumbPosition]=\"thumb._thumbPosition\"\n [valueIndicatorText]=\"_getValueIndicatorText(thumb._thumbPosition)\">\n</mat-slider-visual-thumb>\n", styles: [".mdc-slider{cursor:pointer;height:48px;margin:0 24px;position:relative;touch-action:pan-y}.mdc-slider .mdc-slider__track{height:4px;position:absolute;top:50%;transform:translateY(-50%);width:100%}.mdc-slider .mdc-slider__track--active,.mdc-slider .mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider .mdc-slider__track--active{border-radius:3px;height:6px;overflow:hidden;top:-1px}.mdc-slider .mdc-slider__track--active_fill{border-top:6px solid;box-sizing:border-box;height:100%;width:100%;position:relative;-webkit-transform-origin:left;transform-origin:left}[dir=rtl] .mdc-slider .mdc-slider__track--active_fill,.mdc-slider .mdc-slider__track--active_fill[dir=rtl]{-webkit-transform-origin:right;transform-origin:right}.mdc-slider .mdc-slider__track--inactive{border-radius:2px;height:4px;left:0;top:0}.mdc-slider .mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:\"\";pointer-events:none}@media screen and (forced-colors: active){.mdc-slider .mdc-slider__track--inactive::before{border-color:CanvasText}}.mdc-slider .mdc-slider__value-indicator-container{bottom:44px;left:50%;left:var(--slider-value-indicator-container-left, 50%);pointer-events:none;position:absolute;right:var(--slider-value-indicator-container-right);transform:translateX(-50%);transform:var(--slider-value-indicator-container-transform, translateX(-50%))}.mdc-slider .mdc-slider__value-indicator{transition:transform 100ms 0ms cubic-bezier(0.4, 0, 1, 1);align-items:center;border-radius:4px;display:flex;height:32px;padding:0 12px;transform:scale(0);transform-origin:bottom}.mdc-slider .mdc-slider__value-indicator::before{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid;bottom:-5px;content:\"\";height:0;left:50%;left:var(--slider-value-indicator-caret-left, 50%);position:absolute;right:var(--slider-value-indicator-caret-right);transform:translateX(-50%);transform:var(--slider-value-indicator-caret-transform, translateX(-50%));width:0}.mdc-slider .mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:\"\";pointer-events:none}@media screen and (forced-colors: active){.mdc-slider .mdc-slider__value-indicator::after{border-color:CanvasText}}.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:transform 100ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale(1)}@media(prefers-reduced-motion){.mdc-slider .mdc-slider__value-indicator,.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:none}}.mdc-slider .mdc-slider__thumb{display:flex;height:48px;left:-24px;outline:none;position:absolute;user-select:none;width:48px}.mdc-slider .mdc-slider__thumb--top{z-index:1}.mdc-slider .mdc-slider__thumb--top .mdc-slider__thumb-knob,.mdc-slider .mdc-slider__thumb--top.mdc-slider__thumb:hover .mdc-slider__thumb-knob,.mdc-slider .mdc-slider__thumb--top.mdc-slider__thumb--focused .mdc-slider__thumb-knob{border-style:solid;border-width:1px;box-sizing:content-box}.mdc-slider .mdc-slider__thumb-knob{border:10px solid;border-radius:50%;box-sizing:border-box;height:20px;left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);width:20px}.mdc-slider .mdc-slider__thumb.mdc-ripple-upgraded--background-focused::before,.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):focus::before{transition-duration:75ms}.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded)::after{transition:opacity 150ms linear}.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):active::after{transition-duration:75ms}.mdc-slider .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 .mdc-slider__tick-mark--active,.mdc-slider .mdc-slider__tick-mark--inactive{border-radius:50%;height:2px;width:2px}.mdc-slider--discrete .mdc-slider__thumb,.mdc-slider--discrete .mdc-slider__track--active_fill{transition:transform 80ms ease}@media(prefers-reduced-motion){.mdc-slider--discrete .mdc-slider__thumb,.mdc-slider--discrete .mdc-slider__track--active_fill{transition:none}}.mdc-slider--disabled{cursor:auto}.mdc-slider--disabled .mdc-slider__thumb{pointer-events:none}.mdc-slider__input{cursor:pointer;left:0;margin:0;height:100%;opacity:0;pointer-events:none;position:absolute;top:0;width:100%}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;margin-left:8px;margin-right:8px;width:auto;min-width:112px}.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}\n"], components: [{ type: MatSliderVisualThumb, selector: "mat-slider-visual-thumb", inputs: ["discrete", "thumbPosition", "valueIndicatorText", "disableRipple"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
785
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSlider, decorators: [{
768
786
  type: Component,
769
787
  args: [{ selector: 'mat-slider', host: {
770
788
  'class': 'mat-mdc-slider mdc-slider',
@@ -773,7 +791,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
773
791
  '[class.mdc-slider--discrete]': 'discrete',
774
792
  '[class.mdc-slider--tick-marks]': 'showTickMarks',
775
793
  '[class._mat-animation-noopable]': '_noopAnimations',
776
- }, exportAs: 'matSlider', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: ['color', 'disableRipple'], 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 class=\"mdc-slider__track--active_fill\" #trackActive></div>\n </div>\n <div *ngIf=\"showTickMarks\" class=\"mdc-slider__tick-marks\" #tickMarkContainer>\n <div *ngFor=\"let tickMark of _tickMarks\" [class]=\"_getTickMarkClass(tickMark)\"></div>\n </div>\n</div>\n\n<!-- Thumbs -->\n<mat-slider-visual-thumb\n *ngFor=\"let thumb of _inputs\"\n [discrete]=\"discrete\"\n [disableRipple]=\"_isRippleDisabled()\"\n [thumbPosition]=\"thumb._thumbPosition\"\n [valueIndicatorText]=\"_getValueIndicatorText(thumb._thumbPosition)\">\n</mat-slider-visual-thumb>\n", styles: [".mdc-slider{cursor:pointer;height:48px;margin:0 24px;position:relative;touch-action:pan-y}.mdc-slider .mdc-slider__track{height:4px;position:absolute;top:50%;transform:translateY(-50%);width:100%}.mdc-slider .mdc-slider__track--active,.mdc-slider .mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider .mdc-slider__track--active{border-radius:3px;height:6px;overflow:hidden;top:-1px}.mdc-slider .mdc-slider__track--active_fill{border-top:6px solid;box-sizing:border-box;height:100%;width:100%;position:relative;-webkit-transform-origin:left;transform-origin:left}[dir=rtl] .mdc-slider .mdc-slider__track--active_fill,.mdc-slider .mdc-slider__track--active_fill[dir=rtl]{-webkit-transform-origin:right;transform-origin:right}.mdc-slider .mdc-slider__track--inactive{border-radius:2px;height:4px;left:0;top:0}.mdc-slider .mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:\"\";pointer-events:none}.mdc-slider .mdc-slider__value-indicator-container{bottom:44px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%)}.mdc-slider .mdc-slider__value-indicator{transition:transform 100ms 0ms cubic-bezier(0.4, 0, 1, 1);align-items:center;border-radius:4px;display:flex;height:32px;padding:0 12px;transform:scale(0);transform-origin:bottom}.mdc-slider .mdc-slider__value-indicator::before{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid;bottom:-5px;content:\"\";height:0;left:50%;position:absolute;transform:translateX(-50%);width:0}.mdc-slider .mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:\"\";pointer-events:none}.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:transform 100ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale(1)}@media(prefers-reduced-motion){.mdc-slider .mdc-slider__value-indicator,.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:none}}.mdc-slider .mdc-slider__thumb{display:flex;height:48px;left:-24px;outline:none;position:absolute;user-select:none;width:48px}.mdc-slider .mdc-slider__thumb--top{z-index:1}.mdc-slider .mdc-slider__thumb--top .mdc-slider__thumb-knob,.mdc-slider .mdc-slider__thumb--top.mdc-slider__thumb:hover .mdc-slider__thumb-knob,.mdc-slider .mdc-slider__thumb--top.mdc-slider__thumb--focused .mdc-slider__thumb-knob{border-style:solid;border-width:1px;box-sizing:content-box}.mdc-slider .mdc-slider__thumb-knob{border:10px solid;border-radius:50%;box-sizing:border-box;height:20px;left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);width:20px}.mdc-slider .mdc-slider__thumb.mdc-ripple-upgraded--background-focused::before,.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):focus::before{transition-duration:75ms}.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded)::after{transition:opacity 150ms linear}.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):active::after{transition-duration:75ms}.mdc-slider .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 .mdc-slider__tick-mark--active,.mdc-slider .mdc-slider__tick-mark--inactive{border-radius:50%;height:2px;width:2px}.mdc-slider.mdc-slider--disabled{cursor:auto}.mdc-slider.mdc-slider--disabled .mdc-slider__thumb{pointer-events:none}.mdc-slider--discrete .mdc-slider__thumb,.mdc-slider--discrete .mdc-slider__track--active_fill{transition:transform 80ms ease}@media(prefers-reduced-motion){.mdc-slider--discrete .mdc-slider__thumb,.mdc-slider--discrete .mdc-slider__track--active_fill{transition:none}}.mdc-slider__input{cursor:pointer;left:0;margin:0;height:100%;opacity:0;pointer-events:none;position:absolute;top:0;width:100%}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;margin-left:8px;margin-right:8px;width:auto;min-width:112px}.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}\n"] }]
794
+ }, exportAs: 'matSlider', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: ['color', 'disableRipple'], 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 class=\"mdc-slider__track--active_fill\" #trackActive></div>\n </div>\n <div *ngIf=\"showTickMarks\" class=\"mdc-slider__tick-marks\" #tickMarkContainer>\n <div *ngFor=\"let tickMark of _tickMarks\" [class]=\"_getTickMarkClass(tickMark)\"></div>\n </div>\n</div>\n\n<!-- Thumbs -->\n<mat-slider-visual-thumb\n *ngFor=\"let thumb of _inputs\"\n [discrete]=\"discrete\"\n [disableRipple]=\"_isRippleDisabled()\"\n [thumbPosition]=\"thumb._thumbPosition\"\n [valueIndicatorText]=\"_getValueIndicatorText(thumb._thumbPosition)\">\n</mat-slider-visual-thumb>\n", styles: [".mdc-slider{cursor:pointer;height:48px;margin:0 24px;position:relative;touch-action:pan-y}.mdc-slider .mdc-slider__track{height:4px;position:absolute;top:50%;transform:translateY(-50%);width:100%}.mdc-slider .mdc-slider__track--active,.mdc-slider .mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider .mdc-slider__track--active{border-radius:3px;height:6px;overflow:hidden;top:-1px}.mdc-slider .mdc-slider__track--active_fill{border-top:6px solid;box-sizing:border-box;height:100%;width:100%;position:relative;-webkit-transform-origin:left;transform-origin:left}[dir=rtl] .mdc-slider .mdc-slider__track--active_fill,.mdc-slider .mdc-slider__track--active_fill[dir=rtl]{-webkit-transform-origin:right;transform-origin:right}.mdc-slider .mdc-slider__track--inactive{border-radius:2px;height:4px;left:0;top:0}.mdc-slider .mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:\"\";pointer-events:none}@media screen and (forced-colors: active){.mdc-slider .mdc-slider__track--inactive::before{border-color:CanvasText}}.mdc-slider .mdc-slider__value-indicator-container{bottom:44px;left:50%;left:var(--slider-value-indicator-container-left, 50%);pointer-events:none;position:absolute;right:var(--slider-value-indicator-container-right);transform:translateX(-50%);transform:var(--slider-value-indicator-container-transform, translateX(-50%))}.mdc-slider .mdc-slider__value-indicator{transition:transform 100ms 0ms cubic-bezier(0.4, 0, 1, 1);align-items:center;border-radius:4px;display:flex;height:32px;padding:0 12px;transform:scale(0);transform-origin:bottom}.mdc-slider .mdc-slider__value-indicator::before{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid;bottom:-5px;content:\"\";height:0;left:50%;left:var(--slider-value-indicator-caret-left, 50%);position:absolute;right:var(--slider-value-indicator-caret-right);transform:translateX(-50%);transform:var(--slider-value-indicator-caret-transform, translateX(-50%));width:0}.mdc-slider .mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:\"\";pointer-events:none}@media screen and (forced-colors: active){.mdc-slider .mdc-slider__value-indicator::after{border-color:CanvasText}}.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:transform 100ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale(1)}@media(prefers-reduced-motion){.mdc-slider .mdc-slider__value-indicator,.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator{transition:none}}.mdc-slider .mdc-slider__thumb{display:flex;height:48px;left:-24px;outline:none;position:absolute;user-select:none;width:48px}.mdc-slider .mdc-slider__thumb--top{z-index:1}.mdc-slider .mdc-slider__thumb--top .mdc-slider__thumb-knob,.mdc-slider .mdc-slider__thumb--top.mdc-slider__thumb:hover .mdc-slider__thumb-knob,.mdc-slider .mdc-slider__thumb--top.mdc-slider__thumb--focused .mdc-slider__thumb-knob{border-style:solid;border-width:1px;box-sizing:content-box}.mdc-slider .mdc-slider__thumb-knob{border:10px solid;border-radius:50%;box-sizing:border-box;height:20px;left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);width:20px}.mdc-slider .mdc-slider__thumb.mdc-ripple-upgraded--background-focused::before,.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):focus::before{transition-duration:75ms}.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded)::after{transition:opacity 150ms linear}.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):active::after{transition-duration:75ms}.mdc-slider .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 .mdc-slider__tick-mark--active,.mdc-slider .mdc-slider__tick-mark--inactive{border-radius:50%;height:2px;width:2px}.mdc-slider--discrete .mdc-slider__thumb,.mdc-slider--discrete .mdc-slider__track--active_fill{transition:transform 80ms ease}@media(prefers-reduced-motion){.mdc-slider--discrete .mdc-slider__thumb,.mdc-slider--discrete .mdc-slider__track--active_fill{transition:none}}.mdc-slider--disabled{cursor:auto}.mdc-slider--disabled .mdc-slider__thumb{pointer-events:none}.mdc-slider__input{cursor:pointer;left:0;margin:0;height:100%;opacity:0;pointer-events:none;position:absolute;top:0;width:100%}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;margin-left:8px;margin-right:8px;width:auto;min-width:112px}.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}\n"] }]
777
795
  }], ctorParameters: function () {
778
796
  return [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i3.Platform }, { type: GlobalChangeAndInputListener }, { type: undefined, decorators: [{
779
797
  type: Inject,
@@ -897,6 +915,10 @@ class SliderAdapter {
897
915
  this.getBoundingClientRect = () => {
898
916
  return this._delegate._elementRef.nativeElement.getBoundingClientRect();
899
917
  };
918
+ this.getValueIndicatorContainerWidth = (thumbPosition) => {
919
+ return this._delegate._getValueIndicatorContainerElement(thumbPosition).getBoundingClientRect()
920
+ .width;
921
+ };
900
922
  this.isRTL = () => {
901
923
  return this._delegate._isRTL();
902
924
  };
@@ -1058,22 +1080,18 @@ class SliderAdapter {
1058
1080
  return null;
1059
1081
  }
1060
1082
  }
1061
- /**
1062
- * Ensures that there is not an invalid configuration for the slider thumb inputs.
1063
- */
1083
+ /** Ensures that there is not an invalid configuration for the slider thumb inputs. */
1064
1084
  function _validateInputs(isRange, startInputElement, endInputElement) {
1065
- if (isRange) {
1066
- if (!startInputElement.hasAttribute('matSliderStartThumb')) {
1067
- _throwInvalidInputConfigurationError();
1068
- }
1069
- if (!endInputElement.hasAttribute('matSliderEndThumb')) {
1070
- _throwInvalidInputConfigurationError();
1071
- }
1085
+ const startValid = !isRange || startInputElement.hasAttribute('matSliderStartThumb');
1086
+ const endValid = endInputElement.hasAttribute(isRange ? 'matSliderEndThumb' : 'matSliderThumb');
1087
+ if (!startValid || !endValid) {
1088
+ _throwInvalidInputConfigurationError();
1072
1089
  }
1073
- else {
1074
- if (!endInputElement.hasAttribute('matSliderThumb')) {
1075
- _throwInvalidInputConfigurationError();
1076
- }
1090
+ }
1091
+ /** Validates that the slider has the correct set of thumbs. */
1092
+ function _validateThumbs(isRange, start, end) {
1093
+ if (!end && (!isRange || !start)) {
1094
+ _throwInvalidInputConfigurationError();
1077
1095
  }
1078
1096
  }
1079
1097
  function _throwInvalidInputConfigurationError() {
@@ -1103,10 +1121,10 @@ function _throwInvalidInputConfigurationError() {
1103
1121
  */
1104
1122
  class MatSliderModule {
1105
1123
  }
1106
- MatSliderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1107
- MatSliderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSliderModule, declarations: [MatSlider, MatSliderThumb, MatSliderVisualThumb], imports: [MatCommonModule, CommonModule, MatRippleModule], exports: [MatSlider, MatSliderThumb] });
1108
- MatSliderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSliderModule, imports: [[MatCommonModule, CommonModule, MatRippleModule]] });
1109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: MatSliderModule, decorators: [{
1124
+ MatSliderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1125
+ MatSliderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSliderModule, declarations: [MatSlider, MatSliderThumb, MatSliderVisualThumb], imports: [MatCommonModule, CommonModule, MatRippleModule], exports: [MatSlider, MatSliderThumb] });
1126
+ MatSliderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSliderModule, imports: [[MatCommonModule, CommonModule, MatRippleModule]] });
1127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: MatSliderModule, decorators: [{
1110
1128
  type: NgModule,
1111
1129
  args: [{
1112
1130
  imports: [MatCommonModule, CommonModule, MatRippleModule],