@angular/material 20.0.0-next.2 → 20.0.0-next.4

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 (262) hide show
  1. package/autocomplete/index.d.ts +5 -4
  2. package/badge/index.d.ts +2 -2
  3. package/badge/testing/index.d.ts +1 -1
  4. package/{badge.d-49a8a74b.d.ts → badge.d-d42103d0.d.ts} +1 -1
  5. package/bottom-sheet/index.d.ts +1 -0
  6. package/button/index.d.ts +4 -4
  7. package/button-toggle/index.d.ts +4 -4
  8. package/button-toggle/testing/index.d.ts +1 -1
  9. package/{button-toggle.d-edc8acff.d.ts → button-toggle.d-e3ddc80f.d.ts} +1 -1
  10. package/checkbox/index.d.ts +1 -1
  11. package/chips/index.d.ts +13 -3
  12. package/core/index.d.ts +11 -6
  13. package/core/m2/_theming.scss +68 -44
  14. package/core/tokens/_density.scss +1 -0
  15. package/datepicker/index.d.ts +5 -4
  16. package/dialog/index.d.ts +2 -2
  17. package/dialog/testing/index.d.ts +1 -1
  18. package/{dialog.d-57867441.d.ts → dialog.d-4ffbd89c.d.ts} +1 -1
  19. package/fesm2022/animation-5f89c9a6.mjs +33 -0
  20. package/fesm2022/animation-5f89c9a6.mjs.map +1 -0
  21. package/fesm2022/autocomplete/testing.mjs +2 -2
  22. package/fesm2022/autocomplete/testing.mjs.map +1 -1
  23. package/fesm2022/autocomplete.mjs +28 -25
  24. package/fesm2022/autocomplete.mjs.map +1 -1
  25. package/fesm2022/badge/testing.mjs.map +1 -1
  26. package/fesm2022/badge.mjs +16 -15
  27. package/fesm2022/badge.mjs.map +1 -1
  28. package/fesm2022/bottom-sheet/testing.mjs.map +1 -1
  29. package/fesm2022/bottom-sheet.mjs +16 -13
  30. package/fesm2022/bottom-sheet.mjs.map +1 -1
  31. package/fesm2022/button/testing.mjs.map +1 -1
  32. package/fesm2022/button-toggle/testing.mjs.map +1 -1
  33. package/fesm2022/button-toggle.mjs +19 -18
  34. package/fesm2022/button-toggle.mjs.map +1 -1
  35. package/fesm2022/button.mjs +8 -7
  36. package/fesm2022/button.mjs.map +1 -1
  37. package/fesm2022/card/testing.mjs.map +1 -1
  38. package/fesm2022/card.mjs +47 -47
  39. package/fesm2022/checkbox/testing.mjs.map +1 -1
  40. package/fesm2022/checkbox.mjs +16 -15
  41. package/fesm2022/checkbox.mjs.map +1 -1
  42. package/fesm2022/chips/testing.mjs +7 -1
  43. package/fesm2022/chips/testing.mjs.map +1 -1
  44. package/fesm2022/chips.mjs +74 -58
  45. package/fesm2022/chips.mjs.map +1 -1
  46. package/fesm2022/{common-module-2d64df09.mjs → common-module-3ec8031a.mjs} +5 -5
  47. package/fesm2022/{common-module-2d64df09.mjs.map → common-module-3ec8031a.mjs.map} +1 -1
  48. package/fesm2022/core/testing.mjs +2 -2
  49. package/fesm2022/core.mjs +26 -47
  50. package/fesm2022/core.mjs.map +1 -1
  51. package/fesm2022/{date-range-input-harness-de70be6a.mjs → date-range-input-harness-3718a667.mjs} +1 -1
  52. package/fesm2022/date-range-input-harness-3718a667.mjs.map +1 -0
  53. package/fesm2022/datepicker/testing.mjs +2 -2
  54. package/fesm2022/datepicker/testing.mjs.map +1 -1
  55. package/fesm2022/datepicker.mjs +96 -93
  56. package/fesm2022/datepicker.mjs.map +1 -1
  57. package/fesm2022/dialog/testing.mjs +3 -2
  58. package/fesm2022/dialog/testing.mjs.map +1 -1
  59. package/fesm2022/dialog.mjs +3 -2
  60. package/fesm2022/dialog.mjs.map +1 -1
  61. package/fesm2022/divider.mjs +8 -8
  62. package/fesm2022/{error-options-4a00765e.mjs → error-options-ee129e4b.mjs} +7 -7
  63. package/fesm2022/{error-options-4a00765e.mjs.map → error-options-ee129e4b.mjs.map} +1 -1
  64. package/fesm2022/expansion.mjs +30 -29
  65. package/fesm2022/expansion.mjs.map +1 -1
  66. package/fesm2022/form-field/testing.mjs +4 -4
  67. package/fesm2022/{form-field-6d755764.mjs → form-field-9a53ebf1.mjs} +34 -34
  68. package/fesm2022/form-field-9a53ebf1.mjs.map +1 -0
  69. package/fesm2022/form-field.mjs +4 -3
  70. package/fesm2022/form-field.mjs.map +1 -1
  71. package/fesm2022/grid-list.mjs +25 -25
  72. package/fesm2022/icon/testing.mjs +8 -8
  73. package/fesm2022/{icon-button-0850d958.mjs → icon-button-acdabdec.mjs} +13 -12
  74. package/fesm2022/icon-button-acdabdec.mjs.map +1 -0
  75. package/fesm2022/{icon-module-3f77a24d.mjs → icon-module-fd90a70e.mjs} +10 -10
  76. package/fesm2022/{icon-module-3f77a24d.mjs.map → icon-module-fd90a70e.mjs.map} +1 -1
  77. package/fesm2022/{icon-registry-13a3b98e.mjs → icon-registry-c1df72ea.mjs} +4 -4
  78. package/fesm2022/{icon-registry-13a3b98e.mjs.map → icon-registry-c1df72ea.mjs.map} +1 -1
  79. package/fesm2022/icon.mjs +3 -3
  80. package/fesm2022/{index-1763d3a6.mjs → index-1ea85b8e.mjs} +9 -9
  81. package/fesm2022/{index-1763d3a6.mjs.map → index-1ea85b8e.mjs.map} +1 -1
  82. package/fesm2022/{index-4bc1d6d3.mjs → index-b8da641d.mjs} +7 -7
  83. package/fesm2022/{index-4bc1d6d3.mjs.map → index-b8da641d.mjs.map} +1 -1
  84. package/fesm2022/input.mjs +13 -12
  85. package/fesm2022/input.mjs.map +1 -1
  86. package/fesm2022/{internal-form-field-434c4039.mjs → internal-form-field-7304c17d.mjs} +4 -4
  87. package/fesm2022/{internal-form-field-434c4039.mjs.map → internal-form-field-7304c17d.mjs.map} +1 -1
  88. package/fesm2022/{line-d6afe347.mjs → line-d0757c01.mjs} +9 -9
  89. package/fesm2022/{line-d6afe347.mjs.map → line-d0757c01.mjs.map} +1 -1
  90. package/fesm2022/list.mjs +58 -59
  91. package/fesm2022/list.mjs.map +1 -1
  92. package/fesm2022/material.mjs.map +1 -1
  93. package/fesm2022/menu/testing.mjs.map +1 -1
  94. package/fesm2022/menu.mjs +25 -23
  95. package/fesm2022/menu.mjs.map +1 -1
  96. package/fesm2022/{module-cf951a02.mjs → module-2701d616.mjs} +18 -18
  97. package/fesm2022/{module-cf951a02.mjs.map → module-2701d616.mjs.map} +1 -1
  98. package/fesm2022/{module-d757bba0.mjs → module-8175acdf.mjs} +7 -7
  99. package/fesm2022/{module-d757bba0.mjs.map → module-8175acdf.mjs.map} +1 -1
  100. package/fesm2022/{module-47e3be58.mjs → module-8c65f824.mjs} +18 -18
  101. package/fesm2022/module-8c65f824.mjs.map +1 -0
  102. package/fesm2022/{module-a5f9ab72.mjs → module-a40bca65.mjs} +36 -32
  103. package/fesm2022/module-a40bca65.mjs.map +1 -0
  104. package/fesm2022/{module-1c16a0a9.mjs → module-e7f30cea.mjs} +20 -19
  105. package/fesm2022/module-e7f30cea.mjs.map +1 -0
  106. package/fesm2022/{optgroup-harness-5e66b138.mjs → optgroup-harness-d5cf72ed.mjs} +2 -2
  107. package/fesm2022/optgroup-harness-d5cf72ed.mjs.map +1 -0
  108. package/fesm2022/{option-07c3c660.mjs → option-a77bb984.mjs} +10 -10
  109. package/fesm2022/{option-07c3c660.mjs.map → option-a77bb984.mjs.map} +1 -1
  110. package/fesm2022/{option-harness-3b7c1106.mjs → option-harness-b4971f41.mjs} +1 -1
  111. package/fesm2022/option-harness-b4971f41.mjs.map +1 -0
  112. package/fesm2022/paginator/testing.mjs +3 -3
  113. package/fesm2022/paginator/testing.mjs.map +1 -1
  114. package/fesm2022/paginator.mjs +27 -26
  115. package/fesm2022/paginator.mjs.map +1 -1
  116. package/fesm2022/progress-bar.mjs +11 -12
  117. package/fesm2022/progress-bar.mjs.map +1 -1
  118. package/fesm2022/progress-spinner.mjs +11 -12
  119. package/fesm2022/progress-spinner.mjs.map +1 -1
  120. package/fesm2022/{pseudo-checkbox-af5a4ea4.mjs → pseudo-checkbox-006bd0a9.mjs} +8 -7
  121. package/fesm2022/pseudo-checkbox-006bd0a9.mjs.map +1 -0
  122. package/fesm2022/{pseudo-checkbox-module-216fae38.mjs → pseudo-checkbox-module-d04dbe5a.mjs} +7 -7
  123. package/fesm2022/{pseudo-checkbox-module-216fae38.mjs.map → pseudo-checkbox-module-d04dbe5a.mjs.map} +1 -1
  124. package/fesm2022/radio/testing.mjs.map +1 -1
  125. package/fesm2022/radio.mjs +18 -19
  126. package/fesm2022/radio.mjs.map +1 -1
  127. package/fesm2022/{ripple-9939d1f5.mjs → ripple-18f3bc18.mjs} +11 -10
  128. package/fesm2022/{ripple-9939d1f5.mjs.map → ripple-18f3bc18.mjs.map} +1 -1
  129. package/fesm2022/{ripple-loader-f2078c66.mjs → ripple-loader-e685c61f.mjs} +13 -13
  130. package/fesm2022/ripple-loader-e685c61f.mjs.map +1 -0
  131. package/fesm2022/select/testing.mjs +3 -3
  132. package/fesm2022/{select-harness-69d47123.mjs → select-harness-30466074.mjs} +3 -3
  133. package/fesm2022/select-harness-30466074.mjs.map +1 -0
  134. package/fesm2022/select.mjs +13 -12
  135. package/fesm2022/select.mjs.map +1 -1
  136. package/fesm2022/sidenav/testing.mjs.map +1 -1
  137. package/fesm2022/sidenav.mjs +27 -26
  138. package/fesm2022/sidenav.mjs.map +1 -1
  139. package/fesm2022/slide-toggle/testing.mjs.map +1 -1
  140. package/fesm2022/slide-toggle.mjs +14 -15
  141. package/fesm2022/slide-toggle.mjs.map +1 -1
  142. package/fesm2022/slider/testing.mjs.map +1 -1
  143. package/fesm2022/slider.mjs +23 -24
  144. package/fesm2022/slider.mjs.map +1 -1
  145. package/fesm2022/snack-bar/testing.mjs.map +1 -1
  146. package/fesm2022/snack-bar.mjs +34 -31
  147. package/fesm2022/snack-bar.mjs.map +1 -1
  148. package/fesm2022/sort/testing.mjs.map +1 -1
  149. package/fesm2022/sort.mjs +19 -18
  150. package/fesm2022/sort.mjs.map +1 -1
  151. package/fesm2022/stepper/testing.mjs.map +1 -1
  152. package/fesm2022/stepper.mjs +43 -42
  153. package/fesm2022/stepper.mjs.map +1 -1
  154. package/fesm2022/{structural-styles-d5ada3b3.mjs → structural-styles-e3fe1eb7.mjs} +4 -4
  155. package/fesm2022/{structural-styles-d5ada3b3.mjs.map → structural-styles-e3fe1eb7.mjs.map} +1 -1
  156. package/fesm2022/table/testing.mjs.map +1 -1
  157. package/fesm2022/table.mjs +56 -56
  158. package/fesm2022/tabs/testing.mjs.map +1 -1
  159. package/fesm2022/tabs.mjs +58 -65
  160. package/fesm2022/tabs.mjs.map +1 -1
  161. package/fesm2022/timepicker/testing.mjs +1 -1
  162. package/fesm2022/timepicker/testing.mjs.map +1 -1
  163. package/fesm2022/timepicker.mjs +27 -26
  164. package/fesm2022/timepicker.mjs.map +1 -1
  165. package/fesm2022/toolbar/testing.mjs.map +1 -1
  166. package/fesm2022/toolbar.mjs +11 -11
  167. package/fesm2022/tooltip/testing.mjs.map +1 -1
  168. package/fesm2022/tooltip.mjs +3 -2
  169. package/fesm2022/tooltip.mjs.map +1 -1
  170. package/fesm2022/tree/testing.mjs.map +1 -1
  171. package/fesm2022/tree.mjs +26 -26
  172. package/{index.d-0536b706.d.ts → index.d-cc6e48d4.d.ts} +1 -1
  173. package/{index.d-37e31cd3.d.ts → index.d-d77f0821.d.ts} +2 -2
  174. package/list/index.d.ts +3 -3
  175. package/menu/index.d.ts +3 -2
  176. package/{module.d-74a721b9.d.ts → module.d-9a0cb968.d.ts} +1 -0
  177. package/{module.d-ba05faa6.d.ts → module.d-a23953f5.d.ts} +1 -1
  178. package/{module.d-792a497c.d.ts → module.d-d86ca350.d.ts} +3 -3
  179. package/package.json +2 -2
  180. package/paginator/index.d.ts +8 -8
  181. package/progress-bar/index.d.ts +0 -1
  182. package/{pseudo-checkbox-module.d-3abc0461.d.ts → pseudo-checkbox-module.d-d21de92b.d.ts} +1 -1
  183. package/radio/index.d.ts +2 -2
  184. package/{ripple-loader.d-8aac2988.d.ts → ripple-loader.d-e5ac6c14.d.ts} +1 -1
  185. package/{ripple.d-2fb57d04.d.ts → ripple.d-f2cd74cf.d.ts} +1 -1
  186. package/schematics/ng-add/fonts/material-fonts.js +1 -1
  187. package/schematics/ng-add/fonts/material-fonts.js.map +1 -0
  188. package/schematics/ng-add/index.js +2 -2
  189. package/schematics/ng-add/index.js.map +1 -0
  190. package/schematics/ng-add/package-config.js +1 -1
  191. package/schematics/ng-add/package-config.js.map +1 -0
  192. package/schematics/ng-add/schema.js +1 -1
  193. package/schematics/ng-add/schema.js.map +1 -0
  194. package/schematics/ng-add/setup-project.js +1 -1
  195. package/schematics/ng-add/setup-project.js.map +1 -0
  196. package/schematics/ng-add/theming/create-custom-theme.js +1 -1
  197. package/schematics/ng-add/theming/create-custom-theme.js.map +1 -0
  198. package/schematics/ng-add/theming/theming.js +1 -1
  199. package/schematics/ng-add/theming/theming.js.map +1 -0
  200. package/schematics/ng-generate/address-form/index.js +1 -1
  201. package/schematics/ng-generate/address-form/index.js.map +1 -0
  202. package/schematics/ng-generate/address-form/schema.js +1 -1
  203. package/schematics/ng-generate/address-form/schema.js.map +1 -0
  204. package/schematics/ng-generate/dashboard/index.js +1 -1
  205. package/schematics/ng-generate/dashboard/index.js.map +1 -0
  206. package/schematics/ng-generate/dashboard/schema.js +1 -1
  207. package/schematics/ng-generate/dashboard/schema.js.map +1 -0
  208. package/schematics/ng-generate/navigation/index.js +1 -1
  209. package/schematics/ng-generate/navigation/index.js.map +1 -0
  210. package/schematics/ng-generate/navigation/schema.js +1 -1
  211. package/schematics/ng-generate/navigation/schema.js.map +1 -0
  212. package/schematics/ng-generate/table/index.js +1 -1
  213. package/schematics/ng-generate/table/index.js.map +1 -0
  214. package/schematics/ng-generate/table/schema.js +1 -1
  215. package/schematics/ng-generate/table/schema.js.map +1 -0
  216. package/schematics/ng-generate/theme-color/index_bundled.js +3828 -2237
  217. package/schematics/ng-generate/theme-color/index_bundled.js.map +4 -4
  218. package/schematics/ng-generate/tree/index.js +1 -1
  219. package/schematics/ng-generate/tree/index.js.map +1 -0
  220. package/schematics/ng-generate/tree/schema.js +1 -1
  221. package/schematics/ng-generate/tree/schema.js.map +1 -0
  222. package/schematics/ng-update/index_bundled.js +194 -782
  223. package/schematics/ng-update/index_bundled.js.map +4 -4
  224. package/schematics/tsconfig.json +26 -0
  225. package/select/index.d.ts +5 -5
  226. package/sidenav/index.d.ts +1 -1
  227. package/slider/index.d.ts +2 -2
  228. package/snack-bar/index.d.ts +5 -4
  229. package/sort/index.d.ts +1 -1
  230. package/stepper/index.d.ts +3 -3
  231. package/tabs/index.d.ts +4 -4
  232. package/timepicker/index.d.ts +0 -1
  233. package/tooltip/index.d.ts +1 -1
  234. package/fesm2022/date-range-input-harness-de70be6a.mjs.map +0 -1
  235. package/fesm2022/form-field-6d755764.mjs.map +0 -1
  236. package/fesm2022/icon-button-0850d958.mjs.map +0 -1
  237. package/fesm2022/module-1c16a0a9.mjs.map +0 -1
  238. package/fesm2022/module-47e3be58.mjs.map +0 -1
  239. package/fesm2022/module-a5f9ab72.mjs.map +0 -1
  240. package/fesm2022/optgroup-harness-5e66b138.mjs.map +0 -1
  241. package/fesm2022/option-harness-3b7c1106.mjs.map +0 -1
  242. package/fesm2022/pseudo-checkbox-af5a4ea4.mjs.map +0 -1
  243. package/fesm2022/ripple-loader-f2078c66.mjs.map +0 -1
  244. package/fesm2022/select-harness-69d47123.mjs.map +0 -1
  245. package/schematics/ng-add/fonts/material-fonts.mjs +0 -34
  246. package/schematics/ng-add/index.mjs +0 -54
  247. package/schematics/ng-add/package-config.mjs +0 -51
  248. package/schematics/ng-add/schema.mjs +0 -10
  249. package/schematics/ng-add/setup-project.mjs +0 -75
  250. package/schematics/ng-add/theming/create-custom-theme.mjs +0 -30
  251. package/schematics/ng-add/theming/theming.mjs +0 -151
  252. package/schematics/ng-generate/address-form/index.mjs +0 -43
  253. package/schematics/ng-generate/address-form/schema.mjs +0 -10
  254. package/schematics/ng-generate/dashboard/index.mjs +0 -42
  255. package/schematics/ng-generate/dashboard/schema.mjs +0 -10
  256. package/schematics/ng-generate/navigation/index.mjs +0 -42
  257. package/schematics/ng-generate/navigation/schema.mjs +0 -10
  258. package/schematics/ng-generate/table/index.mjs +0 -40
  259. package/schematics/ng-generate/table/schema.mjs +0 -10
  260. package/schematics/ng-generate/tree/index.mjs +0 -40
  261. package/schematics/ng-generate/tree/schema.mjs +0 -10
  262. package/schematics/schematics.externs.js +0 -0
@@ -1,8 +1,9 @@
1
1
  import { DOCUMENT } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { inject, ANIMATION_MODULE_TYPE, NgZone, Injector, RendererFactory2, Injectable } from '@angular/core';
3
+ import { inject, NgZone, Injector, RendererFactory2, Injectable } from '@angular/core';
4
4
  import { Platform, _bindEventWithOptions, _getEventTarget } from '@angular/cdk/platform';
5
- import { a as MAT_RIPPLE_GLOBAL_OPTIONS, R as RippleRenderer, d as defaultRippleAnimationConfig } from './ripple-9939d1f5.mjs';
5
+ import { _ as _animationsDisabled } from './animation-5f89c9a6.mjs';
6
+ import { a as MAT_RIPPLE_GLOBAL_OPTIONS, R as RippleRenderer, d as defaultRippleAnimationConfig } from './ripple-18f3bc18.mjs';
6
7
 
7
8
  /** The options for the MatRippleLoader's event listeners. */
8
9
  const eventListenerOptions = { capture: true };
@@ -30,7 +31,7 @@ const matRippleDisabled = 'mat-ripple-loader-disabled';
30
31
  */
31
32
  class MatRippleLoader {
32
33
  _document = inject(DOCUMENT);
33
- _animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
34
+ _animationsDisabled = _animationsDisabled();
34
35
  _globalRippleOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, { optional: true });
35
36
  _platform = inject(Platform);
36
37
  _ngZone = inject(NgZone);
@@ -115,16 +116,15 @@ class MatRippleLoader {
115
116
  const rippleEl = this._document.createElement('span');
116
117
  rippleEl.classList.add('mat-ripple', host.getAttribute(matRippleClassName));
117
118
  host.append(rippleEl);
118
- const isNoopAnimations = this._animationMode === 'NoopAnimations';
119
119
  const globalOptions = this._globalRippleOptions;
120
- const enterDuration = isNoopAnimations
120
+ const enterDuration = this._animationsDisabled
121
121
  ? 0
122
- : globalOptions?.animation?.enterDuration ?? defaultRippleAnimationConfig.enterDuration;
123
- const exitDuration = isNoopAnimations
122
+ : (globalOptions?.animation?.enterDuration ?? defaultRippleAnimationConfig.enterDuration);
123
+ const exitDuration = this._animationsDisabled
124
124
  ? 0
125
- : globalOptions?.animation?.exitDuration ?? defaultRippleAnimationConfig.exitDuration;
125
+ : (globalOptions?.animation?.exitDuration ?? defaultRippleAnimationConfig.exitDuration);
126
126
  const target = {
127
- rippleDisabled: isNoopAnimations || globalOptions?.disabled || host.hasAttribute(matRippleDisabled),
127
+ rippleDisabled: this._animationsDisabled || globalOptions?.disabled || host.hasAttribute(matRippleDisabled),
128
128
  rippleConfig: {
129
129
  centered: host.hasAttribute(matRippleCentered),
130
130
  terminateOnPointerUp: globalOptions?.terminateOnPointerUp,
@@ -153,13 +153,13 @@ class MatRippleLoader {
153
153
  this._hosts.delete(host);
154
154
  }
155
155
  }
156
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatRippleLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
157
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatRippleLoader, providedIn: 'root' });
156
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatRippleLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
157
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatRippleLoader, providedIn: 'root' });
158
158
  }
159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatRippleLoader, decorators: [{
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatRippleLoader, decorators: [{
160
160
  type: Injectable,
161
161
  args: [{ providedIn: 'root' }]
162
162
  }], ctorParameters: () => [] });
163
163
 
164
164
  export { MatRippleLoader as M };
165
- //# sourceMappingURL=ripple-loader-f2078c66.mjs.map
165
+ //# sourceMappingURL=ripple-loader-e685c61f.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ripple-loader-e685c61f.mjs","sources":["../../../../../../src/material/core/private/ripple-loader.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {DOCUMENT} from '@angular/common';\nimport {Injectable, Injector, NgZone, OnDestroy, RendererFactory2, inject} from '@angular/core';\nimport {\n MAT_RIPPLE_GLOBAL_OPTIONS,\n RippleRenderer,\n RippleTarget,\n defaultRippleAnimationConfig,\n} from '../ripple';\nimport {Platform, _bindEventWithOptions, _getEventTarget} from '@angular/cdk/platform';\nimport {_CdkPrivateStyleLoader} from '@angular/cdk/private';\nimport {_animationsDisabled} from '../animation/animation';\n\n/** The options for the MatRippleLoader's event listeners. */\nconst eventListenerOptions = {capture: true};\n\n/**\n * The events that should trigger the initialization of the ripple.\n * Note that we use `mousedown`, rather than `click`, for mouse devices because\n * we can't rely on `mouseenter` in the shadow DOM and `click` happens too late.\n */\nconst rippleInteractionEvents = ['focus', 'mousedown', 'mouseenter', 'touchstart'];\n\n/** The attribute attached to a component whose ripple has not yet been initialized. */\nconst matRippleUninitialized = 'mat-ripple-loader-uninitialized';\n\n/** Additional classes that should be added to the ripple when it is rendered. */\nconst matRippleClassName = 'mat-ripple-loader-class-name';\n\n/** Whether the ripple should be centered. */\nconst matRippleCentered = 'mat-ripple-loader-centered';\n\n/** Whether the ripple should be disabled. */\nconst matRippleDisabled = 'mat-ripple-loader-disabled';\n\n/**\n * Handles attaching ripples on demand.\n *\n * This service allows us to avoid eagerly creating & attaching MatRipples.\n * It works by creating & attaching a ripple only when a component is first interacted with.\n *\n * @docs-private\n */\n@Injectable({providedIn: 'root'})\nexport class MatRippleLoader implements OnDestroy {\n private _document = inject(DOCUMENT);\n private _animationsDisabled = _animationsDisabled();\n private _globalRippleOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, {optional: true});\n private _platform = inject(Platform);\n private _ngZone = inject(NgZone);\n private _injector = inject(Injector);\n private _eventCleanups: (() => void)[];\n private _hosts = new Map<\n HTMLElement,\n {renderer: RippleRenderer; target: RippleTarget; hasSetUpEvents: boolean}\n >();\n\n constructor() {\n const renderer = inject(RendererFactory2).createRenderer(null, null);\n\n this._eventCleanups = this._ngZone.runOutsideAngular(() => {\n return rippleInteractionEvents.map(name =>\n _bindEventWithOptions(\n renderer,\n this._document,\n name,\n this._onInteraction,\n eventListenerOptions,\n ),\n );\n });\n }\n\n ngOnDestroy(): void {\n const hosts = this._hosts.keys();\n\n for (const host of hosts) {\n this.destroyRipple(host);\n }\n\n this._eventCleanups.forEach(cleanup => cleanup());\n }\n\n /**\n * Configures the ripple that will be rendered by the ripple loader.\n *\n * Stores the given information about how the ripple should be configured on the host\n * element so that it can later be retrived & used when the ripple is actually created.\n */\n configureRipple(\n host: HTMLElement,\n config: {\n className?: string;\n centered?: boolean;\n disabled?: boolean;\n },\n ): void {\n // Indicates that the ripple has not yet been rendered for this component.\n host.setAttribute(matRippleUninitialized, this._globalRippleOptions?.namespace ?? '');\n\n // Store the additional class name(s) that should be added to the ripple element.\n if (config.className || !host.hasAttribute(matRippleClassName)) {\n host.setAttribute(matRippleClassName, config.className || '');\n }\n\n // Store whether the ripple should be centered.\n if (config.centered) {\n host.setAttribute(matRippleCentered, '');\n }\n\n if (config.disabled) {\n host.setAttribute(matRippleDisabled, '');\n }\n }\n\n /** Sets the disabled state on the ripple instance corresponding to the given host element. */\n setDisabled(host: HTMLElement, disabled: boolean): void {\n const ripple = this._hosts.get(host);\n\n // If the ripple has already been instantiated, just disable it.\n if (ripple) {\n ripple.target.rippleDisabled = disabled;\n\n if (!disabled && !ripple.hasSetUpEvents) {\n ripple.hasSetUpEvents = true;\n ripple.renderer.setupTriggerEvents(host);\n }\n } else if (disabled) {\n // Otherwise, set an attribute so we know what the\n // disabled state should be when the ripple is initialized.\n host.setAttribute(matRippleDisabled, '');\n } else {\n host.removeAttribute(matRippleDisabled);\n }\n }\n\n /**\n * Handles creating and attaching component internals\n * when a component is initially interacted with.\n */\n private _onInteraction = (event: Event) => {\n const eventTarget = _getEventTarget(event);\n\n if (eventTarget instanceof HTMLElement) {\n // TODO(wagnermaciel): Consider batching these events to improve runtime performance.\n const element = eventTarget.closest(\n `[${matRippleUninitialized}=\"${this._globalRippleOptions?.namespace ?? ''}\"]`,\n );\n\n if (element) {\n this._createRipple(element as HTMLElement);\n }\n }\n };\n\n /** Creates a MatRipple and appends it to the given element. */\n private _createRipple(host: HTMLElement): void {\n if (!this._document || this._hosts.has(host)) {\n return;\n }\n\n // Create the ripple element.\n host.querySelector('.mat-ripple')?.remove();\n const rippleEl = this._document.createElement('span');\n rippleEl.classList.add('mat-ripple', host.getAttribute(matRippleClassName)!);\n host.append(rippleEl);\n\n const globalOptions = this._globalRippleOptions;\n const enterDuration = this._animationsDisabled\n ? 0\n : (globalOptions?.animation?.enterDuration ?? defaultRippleAnimationConfig.enterDuration);\n const exitDuration = this._animationsDisabled\n ? 0\n : (globalOptions?.animation?.exitDuration ?? defaultRippleAnimationConfig.exitDuration);\n const target: RippleTarget = {\n rippleDisabled:\n this._animationsDisabled || globalOptions?.disabled || host.hasAttribute(matRippleDisabled),\n rippleConfig: {\n centered: host.hasAttribute(matRippleCentered),\n terminateOnPointerUp: globalOptions?.terminateOnPointerUp,\n animation: {\n enterDuration,\n exitDuration,\n },\n },\n };\n\n const renderer = new RippleRenderer(\n target,\n this._ngZone,\n rippleEl,\n this._platform,\n this._injector,\n );\n const hasSetUpEvents = !target.rippleDisabled;\n\n if (hasSetUpEvents) {\n renderer.setupTriggerEvents(host);\n }\n\n this._hosts.set(host, {\n target,\n renderer,\n hasSetUpEvents,\n });\n\n host.removeAttribute(matRippleUninitialized);\n }\n\n destroyRipple(host: HTMLElement): void {\n const ripple = this._hosts.get(host);\n\n if (ripple) {\n ripple.renderer._removeTriggerEvents();\n this._hosts.delete(host);\n }\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- export { M as MatSelectHarness } from '../select-harness-69d47123.mjs';
1
+ export { M as MatSelectHarness } from '../select-harness-30466074.mjs';
2
2
  import '@angular/cdk/testing';
3
3
  import '../form-field-control-harness-efefd4cf.mjs';
4
- import '../option-harness-3b7c1106.mjs';
5
- import '../optgroup-harness-5e66b138.mjs';
4
+ import '../option-harness-b4971f41.mjs';
5
+ import '../optgroup-harness-d5cf72ed.mjs';
6
6
  //# sourceMappingURL=testing.mjs.map
@@ -1,7 +1,7 @@
1
1
  import { HarnessPredicate, parallel } from '@angular/cdk/testing';
2
2
  import { M as MatFormFieldControlHarness } from './form-field-control-harness-efefd4cf.mjs';
3
- import { M as MatOptionHarness } from './option-harness-3b7c1106.mjs';
4
- import { M as MatOptgroupHarness } from './optgroup-harness-5e66b138.mjs';
3
+ import { M as MatOptionHarness } from './option-harness-b4971f41.mjs';
4
+ import { M as MatOptgroupHarness } from './optgroup-harness-d5cf72ed.mjs';
5
5
 
6
6
  /** Harness for interacting with a mat-select in tests. */
7
7
  class MatSelectHarness extends MatFormFieldControlHarness {
@@ -120,4 +120,4 @@ class MatSelectHarness extends MatFormFieldControlHarness {
120
120
  }
121
121
 
122
122
  export { MatSelectHarness as M };
123
- //# sourceMappingURL=select-harness-69d47123.mjs.map
123
+ //# sourceMappingURL=select-harness-30466074.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-harness-30466074.mjs","sources":["../../../../../k8-fastbuild-ST-70f2edae98f4/bin/src/material/select/testing/select-harness.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate, parallel} from '@angular/cdk/testing';\nimport {\n MatOptionHarness,\n MatOptgroupHarness,\n OptionHarnessFilters,\n OptgroupHarnessFilters,\n} from '../../core/testing';\nimport {MatFormFieldControlHarness} from '../../form-field/testing/control';\nimport {SelectHarnessFilters} from './select-harness-filters';\n\n/** Harness for interacting with a mat-select in tests. */\nexport class MatSelectHarness extends MatFormFieldControlHarness {\n static hostSelector = '.mat-mdc-select';\n private _prefix = 'mat-mdc';\n private _optionClass = MatOptionHarness;\n private _optionGroupClass = MatOptgroupHarness;\n private _documentRootLocator = this.documentRootLocatorFactory();\n private _backdrop = this._documentRootLocator.locatorFor('.cdk-overlay-backdrop');\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a select with specific attributes.\n * @param options Options for filtering which select instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatSelectHarness>(\n this: ComponentHarnessConstructor<T>,\n options: SelectHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options).addOption(\n 'disabled',\n options.disabled,\n async (harness, disabled) => {\n return (await harness.isDisabled()) === disabled;\n },\n );\n }\n\n /** Gets a boolean promise indicating if the select is disabled. */\n async isDisabled(): Promise<boolean> {\n return (await this.host()).hasClass(`${this._prefix}-select-disabled`);\n }\n\n /** Gets a boolean promise indicating if the select is valid. */\n async isValid(): Promise<boolean> {\n return !(await (await this.host()).hasClass('ng-invalid'));\n }\n\n /** Gets a boolean promise indicating if the select is required. */\n async isRequired(): Promise<boolean> {\n return (await this.host()).hasClass(`${this._prefix}-select-required`);\n }\n\n /** Gets a boolean promise indicating if the select is empty (no value is selected). */\n async isEmpty(): Promise<boolean> {\n return (await this.host()).hasClass(`${this._prefix}-select-empty`);\n }\n\n /** Gets a boolean promise indicating if the select is in multi-selection mode. */\n async isMultiple(): Promise<boolean> {\n return (await this.host()).hasClass(`${this._prefix}-select-multiple`);\n }\n\n /** Gets a promise for the select's value text. */\n async getValueText(): Promise<string> {\n const value = await this.locatorFor(`.${this._prefix}-select-value`)();\n return value.text();\n }\n\n /** Focuses the select and returns a void promise that indicates when the action is complete. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the select and returns a void promise that indicates when the action is complete. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the select is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Gets the options inside the select panel. */\n async getOptions(filter?: Omit<OptionHarnessFilters, 'ancestor'>): Promise<MatOptionHarness[]> {\n return this._documentRootLocator.locatorForAll(\n this._optionClass.with({\n ...(filter || {}),\n ancestor: await this._getPanelSelector(),\n } as OptionHarnessFilters),\n )();\n }\n\n /** Gets the groups of options inside the panel. */\n async getOptionGroups(\n filter?: Omit<OptgroupHarnessFilters, 'ancestor'>,\n ): Promise<MatOptgroupHarness[]> {\n return this._documentRootLocator.locatorForAll(\n this._optionGroupClass.with({\n ...(filter || {}),\n ancestor: await this._getPanelSelector(),\n } as OptgroupHarnessFilters),\n )() as Promise<MatOptgroupHarness[]>;\n }\n\n /** Gets whether the select is open. */\n async isOpen(): Promise<boolean> {\n return !!(await this._documentRootLocator.locatorForOptional(await this._getPanelSelector())());\n }\n\n /** Opens the select's panel. */\n async open(): Promise<void> {\n if (!(await this.isOpen())) {\n const trigger = await this.locatorFor(`.${this._prefix}-select-trigger`)();\n return trigger.click();\n }\n }\n\n /**\n * Clicks the options that match the passed-in filter. If the select is in multi-selection\n * mode all options will be clicked, otherwise the harness will pick the first matching option.\n */\n async clickOptions(filter?: OptionHarnessFilters): Promise<void> {\n await this.open();\n\n const [isMultiple, options] = await parallel(() => [\n this.isMultiple(),\n this.getOptions(filter),\n ]);\n\n if (options.length === 0) {\n throw Error('Select does not have options matching the specified filter');\n }\n\n if (isMultiple) {\n await parallel(() => options.map(option => option.click()));\n } else {\n await options[0].click();\n }\n }\n\n /** Closes the select's panel. */\n async close(): Promise<void> {\n if (await this.isOpen()) {\n // This is the most consistent way that works both in both single and multi-select modes,\n // but it assumes that only one overlay is open at a time. We should be able to make it\n // a bit more precise after #16645 where we can dispatch an ESCAPE press to the host instead.\n return (await this._backdrop()).click();\n }\n }\n\n /** Gets the selector that should be used to find this select's panel. */\n private async _getPanelSelector(): Promise<string> {\n const id = await (await this.host()).getAttribute('id');\n return `#${id}-panel`;\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,16 +1,17 @@
1
- export { e as MatOptgroup, a as MatOption } from './option-07c3c660.mjs';
2
- export { d as MatError, k as MatFormField, e as MatHint, b as MatLabel, g as MatPrefix, i as MatSuffix } from './form-field-6d755764.mjs';
3
- export { d as MAT_SELECT_CONFIG, b as MAT_SELECT_SCROLL_STRATEGY, e as MAT_SELECT_SCROLL_STRATEGY_PROVIDER, c as MAT_SELECT_SCROLL_STRATEGY_PROVIDER_FACTORY, f as MAT_SELECT_TRIGGER, M as MatSelect, g as MatSelectChange, a as MatSelectModule, h as MatSelectTrigger } from './module-1c16a0a9.mjs';
1
+ export { e as MatOptgroup, a as MatOption } from './option-a77bb984.mjs';
2
+ export { d as MatError, k as MatFormField, e as MatHint, b as MatLabel, g as MatPrefix, i as MatSuffix } from './form-field-9a53ebf1.mjs';
3
+ export { d as MAT_SELECT_CONFIG, b as MAT_SELECT_SCROLL_STRATEGY, e as MAT_SELECT_SCROLL_STRATEGY_PROVIDER, c as MAT_SELECT_SCROLL_STRATEGY_PROVIDER_FACTORY, f as MAT_SELECT_TRIGGER, M as MatSelect, g as MatSelectChange, a as MatSelectModule, h as MatSelectTrigger } from './module-e7f30cea.mjs';
4
4
  import '@angular/cdk/a11y';
5
5
  import '@angular/cdk/keycodes';
6
6
  import '@angular/core';
7
7
  import 'rxjs';
8
- import './ripple-9939d1f5.mjs';
8
+ import './ripple-18f3bc18.mjs';
9
9
  import '@angular/cdk/platform';
10
10
  import '@angular/cdk/coercion';
11
11
  import '@angular/cdk/private';
12
- import './pseudo-checkbox-af5a4ea4.mjs';
13
- import './structural-styles-d5ada3b3.mjs';
12
+ import './animation-5f89c9a6.mjs';
13
+ import './pseudo-checkbox-006bd0a9.mjs';
14
+ import './structural-styles-e3fe1eb7.mjs';
14
15
  import '@angular/cdk/bidi';
15
16
  import '@angular/common';
16
17
  import 'rxjs/operators';
@@ -19,13 +20,13 @@ import '@angular/cdk/overlay';
19
20
  import '@angular/cdk/scrolling';
20
21
  import '@angular/cdk/collections';
21
22
  import '@angular/forms';
22
- import './error-options-4a00765e.mjs';
23
+ import './error-options-ee129e4b.mjs';
23
24
  import './error-state-8f4ce1af.mjs';
24
- import './index-1763d3a6.mjs';
25
- import './index-4bc1d6d3.mjs';
26
- import './common-module-2d64df09.mjs';
27
- import './pseudo-checkbox-module-216fae38.mjs';
28
- import './module-d757bba0.mjs';
25
+ import './index-1ea85b8e.mjs';
26
+ import './index-b8da641d.mjs';
27
+ import './common-module-3ec8031a.mjs';
28
+ import './pseudo-checkbox-module-d04dbe5a.mjs';
29
+ import './module-8175acdf.mjs';
29
30
  import '@angular/cdk/observers';
30
31
 
31
32
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"select.mjs","sources":["../../../../../../src/material/select/select-animations.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\n/**\n * The following are all the animations for the mat-select component, with each\n * const containing the metadata for one animation.\n *\n * The values below match the implementation of the AngularJS Material mat-select animation.\n * @docs-private\n * @deprecated No longer used, will be removed.\n * @breaking-change 21.0.0\n */\nexport const matSelectAnimations: {\n readonly transformPanel: any;\n} = {\n // Represents\n // trigger('transformPanel', [\n // state(\n // 'void',\n // style({\n // opacity: 0,\n // transform: 'scale(1, 0.8)',\n // }),\n // ),\n // transition(\n // 'void => showing',\n // animate(\n // '120ms cubic-bezier(0, 0, 0.2, 1)',\n // style({\n // opacity: 1,\n // transform: 'scale(1, 1)',\n // }),\n // ),\n // ),\n // transition('* => void', animate('100ms linear', style({opacity: 0}))),\n // ])\n\n /** This animation transforms the select's overlay panel on and off the page. */\n transformPanel: {\n type: 7,\n name: 'transformPanel',\n definitions: [\n {\n type: 0,\n name: 'void',\n styles: {\n type: 6,\n styles: {opacity: 0, transform: 'scale(1, 0.8)'},\n offset: null,\n },\n },\n {\n type: 1,\n expr: 'void => showing',\n animation: {\n type: 4,\n styles: {\n type: 6,\n styles: {opacity: 1, transform: 'scale(1, 1)'},\n offset: null,\n },\n timings: '120ms cubic-bezier(0, 0, 0.2, 1)',\n },\n options: null,\n },\n {\n type: 1,\n expr: '* => void',\n animation: {\n type: 4,\n styles: {type: 6, styles: {opacity: 0}, offset: null},\n timings: '100ms linear',\n },\n options: null,\n },\n ],\n options: {},\n },\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA;;;;;;;;AAQG;AACU,MAAA,mBAAmB,GAE5B;;;;;;;;;;;;;;;;;;;;;;;AAwBF,IAAA,cAAc,EAAE;AACd,QAAA,IAAI,EAAE,CAAC;AACP,QAAA,IAAI,EAAE,gBAAgB;AACtB,QAAA,WAAW,EAAE;AACX,YAAA;AACE,gBAAA,IAAI,EAAE,CAAC;AACP,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,MAAM,EAAE;AACN,oBAAA,IAAI,EAAE,CAAC;oBACP,MAAM,EAAE,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC;AAChD,oBAAA,MAAM,EAAE,IAAI;AACb,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,CAAC;AACP,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,SAAS,EAAE;AACT,oBAAA,IAAI,EAAE,CAAC;AACP,oBAAA,MAAM,EAAE;AACN,wBAAA,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,EAAC;AAC9C,wBAAA,MAAM,EAAE,IAAI;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE,kCAAkC;AAC5C,iBAAA;AACD,gBAAA,OAAO,EAAE,IAAI;AACd,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,CAAC;AACP,gBAAA,IAAI,EAAE,WAAW;AACjB,gBAAA,SAAS,EAAE;AACT,oBAAA,IAAI,EAAE,CAAC;AACP,oBAAA,MAAM,EAAE,EAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAC,OAAO,EAAE,CAAC,EAAC,EAAE,MAAM,EAAE,IAAI,EAAC;AACrD,oBAAA,OAAO,EAAE,cAAc;AACxB,iBAAA;AACD,gBAAA,OAAO,EAAE,IAAI;AACd,aAAA;AACF,SAAA;AACD,QAAA,OAAO,EAAE,EAAE;AACZ,KAAA;;;;;"}
1
+ {"version":3,"file":"select.mjs","sources":["../../../../../../src/material/select/select-animations.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\n/**\n * The following are all the animations for the mat-select component, with each\n * const containing the metadata for one animation.\n *\n * The values below match the implementation of the AngularJS Material mat-select animation.\n * @docs-private\n * @deprecated No longer used, will be removed.\n * @breaking-change 21.0.0\n */\nexport const matSelectAnimations: {\n readonly transformPanel: any;\n} = {\n // Represents\n // trigger('transformPanel', [\n // state(\n // 'void',\n // style({\n // opacity: 0,\n // transform: 'scale(1, 0.8)',\n // }),\n // ),\n // transition(\n // 'void => showing',\n // animate(\n // '120ms cubic-bezier(0, 0, 0.2, 1)',\n // style({\n // opacity: 1,\n // transform: 'scale(1, 1)',\n // }),\n // ),\n // ),\n // transition('* => void', animate('100ms linear', style({opacity: 0}))),\n // ])\n\n /** This animation transforms the select's overlay panel on and off the page. */\n transformPanel: {\n type: 7,\n name: 'transformPanel',\n definitions: [\n {\n type: 0,\n name: 'void',\n styles: {\n type: 6,\n styles: {opacity: 0, transform: 'scale(1, 0.8)'},\n offset: null,\n },\n },\n {\n type: 1,\n expr: 'void => showing',\n animation: {\n type: 4,\n styles: {\n type: 6,\n styles: {opacity: 1, transform: 'scale(1, 1)'},\n offset: null,\n },\n timings: '120ms cubic-bezier(0, 0, 0.2, 1)',\n },\n options: null,\n },\n {\n type: 1,\n expr: '* => void',\n animation: {\n type: 4,\n styles: {type: 6, styles: {opacity: 0}, offset: null},\n timings: '100ms linear',\n },\n options: null,\n },\n ],\n options: {},\n },\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA;;;;;;;;AAQG;AACU,MAAA,mBAAmB,GAE5B;;;;;;;;;;;;;;;;;;;;;;;AAwBF,IAAA,cAAc,EAAE;AACd,QAAA,IAAI,EAAE,CAAC;AACP,QAAA,IAAI,EAAE,gBAAgB;AACtB,QAAA,WAAW,EAAE;AACX,YAAA;AACE,gBAAA,IAAI,EAAE,CAAC;AACP,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,MAAM,EAAE;AACN,oBAAA,IAAI,EAAE,CAAC;oBACP,MAAM,EAAE,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC;AAChD,oBAAA,MAAM,EAAE,IAAI;AACb,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,CAAC;AACP,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,SAAS,EAAE;AACT,oBAAA,IAAI,EAAE,CAAC;AACP,oBAAA,MAAM,EAAE;AACN,wBAAA,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,EAAC;AAC9C,wBAAA,MAAM,EAAE,IAAI;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE,kCAAkC;AAC5C,iBAAA;AACD,gBAAA,OAAO,EAAE,IAAI;AACd,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,CAAC;AACP,gBAAA,IAAI,EAAE,WAAW;AACjB,gBAAA,SAAS,EAAE;AACT,oBAAA,IAAI,EAAE,CAAC;AACP,oBAAA,MAAM,EAAE,EAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAC,OAAO,EAAE,CAAC,EAAC,EAAE,MAAM,EAAE,IAAI,EAAC;AACrD,oBAAA,OAAO,EAAE,cAAc;AACxB,iBAAA;AACD,gBAAA,OAAO,EAAE,IAAI;AACd,aAAA;AACF,SAAA;AACD,QAAA,OAAO,EAAE,EAAE;AACZ,KAAA;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"testing.mjs","sources":["../../../../../../../src/material/sidenav/testing/drawer-harness.ts","../../../../../../../src/material/sidenav/testing/drawer-content-harness.ts","../../../../../../../src/material/sidenav/testing/drawer-container-harness.ts","../../../../../../../src/material/sidenav/testing/sidenav-content-harness.ts","../../../../../../../src/material/sidenav/testing/sidenav-harness.ts","../../../../../../../src/material/sidenav/testing/sidenav-container-harness.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerHarnessFilters} from './drawer-harness-filters';\n\n/**\n * Base class for the drawer harness functionality.\n * @docs-private\n */\nexport class MatDrawerHarnessBase extends ContentContainerComponentHarness<string> {\n /** Whether the drawer is open. */\n async isOpen(): Promise<boolean> {\n return (await this.host()).hasClass('mat-drawer-opened');\n }\n\n /** Gets the position of the drawer inside its container. */\n async getPosition(): Promise<'start' | 'end'> {\n const host = await this.host();\n return (await host.hasClass('mat-drawer-end')) ? 'end' : 'start';\n }\n\n /** Gets the mode that the drawer is in. */\n async getMode(): Promise<'over' | 'push' | 'side'> {\n const host = await this.host();\n\n if (await host.hasClass('mat-drawer-push')) {\n return 'push';\n }\n\n if (await host.hasClass('mat-drawer-side')) {\n return 'side';\n }\n\n return 'over';\n }\n}\n\n/** Harness for interacting with a standard mat-drawer in tests. */\nexport class MatDrawerHarness extends MatDrawerHarnessBase {\n /** The selector for the host element of a `MatDrawer` instance. */\n static hostSelector = '.mat-drawer';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDrawerHarness` that meets\n * certain criteria.\n * @param options Options for filtering which drawer instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(options: DrawerHarnessFilters = {}): HarnessPredicate<MatDrawerHarness> {\n return new HarnessPredicate(MatDrawerHarness, options).addOption(\n 'position',\n options.position,\n async (harness, position) => (await harness.getPosition()) === position,\n );\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerContentHarnessFilters} from './drawer-harness-filters';\n\n/** Harness for interacting with a standard mat-drawer-content in tests. */\nexport class MatDrawerContentHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatDrawerContent` instance. */\n static hostSelector = '.mat-drawer-content';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDrawerContentHarness` that\n * meets certain criteria.\n * @param options Options for filtering which drawer content instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DrawerContentHarnessFilters = {},\n ): HarnessPredicate<MatDrawerContentHarness> {\n return new HarnessPredicate(MatDrawerContentHarness, options);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerContainerHarnessFilters, DrawerHarnessFilters} from './drawer-harness-filters';\nimport {MatDrawerContentHarness} from './drawer-content-harness';\nimport {MatDrawerHarness} from './drawer-harness';\n\n/** Harness for interacting with a standard mat-drawer-container in tests. */\nexport class MatDrawerContainerHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatDrawerContainer` instance. */\n static hostSelector = '.mat-drawer-container';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDrawerContainerHarness` that\n * meets certain criteria.\n * @param options Options for filtering which container instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DrawerContainerHarnessFilters = {},\n ): HarnessPredicate<MatDrawerContainerHarness> {\n return new HarnessPredicate(MatDrawerContainerHarness, options);\n }\n\n /**\n * Gets drawers that match particular criteria within the container.\n * @param filter Optionally filters which chips are included.\n */\n async getDrawers(filter: DrawerHarnessFilters = {}): Promise<MatDrawerHarness[]> {\n return this.locatorForAll(MatDrawerHarness.with(filter))();\n }\n\n /** Gets the element that has the container's content. */\n async getContent(): Promise<MatDrawerContentHarness> {\n return this.locatorFor(MatDrawerContentHarness)();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerContentHarnessFilters} from './drawer-harness-filters';\n\n/** Harness for interacting with a standard mat-sidenav-content in tests. */\nexport class MatSidenavContentHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatSidenavContent` instance. */\n static hostSelector = '.mat-sidenav-content';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatSidenavContentHarness` that\n * meets certain criteria.\n * @param options Options for filtering which sidenav content instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DrawerContentHarnessFilters = {},\n ): HarnessPredicate<MatSidenavContentHarness> {\n return new HarnessPredicate(MatSidenavContentHarness, options);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {HarnessPredicate} from '@angular/cdk/testing';\nimport {MatDrawerHarnessBase} from './drawer-harness';\nimport {DrawerHarnessFilters} from './drawer-harness-filters';\n\n/** Harness for interacting with a standard mat-sidenav in tests. */\nexport class MatSidenavHarness extends MatDrawerHarnessBase {\n /** The selector for the host element of a `MatSidenav` instance. */\n static hostSelector = '.mat-sidenav';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatSidenavHarness` that meets\n * certain criteria.\n * @param options Options for filtering which sidenav instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(options: DrawerHarnessFilters = {}): HarnessPredicate<MatSidenavHarness> {\n return new HarnessPredicate(MatSidenavHarness, options).addOption(\n 'position',\n options.position,\n async (harness, position) => (await harness.getPosition()) === position,\n );\n }\n\n /** Whether the sidenav is fixed in the viewport. */\n async isFixedInViewport(): Promise<boolean> {\n return (await this.host()).hasClass('mat-sidenav-fixed');\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerContainerHarnessFilters, DrawerHarnessFilters} from './drawer-harness-filters';\nimport {MatSidenavContentHarness} from './sidenav-content-harness';\nimport {MatSidenavHarness} from './sidenav-harness';\n\n/** Harness for interacting with a standard mat-sidenav-container in tests. */\nexport class MatSidenavContainerHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatSidenavContainer` instance. */\n static hostSelector = '.mat-sidenav-container';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatSidenavContainerHarness` that\n * meets certain criteria.\n * @param options Options for filtering which container instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DrawerContainerHarnessFilters = {},\n ): HarnessPredicate<MatSidenavContainerHarness> {\n return new HarnessPredicate(MatSidenavContainerHarness, options);\n }\n\n /**\n * Gets sidenavs that match particular criteria within the container.\n * @param filter Optionally filters which chips are included.\n */\n async getSidenavs(filter: DrawerHarnessFilters = {}): Promise<MatSidenavHarness[]> {\n return this.locatorForAll(MatSidenavHarness.with(filter))();\n }\n\n /** Gets the element that has the container's content. */\n async getContent(): Promise<MatSidenavContentHarness> {\n return this.locatorFor(MatSidenavContentHarness)();\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testing.mjs","sources":["../../../../../../k8-fastbuild-ST-70f2edae98f4/bin/src/material/sidenav/testing/drawer-harness.ts","../../../../../../k8-fastbuild-ST-70f2edae98f4/bin/src/material/sidenav/testing/drawer-content-harness.ts","../../../../../../k8-fastbuild-ST-70f2edae98f4/bin/src/material/sidenav/testing/drawer-container-harness.ts","../../../../../../k8-fastbuild-ST-70f2edae98f4/bin/src/material/sidenav/testing/sidenav-content-harness.ts","../../../../../../k8-fastbuild-ST-70f2edae98f4/bin/src/material/sidenav/testing/sidenav-harness.ts","../../../../../../k8-fastbuild-ST-70f2edae98f4/bin/src/material/sidenav/testing/sidenav-container-harness.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerHarnessFilters} from './drawer-harness-filters';\n\n/**\n * Base class for the drawer harness functionality.\n * @docs-private\n */\nexport class MatDrawerHarnessBase extends ContentContainerComponentHarness<string> {\n /** Whether the drawer is open. */\n async isOpen(): Promise<boolean> {\n return (await this.host()).hasClass('mat-drawer-opened');\n }\n\n /** Gets the position of the drawer inside its container. */\n async getPosition(): Promise<'start' | 'end'> {\n const host = await this.host();\n return (await host.hasClass('mat-drawer-end')) ? 'end' : 'start';\n }\n\n /** Gets the mode that the drawer is in. */\n async getMode(): Promise<'over' | 'push' | 'side'> {\n const host = await this.host();\n\n if (await host.hasClass('mat-drawer-push')) {\n return 'push';\n }\n\n if (await host.hasClass('mat-drawer-side')) {\n return 'side';\n }\n\n return 'over';\n }\n}\n\n/** Harness for interacting with a standard mat-drawer in tests. */\nexport class MatDrawerHarness extends MatDrawerHarnessBase {\n /** The selector for the host element of a `MatDrawer` instance. */\n static hostSelector = '.mat-drawer';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDrawerHarness` that meets\n * certain criteria.\n * @param options Options for filtering which drawer instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(options: DrawerHarnessFilters = {}): HarnessPredicate<MatDrawerHarness> {\n return new HarnessPredicate(MatDrawerHarness, options).addOption(\n 'position',\n options.position,\n async (harness, position) => (await harness.getPosition()) === position,\n );\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerContentHarnessFilters} from './drawer-harness-filters';\n\n/** Harness for interacting with a standard mat-drawer-content in tests. */\nexport class MatDrawerContentHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatDrawerContent` instance. */\n static hostSelector = '.mat-drawer-content';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDrawerContentHarness` that\n * meets certain criteria.\n * @param options Options for filtering which drawer content instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DrawerContentHarnessFilters = {},\n ): HarnessPredicate<MatDrawerContentHarness> {\n return new HarnessPredicate(MatDrawerContentHarness, options);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerContainerHarnessFilters, DrawerHarnessFilters} from './drawer-harness-filters';\nimport {MatDrawerContentHarness} from './drawer-content-harness';\nimport {MatDrawerHarness} from './drawer-harness';\n\n/** Harness for interacting with a standard mat-drawer-container in tests. */\nexport class MatDrawerContainerHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatDrawerContainer` instance. */\n static hostSelector = '.mat-drawer-container';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDrawerContainerHarness` that\n * meets certain criteria.\n * @param options Options for filtering which container instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DrawerContainerHarnessFilters = {},\n ): HarnessPredicate<MatDrawerContainerHarness> {\n return new HarnessPredicate(MatDrawerContainerHarness, options);\n }\n\n /**\n * Gets drawers that match particular criteria within the container.\n * @param filter Optionally filters which chips are included.\n */\n async getDrawers(filter: DrawerHarnessFilters = {}): Promise<MatDrawerHarness[]> {\n return this.locatorForAll(MatDrawerHarness.with(filter))();\n }\n\n /** Gets the element that has the container's content. */\n async getContent(): Promise<MatDrawerContentHarness> {\n return this.locatorFor(MatDrawerContentHarness)();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerContentHarnessFilters} from './drawer-harness-filters';\n\n/** Harness for interacting with a standard mat-sidenav-content in tests. */\nexport class MatSidenavContentHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatSidenavContent` instance. */\n static hostSelector = '.mat-sidenav-content';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatSidenavContentHarness` that\n * meets certain criteria.\n * @param options Options for filtering which sidenav content instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DrawerContentHarnessFilters = {},\n ): HarnessPredicate<MatSidenavContentHarness> {\n return new HarnessPredicate(MatSidenavContentHarness, options);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {HarnessPredicate} from '@angular/cdk/testing';\nimport {MatDrawerHarnessBase} from './drawer-harness';\nimport {DrawerHarnessFilters} from './drawer-harness-filters';\n\n/** Harness for interacting with a standard mat-sidenav in tests. */\nexport class MatSidenavHarness extends MatDrawerHarnessBase {\n /** The selector for the host element of a `MatSidenav` instance. */\n static hostSelector = '.mat-sidenav';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatSidenavHarness` that meets\n * certain criteria.\n * @param options Options for filtering which sidenav instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(options: DrawerHarnessFilters = {}): HarnessPredicate<MatSidenavHarness> {\n return new HarnessPredicate(MatSidenavHarness, options).addOption(\n 'position',\n options.position,\n async (harness, position) => (await harness.getPosition()) === position,\n );\n }\n\n /** Whether the sidenav is fixed in the viewport. */\n async isFixedInViewport(): Promise<boolean> {\n return (await this.host()).hasClass('mat-sidenav-fixed');\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate} from '@angular/cdk/testing';\nimport {DrawerContainerHarnessFilters, DrawerHarnessFilters} from './drawer-harness-filters';\nimport {MatSidenavContentHarness} from './sidenav-content-harness';\nimport {MatSidenavHarness} from './sidenav-harness';\n\n/** Harness for interacting with a standard mat-sidenav-container in tests. */\nexport class MatSidenavContainerHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatSidenavContainer` instance. */\n static hostSelector = '.mat-sidenav-container';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatSidenavContainerHarness` that\n * meets certain criteria.\n * @param options Options for filtering which container instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DrawerContainerHarnessFilters = {},\n ): HarnessPredicate<MatSidenavContainerHarness> {\n return new HarnessPredicate(MatSidenavContainerHarness, options);\n }\n\n /**\n * Gets sidenavs that match particular criteria within the container.\n * @param filter Optionally filters which chips are included.\n */\n async getSidenavs(filter: DrawerHarnessFilters = {}): Promise<MatSidenavHarness[]> {\n return this.locatorForAll(MatSidenavHarness.with(filter))();\n }\n\n /** Gets the element that has the container's content. */\n async getContent(): Promise<MatSidenavContentHarness> {\n return this.locatorFor(MatSidenavContentHarness)();\n }\n}\n"],"names":[],"mappings":"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"}
@@ -6,10 +6,11 @@ import { Platform } from '@angular/cdk/platform';
6
6
  import { CdkScrollable, ScrollDispatcher, ViewportRuler, CdkScrollableModule } from '@angular/cdk/scrolling';
7
7
  import { DOCUMENT } from '@angular/common';
8
8
  import * as i0 from '@angular/core';
9
- import { InjectionToken, inject, ChangeDetectorRef, ElementRef, NgZone, Component, ChangeDetectionStrategy, ViewEncapsulation, Renderer2, EventEmitter, Injector, afterNextRender, Input, Output, ViewChild, ANIMATION_MODULE_TYPE, QueryList, ContentChildren, ContentChild, NgModule } from '@angular/core';
9
+ import { InjectionToken, inject, ChangeDetectorRef, ElementRef, NgZone, Component, ChangeDetectionStrategy, ViewEncapsulation, Renderer2, EventEmitter, Injector, afterNextRender, Input, Output, ViewChild, QueryList, ContentChildren, ContentChild, NgModule } from '@angular/core';
10
10
  import { Subject, fromEvent, merge } from 'rxjs';
11
11
  import { filter, map, mapTo, takeUntil, take, startWith, debounceTime } from 'rxjs/operators';
12
- import { M as MatCommonModule } from './common-module-2d64df09.mjs';
12
+ import { _ as _animationsDisabled } from './animation-5f89c9a6.mjs';
13
+ import { M as MatCommonModule } from './common-module-3ec8031a.mjs';
13
14
 
14
15
  /**
15
16
  * Throws an exception when two MatDrawer are matching the same position.
@@ -65,15 +66,15 @@ class MatDrawerContent extends CdkScrollable {
65
66
  return ((start != null && start.mode !== 'over' && start.opened) ||
66
67
  (end != null && end.mode !== 'over' && end.opened));
67
68
  }
68
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatDrawerContent, deps: [], target: i0.ɵɵFactoryTarget.Component });
69
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.1", type: MatDrawerContent, isStandalone: true, selector: "mat-drawer-content", host: { properties: { "style.margin-left.px": "_container._contentMargins.left", "style.margin-right.px": "_container._contentMargins.right", "class.mat-drawer-content-hidden": "_shouldBeHidden()" }, classAttribute: "mat-drawer-content" }, providers: [
69
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatDrawerContent, deps: [], target: i0.ɵɵFactoryTarget.Component });
70
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.3", type: MatDrawerContent, isStandalone: true, selector: "mat-drawer-content", host: { properties: { "style.margin-left.px": "_container._contentMargins.left", "style.margin-right.px": "_container._contentMargins.right", "class.mat-drawer-content-hidden": "_shouldBeHidden()" }, classAttribute: "mat-drawer-content" }, providers: [
70
71
  {
71
72
  provide: CdkScrollable,
72
73
  useExisting: MatDrawerContent,
73
74
  },
74
75
  ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
75
76
  }
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatDrawerContent, decorators: [{
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatDrawerContent, decorators: [{
77
78
  type: Component,
78
79
  args: [{
79
80
  selector: 'mat-drawer-content',
@@ -499,10 +500,10 @@ class MatDrawer {
499
500
  });
500
501
  }
501
502
  };
502
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatDrawer, deps: [], target: i0.ɵɵFactoryTarget.Component });
503
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.1", type: MatDrawer, isStandalone: true, selector: "mat-drawer", inputs: { position: "position", mode: "mode", disableClose: "disableClose", autoFocus: "autoFocus", opened: "opened" }, outputs: { openedChange: "openedChange", _openedStream: "opened", openedStart: "openedStart", _closedStream: "closed", closedStart: "closedStart", onPositionChanged: "positionChanged" }, host: { attributes: { "tabIndex": "-1" }, properties: { "attr.align": "null", "class.mat-drawer-end": "position === \"end\"", "class.mat-drawer-over": "mode === \"over\"", "class.mat-drawer-push": "mode === \"push\"", "class.mat-drawer-side": "mode === \"side\"", "style.visibility": "(!_container && !opened) ? \"hidden\" : null" }, classAttribute: "mat-drawer" }, viewQueries: [{ propertyName: "_content", first: true, predicate: ["content"], descendants: true }], exportAs: ["matDrawer"], ngImport: i0, template: "<div class=\"mat-drawer-inner-container\" cdkScrollable #content>\r\n <ng-content></ng-content>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
503
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatDrawer, deps: [], target: i0.ɵɵFactoryTarget.Component });
504
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.3", type: MatDrawer, isStandalone: true, selector: "mat-drawer", inputs: { position: "position", mode: "mode", disableClose: "disableClose", autoFocus: "autoFocus", opened: "opened" }, outputs: { openedChange: "openedChange", _openedStream: "opened", openedStart: "openedStart", _closedStream: "closed", closedStart: "closedStart", onPositionChanged: "positionChanged" }, host: { attributes: { "tabIndex": "-1" }, properties: { "attr.align": "null", "class.mat-drawer-end": "position === \"end\"", "class.mat-drawer-over": "mode === \"over\"", "class.mat-drawer-push": "mode === \"push\"", "class.mat-drawer-side": "mode === \"side\"", "style.visibility": "(!_container && !opened) ? \"hidden\" : null" }, classAttribute: "mat-drawer" }, viewQueries: [{ propertyName: "_content", first: true, predicate: ["content"], descendants: true }], exportAs: ["matDrawer"], ngImport: i0, template: "<div class=\"mat-drawer-inner-container\" cdkScrollable #content>\r\n <ng-content></ng-content>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
504
505
  }
505
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatDrawer, decorators: [{
506
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatDrawer, decorators: [{
506
507
  type: Component,
507
508
  args: [{ selector: 'mat-drawer', exportAs: 'matDrawer', host: {
508
509
  'class': 'mat-drawer',
@@ -558,7 +559,7 @@ class MatDrawerContainer {
558
559
  _element = inject(ElementRef);
559
560
  _ngZone = inject(NgZone);
560
561
  _changeDetectorRef = inject(ChangeDetectorRef);
561
- _animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
562
+ _animationDisabled = _animationsDisabled();
562
563
  _transitionsEnabled = false;
563
564
  /** All drawers in the container. Includes drawers from inside nested containers. */
564
565
  _allDrawers;
@@ -645,7 +646,7 @@ class MatDrawerContainer {
645
646
  .change()
646
647
  .pipe(takeUntil(this._destroyed))
647
648
  .subscribe(() => this.updateContentMargins());
648
- if (this._animationMode !== 'NoopAnimations' && platform.isBrowser) {
649
+ if (!this._animationDisabled && platform.isBrowser) {
649
650
  this._ngZone.runOutsideAngular(() => {
650
651
  // Enable the animations after a delay in order to skip
651
652
  // the initial transition if a drawer is open by default.
@@ -858,15 +859,15 @@ class MatDrawerContainer {
858
859
  }
859
860
  return this._backdropOverride;
860
861
  }
861
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatDrawerContainer, deps: [], target: i0.ɵɵFactoryTarget.Component });
862
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0-next.1", type: MatDrawerContainer, isStandalone: true, selector: "mat-drawer-container", inputs: { autosize: "autosize", hasBackdrop: "hasBackdrop" }, outputs: { backdropClick: "backdropClick" }, host: { properties: { "class.mat-drawer-container-explicit-backdrop": "_backdropOverride" }, classAttribute: "mat-drawer-container" }, providers: [
862
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatDrawerContainer, deps: [], target: i0.ɵɵFactoryTarget.Component });
863
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0-next.3", type: MatDrawerContainer, isStandalone: true, selector: "mat-drawer-container", inputs: { autosize: "autosize", hasBackdrop: "hasBackdrop" }, outputs: { backdropClick: "backdropClick" }, host: { properties: { "class.mat-drawer-container-explicit-backdrop": "_backdropOverride" }, classAttribute: "mat-drawer-container" }, providers: [
863
864
  {
864
865
  provide: MAT_DRAWER_CONTAINER,
865
866
  useExisting: MatDrawerContainer,
866
867
  },
867
868
  ], queries: [{ propertyName: "_content", first: true, predicate: MatDrawerContent, descendants: true }, { propertyName: "_allDrawers", predicate: MatDrawer, descendants: true }], viewQueries: [{ propertyName: "_userContent", first: true, predicate: MatDrawerContent, descendants: true }], exportAs: ["matDrawerContainer"], ngImport: i0, template: "@if (hasBackdrop) {\n <div class=\"mat-drawer-backdrop\" (click)=\"_onBackdropClicked()\"\n [class.mat-drawer-shown]=\"_isShowingBackdrop()\"></div>\n}\n\n<ng-content select=\"mat-drawer\"></ng-content>\n\n<ng-content select=\"mat-drawer-content\">\n</ng-content>\n\n@if (!_content) {\n <mat-drawer-content>\n <ng-content></ng-content>\n </mat-drawer-content>\n}\n", styles: [".mat-drawer-container{position:relative;z-index:1;color:var(--mat-sidenav-content-text-color, var(--mat-sys-on-background));background-color:var(--mat-sidenav-content-background-color, var(--mat-sys-background));box-sizing:border-box;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible;background-color:var(--mat-sidenav-scrim-color, color-mix(in srgb, var(--mat-sys-neutral-variant20) 40%, transparent))}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}@media(forced-colors: active){.mat-drawer-backdrop{opacity:.5}}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-content.mat-drawer-content-hidden{opacity:0}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;color:var(--mat-sidenav-container-text-color, var(--mat-sys-on-surface-variant));box-shadow:var(--mat-sidenav-container-elevation-shadow, none);background-color:var(--mat-sidenav-container-background-color, var(--mat-sys-surface));border-top-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));width:var(--mat-sidenav-container-width, 360px);display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}@media(forced-colors: active){.mat-drawer,[dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}}@media(forced-colors: active){[dir=rtl] .mat-drawer,.mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0);border-top-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .mat-drawer{border-top-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-right-radius:0;border-bottom-right-radius:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{border-top-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-left-radius:0;border-bottom-left-radius:0;left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer-transition .mat-drawer{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-drawer:not(.mat-drawer-opened):not(.mat-drawer-animating){visibility:hidden;box-shadow:none}.mat-drawer:not(.mat-drawer-opened):not(.mat-drawer-animating) .mat-drawer-inner-container{display:none}.mat-drawer.mat-drawer-opened.mat-drawer-opened{transform:none}.mat-drawer-side{box-shadow:none;border-right-color:var(--mat-sidenav-container-divider-color, transparent);border-right-width:1px;border-right-style:solid}.mat-drawer-side.mat-drawer-end{border-left-color:var(--mat-sidenav-container-divider-color, transparent);border-left-width:1px;border-left-style:solid;border-right:none}[dir=rtl] .mat-drawer-side{border-left-color:var(--mat-sidenav-container-divider-color, transparent);border-left-width:1px;border-left-style:solid;border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-right-color:var(--mat-sidenav-container-divider-color, transparent);border-right-width:1px;border-right-style:solid;border-left:none}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto}.mat-sidenav-fixed{position:fixed}"], dependencies: [{ kind: "component", type: MatDrawerContent, selector: "mat-drawer-content" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
868
869
  }
869
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatDrawerContainer, decorators: [{
870
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatDrawerContainer, decorators: [{
870
871
  type: Component,
871
872
  args: [{ selector: 'mat-drawer-container', exportAs: 'matDrawerContainer', host: {
872
873
  'class': 'mat-drawer-container',
@@ -899,15 +900,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1",
899
900
  }] } });
900
901
 
901
902
  class MatSidenavContent extends MatDrawerContent {
902
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenavContent, deps: null, target: i0.ɵɵFactoryTarget.Component });
903
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.1", type: MatSidenavContent, isStandalone: true, selector: "mat-sidenav-content", host: { classAttribute: "mat-drawer-content mat-sidenav-content" }, providers: [
903
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenavContent, deps: null, target: i0.ɵɵFactoryTarget.Component });
904
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.3", type: MatSidenavContent, isStandalone: true, selector: "mat-sidenav-content", host: { classAttribute: "mat-drawer-content mat-sidenav-content" }, providers: [
904
905
  {
905
906
  provide: CdkScrollable,
906
907
  useExisting: MatSidenavContent,
907
908
  },
908
909
  ], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
909
910
  }
910
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenavContent, decorators: [{
911
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenavContent, decorators: [{
911
912
  type: Component,
912
913
  args: [{
913
914
  selector: 'mat-sidenav-content',
@@ -956,10 +957,10 @@ class MatSidenav extends MatDrawer {
956
957
  this._fixedBottomGap = coerceNumberProperty(value);
957
958
  }
958
959
  _fixedBottomGap = 0;
959
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenav, deps: null, target: i0.ɵɵFactoryTarget.Component });
960
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.1", type: MatSidenav, isStandalone: true, selector: "mat-sidenav", inputs: { fixedInViewport: "fixedInViewport", fixedTopGap: "fixedTopGap", fixedBottomGap: "fixedBottomGap" }, host: { attributes: { "tabIndex": "-1" }, properties: { "attr.align": "null", "class.mat-drawer-end": "position === \"end\"", "class.mat-drawer-over": "mode === \"over\"", "class.mat-drawer-push": "mode === \"push\"", "class.mat-drawer-side": "mode === \"side\"", "class.mat-sidenav-fixed": "fixedInViewport", "style.top.px": "fixedInViewport ? fixedTopGap : null", "style.bottom.px": "fixedInViewport ? fixedBottomGap : null" }, classAttribute: "mat-drawer mat-sidenav" }, providers: [{ provide: MatDrawer, useExisting: MatSidenav }], exportAs: ["matSidenav"], usesInheritance: true, ngImport: i0, template: "<div class=\"mat-drawer-inner-container\" cdkScrollable #content>\r\n <ng-content></ng-content>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
960
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenav, deps: null, target: i0.ɵɵFactoryTarget.Component });
961
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.3", type: MatSidenav, isStandalone: true, selector: "mat-sidenav", inputs: { fixedInViewport: "fixedInViewport", fixedTopGap: "fixedTopGap", fixedBottomGap: "fixedBottomGap" }, host: { attributes: { "tabIndex": "-1" }, properties: { "attr.align": "null", "class.mat-drawer-end": "position === \"end\"", "class.mat-drawer-over": "mode === \"over\"", "class.mat-drawer-push": "mode === \"push\"", "class.mat-drawer-side": "mode === \"side\"", "class.mat-sidenav-fixed": "fixedInViewport", "style.top.px": "fixedInViewport ? fixedTopGap : null", "style.bottom.px": "fixedInViewport ? fixedBottomGap : null" }, classAttribute: "mat-drawer mat-sidenav" }, providers: [{ provide: MatDrawer, useExisting: MatSidenav }], exportAs: ["matSidenav"], usesInheritance: true, ngImport: i0, template: "<div class=\"mat-drawer-inner-container\" cdkScrollable #content>\r\n <ng-content></ng-content>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
961
962
  }
962
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenav, decorators: [{
963
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenav, decorators: [{
963
964
  type: Component,
964
965
  args: [{ selector: 'mat-sidenav', exportAs: 'matSidenav', host: {
965
966
  'class': 'mat-drawer mat-sidenav',
@@ -985,8 +986,8 @@ class MatSidenavContainer extends MatDrawerContainer {
985
986
  _allDrawers = undefined;
986
987
  // We need an initializer here to avoid a TS error.
987
988
  _content = undefined;
988
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenavContainer, deps: null, target: i0.ɵɵFactoryTarget.Component });
989
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0-next.1", type: MatSidenavContainer, isStandalone: true, selector: "mat-sidenav-container", host: { properties: { "class.mat-drawer-container-explicit-backdrop": "_backdropOverride" }, classAttribute: "mat-drawer-container mat-sidenav-container" }, providers: [
989
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenavContainer, deps: null, target: i0.ɵɵFactoryTarget.Component });
990
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0-next.3", type: MatSidenavContainer, isStandalone: true, selector: "mat-sidenav-container", host: { properties: { "class.mat-drawer-container-explicit-backdrop": "_backdropOverride" }, classAttribute: "mat-drawer-container mat-sidenav-container" }, providers: [
990
991
  {
991
992
  provide: MAT_DRAWER_CONTAINER,
992
993
  useExisting: MatSidenavContainer,
@@ -997,7 +998,7 @@ class MatSidenavContainer extends MatDrawerContainer {
997
998
  },
998
999
  ], queries: [{ propertyName: "_content", first: true, predicate: MatSidenavContent, descendants: true }, { propertyName: "_allDrawers", predicate: MatSidenav, descendants: true }], exportAs: ["matSidenavContainer"], usesInheritance: true, ngImport: i0, template: "@if (hasBackdrop) {\n <div class=\"mat-drawer-backdrop\" (click)=\"_onBackdropClicked()\"\n [class.mat-drawer-shown]=\"_isShowingBackdrop()\"></div>\n}\n\n<ng-content select=\"mat-sidenav\"></ng-content>\n\n<ng-content select=\"mat-sidenav-content\">\n</ng-content>\n\n@if (!_content) {\n <mat-sidenav-content>\n <ng-content></ng-content>\n </mat-sidenav-content>\n}\n", styles: [".mat-drawer-container{position:relative;z-index:1;color:var(--mat-sidenav-content-text-color, var(--mat-sys-on-background));background-color:var(--mat-sidenav-content-background-color, var(--mat-sys-background));box-sizing:border-box;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible;background-color:var(--mat-sidenav-scrim-color, color-mix(in srgb, var(--mat-sys-neutral-variant20) 40%, transparent))}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}@media(forced-colors: active){.mat-drawer-backdrop{opacity:.5}}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-content.mat-drawer-content-hidden{opacity:0}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;color:var(--mat-sidenav-container-text-color, var(--mat-sys-on-surface-variant));box-shadow:var(--mat-sidenav-container-elevation-shadow, none);background-color:var(--mat-sidenav-container-background-color, var(--mat-sys-surface));border-top-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));width:var(--mat-sidenav-container-width, 360px);display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}@media(forced-colors: active){.mat-drawer,[dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}}@media(forced-colors: active){[dir=rtl] .mat-drawer,.mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0);border-top-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .mat-drawer{border-top-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-right-radius:0;border-bottom-right-radius:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{border-top-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-left-radius:0;border-bottom-left-radius:0;left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer-transition .mat-drawer{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-drawer:not(.mat-drawer-opened):not(.mat-drawer-animating){visibility:hidden;box-shadow:none}.mat-drawer:not(.mat-drawer-opened):not(.mat-drawer-animating) .mat-drawer-inner-container{display:none}.mat-drawer.mat-drawer-opened.mat-drawer-opened{transform:none}.mat-drawer-side{box-shadow:none;border-right-color:var(--mat-sidenav-container-divider-color, transparent);border-right-width:1px;border-right-style:solid}.mat-drawer-side.mat-drawer-end{border-left-color:var(--mat-sidenav-container-divider-color, transparent);border-left-width:1px;border-left-style:solid;border-right:none}[dir=rtl] .mat-drawer-side{border-left-color:var(--mat-sidenav-container-divider-color, transparent);border-left-width:1px;border-left-style:solid;border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-right-color:var(--mat-sidenav-container-divider-color, transparent);border-right-width:1px;border-right-style:solid;border-left:none}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto}.mat-sidenav-fixed{position:fixed}"], dependencies: [{ kind: "component", type: MatSidenavContent, selector: "mat-sidenav-content" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
999
1000
  }
1000
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenavContainer, decorators: [{
1001
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenavContainer, decorators: [{
1001
1002
  type: Component,
1002
1003
  args: [{ selector: 'mat-sidenav-container', exportAs: 'matSidenavContainer', host: {
1003
1004
  'class': 'mat-drawer-container mat-sidenav-container',
@@ -1025,8 +1026,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1",
1025
1026
  }] } });
1026
1027
 
1027
1028
  class MatSidenavModule {
1028
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1029
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenavModule, imports: [MatCommonModule,
1029
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1030
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenavModule, imports: [MatCommonModule,
1030
1031
  CdkScrollableModule,
1031
1032
  MatDrawer,
1032
1033
  MatDrawerContainer,
@@ -1041,11 +1042,11 @@ class MatSidenavModule {
1041
1042
  MatSidenav,
1042
1043
  MatSidenavContainer,
1043
1044
  MatSidenavContent] });
1044
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenavModule, imports: [MatCommonModule,
1045
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenavModule, imports: [MatCommonModule,
1045
1046
  CdkScrollableModule, CdkScrollableModule,
1046
1047
  MatCommonModule] });
1047
1048
  }
1048
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: MatSidenavModule, decorators: [{
1049
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.3", ngImport: i0, type: MatSidenavModule, decorators: [{
1049
1050
  type: NgModule,
1050
1051
  args: [{
1051
1052
  imports: [