@angular/material 13.0.0-rc.0 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (834) hide show
  1. package/autocomplete/autocomplete_public_index.d.ts +4 -0
  2. package/autocomplete/index.d.ts +5 -1
  3. package/autocomplete/package.json +2 -2
  4. package/autocomplete/testing/autocomplete-harness.d.ts +4 -4
  5. package/badge/badge_public_index.d.ts +4 -0
  6. package/badge/index.d.ts +5 -1
  7. package/badge/package.json +2 -2
  8. package/bottom-sheet/bottom-sheet_public_index.d.ts +4 -0
  9. package/bottom-sheet/index.d.ts +5 -1
  10. package/bottom-sheet/package.json +2 -2
  11. package/button/button_public_index.d.ts +4 -0
  12. package/button/index.d.ts +5 -1
  13. package/button/package.json +2 -2
  14. package/button-toggle/button-toggle_public_index.d.ts +4 -0
  15. package/button-toggle/index.d.ts +5 -1
  16. package/button-toggle/package.json +2 -2
  17. package/card/card_public_index.d.ts +4 -0
  18. package/card/index.d.ts +5 -1
  19. package/card/package.json +2 -2
  20. package/checkbox/checkbox_public_index.d.ts +4 -0
  21. package/checkbox/index.d.ts +5 -1
  22. package/checkbox/package.json +2 -2
  23. package/chips/chips_public_index.d.ts +4 -0
  24. package/chips/index.d.ts +5 -1
  25. package/chips/package.json +2 -2
  26. package/core/common-behaviors/index.d.ts +1 -1
  27. package/core/core_public_index.d.ts +4 -0
  28. package/core/index.d.ts +5 -1
  29. package/core/package.json +2 -2
  30. package/datepicker/datepicker_public_index.d.ts +4 -0
  31. package/datepicker/index.d.ts +5 -1
  32. package/datepicker/package.json +2 -2
  33. package/dialog/dialog_public_index.d.ts +4 -0
  34. package/dialog/index.d.ts +5 -1
  35. package/dialog/package.json +2 -2
  36. package/divider/divider_public_index.d.ts +4 -0
  37. package/divider/index.d.ts +5 -1
  38. package/divider/package.json +2 -2
  39. package/esm2020/autocomplete/autocomplete-module.mjs +6 -19
  40. package/esm2020/autocomplete/autocomplete-origin.mjs +7 -7
  41. package/esm2020/autocomplete/autocomplete-trigger.mjs +36 -31
  42. package/esm2020/autocomplete/autocomplete.mjs +15 -15
  43. package/esm2020/autocomplete/autocomplete_public_index.mjs +5 -0
  44. package/esm2020/autocomplete/index.mjs +6 -2
  45. package/esm2020/autocomplete/testing/autocomplete-harness.mjs +7 -8
  46. package/esm2020/badge/badge-module.mjs +6 -13
  47. package/esm2020/badge/badge.mjs +16 -8
  48. package/esm2020/badge/badge_public_index.mjs +5 -0
  49. package/esm2020/badge/index.mjs +6 -2
  50. package/esm2020/badge/testing/badge-harness.mjs +2 -3
  51. package/esm2020/bottom-sheet/bottom-sheet-animations.mjs +2 -2
  52. package/esm2020/bottom-sheet/bottom-sheet-container.mjs +8 -6
  53. package/esm2020/bottom-sheet/bottom-sheet-module.mjs +6 -16
  54. package/esm2020/bottom-sheet/bottom-sheet-ref.mjs +10 -4
  55. package/esm2020/bottom-sheet/bottom-sheet.mjs +12 -11
  56. package/esm2020/bottom-sheet/bottom-sheet_public_index.mjs +5 -0
  57. package/esm2020/bottom-sheet/index.mjs +6 -2
  58. package/esm2020/bottom-sheet/testing/bottom-sheet-harness.mjs +1 -1
  59. package/esm2020/button/button-module.mjs +8 -25
  60. package/esm2020/button/button.mjs +7 -7
  61. package/esm2020/button/button_public_index.mjs +5 -0
  62. package/esm2020/button/index.mjs +6 -2
  63. package/esm2020/button/public-api.mjs +1 -1
  64. package/esm2020/button/testing/button-harness.mjs +2 -3
  65. package/esm2020/button-toggle/button-toggle-module.mjs +5 -5
  66. package/esm2020/button-toggle/button-toggle.mjs +31 -19
  67. package/esm2020/button-toggle/button-toggle_public_index.mjs +5 -0
  68. package/esm2020/button-toggle/index.mjs +6 -2
  69. package/esm2020/button-toggle/public-api.mjs +1 -1
  70. package/esm2020/button-toggle/testing/button-toggle-group-harness-filters.mjs +1 -1
  71. package/esm2020/button-toggle/testing/button-toggle-group-harness.mjs +3 -3
  72. package/esm2020/button-toggle/testing/button-toggle-harness.mjs +2 -2
  73. package/esm2020/card/card-module.mjs +32 -10
  74. package/esm2020/card/card.mjs +56 -56
  75. package/esm2020/card/card_public_index.mjs +5 -0
  76. package/esm2020/card/index.mjs +6 -2
  77. package/esm2020/card/public-api.mjs +1 -1
  78. package/esm2020/card/testing/card-harness.mjs +1 -1
  79. package/esm2020/checkbox/checkbox-config.mjs +2 -2
  80. package/esm2020/checkbox/checkbox-module.mjs +10 -16
  81. package/esm2020/checkbox/checkbox-required-validator.mjs +7 -7
  82. package/esm2020/checkbox/checkbox.mjs +35 -17
  83. package/esm2020/checkbox/checkbox_public_index.mjs +5 -0
  84. package/esm2020/checkbox/index.mjs +6 -2
  85. package/esm2020/checkbox/public-api.mjs +1 -1
  86. package/esm2020/checkbox/testing/checkbox-harness.mjs +3 -3
  87. package/esm2020/chips/chip-default-options.mjs +1 -1
  88. package/esm2020/chips/chip-input.mjs +21 -11
  89. package/esm2020/chips/chip-list.mjs +32 -17
  90. package/esm2020/chips/chip-text-control.mjs +1 -1
  91. package/esm2020/chips/chip.mjs +40 -31
  92. package/esm2020/chips/chips-module.mjs +12 -12
  93. package/esm2020/chips/chips_public_index.mjs +5 -0
  94. package/esm2020/chips/index.mjs +6 -2
  95. package/esm2020/chips/testing/chip-harness.mjs +2 -2
  96. package/esm2020/chips/testing/chip-input-harness.mjs +2 -2
  97. package/esm2020/chips/testing/chip-list-harness.mjs +5 -5
  98. package/esm2020/chips/testing/chip-listbox-harness.mjs +1 -1
  99. package/esm2020/chips/testing/chip-option-harness.mjs +1 -1
  100. package/esm2020/core/animation/animation.mjs +1 -1
  101. package/esm2020/core/common-behaviors/color.mjs +4 -2
  102. package/esm2020/core/common-behaviors/common-module.mjs +14 -9
  103. package/esm2020/core/common-behaviors/constructor.mjs +1 -1
  104. package/esm2020/core/common-behaviors/disable-ripple.mjs +7 -3
  105. package/esm2020/core/common-behaviors/disabled.mjs +7 -3
  106. package/esm2020/core/common-behaviors/error-state.mjs +1 -1
  107. package/esm2020/core/common-behaviors/index.mjs +1 -1
  108. package/esm2020/core/common-behaviors/initialized.mjs +1 -1
  109. package/esm2020/core/common-behaviors/tabindex.mjs +4 -2
  110. package/esm2020/core/core_public_index.mjs +5 -0
  111. package/esm2020/core/datetime/date-adapter.mjs +4 -4
  112. package/esm2020/core/datetime/date-formats.mjs +1 -1
  113. package/esm2020/core/datetime/index.mjs +10 -14
  114. package/esm2020/core/datetime/native-date-adapter.mjs +6 -6
  115. package/esm2020/core/datetime/native-date-formats.mjs +2 -2
  116. package/esm2020/core/error/error-options.mjs +7 -7
  117. package/esm2020/core/index.mjs +6 -2
  118. package/esm2020/core/line/line.mjs +10 -10
  119. package/esm2020/core/option/index.mjs +6 -6
  120. package/esm2020/core/option/optgroup.mjs +8 -8
  121. package/esm2020/core/option/option-parent.mjs +1 -1
  122. package/esm2020/core/option/option.mjs +22 -12
  123. package/esm2020/core/ripple/index.mjs +5 -5
  124. package/esm2020/core/ripple/ripple-ref.mjs +1 -1
  125. package/esm2020/core/ripple/ripple-renderer.mjs +8 -8
  126. package/esm2020/core/ripple/ripple.mjs +13 -9
  127. package/esm2020/core/selection/index.mjs +6 -6
  128. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  129. package/esm2020/core/testing/optgroup-harness.mjs +2 -3
  130. package/esm2020/core/testing/option-harness.mjs +2 -2
  131. package/esm2020/core/version.mjs +1 -1
  132. package/esm2020/datepicker/calendar-body.mjs +11 -7
  133. package/esm2020/datepicker/calendar.mjs +46 -32
  134. package/esm2020/datepicker/date-range-input-parts.mjs +31 -28
  135. package/esm2020/datepicker/date-range-input.mjs +26 -15
  136. package/esm2020/datepicker/date-range-picker.mjs +5 -5
  137. package/esm2020/datepicker/date-range-selection-strategy.mjs +4 -4
  138. package/esm2020/datepicker/date-selection-model.mjs +15 -14
  139. package/esm2020/datepicker/datepicker-actions.mjs +13 -13
  140. package/esm2020/datepicker/datepicker-animations.mjs +6 -6
  141. package/esm2020/datepicker/datepicker-base.mjs +42 -39
  142. package/esm2020/datepicker/datepicker-errors.mjs +1 -1
  143. package/esm2020/datepicker/datepicker-input-base.mjs +23 -18
  144. package/esm2020/datepicker/datepicker-input.mjs +18 -12
  145. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  146. package/esm2020/datepicker/datepicker-module.mjs +9 -18
  147. package/esm2020/datepicker/datepicker-toggle.mjs +15 -14
  148. package/esm2020/datepicker/datepicker.mjs +5 -5
  149. package/esm2020/datepicker/datepicker_public_index.mjs +5 -0
  150. package/esm2020/datepicker/index.mjs +6 -2
  151. package/esm2020/datepicker/month-view.mjs +40 -26
  152. package/esm2020/datepicker/multi-year-view.mjs +29 -19
  153. package/esm2020/datepicker/testing/calendar-cell-harness.mjs +1 -1
  154. package/esm2020/datepicker/testing/calendar-harness.mjs +1 -1
  155. package/esm2020/datepicker/testing/date-range-input-harness.mjs +4 -5
  156. package/esm2020/datepicker/testing/datepicker-input-harness-base.mjs +4 -4
  157. package/esm2020/datepicker/testing/datepicker-input-harness.mjs +1 -1
  158. package/esm2020/datepicker/testing/datepicker-toggle-harness.mjs +1 -1
  159. package/esm2020/datepicker/testing/datepicker-trigger-harness-base.mjs +2 -2
  160. package/esm2020/datepicker/year-view.mjs +32 -19
  161. package/esm2020/dialog/dialog-animations.mjs +2 -2
  162. package/esm2020/dialog/dialog-config.mjs +1 -1
  163. package/esm2020/dialog/dialog-container.mjs +14 -11
  164. package/esm2020/dialog/dialog-content-directives.mjs +16 -16
  165. package/esm2020/dialog/dialog-module.mjs +8 -24
  166. package/esm2020/dialog/dialog-ref.mjs +10 -5
  167. package/esm2020/dialog/dialog.mjs +25 -22
  168. package/esm2020/dialog/dialog_public_index.mjs +5 -0
  169. package/esm2020/dialog/index.mjs +6 -2
  170. package/esm2020/dialog/testing/dialog-harness.mjs +3 -3
  171. package/esm2020/divider/divider-module.mjs +5 -5
  172. package/esm2020/divider/divider.mjs +17 -9
  173. package/esm2020/divider/divider_public_index.mjs +5 -0
  174. package/esm2020/divider/index.mjs +6 -2
  175. package/esm2020/divider/testing/divider-harness-filters.mjs +1 -1
  176. package/esm2020/divider/testing/divider-harness.mjs +1 -1
  177. package/esm2020/expansion/accordion-base.mjs +1 -1
  178. package/esm2020/expansion/accordion.mjs +21 -13
  179. package/esm2020/expansion/expansion-animations.mjs +2 -2
  180. package/esm2020/expansion/expansion-module.mjs +5 -5
  181. package/esm2020/expansion/expansion-panel-content.mjs +5 -5
  182. package/esm2020/expansion/expansion-panel-header.mjs +21 -29
  183. package/esm2020/expansion/expansion-panel.mjs +16 -12
  184. package/esm2020/expansion/expansion_public_index.mjs +5 -0
  185. package/esm2020/expansion/index.mjs +6 -2
  186. package/esm2020/expansion/testing/accordion-harness.mjs +1 -1
  187. package/esm2020/expansion/testing/expansion-harness-filters.mjs +1 -1
  188. package/esm2020/expansion/testing/expansion-harness.mjs +3 -3
  189. package/esm2020/form-field/error.mjs +4 -4
  190. package/esm2020/form-field/form-field-animations.mjs +2 -2
  191. package/esm2020/form-field/form-field-control.mjs +4 -4
  192. package/esm2020/form-field/form-field-module.mjs +7 -31
  193. package/esm2020/form-field/form-field.mjs +47 -35
  194. package/esm2020/form-field/form-field_public_index.mjs +5 -0
  195. package/esm2020/form-field/hint.mjs +4 -4
  196. package/esm2020/form-field/index.mjs +6 -2
  197. package/esm2020/form-field/label.mjs +5 -5
  198. package/esm2020/form-field/placeholder.mjs +5 -5
  199. package/esm2020/form-field/prefix.mjs +4 -4
  200. package/esm2020/form-field/suffix.mjs +4 -4
  201. package/esm2020/form-field/testing/form-field-harness.mjs +12 -9
  202. package/esm2020/grid-list/grid-list-module.mjs +8 -8
  203. package/esm2020/grid-list/grid-list.mjs +26 -15
  204. package/esm2020/grid-list/grid-list_public_index.mjs +5 -0
  205. package/esm2020/grid-list/grid-tile.mjs +32 -24
  206. package/esm2020/grid-list/index.mjs +6 -2
  207. package/esm2020/grid-list/testing/grid-list-harness-filters.mjs +1 -1
  208. package/esm2020/grid-list/testing/grid-list-harness.mjs +9 -5
  209. package/esm2020/grid-list/testing/grid-tile-harness.mjs +1 -1
  210. package/esm2020/grid-list/tile-coordinator.mjs +5 -3
  211. package/esm2020/grid-list/tile-styler.mjs +7 -6
  212. package/esm2020/icon/fake-svgs.mjs +2 -2
  213. package/esm2020/icon/icon-module.mjs +5 -5
  214. package/esm2020/icon/icon-registry.mjs +9 -9
  215. package/esm2020/icon/icon.mjs +30 -20
  216. package/esm2020/icon/icon_public_index.mjs +5 -0
  217. package/esm2020/icon/index.mjs +6 -2
  218. package/esm2020/icon/public-api.mjs +1 -1
  219. package/esm2020/icon/testing/fake-icon-registry.mjs +9 -9
  220. package/esm2020/icon/testing/icon-harness-filters.mjs +1 -1
  221. package/esm2020/icon/testing/icon-harness.mjs +2 -2
  222. package/esm2020/icon/testing/index.mjs +6 -2
  223. package/esm2020/icon/testing/testing_public_index.mjs +5 -0
  224. package/esm2020/icon/trusted-types.mjs +1 -1
  225. package/esm2020/input/index.mjs +6 -2
  226. package/esm2020/input/input-module.mjs +6 -16
  227. package/esm2020/input/input-value-accessor.mjs +1 -1
  228. package/esm2020/input/input.mjs +48 -22
  229. package/esm2020/input/input_public_index.mjs +5 -0
  230. package/esm2020/input/public-api.mjs +1 -1
  231. package/esm2020/input/testing/input-harness.mjs +6 -6
  232. package/esm2020/input/testing/native-option-harness.mjs +3 -3
  233. package/esm2020/input/testing/native-select-harness.mjs +4 -4
  234. package/esm2020/list/index.mjs +6 -2
  235. package/esm2020/list/list-module.mjs +7 -7
  236. package/esm2020/list/list.mjs +28 -27
  237. package/esm2020/list/list_public_index.mjs +5 -0
  238. package/esm2020/list/public-api.mjs +1 -1
  239. package/esm2020/list/selection-list.mjs +40 -21
  240. package/esm2020/list/testing/action-list-harness.mjs +1 -1
  241. package/esm2020/list/testing/list-harness-base.mjs +12 -5
  242. package/esm2020/list/testing/list-harness.mjs +1 -1
  243. package/esm2020/list/testing/list-item-harness-base.mjs +5 -7
  244. package/esm2020/list/testing/nav-list-harness.mjs +2 -3
  245. package/esm2020/list/testing/selection-list-harness.mjs +9 -9
  246. package/esm2020/menu/index.mjs +6 -2
  247. package/esm2020/menu/menu-animations.mjs +7 -7
  248. package/esm2020/menu/menu-content.mjs +7 -7
  249. package/esm2020/menu/menu-errors.mjs +1 -1
  250. package/esm2020/menu/menu-item.mjs +4 -4
  251. package/esm2020/menu/menu-module.mjs +8 -21
  252. package/esm2020/menu/menu-panel.mjs +1 -1
  253. package/esm2020/menu/menu-trigger.mjs +31 -22
  254. package/esm2020/menu/menu.mjs +33 -30
  255. package/esm2020/menu/menu_public_index.mjs +5 -0
  256. package/esm2020/menu/public-api.mjs +2 -2
  257. package/esm2020/menu/testing/menu-harness.mjs +4 -5
  258. package/esm2020/paginator/index.mjs +6 -2
  259. package/esm2020/paginator/paginator-intl.mjs +6 -8
  260. package/esm2020/paginator/paginator-module.mjs +6 -22
  261. package/esm2020/paginator/paginator.mjs +30 -19
  262. package/esm2020/paginator/paginator_public_index.mjs +5 -0
  263. package/esm2020/paginator/public-api.mjs +1 -1
  264. package/esm2020/paginator/testing/paginator-harness-filters.mjs +1 -1
  265. package/esm2020/paginator/testing/paginator-harness.mjs +2 -2
  266. package/esm2020/progress-bar/index.mjs +6 -2
  267. package/esm2020/progress-bar/progress-bar-module.mjs +5 -5
  268. package/esm2020/progress-bar/progress-bar.mjs +23 -18
  269. package/esm2020/progress-bar/progress-bar_public_index.mjs +5 -0
  270. package/esm2020/progress-bar/public-api.mjs +1 -1
  271. package/esm2020/progress-bar/testing/progress-bar-harness.mjs +1 -1
  272. package/esm2020/progress-spinner/index.mjs +6 -2
  273. package/esm2020/progress-spinner/progress-spinner-module.mjs +7 -17
  274. package/esm2020/progress-spinner/progress-spinner.mjs +16 -14
  275. package/esm2020/progress-spinner/progress-spinner_public_index.mjs +5 -0
  276. package/esm2020/progress-spinner/testing/progress-spinner-harness.mjs +2 -2
  277. package/esm2020/radio/index.mjs +6 -2
  278. package/esm2020/radio/public-api.mjs +1 -1
  279. package/esm2020/radio/radio-module.mjs +5 -5
  280. package/esm2020/radio/radio.mjs +52 -36
  281. package/esm2020/radio/radio_public_index.mjs +5 -0
  282. package/esm2020/radio/testing/radio-harness.mjs +3 -4
  283. package/esm2020/select/index.mjs +6 -2
  284. package/esm2020/select/public-api.mjs +2 -2
  285. package/esm2020/select/select-animations.mjs +7 -7
  286. package/esm2020/select/select-module.mjs +8 -21
  287. package/esm2020/select/select.mjs +70 -53
  288. package/esm2020/select/select_public_index.mjs +5 -0
  289. package/esm2020/select/testing/select-harness.mjs +9 -6
  290. package/esm2020/sidenav/drawer-animations.mjs +3 -3
  291. package/esm2020/sidenav/drawer.mjs +79 -43
  292. package/esm2020/sidenav/index.mjs +6 -2
  293. package/esm2020/sidenav/sidenav-module.mjs +7 -20
  294. package/esm2020/sidenav/sidenav.mjs +39 -23
  295. package/esm2020/sidenav/sidenav_public_index.mjs +5 -0
  296. package/esm2020/sidenav/testing/drawer-container-harness.mjs +1 -1
  297. package/esm2020/sidenav/testing/drawer-content-harness.mjs +1 -1
  298. package/esm2020/sidenav/testing/drawer-harness.mjs +2 -3
  299. package/esm2020/sidenav/testing/sidenav-container-harness.mjs +1 -1
  300. package/esm2020/sidenav/testing/sidenav-content-harness.mjs +1 -1
  301. package/esm2020/sidenav/testing/sidenav-harness.mjs +2 -3
  302. package/esm2020/slide-toggle/index.mjs +6 -2
  303. package/esm2020/slide-toggle/slide-toggle-config.mjs +2 -2
  304. package/esm2020/slide-toggle/slide-toggle-module.mjs +11 -16
  305. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +7 -7
  306. package/esm2020/slide-toggle/slide-toggle.mjs +19 -13
  307. package/esm2020/slide-toggle/slide-toggle_public_index.mjs +5 -0
  308. package/esm2020/slide-toggle/testing/slide-toggle-harness.mjs +3 -3
  309. package/esm2020/slider/index.mjs +6 -2
  310. package/esm2020/slider/public-api.mjs +1 -1
  311. package/esm2020/slider/slider-module.mjs +5 -5
  312. package/esm2020/slider/slider.mjs +52 -33
  313. package/esm2020/slider/slider_public_index.mjs +5 -0
  314. package/esm2020/slider/testing/slider-harness.mjs +6 -2
  315. package/esm2020/snack-bar/index.mjs +6 -2
  316. package/esm2020/snack-bar/simple-snack-bar.mjs +4 -4
  317. package/esm2020/snack-bar/snack-bar-animations.mjs +3 -3
  318. package/esm2020/snack-bar/snack-bar-container.mjs +5 -5
  319. package/esm2020/snack-bar/snack-bar-module.mjs +6 -22
  320. package/esm2020/snack-bar/snack-bar-ref.mjs +1 -1
  321. package/esm2020/snack-bar/snack-bar.mjs +14 -11
  322. package/esm2020/snack-bar/snack-bar_public_index.mjs +5 -0
  323. package/esm2020/snack-bar/testing/snack-bar-harness.mjs +5 -6
  324. package/esm2020/sort/index.mjs +6 -2
  325. package/esm2020/sort/sort-animations.mjs +11 -26
  326. package/esm2020/sort/sort-header-intl.mjs +5 -5
  327. package/esm2020/sort/sort-header.mjs +32 -29
  328. package/esm2020/sort/sort-module.mjs +6 -6
  329. package/esm2020/sort/sort.mjs +19 -12
  330. package/esm2020/sort/sort_public_index.mjs +5 -0
  331. package/esm2020/sort/testing/sort-harness-filters.mjs +1 -1
  332. package/esm2020/sort/testing/sort-harness.mjs +1 -1
  333. package/esm2020/sort/testing/sort-header-harness.mjs +1 -1
  334. package/esm2020/stepper/index.mjs +6 -2
  335. package/esm2020/stepper/step-content.mjs +5 -5
  336. package/esm2020/stepper/step-header.mjs +5 -5
  337. package/esm2020/stepper/step-label.mjs +4 -4
  338. package/esm2020/stepper/stepper-animations.mjs +4 -4
  339. package/esm2020/stepper/stepper-button.mjs +9 -9
  340. package/esm2020/stepper/stepper-icon.mjs +4 -4
  341. package/esm2020/stepper/stepper-intl.mjs +5 -5
  342. package/esm2020/stepper/stepper-module.mjs +5 -5
  343. package/esm2020/stepper/stepper.mjs +25 -21
  344. package/esm2020/stepper/stepper_public_index.mjs +5 -0
  345. package/esm2020/stepper/testing/step-harness-filters.mjs +1 -1
  346. package/esm2020/stepper/testing/step-harness.mjs +1 -1
  347. package/esm2020/stepper/testing/stepper-button-harnesses.mjs +3 -5
  348. package/esm2020/stepper/testing/stepper-harness.mjs +5 -5
  349. package/esm2020/table/cell.mjs +33 -29
  350. package/esm2020/table/index.mjs +6 -2
  351. package/esm2020/table/row.mjs +23 -23
  352. package/esm2020/table/table-data-source.mjs +30 -21
  353. package/esm2020/table/table-module.mjs +8 -15
  354. package/esm2020/table/table.mjs +10 -14
  355. package/esm2020/table/table_public_index.mjs +5 -0
  356. package/esm2020/table/testing/cell-harness.mjs +6 -3
  357. package/esm2020/table/testing/row-harness.mjs +2 -2
  358. package/esm2020/table/testing/table-harness-filters.mjs +1 -1
  359. package/esm2020/table/testing/table-harness.mjs +3 -3
  360. package/esm2020/table/text-column.mjs +4 -4
  361. package/esm2020/tabs/index.mjs +6 -2
  362. package/esm2020/tabs/ink-bar.mjs +5 -5
  363. package/esm2020/tabs/paginated-tab-header.mjs +19 -12
  364. package/esm2020/tabs/public-api.mjs +2 -2
  365. package/esm2020/tabs/tab-body.mjs +16 -16
  366. package/esm2020/tabs/tab-content.mjs +5 -6
  367. package/esm2020/tabs/tab-group.mjs +48 -33
  368. package/esm2020/tabs/tab-header.mjs +13 -9
  369. package/esm2020/tabs/tab-label-wrapper.mjs +5 -5
  370. package/esm2020/tabs/tab-label.mjs +4 -4
  371. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +31 -21
  372. package/esm2020/tabs/tab.mjs +10 -6
  373. package/esm2020/tabs/tabs-animations.mjs +5 -5
  374. package/esm2020/tabs/tabs-module.mjs +5 -5
  375. package/esm2020/tabs/tabs_public_index.mjs +5 -0
  376. package/esm2020/tabs/testing/tab-group-harness.mjs +2 -3
  377. package/esm2020/tabs/testing/tab-harness.mjs +2 -3
  378. package/esm2020/tabs/testing/tab-link-harness.mjs +2 -3
  379. package/esm2020/toolbar/index.mjs +6 -2
  380. package/esm2020/toolbar/public-api.mjs +1 -1
  381. package/esm2020/toolbar/testing/toolbar-harness.mjs +3 -4
  382. package/esm2020/toolbar/toolbar-module.mjs +5 -5
  383. package/esm2020/toolbar/toolbar.mjs +7 -7
  384. package/esm2020/toolbar/toolbar_public_index.mjs +5 -0
  385. package/esm2020/tooltip/index.mjs +6 -2
  386. package/esm2020/tooltip/tooltip-animations.mjs +3 -3
  387. package/esm2020/tooltip/tooltip-module.mjs +7 -20
  388. package/esm2020/tooltip/tooltip.mjs +67 -42
  389. package/esm2020/tooltip/tooltip_public_index.mjs +5 -0
  390. package/esm2020/tree/data-source/flat-data-source.mjs +4 -2
  391. package/esm2020/tree/data-source/nested-data-source.mjs +8 -5
  392. package/esm2020/tree/index.mjs +6 -2
  393. package/esm2020/tree/node.mjs +26 -22
  394. package/esm2020/tree/outlet.mjs +14 -10
  395. package/esm2020/tree/padding.mjs +17 -9
  396. package/esm2020/tree/public-api.mjs +1 -1
  397. package/esm2020/tree/testing/node-harness.mjs +1 -1
  398. package/esm2020/tree/testing/tree-harness-filters.mjs +1 -1
  399. package/esm2020/tree/testing/tree-harness.mjs +2 -2
  400. package/esm2020/tree/toggle.mjs +8 -6
  401. package/esm2020/tree/tree-module.mjs +6 -6
  402. package/esm2020/tree/tree.mjs +4 -4
  403. package/esm2020/tree/tree_public_index.mjs +5 -0
  404. package/expansion/expansion_public_index.d.ts +4 -0
  405. package/expansion/index.d.ts +5 -1
  406. package/expansion/package.json +2 -2
  407. package/fesm2015/autocomplete/testing.mjs +2 -3
  408. package/fesm2015/autocomplete/testing.mjs.map +1 -1
  409. package/fesm2015/autocomplete.mjs +67 -67
  410. package/fesm2015/autocomplete.mjs.map +1 -1
  411. package/fesm2015/badge/testing.mjs +1 -2
  412. package/fesm2015/badge/testing.mjs.map +1 -1
  413. package/fesm2015/badge.mjs +28 -19
  414. package/fesm2015/badge.mjs.map +1 -1
  415. package/fesm2015/bottom-sheet/testing.mjs.map +1 -1
  416. package/fesm2015/bottom-sheet.mjs +41 -34
  417. package/fesm2015/bottom-sheet.mjs.map +1 -1
  418. package/fesm2015/button/testing.mjs +1 -2
  419. package/fesm2015/button/testing.mjs.map +1 -1
  420. package/fesm2015/button-toggle/testing.mjs.map +1 -1
  421. package/fesm2015/button-toggle.mjs +41 -21
  422. package/fesm2015/button-toggle.mjs.map +1 -1
  423. package/fesm2015/button.mjs +21 -30
  424. package/fesm2015/button.mjs.map +1 -1
  425. package/fesm2015/card/testing.mjs.map +1 -1
  426. package/fesm2015/card.mjs +94 -64
  427. package/fesm2015/card.mjs.map +1 -1
  428. package/fesm2015/checkbox/testing.mjs +2 -2
  429. package/fesm2015/checkbox/testing.mjs.map +1 -1
  430. package/fesm2015/checkbox.mjs +56 -36
  431. package/fesm2015/checkbox.mjs.map +1 -1
  432. package/fesm2015/chips/testing.mjs +2 -2
  433. package/fesm2015/chips/testing.mjs.map +1 -1
  434. package/fesm2015/chips.mjs +107 -65
  435. package/fesm2015/chips.mjs.map +1 -1
  436. package/fesm2015/core/testing.mjs +1 -2
  437. package/fesm2015/core/testing.mjs.map +1 -1
  438. package/fesm2015/core.mjs +134 -99
  439. package/fesm2015/core.mjs.map +1 -1
  440. package/fesm2015/datepicker/testing.mjs +5 -6
  441. package/fesm2015/datepicker/testing.mjs.map +1 -1
  442. package/fesm2015/datepicker.mjs +355 -271
  443. package/fesm2015/datepicker.mjs.map +1 -1
  444. package/fesm2015/dialog/testing.mjs +2 -2
  445. package/fesm2015/dialog/testing.mjs.map +1 -1
  446. package/fesm2015/dialog.mjs +75 -72
  447. package/fesm2015/dialog.mjs.map +1 -1
  448. package/fesm2015/divider/testing.mjs.map +1 -1
  449. package/fesm2015/divider.mjs +28 -12
  450. package/fesm2015/divider.mjs.map +1 -1
  451. package/fesm2015/expansion/testing.mjs.map +1 -1
  452. package/fesm2015/expansion.mjs +71 -59
  453. package/fesm2015/expansion.mjs.map +1 -1
  454. package/fesm2015/form-field/testing.mjs +5 -2
  455. package/fesm2015/form-field/testing.mjs.map +1 -1
  456. package/fesm2015/form-field.mjs +83 -87
  457. package/fesm2015/form-field.mjs.map +1 -1
  458. package/fesm2015/grid-list/testing.mjs +8 -4
  459. package/fesm2015/grid-list/testing.mjs.map +1 -1
  460. package/fesm2015/grid-list.mjs +80 -50
  461. package/fesm2015/grid-list.mjs.map +1 -1
  462. package/fesm2015/icon/testing.mjs +16 -8
  463. package/fesm2015/icon/testing.mjs.map +1 -1
  464. package/fesm2015/icon.mjs +49 -31
  465. package/fesm2015/icon.mjs.map +1 -1
  466. package/fesm2015/input/testing.mjs +8 -8
  467. package/fesm2015/input/testing.mjs.map +1 -1
  468. package/fesm2015/input.mjs +59 -35
  469. package/fesm2015/input.mjs.map +1 -1
  470. package/fesm2015/list/testing.mjs +17 -13
  471. package/fesm2015/list/testing.mjs.map +1 -1
  472. package/fesm2015/list.mjs +77 -50
  473. package/fesm2015/list.mjs.map +1 -1
  474. package/fesm2015/menu/testing.mjs +1 -2
  475. package/fesm2015/menu/testing.mjs.map +1 -1
  476. package/fesm2015/menu.mjs +92 -85
  477. package/fesm2015/menu.mjs.map +1 -1
  478. package/fesm2015/paginator/testing.mjs +1 -1
  479. package/fesm2015/paginator/testing.mjs.map +1 -1
  480. package/fesm2015/paginator.mjs +46 -45
  481. package/fesm2015/paginator.mjs.map +1 -1
  482. package/fesm2015/progress-bar/testing.mjs.map +1 -1
  483. package/fesm2015/progress-bar.mjs +34 -21
  484. package/fesm2015/progress-bar.mjs.map +1 -1
  485. package/fesm2015/progress-spinner/testing.mjs +1 -1
  486. package/fesm2015/progress-spinner/testing.mjs.map +1 -1
  487. package/fesm2015/progress-spinner.mjs +29 -29
  488. package/fesm2015/progress-spinner.mjs.map +1 -1
  489. package/fesm2015/radio/testing.mjs +1 -2
  490. package/fesm2015/radio/testing.mjs.map +1 -1
  491. package/fesm2015/radio.mjs +63 -39
  492. package/fesm2015/radio.mjs.map +1 -1
  493. package/fesm2015/select/testing.mjs +4 -1
  494. package/fesm2015/select/testing.mjs.map +1 -1
  495. package/fesm2015/select.mjs +89 -77
  496. package/fesm2015/select.mjs.map +1 -1
  497. package/fesm2015/sidenav/testing.mjs +2 -4
  498. package/fesm2015/sidenav/testing.mjs.map +1 -1
  499. package/fesm2015/sidenav.mjs +130 -83
  500. package/fesm2015/sidenav.mjs.map +1 -1
  501. package/fesm2015/slide-toggle/testing.mjs +2 -2
  502. package/fesm2015/slide-toggle/testing.mjs.map +1 -1
  503. package/fesm2015/slide-toggle.mjs +40 -31
  504. package/fesm2015/slide-toggle.mjs.map +1 -1
  505. package/fesm2015/slider/testing.mjs +5 -1
  506. package/fesm2015/slider/testing.mjs.map +1 -1
  507. package/fesm2015/slider.mjs +62 -35
  508. package/fesm2015/slider.mjs.map +1 -1
  509. package/fesm2015/snack-bar/testing.mjs +1 -2
  510. package/fesm2015/snack-bar/testing.mjs.map +1 -1
  511. package/fesm2015/snack-bar.mjs +35 -40
  512. package/fesm2015/snack-bar.mjs.map +1 -1
  513. package/fesm2015/sort/testing.mjs.map +1 -1
  514. package/fesm2015/sort.mjs +74 -70
  515. package/fesm2015/sort.mjs.map +1 -1
  516. package/fesm2015/stepper/testing.mjs +6 -8
  517. package/fesm2015/stepper/testing.mjs.map +1 -1
  518. package/fesm2015/stepper.mjs +65 -53
  519. package/fesm2015/stepper.mjs.map +1 -1
  520. package/fesm2015/table/testing.mjs +7 -4
  521. package/fesm2015/table/testing.mjs.map +1 -1
  522. package/fesm2015/table.mjs +106 -96
  523. package/fesm2015/table.mjs.map +1 -1
  524. package/fesm2015/tabs/testing.mjs +3 -6
  525. package/fesm2015/tabs/testing.mjs.map +1 -1
  526. package/fesm2015/tabs.mjs +161 -114
  527. package/fesm2015/tabs.mjs.map +1 -1
  528. package/fesm2015/toolbar/testing.mjs +2 -3
  529. package/fesm2015/toolbar/testing.mjs.map +1 -1
  530. package/fesm2015/toolbar.mjs +18 -10
  531. package/fesm2015/toolbar.mjs.map +1 -1
  532. package/fesm2015/tooltip.mjs +82 -62
  533. package/fesm2015/tooltip.mjs.map +1 -1
  534. package/fesm2015/tree/testing.mjs +1 -1
  535. package/fesm2015/tree/testing.mjs.map +1 -1
  536. package/fesm2015/tree.mjs +85 -54
  537. package/fesm2015/tree.mjs.map +1 -1
  538. package/fesm2020/autocomplete/testing.mjs +5 -6
  539. package/fesm2020/autocomplete/testing.mjs.map +1 -1
  540. package/fesm2020/autocomplete.mjs +67 -67
  541. package/fesm2020/autocomplete.mjs.map +1 -1
  542. package/fesm2020/badge/testing.mjs +1 -2
  543. package/fesm2020/badge/testing.mjs.map +1 -1
  544. package/fesm2020/badge.mjs +28 -19
  545. package/fesm2020/badge.mjs.map +1 -1
  546. package/fesm2020/bottom-sheet/testing.mjs.map +1 -1
  547. package/fesm2020/bottom-sheet.mjs +41 -34
  548. package/fesm2020/bottom-sheet.mjs.map +1 -1
  549. package/fesm2020/button/testing.mjs +1 -2
  550. package/fesm2020/button/testing.mjs.map +1 -1
  551. package/fesm2020/button-toggle/testing.mjs +3 -3
  552. package/fesm2020/button-toggle/testing.mjs.map +1 -1
  553. package/fesm2020/button-toggle.mjs +41 -21
  554. package/fesm2020/button-toggle.mjs.map +1 -1
  555. package/fesm2020/button.mjs +21 -30
  556. package/fesm2020/button.mjs.map +1 -1
  557. package/fesm2020/card/testing.mjs.map +1 -1
  558. package/fesm2020/card.mjs +94 -64
  559. package/fesm2020/card.mjs.map +1 -1
  560. package/fesm2020/checkbox/testing.mjs +2 -2
  561. package/fesm2020/checkbox/testing.mjs.map +1 -1
  562. package/fesm2020/checkbox.mjs +56 -36
  563. package/fesm2020/checkbox.mjs.map +1 -1
  564. package/fesm2020/chips/testing.mjs +6 -6
  565. package/fesm2020/chips/testing.mjs.map +1 -1
  566. package/fesm2020/chips.mjs +107 -65
  567. package/fesm2020/chips.mjs.map +1 -1
  568. package/fesm2020/core/testing.mjs +2 -3
  569. package/fesm2020/core/testing.mjs.map +1 -1
  570. package/fesm2020/core.mjs +135 -100
  571. package/fesm2020/core.mjs.map +1 -1
  572. package/fesm2020/datepicker/testing.mjs +6 -7
  573. package/fesm2020/datepicker/testing.mjs.map +1 -1
  574. package/fesm2020/datepicker.mjs +355 -271
  575. package/fesm2020/datepicker.mjs.map +1 -1
  576. package/fesm2020/dialog/testing.mjs +2 -2
  577. package/fesm2020/dialog/testing.mjs.map +1 -1
  578. package/fesm2020/dialog.mjs +75 -72
  579. package/fesm2020/dialog.mjs.map +1 -1
  580. package/fesm2020/divider/testing.mjs.map +1 -1
  581. package/fesm2020/divider.mjs +28 -12
  582. package/fesm2020/divider.mjs.map +1 -1
  583. package/fesm2020/expansion/testing.mjs +2 -2
  584. package/fesm2020/expansion/testing.mjs.map +1 -1
  585. package/fesm2020/expansion.mjs +71 -59
  586. package/fesm2020/expansion.mjs.map +1 -1
  587. package/fesm2020/form-field/testing.mjs +10 -7
  588. package/fesm2020/form-field/testing.mjs.map +1 -1
  589. package/fesm2020/form-field.mjs +83 -87
  590. package/fesm2020/form-field.mjs.map +1 -1
  591. package/fesm2020/grid-list/testing.mjs +8 -4
  592. package/fesm2020/grid-list/testing.mjs.map +1 -1
  593. package/fesm2020/grid-list.mjs +80 -50
  594. package/fesm2020/grid-list.mjs.map +1 -1
  595. package/fesm2020/icon/testing.mjs +17 -9
  596. package/fesm2020/icon/testing.mjs.map +1 -1
  597. package/fesm2020/icon.mjs +49 -31
  598. package/fesm2020/icon.mjs.map +1 -1
  599. package/fesm2020/input/testing.mjs +10 -10
  600. package/fesm2020/input/testing.mjs.map +1 -1
  601. package/fesm2020/input.mjs +59 -35
  602. package/fesm2020/input.mjs.map +1 -1
  603. package/fesm2020/list/testing.mjs +23 -19
  604. package/fesm2020/list/testing.mjs.map +1 -1
  605. package/fesm2020/list.mjs +79 -51
  606. package/fesm2020/list.mjs.map +1 -1
  607. package/fesm2020/menu/testing.mjs +3 -4
  608. package/fesm2020/menu/testing.mjs.map +1 -1
  609. package/fesm2020/menu.mjs +92 -85
  610. package/fesm2020/menu.mjs.map +1 -1
  611. package/fesm2020/paginator/testing.mjs +1 -1
  612. package/fesm2020/paginator/testing.mjs.map +1 -1
  613. package/fesm2020/paginator.mjs +46 -45
  614. package/fesm2020/paginator.mjs.map +1 -1
  615. package/fesm2020/progress-bar/testing.mjs.map +1 -1
  616. package/fesm2020/progress-bar.mjs +34 -21
  617. package/fesm2020/progress-bar.mjs.map +1 -1
  618. package/fesm2020/progress-spinner/testing.mjs +1 -1
  619. package/fesm2020/progress-spinner/testing.mjs.map +1 -1
  620. package/fesm2020/progress-spinner.mjs +29 -29
  621. package/fesm2020/progress-spinner.mjs.map +1 -1
  622. package/fesm2020/radio/testing.mjs +2 -3
  623. package/fesm2020/radio/testing.mjs.map +1 -1
  624. package/fesm2020/radio.mjs +63 -39
  625. package/fesm2020/radio.mjs.map +1 -1
  626. package/fesm2020/select/testing.mjs +8 -5
  627. package/fesm2020/select/testing.mjs.map +1 -1
  628. package/fesm2020/select.mjs +89 -77
  629. package/fesm2020/select.mjs.map +1 -1
  630. package/fesm2020/sidenav/testing.mjs +2 -4
  631. package/fesm2020/sidenav/testing.mjs.map +1 -1
  632. package/fesm2020/sidenav.mjs +130 -83
  633. package/fesm2020/sidenav.mjs.map +1 -1
  634. package/fesm2020/slide-toggle/testing.mjs +2 -2
  635. package/fesm2020/slide-toggle/testing.mjs.map +1 -1
  636. package/fesm2020/slide-toggle.mjs +40 -31
  637. package/fesm2020/slide-toggle.mjs.map +1 -1
  638. package/fesm2020/slider/testing.mjs +5 -1
  639. package/fesm2020/slider/testing.mjs.map +1 -1
  640. package/fesm2020/slider.mjs +62 -35
  641. package/fesm2020/slider.mjs.map +1 -1
  642. package/fesm2020/snack-bar/testing.mjs +4 -5
  643. package/fesm2020/snack-bar/testing.mjs.map +1 -1
  644. package/fesm2020/snack-bar.mjs +35 -40
  645. package/fesm2020/snack-bar.mjs.map +1 -1
  646. package/fesm2020/sort/testing.mjs.map +1 -1
  647. package/fesm2020/sort.mjs +75 -72
  648. package/fesm2020/sort.mjs.map +1 -1
  649. package/fesm2020/stepper/testing.mjs +6 -8
  650. package/fesm2020/stepper/testing.mjs.map +1 -1
  651. package/fesm2020/stepper.mjs +65 -53
  652. package/fesm2020/stepper.mjs.map +1 -1
  653. package/fesm2020/table/testing.mjs +7 -4
  654. package/fesm2020/table/testing.mjs.map +1 -1
  655. package/fesm2020/table.mjs +106 -96
  656. package/fesm2020/table.mjs.map +1 -1
  657. package/fesm2020/tabs/testing.mjs +3 -6
  658. package/fesm2020/tabs/testing.mjs.map +1 -1
  659. package/fesm2020/tabs.mjs +161 -114
  660. package/fesm2020/tabs.mjs.map +1 -1
  661. package/fesm2020/toolbar/testing.mjs +2 -3
  662. package/fesm2020/toolbar/testing.mjs.map +1 -1
  663. package/fesm2020/toolbar.mjs +18 -10
  664. package/fesm2020/toolbar.mjs.map +1 -1
  665. package/fesm2020/tooltip.mjs +82 -62
  666. package/fesm2020/tooltip.mjs.map +1 -1
  667. package/fesm2020/tree/testing.mjs +1 -1
  668. package/fesm2020/tree/testing.mjs.map +1 -1
  669. package/fesm2020/tree.mjs +85 -54
  670. package/fesm2020/tree.mjs.map +1 -1
  671. package/form-field/form-field_public_index.d.ts +4 -0
  672. package/form-field/index.d.ts +5 -1
  673. package/form-field/package.json +2 -2
  674. package/grid-list/grid-list_public_index.d.ts +4 -0
  675. package/grid-list/index.d.ts +5 -1
  676. package/grid-list/package.json +2 -2
  677. package/grid-list/testing/grid-list-harness.d.ts +1 -1
  678. package/icon/icon-registry.d.ts +1 -1
  679. package/icon/icon_public_index.d.ts +4 -0
  680. package/icon/index.d.ts +5 -1
  681. package/icon/package.json +2 -2
  682. package/icon/testing/index.d.ts +5 -1
  683. package/icon/testing/package.json +2 -2
  684. package/icon/testing/testing_public_index.d.ts +4 -0
  685. package/input/_input-theme.scss +8 -6
  686. package/input/index.d.ts +5 -1
  687. package/input/input.d.ts +2 -0
  688. package/input/input_public_index.d.ts +4 -0
  689. package/input/package.json +2 -2
  690. package/list/index.d.ts +5 -1
  691. package/list/list_public_index.d.ts +4 -0
  692. package/list/package.json +2 -2
  693. package/list/testing/list-harness-base.d.ts +2 -2
  694. package/menu/index.d.ts +5 -1
  695. package/menu/menu_public_index.d.ts +4 -0
  696. package/menu/package.json +2 -2
  697. package/menu/public-api.d.ts +1 -1
  698. package/menu/testing/menu-harness.d.ts +2 -2
  699. package/package.json +79 -79
  700. package/paginator/index.d.ts +5 -1
  701. package/paginator/package.json +2 -2
  702. package/paginator/paginator_public_index.d.ts +4 -0
  703. package/prebuilt-themes/deeppurple-amber.css +1 -1
  704. package/prebuilt-themes/indigo-pink.css +1 -1
  705. package/prebuilt-themes/pink-bluegrey.css +1 -1
  706. package/prebuilt-themes/purple-green.css +1 -1
  707. package/progress-bar/index.d.ts +5 -1
  708. package/progress-bar/package.json +2 -2
  709. package/progress-bar/progress-bar_public_index.d.ts +4 -0
  710. package/progress-spinner/index.d.ts +5 -1
  711. package/progress-spinner/package.json +2 -2
  712. package/progress-spinner/progress-spinner_public_index.d.ts +4 -0
  713. package/radio/index.d.ts +5 -1
  714. package/radio/package.json +2 -2
  715. package/radio/radio_public_index.d.ts +4 -0
  716. package/radio/testing/radio-harness.d.ts +2 -2
  717. package/schematics/ng-add/index.js +3 -3
  718. package/schematics/ng-add/index.mjs +3 -3
  719. package/schematics/ng-add/package-config.js +4 -2
  720. package/schematics/ng-add/package-config.mjs +4 -2
  721. package/schematics/ng-add/setup-project.js +2 -3
  722. package/schematics/ng-add/setup-project.mjs +2 -3
  723. package/schematics/ng-add/theming/create-custom-theme.js +1 -1
  724. package/schematics/ng-add/theming/create-custom-theme.mjs +1 -1
  725. package/schematics/ng-add/theming/theming.js +6 -6
  726. package/schematics/ng-add/theming/theming.mjs +6 -6
  727. package/schematics/ng-generate/address-form/index.js +2 -2
  728. package/schematics/ng-generate/address-form/index.mjs +2 -2
  729. package/schematics/ng-generate/dashboard/index.js +2 -2
  730. package/schematics/ng-generate/dashboard/index.mjs +2 -2
  731. package/schematics/ng-generate/navigation/index.js +2 -2
  732. package/schematics/ng-generate/navigation/index.mjs +2 -2
  733. package/schematics/ng-generate/table/index.js +3 -3
  734. package/schematics/ng-generate/table/index.mjs +3 -3
  735. package/schematics/ng-generate/tree/index.js +2 -2
  736. package/schematics/ng-generate/tree/index.mjs +2 -2
  737. package/schematics/ng-update/data/class-names.js +6 -8
  738. package/schematics/ng-update/data/class-names.mjs +6 -8
  739. package/schematics/ng-update/data/constructor-checks.js +33 -32
  740. package/schematics/ng-update/data/constructor-checks.mjs +33 -32
  741. package/schematics/ng-update/data/css-selectors.js +11 -9
  742. package/schematics/ng-update/data/css-selectors.mjs +11 -9
  743. package/schematics/ng-update/data/element-selectors.js +6 -4
  744. package/schematics/ng-update/data/element-selectors.mjs +6 -4
  745. package/schematics/ng-update/data/input-names.js +31 -23
  746. package/schematics/ng-update/data/input-names.mjs +31 -23
  747. package/schematics/ng-update/data/method-call-checks.js +10 -6
  748. package/schematics/ng-update/data/method-call-checks.mjs +10 -6
  749. package/schematics/ng-update/data/property-names.js +62 -50
  750. package/schematics/ng-update/data/property-names.mjs +62 -50
  751. package/schematics/ng-update/data/symbol-removal.js +6 -6
  752. package/schematics/ng-update/data/symbol-removal.mjs +6 -6
  753. package/schematics/ng-update/index.js +1 -1
  754. package/schematics/ng-update/index.mjs +1 -1
  755. package/schematics/ng-update/migrations/hammer-gestures-v9/find-main-module.js +5 -3
  756. package/schematics/ng-update/migrations/hammer-gestures-v9/find-main-module.mjs +5 -3
  757. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.d.ts +4 -2
  758. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +68 -33
  759. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.mjs +68 -33
  760. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-template-check.js +38 -7
  761. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-template-check.mjs +38 -7
  762. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +28 -14
  763. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.mjs +28 -14
  764. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-array-element.js +1 -1
  765. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-array-element.mjs +1 -1
  766. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-element-from-html.js +1 -1
  767. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-element-from-html.mjs +1 -1
  768. package/schematics/ng-update/migrations/misc-checks/misc-class-inheritance.js +3 -2
  769. package/schematics/ng-update/migrations/misc-checks/misc-class-inheritance.mjs +3 -2
  770. package/schematics/ng-update/migrations/misc-checks/misc-class-names.js +1 -1
  771. package/schematics/ng-update/migrations/misc-checks/misc-class-names.mjs +1 -1
  772. package/schematics/ng-update/migrations/misc-checks/misc-imports.js +6 -3
  773. package/schematics/ng-update/migrations/misc-checks/misc-imports.mjs +6 -3
  774. package/schematics/ng-update/migrations/misc-checks/misc-property-names.js +1 -1
  775. package/schematics/ng-update/migrations/misc-checks/misc-property-names.mjs +1 -1
  776. package/schematics/ng-update/migrations/misc-checks/misc-template.js +7 -13
  777. package/schematics/ng-update/migrations/misc-checks/misc-template.mjs +7 -13
  778. package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor-migration.js +1 -1
  779. package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor-migration.mjs +1 -1
  780. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +3 -2
  781. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.mjs +3 -2
  782. package/schematics/ng-update/migrations/theming-api-v12/config.js +59 -10
  783. package/schematics/ng-update/migrations/theming-api-v12/config.mjs +59 -10
  784. package/schematics/ng-update/migrations/theming-api-v12/migration.js +19 -11
  785. package/schematics/ng-update/migrations/theming-api-v12/migration.mjs +19 -11
  786. package/schematics/ng-update/migrations/theming-api-v12/theming-api-migration.d.ts +2 -2
  787. package/schematics/ng-update/migrations/theming-api-v12/theming-api-migration.js +7 -4
  788. package/schematics/ng-update/migrations/theming-api-v12/theming-api-migration.mjs +7 -4
  789. package/schematics/ng-update/typescript/module-specifiers.js +3 -3
  790. package/schematics/ng-update/typescript/module-specifiers.mjs +3 -3
  791. package/select/index.d.ts +5 -1
  792. package/select/package.json +2 -2
  793. package/select/public-api.d.ts +1 -1
  794. package/select/select_public_index.d.ts +4 -0
  795. package/select/testing/select-harness.d.ts +4 -4
  796. package/sidenav/index.d.ts +5 -1
  797. package/sidenav/package.json +2 -2
  798. package/sidenav/sidenav_public_index.d.ts +4 -0
  799. package/slide-toggle/index.d.ts +5 -1
  800. package/slide-toggle/package.json +2 -2
  801. package/slide-toggle/slide-toggle_public_index.d.ts +4 -0
  802. package/slider/index.d.ts +5 -1
  803. package/slider/package.json +2 -2
  804. package/slider/slider_public_index.d.ts +4 -0
  805. package/snack-bar/index.d.ts +5 -1
  806. package/snack-bar/package.json +2 -2
  807. package/snack-bar/snack-bar_public_index.d.ts +4 -0
  808. package/sort/index.d.ts +5 -1
  809. package/sort/package.json +2 -2
  810. package/sort/sort_public_index.d.ts +4 -0
  811. package/stepper/index.d.ts +5 -1
  812. package/stepper/package.json +2 -2
  813. package/stepper/stepper_public_index.d.ts +4 -0
  814. package/table/index.d.ts +5 -1
  815. package/table/package.json +2 -2
  816. package/table/table-data-source.d.ts +3 -3
  817. package/table/table_public_index.d.ts +4 -0
  818. package/table/testing/row-harness.d.ts +2 -2
  819. package/table/testing/table-harness.d.ts +4 -4
  820. package/tabs/_tabs-theme.scss +6 -2
  821. package/tabs/index.d.ts +5 -1
  822. package/tabs/package.json +2 -2
  823. package/tabs/public-api.d.ts +1 -1
  824. package/tabs/tab-content.d.ts +2 -3
  825. package/tabs/tabs_public_index.d.ts +4 -0
  826. package/toolbar/index.d.ts +5 -1
  827. package/toolbar/package.json +2 -2
  828. package/toolbar/toolbar_public_index.d.ts +4 -0
  829. package/tooltip/index.d.ts +5 -1
  830. package/tooltip/package.json +2 -2
  831. package/tooltip/tooltip_public_index.d.ts +4 -0
  832. package/tree/index.d.ts +5 -1
  833. package/tree/package.json +2 -2
  834. package/tree/tree_public_index.d.ts +4 -0
@@ -83,9 +83,9 @@ class MatDatepickerIntl {
83
83
  return `${start} \u2013 ${end}`;
84
84
  }
85
85
  }
86
- MatDatepickerIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerIntl, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
87
- MatDatepickerIntl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerIntl, providedIn: 'root' });
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerIntl, decorators: [{
86
+ MatDatepickerIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerIntl, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
87
+ MatDatepickerIntl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerIntl, providedIn: 'root' });
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerIntl, decorators: [{
89
89
  type: Injectable,
90
90
  args: [{ providedIn: 'root' }]
91
91
  }] });
@@ -196,7 +196,7 @@ class MatCalendarBody {
196
196
  this._firstRowOffset = rows && rows.length && rows[0].length ? numCols - rows[0].length : 0;
197
197
  }
198
198
  if (changes['cellAspectRatio'] || columnChanges || !this._cellPadding) {
199
- this._cellPadding = `${50 * this.cellAspectRatio / numCols}%`;
199
+ this._cellPadding = `${(50 * this.cellAspectRatio) / numCols}%`;
200
200
  }
201
201
  if (columnChanges || !this._cellWidth) {
202
202
  this._cellWidth = `${100 / numCols}%`;
@@ -326,9 +326,9 @@ class MatCalendarBody {
326
326
  return null;
327
327
  }
328
328
  }
329
- MatCalendarBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatCalendarBody, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
330
- MatCalendarBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: { label: "label", rows: "rows", todayValue: "todayValue", startValue: "startValue", endValue: "endValue", labelMinRequiredCells: "labelMinRequiredCells", numCols: "numCols", activeCell: "activeCell", isRange: "isRange", cellAspectRatio: "cellAspectRatio", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd", previewStart: "previewStart", previewEnd: "previewEnd" }, outputs: { selectedValueChange: "selectedValueChange", previewChange: "previewChange" }, host: { classAttribute: "mat-calendar-body" }, exportAs: ["matCalendarBody"], usesOnChanges: true, ngImport: i0, template: "<!--\n If there's not enough space in the first row, create a separate label row. We mark this row as\n aria-hidden because we don't want it to be read out as one of the weeks in the month.\n-->\n<tr *ngIf=\"_firstRowOffset < labelMinRequiredCells\" aria-hidden=\"true\">\n <td class=\"mat-calendar-body-label\"\n [attr.colspan]=\"numCols\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n {{label}}\n </td>\n</tr>\n\n<!-- Create the first row separately so we can include a special spacer cell. -->\n<tr *ngFor=\"let row of rows; let rowIndex = index\" role=\"row\">\n <!--\n This cell is purely decorative, but we can't put `aria-hidden` or `role=\"presentation\"` on it,\n because it throws off the week days for the rest of the row on NVDA. The aspect ratio of the\n table cells is maintained by setting the top and bottom padding as a percentage of the width\n (a variant of the trick described here: https://www.w3schools.com/howto/howto_css_aspect_ratio.asp).\n -->\n <td *ngIf=\"rowIndex === 0 && _firstRowOffset\"\n class=\"mat-calendar-body-label\"\n [attr.colspan]=\"_firstRowOffset\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n {{_firstRowOffset >= labelMinRequiredCells ? label : ''}}\n </td>\n <td *ngFor=\"let item of row; let colIndex = index\"\n role=\"gridcell\"\n class=\"mat-calendar-body-cell\"\n [ngClass]=\"item.cssClasses\"\n [tabindex]=\"_isActiveCell(rowIndex, colIndex) ? 0 : -1\"\n [attr.data-mat-row]=\"rowIndex\"\n [attr.data-mat-col]=\"colIndex\"\n [class.mat-calendar-body-disabled]=\"!item.enabled\"\n [class.mat-calendar-body-active]=\"_isActiveCell(rowIndex, colIndex)\"\n [class.mat-calendar-body-range-start]=\"_isRangeStart(item.compareValue)\"\n [class.mat-calendar-body-range-end]=\"_isRangeEnd(item.compareValue)\"\n [class.mat-calendar-body-in-range]=\"_isInRange(item.compareValue)\"\n [class.mat-calendar-body-comparison-bridge-start]=\"_isComparisonBridgeStart(item.compareValue, rowIndex, colIndex)\"\n [class.mat-calendar-body-comparison-bridge-end]=\"_isComparisonBridgeEnd(item.compareValue, rowIndex, colIndex)\"\n [class.mat-calendar-body-comparison-start]=\"_isComparisonStart(item.compareValue)\"\n [class.mat-calendar-body-comparison-end]=\"_isComparisonEnd(item.compareValue)\"\n [class.mat-calendar-body-in-comparison-range]=\"_isInComparisonRange(item.compareValue)\"\n [class.mat-calendar-body-preview-start]=\"_isPreviewStart(item.compareValue)\"\n [class.mat-calendar-body-preview-end]=\"_isPreviewEnd(item.compareValue)\"\n [class.mat-calendar-body-in-preview]=\"_isInPreview(item.compareValue)\"\n [attr.aria-label]=\"item.ariaLabel\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-selected]=\"_isSelected(item.compareValue)\"\n (click)=\"_cellClicked(item, $event)\"\n [style.width]=\"_cellWidth\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n <div class=\"mat-calendar-body-cell-content mat-focus-indicator\"\n [class.mat-calendar-body-selected]=\"_isSelected(item.compareValue)\"\n [class.mat-calendar-body-comparison-identical]=\"_isComparisonIdentical(item.compareValue)\"\n [class.mat-calendar-body-today]=\"todayValue === item.compareValue\">\n {{item.displayValue}}\n </div>\n <div class=\"mat-calendar-body-cell-preview\"></div>\n </td>\n</tr>\n", styles: [".mat-calendar-body{min-width:224px}.mat-calendar-body-label{height:0;line-height:0;text-align:left;padding-left:4.7142857143%;padding-right:4.7142857143%}.mat-calendar-body-cell{position:relative;height:0;line-height:0;text-align:center;outline:none;cursor:pointer}.mat-calendar-body-cell::before,.mat-calendar-body-cell::after,.mat-calendar-body-cell-preview{content:\"\";position:absolute;top:5%;left:0;z-index:0;box-sizing:border-box;height:90%;width:100%}.mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range)::before,.mat-calendar-body-range-start::after,.mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start)::before,.mat-calendar-body-comparison-start::after,.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:5%;width:95%;border-top-left-radius:999px;border-bottom-left-radius:999px}[dir=rtl] .mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range)::before,[dir=rtl] .mat-calendar-body-range-start::after,[dir=rtl] .mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start)::before,[dir=rtl] .mat-calendar-body-comparison-start::after,[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:0;border-radius:0;border-top-right-radius:999px;border-bottom-right-radius:999px}.mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range)::before,.mat-calendar-body-range-end::after,.mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end)::before,.mat-calendar-body-comparison-end::after,.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}[dir=rtl] .mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range)::before,[dir=rtl] .mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end)::before,[dir=rtl] .mat-calendar-body-comparison-end::after,[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{left:5%;border-radius:0;border-top-left-radius:999px;border-bottom-left-radius:999px}[dir=rtl] .mat-calendar-body-comparison-bridge-start.mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-bridge-end.mat-calendar-body-range-start::after{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}.mat-calendar-body-comparison-start.mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-start.mat-calendar-body-range-end::after,.mat-calendar-body-comparison-end.mat-calendar-body-range-start::after,[dir=rtl] .mat-calendar-body-comparison-end.mat-calendar-body-range-start::after{width:90%}.mat-calendar-body-in-preview .mat-calendar-body-cell-preview{border-top:dashed 1px;border-bottom:dashed 1px}.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:dashed 1px}[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:0;border-right:dashed 1px}.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:dashed 1px}[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:0;border-left:dashed 1px}.mat-calendar-body-disabled{cursor:default}.cdk-high-contrast-active .mat-calendar-body-disabled{opacity:.5}.mat-calendar-body-cell-content{top:5%;left:5%;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;line-height:1;border-width:1px;border-style:solid;border-radius:999px}.mat-calendar-body-cell-content.mat-focus-indicator{position:absolute}.cdk-high-contrast-active .mat-calendar-body-cell-content{border:none}.cdk-high-contrast-active .mat-datepicker-popup:not(:empty),.cdk-high-contrast-active .mat-calendar-body-cell:not(.mat-calendar-body-in-range) .mat-calendar-body-selected{outline:solid 1px}.cdk-high-contrast-active .mat-calendar-body-today{outline:dotted 1px}.cdk-high-contrast-active .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.cdk-high-contrast-active .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){outline:dotted 2px}.cdk-high-contrast-active .mat-calendar-body-cell::before,.cdk-high-contrast-active .mat-calendar-body-cell::after,.cdk-high-contrast-active .mat-calendar-body-selected{background:none}.cdk-high-contrast-active .mat-calendar-body-in-range::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-start::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-end::before{border-top:solid 1px;border-bottom:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:0;border-right:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:0;border-left:solid 1px}.cdk-high-contrast-active .mat-calendar-body-in-comparison-range::before{border-top:dashed 1px;border-bottom:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:0;border-right:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:0;border-left:dashed 1px}[dir=rtl] .mat-calendar-body-label{text-align:right}@media(hover: none){.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){background-color:transparent}}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
331
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatCalendarBody, decorators: [{
329
+ MatCalendarBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatCalendarBody, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
330
+ MatCalendarBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: { label: "label", rows: "rows", todayValue: "todayValue", startValue: "startValue", endValue: "endValue", labelMinRequiredCells: "labelMinRequiredCells", numCols: "numCols", activeCell: "activeCell", isRange: "isRange", cellAspectRatio: "cellAspectRatio", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd", previewStart: "previewStart", previewEnd: "previewEnd" }, outputs: { selectedValueChange: "selectedValueChange", previewChange: "previewChange" }, host: { classAttribute: "mat-calendar-body" }, exportAs: ["matCalendarBody"], usesOnChanges: true, ngImport: i0, template: "<!--\n If there's not enough space in the first row, create a separate label row. We mark this row as\n aria-hidden because we don't want it to be read out as one of the weeks in the month.\n-->\n<tr *ngIf=\"_firstRowOffset < labelMinRequiredCells\" aria-hidden=\"true\">\n <td class=\"mat-calendar-body-label\"\n [attr.colspan]=\"numCols\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n {{label}}\n </td>\n</tr>\n\n<!-- Create the first row separately so we can include a special spacer cell. -->\n<tr *ngFor=\"let row of rows; let rowIndex = index\" role=\"row\">\n <!--\n This cell is purely decorative, but we can't put `aria-hidden` or `role=\"presentation\"` on it,\n because it throws off the week days for the rest of the row on NVDA. The aspect ratio of the\n table cells is maintained by setting the top and bottom padding as a percentage of the width\n (a variant of the trick described here: https://www.w3schools.com/howto/howto_css_aspect_ratio.asp).\n -->\n <td *ngIf=\"rowIndex === 0 && _firstRowOffset\"\n class=\"mat-calendar-body-label\"\n [attr.colspan]=\"_firstRowOffset\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n {{_firstRowOffset >= labelMinRequiredCells ? label : ''}}\n </td>\n <td *ngFor=\"let item of row; let colIndex = index\"\n role=\"gridcell\"\n class=\"mat-calendar-body-cell\"\n [ngClass]=\"item.cssClasses\"\n [tabindex]=\"_isActiveCell(rowIndex, colIndex) ? 0 : -1\"\n [attr.data-mat-row]=\"rowIndex\"\n [attr.data-mat-col]=\"colIndex\"\n [class.mat-calendar-body-disabled]=\"!item.enabled\"\n [class.mat-calendar-body-active]=\"_isActiveCell(rowIndex, colIndex)\"\n [class.mat-calendar-body-range-start]=\"_isRangeStart(item.compareValue)\"\n [class.mat-calendar-body-range-end]=\"_isRangeEnd(item.compareValue)\"\n [class.mat-calendar-body-in-range]=\"_isInRange(item.compareValue)\"\n [class.mat-calendar-body-comparison-bridge-start]=\"_isComparisonBridgeStart(item.compareValue, rowIndex, colIndex)\"\n [class.mat-calendar-body-comparison-bridge-end]=\"_isComparisonBridgeEnd(item.compareValue, rowIndex, colIndex)\"\n [class.mat-calendar-body-comparison-start]=\"_isComparisonStart(item.compareValue)\"\n [class.mat-calendar-body-comparison-end]=\"_isComparisonEnd(item.compareValue)\"\n [class.mat-calendar-body-in-comparison-range]=\"_isInComparisonRange(item.compareValue)\"\n [class.mat-calendar-body-preview-start]=\"_isPreviewStart(item.compareValue)\"\n [class.mat-calendar-body-preview-end]=\"_isPreviewEnd(item.compareValue)\"\n [class.mat-calendar-body-in-preview]=\"_isInPreview(item.compareValue)\"\n [attr.aria-label]=\"item.ariaLabel\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-selected]=\"_isSelected(item.compareValue)\"\n (click)=\"_cellClicked(item, $event)\"\n [style.width]=\"_cellWidth\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n <div class=\"mat-calendar-body-cell-content mat-focus-indicator\"\n [class.mat-calendar-body-selected]=\"_isSelected(item.compareValue)\"\n [class.mat-calendar-body-comparison-identical]=\"_isComparisonIdentical(item.compareValue)\"\n [class.mat-calendar-body-today]=\"todayValue === item.compareValue\">\n {{item.displayValue}}\n </div>\n <div class=\"mat-calendar-body-cell-preview\"></div>\n </td>\n</tr>\n", styles: [".mat-calendar-body{min-width:224px}.mat-calendar-body-label{height:0;line-height:0;text-align:left;padding-left:4.7142857143%;padding-right:4.7142857143%}.mat-calendar-body-cell{position:relative;height:0;line-height:0;text-align:center;outline:none;cursor:pointer}.mat-calendar-body-cell::before,.mat-calendar-body-cell::after,.mat-calendar-body-cell-preview{content:\"\";position:absolute;top:5%;left:0;z-index:0;box-sizing:border-box;height:90%;width:100%}.mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range)::before,.mat-calendar-body-range-start::after,.mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start)::before,.mat-calendar-body-comparison-start::after,.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:5%;width:95%;border-top-left-radius:999px;border-bottom-left-radius:999px}[dir=rtl] .mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range)::before,[dir=rtl] .mat-calendar-body-range-start::after,[dir=rtl] .mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start)::before,[dir=rtl] .mat-calendar-body-comparison-start::after,[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:0;border-radius:0;border-top-right-radius:999px;border-bottom-right-radius:999px}.mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range)::before,.mat-calendar-body-range-end::after,.mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end)::before,.mat-calendar-body-comparison-end::after,.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}[dir=rtl] .mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range)::before,[dir=rtl] .mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end)::before,[dir=rtl] .mat-calendar-body-comparison-end::after,[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{left:5%;border-radius:0;border-top-left-radius:999px;border-bottom-left-radius:999px}[dir=rtl] .mat-calendar-body-comparison-bridge-start.mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-bridge-end.mat-calendar-body-range-start::after{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}.mat-calendar-body-comparison-start.mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-start.mat-calendar-body-range-end::after,.mat-calendar-body-comparison-end.mat-calendar-body-range-start::after,[dir=rtl] .mat-calendar-body-comparison-end.mat-calendar-body-range-start::after{width:90%}.mat-calendar-body-in-preview .mat-calendar-body-cell-preview{border-top:dashed 1px;border-bottom:dashed 1px}.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:dashed 1px}[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:0;border-right:dashed 1px}.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:dashed 1px}[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:0;border-left:dashed 1px}.mat-calendar-body-disabled{cursor:default}.cdk-high-contrast-active .mat-calendar-body-disabled{opacity:.5}.mat-calendar-body-cell-content{top:5%;left:5%;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;line-height:1;border-width:1px;border-style:solid;border-radius:999px}.mat-calendar-body-cell-content.mat-focus-indicator{position:absolute}.cdk-high-contrast-active .mat-calendar-body-cell-content{border:none}.cdk-high-contrast-active .mat-datepicker-popup:not(:empty),.cdk-high-contrast-active .mat-calendar-body-cell:not(.mat-calendar-body-in-range) .mat-calendar-body-selected{outline:solid 1px}.cdk-high-contrast-active .mat-calendar-body-today{outline:dotted 1px}.cdk-high-contrast-active .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.cdk-high-contrast-active .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){outline:dotted 2px}.cdk-high-contrast-active .mat-calendar-body-cell::before,.cdk-high-contrast-active .mat-calendar-body-cell::after,.cdk-high-contrast-active .mat-calendar-body-selected{background:none}.cdk-high-contrast-active .mat-calendar-body-in-range::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-start::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-end::before{border-top:solid 1px;border-bottom:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:0;border-right:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:0;border-left:solid 1px}.cdk-high-contrast-active .mat-calendar-body-in-comparison-range::before{border-top:dashed 1px;border-bottom:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:0;border-right:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:0;border-left:dashed 1px}[dir=rtl] .mat-calendar-body-label{text-align:right}@media(hover: none){.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){background-color:transparent}}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
331
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatCalendarBody, decorators: [{
332
332
  type: Component,
333
333
  args: [{ selector: '[mat-calendar-body]', host: {
334
334
  'class': 'mat-calendar-body',
@@ -380,8 +380,12 @@ function isEnd(value, start, end) {
380
380
  }
381
381
  /** Checks whether a value is inside of a range. */
382
382
  function isInRange(value, start, end, rangeEnabled) {
383
- return rangeEnabled && start !== null && end !== null && start !== end &&
384
- value >= start && value <= end;
383
+ return (rangeEnabled &&
384
+ start !== null &&
385
+ end !== null &&
386
+ start !== end &&
387
+ value >= start &&
388
+ value <= end);
385
389
  }
386
390
 
387
391
  /**
@@ -434,9 +438,9 @@ class MatDateSelectionModel {
434
438
  return this._adapter.isDateInstance(date) && this._adapter.isValid(date);
435
439
  }
436
440
  }
437
- MatDateSelectionModel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateSelectionModel, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
438
- MatDateSelectionModel.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateSelectionModel });
439
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateSelectionModel, decorators: [{
441
+ MatDateSelectionModel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateSelectionModel, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
442
+ MatDateSelectionModel.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateSelectionModel });
443
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateSelectionModel, decorators: [{
440
444
  type: Injectable
441
445
  }], ctorParameters: function () { return [{ type: undefined }, { type: i1$1.DateAdapter }]; } });
442
446
  /**
@@ -472,9 +476,9 @@ class MatSingleDateSelectionModel extends MatDateSelectionModel {
472
476
  return clone;
473
477
  }
474
478
  }
475
- MatSingleDateSelectionModel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSingleDateSelectionModel, deps: [{ token: i1$1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
476
- MatSingleDateSelectionModel.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSingleDateSelectionModel });
477
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSingleDateSelectionModel, decorators: [{
479
+ MatSingleDateSelectionModel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSingleDateSelectionModel, deps: [{ token: i1$1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
480
+ MatSingleDateSelectionModel.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSingleDateSelectionModel });
481
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSingleDateSelectionModel, decorators: [{
478
482
  type: Injectable
479
483
  }], ctorParameters: function () { return [{ type: i1$1.DateAdapter }]; } });
480
484
  /**
@@ -513,12 +517,13 @@ class MatRangeDateSelectionModel extends MatDateSelectionModel {
513
517
  }
514
518
  // Complete ranges are only valid if both dates are valid and the start is before the end.
515
519
  if (start != null && end != null) {
516
- return this._isValidDateInstance(start) && this._isValidDateInstance(end) &&
517
- this._adapter.compareDate(start, end) <= 0;
520
+ return (this._isValidDateInstance(start) &&
521
+ this._isValidDateInstance(end) &&
522
+ this._adapter.compareDate(start, end) <= 0);
518
523
  }
519
524
  // Partial ranges are valid if the start/end is valid.
520
- return (start == null || this._isValidDateInstance(start)) &&
521
- (end == null || this._isValidDateInstance(end));
525
+ return ((start == null || this._isValidDateInstance(start)) &&
526
+ (end == null || this._isValidDateInstance(end)));
522
527
  }
523
528
  /**
524
529
  * Checks whether the current selection is complete. In the case of a date range selection, this
@@ -534,9 +539,9 @@ class MatRangeDateSelectionModel extends MatDateSelectionModel {
534
539
  return clone;
535
540
  }
536
541
  }
537
- MatRangeDateSelectionModel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatRangeDateSelectionModel, deps: [{ token: i1$1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
538
- MatRangeDateSelectionModel.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatRangeDateSelectionModel });
539
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatRangeDateSelectionModel, decorators: [{
542
+ MatRangeDateSelectionModel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatRangeDateSelectionModel, deps: [{ token: i1$1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
543
+ MatRangeDateSelectionModel.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatRangeDateSelectionModel });
544
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatRangeDateSelectionModel, decorators: [{
540
545
  type: Injectable
541
546
  }], ctorParameters: function () { return [{ type: i1$1.DateAdapter }]; } });
542
547
  /** @docs-private */
@@ -604,9 +609,9 @@ class DefaultMatCalendarRangeStrategy {
604
609
  return new DateRange(start, end);
605
610
  }
606
611
  }
607
- DefaultMatCalendarRangeStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: DefaultMatCalendarRangeStrategy, deps: [{ token: i1$1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
608
- DefaultMatCalendarRangeStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: DefaultMatCalendarRangeStrategy });
609
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: DefaultMatCalendarRangeStrategy, decorators: [{
612
+ DefaultMatCalendarRangeStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: DefaultMatCalendarRangeStrategy, deps: [{ token: i1$1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
613
+ DefaultMatCalendarRangeStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: DefaultMatCalendarRangeStrategy });
614
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: DefaultMatCalendarRangeStrategy, decorators: [{
610
615
  type: Injectable
611
616
  }], ctorParameters: function () { return [{ type: i1$1.DateAdapter }]; } });
612
617
  /** @docs-private */
@@ -659,17 +664,22 @@ class MatMonthView {
659
664
  /**
660
665
  * The date to display in this month view (everything other than the month and year is ignored).
661
666
  */
662
- get activeDate() { return this._activeDate; }
667
+ get activeDate() {
668
+ return this._activeDate;
669
+ }
663
670
  set activeDate(value) {
664
671
  const oldActiveDate = this._activeDate;
665
- const validDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value)) || this._dateAdapter.today();
672
+ const validDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value)) ||
673
+ this._dateAdapter.today();
666
674
  this._activeDate = this._dateAdapter.clampDate(validDate, this.minDate, this.maxDate);
667
675
  if (!this._hasSameMonthAndYear(oldActiveDate, this._activeDate)) {
668
676
  this._init();
669
677
  }
670
678
  }
671
679
  /** The currently selected date. */
672
- get selected() { return this._selected; }
680
+ get selected() {
681
+ return this._selected;
682
+ }
673
683
  set selected(value) {
674
684
  if (value instanceof DateRange) {
675
685
  this._selected = value;
@@ -680,12 +690,16 @@ class MatMonthView {
680
690
  this._setRanges(this._selected);
681
691
  }
682
692
  /** The minimum selectable date. */
683
- get minDate() { return this._minDate; }
693
+ get minDate() {
694
+ return this._minDate;
695
+ }
684
696
  set minDate(value) {
685
697
  this._minDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
686
698
  }
687
699
  /** The maximum selectable date. */
688
- get maxDate() { return this._maxDate; }
700
+ get maxDate() {
701
+ return this._maxDate;
702
+ }
689
703
  set maxDate(value) {
690
704
  this._maxDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
691
705
  }
@@ -749,18 +763,18 @@ class MatMonthView {
749
763
  this.activeDate = this._dateAdapter.addCalendarDays(this._activeDate, 1 - this._dateAdapter.getDate(this._activeDate));
750
764
  break;
751
765
  case END:
752
- this.activeDate = this._dateAdapter.addCalendarDays(this._activeDate, (this._dateAdapter.getNumDaysInMonth(this._activeDate) -
753
- this._dateAdapter.getDate(this._activeDate)));
766
+ this.activeDate = this._dateAdapter.addCalendarDays(this._activeDate, this._dateAdapter.getNumDaysInMonth(this._activeDate) -
767
+ this._dateAdapter.getDate(this._activeDate));
754
768
  break;
755
769
  case PAGE_UP:
756
- this.activeDate = event.altKey ?
757
- this._dateAdapter.addCalendarYears(this._activeDate, -1) :
758
- this._dateAdapter.addCalendarMonths(this._activeDate, -1);
770
+ this.activeDate = event.altKey
771
+ ? this._dateAdapter.addCalendarYears(this._activeDate, -1)
772
+ : this._dateAdapter.addCalendarMonths(this._activeDate, -1);
759
773
  break;
760
774
  case PAGE_DOWN:
761
- this.activeDate = event.altKey ?
762
- this._dateAdapter.addCalendarYears(this._activeDate, 1) :
763
- this._dateAdapter.addCalendarMonths(this._activeDate, 1);
775
+ this.activeDate = event.altKey
776
+ ? this._dateAdapter.addCalendarYears(this._activeDate, 1)
777
+ : this._dateAdapter.addCalendarMonths(this._activeDate, 1);
764
778
  break;
765
779
  case ENTER:
766
780
  case SPACE:
@@ -810,12 +824,14 @@ class MatMonthView {
810
824
  this._todayDate = this._getCellCompareValue(this._dateAdapter.today());
811
825
  this._monthLabel = this._dateFormats.display.monthLabel
812
826
  ? this._dateAdapter.format(this.activeDate, this._dateFormats.display.monthLabel)
813
- : this._dateAdapter.getMonthNames('short')[this._dateAdapter.getMonth(this.activeDate)]
814
- .toLocaleUpperCase();
827
+ : this._dateAdapter
828
+ .getMonthNames('short')[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();
815
829
  let firstOfMonth = this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate), this._dateAdapter.getMonth(this.activeDate), 1);
816
830
  this._firstWeekOffset =
817
- (DAYS_PER_WEEK + this._dateAdapter.getDayOfWeek(firstOfMonth) -
818
- this._dateAdapter.getFirstDayOfWeek()) % DAYS_PER_WEEK;
831
+ (DAYS_PER_WEEK +
832
+ this._dateAdapter.getDayOfWeek(firstOfMonth) -
833
+ this._dateAdapter.getFirstDayOfWeek()) %
834
+ DAYS_PER_WEEK;
819
835
  this._initWeekdays();
820
836
  this._createWeekCells();
821
837
  this._changeDetectorRef.markForCheck();
@@ -870,22 +886,25 @@ class MatMonthView {
870
886
  }
871
887
  /** Date filter for the month */
872
888
  _shouldEnableDate(date) {
873
- return !!date &&
889
+ return (!!date &&
874
890
  (!this.minDate || this._dateAdapter.compareDate(date, this.minDate) >= 0) &&
875
891
  (!this.maxDate || this._dateAdapter.compareDate(date, this.maxDate) <= 0) &&
876
- (!this.dateFilter || this.dateFilter(date));
892
+ (!this.dateFilter || this.dateFilter(date)));
877
893
  }
878
894
  /**
879
895
  * Gets the date in this month that the given Date falls on.
880
896
  * Returns null if the given Date is in another month.
881
897
  */
882
898
  _getDateInCurrentMonth(date) {
883
- return date && this._hasSameMonthAndYear(date, this.activeDate) ?
884
- this._dateAdapter.getDate(date) : null;
899
+ return date && this._hasSameMonthAndYear(date, this.activeDate)
900
+ ? this._dateAdapter.getDate(date)
901
+ : null;
885
902
  }
886
903
  /** Checks whether the 2 dates are non-null and fall within the same month of the same year. */
887
904
  _hasSameMonthAndYear(d1, d2) {
888
- return !!(d1 && d2 && this._dateAdapter.getMonth(d1) == this._dateAdapter.getMonth(d2) &&
905
+ return !!(d1 &&
906
+ d2 &&
907
+ this._dateAdapter.getMonth(d1) == this._dateAdapter.getMonth(d2) &&
889
908
  this._dateAdapter.getYear(d1) == this._dateAdapter.getYear(d2));
890
909
  }
891
910
  /** Gets the value that will be used to one cell to another. */
@@ -923,9 +942,9 @@ class MatMonthView {
923
942
  return !this.dateFilter || this.dateFilter(date);
924
943
  }
925
944
  }
926
- MatMonthView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatMonthView, deps: [{ token: i0.ChangeDetectorRef }, { token: MAT_DATE_FORMATS, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }], target: i0.ɵɵFactoryTarget.Component });
927
- MatMonthView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatMonthView, selector: "mat-month-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, outputs: { selectedChange: "selectedChange", _userSelection: "_userSelection", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matMonthView"], usesOnChanges: true, ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead class=\"mat-calendar-table-header\">\n <tr>\n <!-- For the day-of-the-week column header, we use an `<abbr>` element because VoiceOver\n ignores the `aria-label`. ChromeVox, however, does not read the full name\n for the `<abbr>`, so we still set `aria-label` on the header element. -->\n <th scope=\"col\" *ngFor=\"let day of _weekdays\" [attr.aria-label]=\"day.long\">\n <abbr class=\"mat-calendar-abbr\" [attr.title]=\"day.long\">{{day.narrow}}</abbr>\n </th>\n </tr>\n <tr><th aria-hidden=\"true\" class=\"mat-calendar-table-header-divider\" colspan=\"7\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_monthLabel\"\n [rows]=\"_weeks\"\n [todayValue]=\"_todayDate!\"\n [startValue]=\"_rangeStart!\"\n [endValue]=\"_rangeEnd!\"\n [comparisonStart]=\"_comparisonRangeStart\"\n [comparisonEnd]=\"_comparisonRangeEnd\"\n [previewStart]=\"_previewStart\"\n [previewEnd]=\"_previewEnd\"\n [isRange]=\"_isRange\"\n [labelMinRequiredCells]=\"3\"\n [activeCell]=\"_dateAdapter.getDate(activeDate) - 1\"\n (selectedValueChange)=\"_dateSelected($event)\"\n (previewChange)=\"_previewChanged($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", components: [{ type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd"], outputs: ["selectedValueChange", "previewChange"], exportAs: ["matCalendarBody"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
928
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatMonthView, decorators: [{
945
+ MatMonthView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatMonthView, deps: [{ token: i0.ChangeDetectorRef }, { token: MAT_DATE_FORMATS, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }], target: i0.ɵɵFactoryTarget.Component });
946
+ MatMonthView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatMonthView, selector: "mat-month-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, outputs: { selectedChange: "selectedChange", _userSelection: "_userSelection", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matMonthView"], usesOnChanges: true, ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead class=\"mat-calendar-table-header\">\n <tr>\n <!-- For the day-of-the-week column header, we use an `<abbr>` element because VoiceOver\n ignores the `aria-label`. ChromeVox, however, does not read the full name\n for the `<abbr>`, so we still set `aria-label` on the header element. -->\n <th scope=\"col\" *ngFor=\"let day of _weekdays\" [attr.aria-label]=\"day.long\">\n <abbr class=\"mat-calendar-abbr\" [attr.title]=\"day.long\">{{day.narrow}}</abbr>\n </th>\n </tr>\n <tr><th aria-hidden=\"true\" class=\"mat-calendar-table-header-divider\" colspan=\"7\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_monthLabel\"\n [rows]=\"_weeks\"\n [todayValue]=\"_todayDate!\"\n [startValue]=\"_rangeStart!\"\n [endValue]=\"_rangeEnd!\"\n [comparisonStart]=\"_comparisonRangeStart\"\n [comparisonEnd]=\"_comparisonRangeEnd\"\n [previewStart]=\"_previewStart\"\n [previewEnd]=\"_previewEnd\"\n [isRange]=\"_isRange\"\n [labelMinRequiredCells]=\"3\"\n [activeCell]=\"_dateAdapter.getDate(activeDate) - 1\"\n (selectedValueChange)=\"_dateSelected($event)\"\n (previewChange)=\"_previewChanged($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", components: [{ type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd"], outputs: ["selectedValueChange", "previewChange"], exportAs: ["matCalendarBody"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
947
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatMonthView, decorators: [{
929
948
  type: Component,
930
949
  args: [{ selector: 'mat-month-view', exportAs: 'matMonthView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead class=\"mat-calendar-table-header\">\n <tr>\n <!-- For the day-of-the-week column header, we use an `<abbr>` element because VoiceOver\n ignores the `aria-label`. ChromeVox, however, does not read the full name\n for the `<abbr>`, so we still set `aria-label` on the header element. -->\n <th scope=\"col\" *ngFor=\"let day of _weekdays\" [attr.aria-label]=\"day.long\">\n <abbr class=\"mat-calendar-abbr\" [attr.title]=\"day.long\">{{day.narrow}}</abbr>\n </th>\n </tr>\n <tr><th aria-hidden=\"true\" class=\"mat-calendar-table-header-divider\" colspan=\"7\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_monthLabel\"\n [rows]=\"_weeks\"\n [todayValue]=\"_todayDate!\"\n [startValue]=\"_rangeStart!\"\n [endValue]=\"_rangeEnd!\"\n [comparisonStart]=\"_comparisonRangeStart\"\n [comparisonEnd]=\"_comparisonRangeEnd\"\n [previewStart]=\"_previewStart\"\n [previewEnd]=\"_previewEnd\"\n [isRange]=\"_isRange\"\n [labelMinRequiredCells]=\"3\"\n [activeCell]=\"_dateAdapter.getDate(activeDate) - 1\"\n (selectedValueChange)=\"_dateSelected($event)\"\n (previewChange)=\"_previewChanged($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
931
950
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
@@ -1000,17 +1019,22 @@ class MatMultiYearView {
1000
1019
  this._activeDate = this._dateAdapter.today();
1001
1020
  }
1002
1021
  /** The date to display in this multi-year view (everything other than the year is ignored). */
1003
- get activeDate() { return this._activeDate; }
1022
+ get activeDate() {
1023
+ return this._activeDate;
1024
+ }
1004
1025
  set activeDate(value) {
1005
1026
  let oldActiveDate = this._activeDate;
1006
- const validDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value)) || this._dateAdapter.today();
1027
+ const validDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value)) ||
1028
+ this._dateAdapter.today();
1007
1029
  this._activeDate = this._dateAdapter.clampDate(validDate, this.minDate, this.maxDate);
1008
1030
  if (!isSameMultiYearView(this._dateAdapter, oldActiveDate, this._activeDate, this.minDate, this.maxDate)) {
1009
1031
  this._init();
1010
1032
  }
1011
1033
  }
1012
1034
  /** The currently selected date. */
1013
- get selected() { return this._selected; }
1035
+ get selected() {
1036
+ return this._selected;
1037
+ }
1014
1038
  set selected(value) {
1015
1039
  if (value instanceof DateRange) {
1016
1040
  this._selected = value;
@@ -1021,12 +1045,16 @@ class MatMultiYearView {
1021
1045
  this._setSelectedYear(value);
1022
1046
  }
1023
1047
  /** The minimum selectable date. */
1024
- get minDate() { return this._minDate; }
1048
+ get minDate() {
1049
+ return this._minDate;
1050
+ }
1025
1051
  set minDate(value) {
1026
1052
  this._minDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
1027
1053
  }
1028
1054
  /** The maximum selectable date. */
1029
- get maxDate() { return this._maxDate; }
1055
+ get maxDate() {
1056
+ return this._maxDate;
1057
+ }
1030
1058
  set maxDate(value) {
1031
1059
  this._maxDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
1032
1060
  }
@@ -1087,15 +1115,15 @@ class MatMultiYearView {
1087
1115
  this.activeDate = this._dateAdapter.addCalendarYears(this._activeDate, -getActiveOffset(this._dateAdapter, this.activeDate, this.minDate, this.maxDate));
1088
1116
  break;
1089
1117
  case END:
1090
- this.activeDate = this._dateAdapter.addCalendarYears(this._activeDate, yearsPerPage - getActiveOffset(this._dateAdapter, this.activeDate, this.minDate, this.maxDate) - 1);
1118
+ this.activeDate = this._dateAdapter.addCalendarYears(this._activeDate, yearsPerPage -
1119
+ getActiveOffset(this._dateAdapter, this.activeDate, this.minDate, this.maxDate) -
1120
+ 1);
1091
1121
  break;
1092
1122
  case PAGE_UP:
1093
- this.activeDate =
1094
- this._dateAdapter.addCalendarYears(this._activeDate, event.altKey ? -yearsPerPage * 10 : -yearsPerPage);
1123
+ this.activeDate = this._dateAdapter.addCalendarYears(this._activeDate, event.altKey ? -yearsPerPage * 10 : -yearsPerPage);
1095
1124
  break;
1096
1125
  case PAGE_DOWN:
1097
- this.activeDate =
1098
- this._dateAdapter.addCalendarYears(this._activeDate, event.altKey ? yearsPerPage * 10 : yearsPerPage);
1126
+ this.activeDate = this._dateAdapter.addCalendarYears(this._activeDate, event.altKey ? yearsPerPage * 10 : yearsPerPage);
1099
1127
  break;
1100
1128
  case ENTER:
1101
1129
  case SPACE:
@@ -1142,7 +1170,8 @@ class MatMultiYearView {
1142
1170
  /** Whether the given year is enabled. */
1143
1171
  _shouldEnableYear(year) {
1144
1172
  // disable if the year is greater than maxDate lower than minDate
1145
- if (year === undefined || year === null ||
1173
+ if (year === undefined ||
1174
+ year === null ||
1146
1175
  (this.maxDate && year > this._dateAdapter.getYear(this.maxDate)) ||
1147
1176
  (this.minDate && year < this._dateAdapter.getYear(this.minDate))) {
1148
1177
  return false;
@@ -1178,9 +1207,9 @@ class MatMultiYearView {
1178
1207
  }
1179
1208
  }
1180
1209
  }
1181
- MatMultiYearView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatMultiYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1182
- MatMultiYearView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatMultiYearView, selector: "mat-multi-year-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass" }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matMultiYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [rows]=\"_years\"\n [todayValue]=\"_todayYear\"\n [startValue]=\"_selectedYear!\"\n [endValue]=\"_selectedYear!\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_getActiveCell()\"\n (selectedValueChange)=\"_yearSelected($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", components: [{ type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd"], outputs: ["selectedValueChange", "previewChange"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatMultiYearView, decorators: [{
1210
+ MatMultiYearView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatMultiYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1211
+ MatMultiYearView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatMultiYearView, selector: "mat-multi-year-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass" }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matMultiYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [rows]=\"_years\"\n [todayValue]=\"_todayYear\"\n [startValue]=\"_selectedYear!\"\n [endValue]=\"_selectedYear!\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_getActiveCell()\"\n (selectedValueChange)=\"_yearSelected($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", components: [{ type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd"], outputs: ["selectedValueChange", "previewChange"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1212
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatMultiYearView, decorators: [{
1184
1213
  type: Component,
1185
1214
  args: [{ selector: 'mat-multi-year-view', exportAs: 'matMultiYearView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [rows]=\"_years\"\n [todayValue]=\"_todayYear\"\n [startValue]=\"_selectedYear!\"\n [endValue]=\"_selectedYear!\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_getActiveCell()\"\n (selectedValueChange)=\"_yearSelected($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
1186
1215
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.DateAdapter, decorators: [{
@@ -1213,8 +1242,8 @@ function isSameMultiYearView(dateAdapter, date1, date2, minDate, maxDate) {
1213
1242
  const year1 = dateAdapter.getYear(date1);
1214
1243
  const year2 = dateAdapter.getYear(date2);
1215
1244
  const startingYear = getStartingYear(dateAdapter, minDate, maxDate);
1216
- return Math.floor((year1 - startingYear) / yearsPerPage) ===
1217
- Math.floor((year2 - startingYear) / yearsPerPage);
1245
+ return (Math.floor((year1 - startingYear) / yearsPerPage) ===
1246
+ Math.floor((year2 - startingYear) / yearsPerPage));
1218
1247
  }
1219
1248
  /**
1220
1249
  * When the multi-year view is first opened, the active year will be in view.
@@ -1223,7 +1252,7 @@ function isSameMultiYearView(dateAdapter, date1, date2, minDate, maxDate) {
1223
1252
  */
1224
1253
  function getActiveOffset(dateAdapter, activeDate, minDate, maxDate) {
1225
1254
  const activeYear = dateAdapter.getYear(activeDate);
1226
- return euclideanModulo((activeYear - getStartingYear(dateAdapter, minDate, maxDate)), yearsPerPage);
1255
+ return euclideanModulo(activeYear - getStartingYear(dateAdapter, minDate, maxDate), yearsPerPage);
1227
1256
  }
1228
1257
  /**
1229
1258
  * We pick a "starting" year such that either the maximum year would be at the end
@@ -1242,7 +1271,7 @@ function getStartingYear(dateAdapter, minDate, maxDate) {
1242
1271
  }
1243
1272
  /** Gets remainder that is non-negative, even if first number is negative */
1244
1273
  function euclideanModulo(a, b) {
1245
- return (a % b + b) % b;
1274
+ return ((a % b) + b) % b;
1246
1275
  }
1247
1276
 
1248
1277
  /**
@@ -1280,17 +1309,22 @@ class MatYearView {
1280
1309
  this._activeDate = this._dateAdapter.today();
1281
1310
  }
1282
1311
  /** The date to display in this year view (everything other than the year is ignored). */
1283
- get activeDate() { return this._activeDate; }
1312
+ get activeDate() {
1313
+ return this._activeDate;
1314
+ }
1284
1315
  set activeDate(value) {
1285
1316
  let oldActiveDate = this._activeDate;
1286
- const validDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value)) || this._dateAdapter.today();
1317
+ const validDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value)) ||
1318
+ this._dateAdapter.today();
1287
1319
  this._activeDate = this._dateAdapter.clampDate(validDate, this.minDate, this.maxDate);
1288
1320
  if (this._dateAdapter.getYear(oldActiveDate) !== this._dateAdapter.getYear(this._activeDate)) {
1289
1321
  this._init();
1290
1322
  }
1291
1323
  }
1292
1324
  /** The currently selected date. */
1293
- get selected() { return this._selected; }
1325
+ get selected() {
1326
+ return this._selected;
1327
+ }
1294
1328
  set selected(value) {
1295
1329
  if (value instanceof DateRange) {
1296
1330
  this._selected = value;
@@ -1301,12 +1335,16 @@ class MatYearView {
1301
1335
  this._setSelectedMonth(value);
1302
1336
  }
1303
1337
  /** The minimum selectable date. */
1304
- get minDate() { return this._minDate; }
1338
+ get minDate() {
1339
+ return this._minDate;
1340
+ }
1305
1341
  set minDate(value) {
1306
1342
  this._minDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
1307
1343
  }
1308
1344
  /** The maximum selectable date. */
1309
- get maxDate() { return this._maxDate; }
1345
+ get maxDate() {
1346
+ return this._maxDate;
1347
+ }
1310
1348
  set maxDate(value) {
1311
1349
  this._maxDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
1312
1350
  }
@@ -1353,12 +1391,10 @@ class MatYearView {
1353
1391
  this.activeDate = this._dateAdapter.addCalendarMonths(this._activeDate, 11 - this._dateAdapter.getMonth(this._activeDate));
1354
1392
  break;
1355
1393
  case PAGE_UP:
1356
- this.activeDate =
1357
- this._dateAdapter.addCalendarYears(this._activeDate, event.altKey ? -10 : -1);
1394
+ this.activeDate = this._dateAdapter.addCalendarYears(this._activeDate, event.altKey ? -10 : -1);
1358
1395
  break;
1359
1396
  case PAGE_DOWN:
1360
- this.activeDate =
1361
- this._dateAdapter.addCalendarYears(this._activeDate, event.altKey ? 10 : 1);
1397
+ this.activeDate = this._dateAdapter.addCalendarYears(this._activeDate, event.altKey ? 10 : 1);
1362
1398
  break;
1363
1399
  case ENTER:
1364
1400
  case SPACE:
@@ -1395,7 +1431,11 @@ class MatYearView {
1395
1431
  this._yearLabel = this._dateAdapter.getYearName(this.activeDate);
1396
1432
  let monthNames = this._dateAdapter.getMonthNames('short');
1397
1433
  // First row of months only contains 5 elements so we can fit the year label on the same row.
1398
- this._months = [[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11]].map(row => row.map(month => this._createCellForMonth(month, monthNames[month])));
1434
+ this._months = [
1435
+ [0, 1, 2, 3],
1436
+ [4, 5, 6, 7],
1437
+ [8, 9, 10, 11],
1438
+ ].map(row => row.map(month => this._createCellForMonth(month, monthNames[month])));
1399
1439
  this._changeDetectorRef.markForCheck();
1400
1440
  }
1401
1441
  /** Focuses the active cell after the microtask queue is empty. */
@@ -1407,8 +1447,9 @@ class MatYearView {
1407
1447
  * Returns null if the given Date is in another year.
1408
1448
  */
1409
1449
  _getMonthInCurrentYear(date) {
1410
- return date && this._dateAdapter.getYear(date) == this._dateAdapter.getYear(this.activeDate) ?
1411
- this._dateAdapter.getMonth(date) : null;
1450
+ return date && this._dateAdapter.getYear(date) == this._dateAdapter.getYear(this.activeDate)
1451
+ ? this._dateAdapter.getMonth(date)
1452
+ : null;
1412
1453
  }
1413
1454
  /** Creates an MatCalendarCell for the given month. */
1414
1455
  _createCellForMonth(month, monthName) {
@@ -1420,7 +1461,8 @@ class MatYearView {
1420
1461
  /** Whether the given month is enabled. */
1421
1462
  _shouldEnableMonth(month) {
1422
1463
  const activeYear = this._dateAdapter.getYear(this.activeDate);
1423
- if (month === undefined || month === null ||
1464
+ if (month === undefined ||
1465
+ month === null ||
1424
1466
  this._isYearAndMonthAfterMaxDate(activeYear, month) ||
1425
1467
  this._isYearAndMonthBeforeMinDate(activeYear, month)) {
1426
1468
  return false;
@@ -1468,17 +1510,17 @@ class MatYearView {
1468
1510
  /** Sets the currently-selected month based on a model value. */
1469
1511
  _setSelectedMonth(value) {
1470
1512
  if (value instanceof DateRange) {
1471
- this._selectedMonth = this._getMonthInCurrentYear(value.start) ||
1472
- this._getMonthInCurrentYear(value.end);
1513
+ this._selectedMonth =
1514
+ this._getMonthInCurrentYear(value.start) || this._getMonthInCurrentYear(value.end);
1473
1515
  }
1474
1516
  else {
1475
1517
  this._selectedMonth = this._getMonthInCurrentYear(value);
1476
1518
  }
1477
1519
  }
1478
1520
  }
1479
- MatYearView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: MAT_DATE_FORMATS, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1480
- MatYearView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatYearView, selector: "mat-year-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass" }, outputs: { selectedChange: "selectedChange", monthSelected: "monthSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_yearLabel\"\n [rows]=\"_months\"\n [todayValue]=\"_todayMonth!\"\n [startValue]=\"_selectedMonth!\"\n [endValue]=\"_selectedMonth!\"\n [labelMinRequiredCells]=\"2\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_dateAdapter.getMonth(activeDate)\"\n (selectedValueChange)=\"_monthSelected($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", components: [{ type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd"], outputs: ["selectedValueChange", "previewChange"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1481
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatYearView, decorators: [{
1521
+ MatYearView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: MAT_DATE_FORMATS, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1522
+ MatYearView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatYearView, selector: "mat-year-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass" }, outputs: { selectedChange: "selectedChange", monthSelected: "monthSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_yearLabel\"\n [rows]=\"_months\"\n [todayValue]=\"_todayMonth!\"\n [startValue]=\"_selectedMonth!\"\n [endValue]=\"_selectedMonth!\"\n [labelMinRequiredCells]=\"2\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_dateAdapter.getMonth(activeDate)\"\n (selectedValueChange)=\"_monthSelected($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", components: [{ type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd"], outputs: ["selectedValueChange", "previewChange"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1523
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatYearView, decorators: [{
1482
1524
  type: Component,
1483
1525
  args: [{ selector: 'mat-year-view', exportAs: 'matYearView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_yearLabel\"\n [rows]=\"_months\"\n [todayValue]=\"_todayMonth!\"\n [startValue]=\"_selectedMonth!\"\n [endValue]=\"_selectedMonth!\"\n [labelMinRequiredCells]=\"2\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_dateAdapter.getMonth(activeDate)\"\n (selectedValueChange)=\"_monthSelected($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
1484
1526
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
@@ -1546,22 +1588,24 @@ class MatCalendarHeader {
1546
1588
  // *actual* first rendered year in the multi-year view, and the last year is
1547
1589
  // just yearsPerPage - 1 away.
1548
1590
  const activeYear = this._dateAdapter.getYear(this.calendar.activeDate);
1549
- const minYearOfPage = activeYear - getActiveOffset(this._dateAdapter, this.calendar.activeDate, this.calendar.minDate, this.calendar.maxDate);
1591
+ const minYearOfPage = activeYear -
1592
+ getActiveOffset(this._dateAdapter, this.calendar.activeDate, this.calendar.minDate, this.calendar.maxDate);
1550
1593
  const maxYearOfPage = minYearOfPage + yearsPerPage - 1;
1551
1594
  const minYearName = this._dateAdapter.getYearName(this._dateAdapter.createDate(minYearOfPage, 0, 1));
1552
1595
  const maxYearName = this._dateAdapter.getYearName(this._dateAdapter.createDate(maxYearOfPage, 0, 1));
1553
1596
  return this._intl.formatYearRange(minYearName, maxYearName);
1554
1597
  }
1555
1598
  get periodButtonLabel() {
1556
- return this.calendar.currentView == 'month' ?
1557
- this._intl.switchToMultiYearViewLabel : this._intl.switchToMonthViewLabel;
1599
+ return this.calendar.currentView == 'month'
1600
+ ? this._intl.switchToMultiYearViewLabel
1601
+ : this._intl.switchToMonthViewLabel;
1558
1602
  }
1559
1603
  /** The label for the previous button. */
1560
1604
  get prevButtonLabel() {
1561
1605
  return {
1562
1606
  'month': this._intl.prevMonthLabel,
1563
1607
  'year': this._intl.prevYearLabel,
1564
- 'multi-year': this._intl.prevMultiYearLabel
1608
+ 'multi-year': this._intl.prevMultiYearLabel,
1565
1609
  }[this.calendar.currentView];
1566
1610
  }
1567
1611
  /** The label for the next button. */
@@ -1569,7 +1613,7 @@ class MatCalendarHeader {
1569
1613
  return {
1570
1614
  'month': this._intl.nextMonthLabel,
1571
1615
  'year': this._intl.nextYearLabel,
1572
- 'multi-year': this._intl.nextMultiYearLabel
1616
+ 'multi-year': this._intl.nextMultiYearLabel,
1573
1617
  }[this.calendar.currentView];
1574
1618
  }
1575
1619
  /** Handles user clicks on the period label. */
@@ -1578,34 +1622,34 @@ class MatCalendarHeader {
1578
1622
  }
1579
1623
  /** Handles user clicks on the previous button. */
1580
1624
  previousClicked() {
1581
- this.calendar.activeDate = this.calendar.currentView == 'month' ?
1582
- this._dateAdapter.addCalendarMonths(this.calendar.activeDate, -1) :
1583
- this._dateAdapter.addCalendarYears(this.calendar.activeDate, this.calendar.currentView == 'year' ? -1 : -yearsPerPage);
1625
+ this.calendar.activeDate =
1626
+ this.calendar.currentView == 'month'
1627
+ ? this._dateAdapter.addCalendarMonths(this.calendar.activeDate, -1)
1628
+ : this._dateAdapter.addCalendarYears(this.calendar.activeDate, this.calendar.currentView == 'year' ? -1 : -yearsPerPage);
1584
1629
  }
1585
1630
  /** Handles user clicks on the next button. */
1586
1631
  nextClicked() {
1587
- this.calendar.activeDate = this.calendar.currentView == 'month' ?
1588
- this._dateAdapter.addCalendarMonths(this.calendar.activeDate, 1) :
1589
- this._dateAdapter.addCalendarYears(this.calendar.activeDate, this.calendar.currentView == 'year' ? 1 : yearsPerPage);
1632
+ this.calendar.activeDate =
1633
+ this.calendar.currentView == 'month'
1634
+ ? this._dateAdapter.addCalendarMonths(this.calendar.activeDate, 1)
1635
+ : this._dateAdapter.addCalendarYears(this.calendar.activeDate, this.calendar.currentView == 'year' ? 1 : yearsPerPage);
1590
1636
  }
1591
1637
  /** Whether the previous period button is enabled. */
1592
1638
  previousEnabled() {
1593
1639
  if (!this.calendar.minDate) {
1594
1640
  return true;
1595
1641
  }
1596
- return !this.calendar.minDate ||
1597
- !this._isSameView(this.calendar.activeDate, this.calendar.minDate);
1642
+ return (!this.calendar.minDate || !this._isSameView(this.calendar.activeDate, this.calendar.minDate));
1598
1643
  }
1599
1644
  /** Whether the next period button is enabled. */
1600
1645
  nextEnabled() {
1601
- return !this.calendar.maxDate ||
1602
- !this._isSameView(this.calendar.activeDate, this.calendar.maxDate);
1646
+ return (!this.calendar.maxDate || !this._isSameView(this.calendar.activeDate, this.calendar.maxDate));
1603
1647
  }
1604
1648
  /** Whether the two dates represent the same view in the current view mode (month or year). */
1605
1649
  _isSameView(date1, date2) {
1606
1650
  if (this.calendar.currentView == 'month') {
1607
- return this._dateAdapter.getYear(date1) == this._dateAdapter.getYear(date2) &&
1608
- this._dateAdapter.getMonth(date1) == this._dateAdapter.getMonth(date2);
1651
+ return (this._dateAdapter.getYear(date1) == this._dateAdapter.getYear(date2) &&
1652
+ this._dateAdapter.getMonth(date1) == this._dateAdapter.getMonth(date2));
1609
1653
  }
1610
1654
  if (this.calendar.currentView == 'year') {
1611
1655
  return this._dateAdapter.getYear(date1) == this._dateAdapter.getYear(date2);
@@ -1614,9 +1658,9 @@ class MatCalendarHeader {
1614
1658
  return isSameMultiYearView(this._dateAdapter, date1, date2, this.calendar.minDate, this.calendar.maxDate);
1615
1659
  }
1616
1660
  }
1617
- MatCalendarHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatCalendarHeader, deps: [{ token: MatDatepickerIntl }, { token: forwardRef(() => MatCalendar) }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1618
- MatCalendarHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatCalendarHeader, selector: "mat-calendar-header", exportAs: ["matCalendarHeader"], ngImport: i0, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button mat-button type=\"button\" class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\" [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_buttonDescriptionId\"\n cdkAriaLive=\"polite\">\n <span [attr.id]=\"_buttonDescriptionId\">{{periodButtonText}}</span>\n <svg class=\"mat-calendar-arrow\" [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\" focusable=\"false\">\n <polygon points=\"0,0 5,5 10,0\"/>\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content></ng-content>\n\n <button mat-icon-button type=\"button\" class=\"mat-calendar-previous-button\"\n [disabled]=\"!previousEnabled()\" (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\">\n </button>\n\n <button mat-icon-button type=\"button\" class=\"mat-calendar-next-button\"\n [disabled]=\"!nextEnabled()\" (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\">\n </button>\n </div>\n</div>\n", components: [{ type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.CdkAriaLive, selector: "[cdkAriaLive]", inputs: ["cdkAriaLive"], exportAs: ["cdkAriaLive"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1619
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatCalendarHeader, decorators: [{
1661
+ MatCalendarHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatCalendarHeader, deps: [{ token: MatDatepickerIntl }, { token: forwardRef(() => MatCalendar) }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1662
+ MatCalendarHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatCalendarHeader, selector: "mat-calendar-header", exportAs: ["matCalendarHeader"], ngImport: i0, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button mat-button type=\"button\" class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\" [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_buttonDescriptionId\"\n cdkAriaLive=\"polite\">\n <span [attr.id]=\"_buttonDescriptionId\">{{periodButtonText}}</span>\n <svg class=\"mat-calendar-arrow\" [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\" focusable=\"false\">\n <polygon points=\"0,0 5,5 10,0\"/>\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content></ng-content>\n\n <button mat-icon-button type=\"button\" class=\"mat-calendar-previous-button\"\n [disabled]=\"!previousEnabled()\" (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\">\n </button>\n\n <button mat-icon-button type=\"button\" class=\"mat-calendar-next-button\"\n [disabled]=\"!nextEnabled()\" (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\">\n </button>\n </div>\n</div>\n", components: [{ type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.CdkAriaLive, selector: "[cdkAriaLive]", inputs: ["cdkAriaLive"], exportAs: ["cdkAriaLive"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1663
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatCalendarHeader, decorators: [{
1620
1664
  type: Component,
1621
1665
  args: [{ selector: 'mat-calendar-header', exportAs: 'matCalendarHeader', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button mat-button type=\"button\" class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\" [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_buttonDescriptionId\"\n cdkAriaLive=\"polite\">\n <span [attr.id]=\"_buttonDescriptionId\">{{periodButtonText}}</span>\n <svg class=\"mat-calendar-arrow\" [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\" focusable=\"false\">\n <polygon points=\"0,0 5,5 10,0\"/>\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content></ng-content>\n\n <button mat-icon-button type=\"button\" class=\"mat-calendar-previous-button\"\n [disabled]=\"!previousEnabled()\" (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\">\n </button>\n\n <button mat-icon-button type=\"button\" class=\"mat-calendar-next-button\"\n [disabled]=\"!nextEnabled()\" (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\">\n </button>\n </div>\n</div>\n" }]
1622
1666
  }], ctorParameters: function () { return [{ type: MatDatepickerIntl }, { type: MatCalendar, decorators: [{
@@ -1680,12 +1724,16 @@ class MatCalendar {
1680
1724
  });
1681
1725
  }
1682
1726
  /** A date representing the period (month or year) to start the calendar in. */
1683
- get startAt() { return this._startAt; }
1727
+ get startAt() {
1728
+ return this._startAt;
1729
+ }
1684
1730
  set startAt(value) {
1685
1731
  this._startAt = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
1686
1732
  }
1687
1733
  /** The currently selected date. */
1688
- get selected() { return this._selected; }
1734
+ get selected() {
1735
+ return this._selected;
1736
+ }
1689
1737
  set selected(value) {
1690
1738
  if (value instanceof DateRange) {
1691
1739
  this._selected = value;
@@ -1695,12 +1743,16 @@ class MatCalendar {
1695
1743
  }
1696
1744
  }
1697
1745
  /** The minimum selectable date. */
1698
- get minDate() { return this._minDate; }
1746
+ get minDate() {
1747
+ return this._minDate;
1748
+ }
1699
1749
  set minDate(value) {
1700
1750
  this._minDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
1701
1751
  }
1702
1752
  /** The maximum selectable date. */
1703
- get maxDate() { return this._maxDate; }
1753
+ get maxDate() {
1754
+ return this._maxDate;
1755
+ }
1704
1756
  set maxDate(value) {
1705
1757
  this._maxDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
1706
1758
  }
@@ -1708,14 +1760,18 @@ class MatCalendar {
1708
1760
  * The current active date. This determines which time period is shown and which date is
1709
1761
  * highlighted when using keyboard navigation.
1710
1762
  */
1711
- get activeDate() { return this._clampedActiveDate; }
1763
+ get activeDate() {
1764
+ return this._clampedActiveDate;
1765
+ }
1712
1766
  set activeDate(value) {
1713
1767
  this._clampedActiveDate = this._dateAdapter.clampDate(value, this.minDate, this.maxDate);
1714
1768
  this.stateChanges.next();
1715
1769
  this._changeDetectorRef.markForCheck();
1716
1770
  }
1717
1771
  /** Whether the calendar is in month view. */
1718
- get currentView() { return this._currentView; }
1772
+ get currentView() {
1773
+ return this._currentView;
1774
+ }
1719
1775
  set currentView(value) {
1720
1776
  const viewChangedResult = this._currentView !== value ? value : null;
1721
1777
  this._currentView = value;
@@ -1792,9 +1848,9 @@ class MatCalendar {
1792
1848
  return this.monthView || this.yearView || this.multiYearView;
1793
1849
  }
1794
1850
  }
1795
- MatCalendar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatCalendar, deps: [{ token: MatDatepickerIntl }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1796
- MatCalendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatCalendar, selector: "mat-calendar", inputs: { headerComponent: "headerComponent", startAt: "startAt", startView: "startView", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", _userSelection: "_userSelection" }, host: { classAttribute: "mat-calendar" }, providers: [MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER], viewQueries: [{ propertyName: "monthView", first: true, predicate: MatMonthView, descendants: true }, { propertyName: "yearView", first: true, predicate: MatYearView, descendants: true }, { propertyName: "multiYearView", first: true, predicate: MatMultiYearView, descendants: true }], exportAs: ["matCalendar"], usesOnChanges: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"_calendarHeaderPortal\"></ng-template>\n\n<div class=\"mat-calendar-content\" [ngSwitch]=\"currentView\" cdkMonitorSubtreeFocus tabindex=\"-1\">\n <mat-month-view\n *ngSwitchCase=\"'month'\"\n [(activeDate)]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n (_userSelection)=\"_dateSelected($event)\">\n </mat-month-view>\n\n <mat-year-view\n *ngSwitchCase=\"'year'\"\n [(activeDate)]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass\"\n (monthSelected)=\"_monthSelectedInYearView($event)\"\n (selectedChange)=\"_goToDateInView($event, 'month')\">\n </mat-year-view>\n\n <mat-multi-year-view\n *ngSwitchCase=\"'multi-year'\"\n [(activeDate)]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass\"\n (yearSelected)=\"_yearSelectedInMultiYearView($event)\"\n (selectedChange)=\"_goToDateInView($event, 'year')\">\n </mat-multi-year-view>\n</div>\n", styles: [".mat-calendar{display:block}.mat-calendar-header{padding:8px 8px 0 8px}.mat-calendar-content{padding:0 8px 8px 8px;outline:none}.mat-calendar-controls{display:flex;margin:5% calc(4.7142857143% - 16px)}.mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:.04}.mat-calendar-spacer{flex:1 1 auto}.mat-calendar-period-button{min-width:0}.mat-calendar-arrow{display:inline-block;width:10px;height:5px;margin:0 0 0 5px;vertical-align:middle}.mat-calendar-arrow.mat-calendar-invert{transform:rotate(180deg)}[dir=rtl] .mat-calendar-arrow{margin:0 5px 0 0}.cdk-high-contrast-active .mat-calendar-arrow{fill:CanvasText}.mat-calendar-previous-button,.mat-calendar-next-button{position:relative}.mat-calendar-previous-button::after,.mat-calendar-next-button::after{top:0;left:0;right:0;bottom:0;position:absolute;content:\"\";margin:15.5px;border:0 solid currentColor;border-top-width:2px}[dir=rtl] .mat-calendar-previous-button,[dir=rtl] .mat-calendar-next-button{transform:rotate(180deg)}.mat-calendar-previous-button::after{border-left-width:2px;transform:translateX(2px) rotate(-45deg)}.mat-calendar-next-button::after{border-right-width:2px;transform:translateX(-2px) rotate(45deg)}.mat-calendar-table{border-spacing:0;border-collapse:collapse;width:100%}.mat-calendar-table-header th{text-align:center;padding:0 0 8px 0}.mat-calendar-table-header-divider{position:relative;height:1px}.mat-calendar-table-header-divider::after{content:\"\";position:absolute;top:0;left:-8px;right:-8px;height:1px}.mat-calendar-abbr{text-decoration:none}\n"], components: [{ type: MatMonthView, selector: "mat-month-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd"], outputs: ["selectedChange", "_userSelection", "activeDateChange"], exportAs: ["matMonthView"] }, { type: MatYearView, selector: "mat-year-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass"], outputs: ["selectedChange", "monthSelected", "activeDateChange"], exportAs: ["matYearView"] }, { type: MatMultiYearView, selector: "mat-multi-year-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass"], outputs: ["selectedChange", "yearSelected", "activeDateChange"], exportAs: ["matMultiYearView"] }], directives: [{ type: i8.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { type: i4.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"] }, { type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1797
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatCalendar, decorators: [{
1851
+ MatCalendar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatCalendar, deps: [{ token: MatDatepickerIntl }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1852
+ MatCalendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatCalendar, selector: "mat-calendar", inputs: { headerComponent: "headerComponent", startAt: "startAt", startView: "startView", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", _userSelection: "_userSelection" }, host: { classAttribute: "mat-calendar" }, providers: [MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER], viewQueries: [{ propertyName: "monthView", first: true, predicate: MatMonthView, descendants: true }, { propertyName: "yearView", first: true, predicate: MatYearView, descendants: true }, { propertyName: "multiYearView", first: true, predicate: MatMultiYearView, descendants: true }], exportAs: ["matCalendar"], usesOnChanges: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"_calendarHeaderPortal\"></ng-template>\n\n<div class=\"mat-calendar-content\" [ngSwitch]=\"currentView\" cdkMonitorSubtreeFocus tabindex=\"-1\">\n <mat-month-view\n *ngSwitchCase=\"'month'\"\n [(activeDate)]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n (_userSelection)=\"_dateSelected($event)\">\n </mat-month-view>\n\n <mat-year-view\n *ngSwitchCase=\"'year'\"\n [(activeDate)]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass\"\n (monthSelected)=\"_monthSelectedInYearView($event)\"\n (selectedChange)=\"_goToDateInView($event, 'month')\">\n </mat-year-view>\n\n <mat-multi-year-view\n *ngSwitchCase=\"'multi-year'\"\n [(activeDate)]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass\"\n (yearSelected)=\"_yearSelectedInMultiYearView($event)\"\n (selectedChange)=\"_goToDateInView($event, 'year')\">\n </mat-multi-year-view>\n</div>\n", styles: [".mat-calendar{display:block}.mat-calendar-header{padding:8px 8px 0 8px}.mat-calendar-content{padding:0 8px 8px 8px;outline:none}.mat-calendar-controls{display:flex;margin:5% calc(4.7142857143% - 16px)}.mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:.04}.mat-calendar-spacer{flex:1 1 auto}.mat-calendar-period-button{min-width:0}.mat-calendar-arrow{display:inline-block;width:10px;height:5px;margin:0 0 0 5px;vertical-align:middle}.mat-calendar-arrow.mat-calendar-invert{transform:rotate(180deg)}[dir=rtl] .mat-calendar-arrow{margin:0 5px 0 0}.cdk-high-contrast-active .mat-calendar-arrow{fill:CanvasText}.mat-calendar-previous-button,.mat-calendar-next-button{position:relative}.mat-calendar-previous-button::after,.mat-calendar-next-button::after{top:0;left:0;right:0;bottom:0;position:absolute;content:\"\";margin:15.5px;border:0 solid currentColor;border-top-width:2px}[dir=rtl] .mat-calendar-previous-button,[dir=rtl] .mat-calendar-next-button{transform:rotate(180deg)}.mat-calendar-previous-button::after{border-left-width:2px;transform:translateX(2px) rotate(-45deg)}.mat-calendar-next-button::after{border-right-width:2px;transform:translateX(-2px) rotate(45deg)}.mat-calendar-table{border-spacing:0;border-collapse:collapse;width:100%}.mat-calendar-table-header th{text-align:center;padding:0 0 8px 0}.mat-calendar-table-header-divider{position:relative;height:1px}.mat-calendar-table-header-divider::after{content:\"\";position:absolute;top:0;left:-8px;right:-8px;height:1px}.mat-calendar-abbr{text-decoration:none}\n"], components: [{ type: MatMonthView, selector: "mat-month-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd"], outputs: ["selectedChange", "_userSelection", "activeDateChange"], exportAs: ["matMonthView"] }, { type: MatYearView, selector: "mat-year-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass"], outputs: ["selectedChange", "monthSelected", "activeDateChange"], exportAs: ["matYearView"] }, { type: MatMultiYearView, selector: "mat-multi-year-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass"], outputs: ["selectedChange", "yearSelected", "activeDateChange"], exportAs: ["matMultiYearView"] }], directives: [{ type: i8.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { type: i4.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"] }, { type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1853
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatCalendar, decorators: [{
1798
1854
  type: Component,
1799
1855
  args: [{ selector: 'mat-calendar', host: {
1800
1856
  'class': 'mat-calendar',
@@ -1863,13 +1919,13 @@ const matDatepickerAnimations = {
1863
1919
  transformPanel: trigger('transformPanel', [
1864
1920
  transition('void => enter-dropdown', animate('120ms cubic-bezier(0, 0, 0.2, 1)', keyframes([
1865
1921
  style({ opacity: 0, transform: 'scale(1, 0.8)' }),
1866
- style({ opacity: 1, transform: 'scale(1, 1)' })
1922
+ style({ opacity: 1, transform: 'scale(1, 1)' }),
1867
1923
  ]))),
1868
1924
  transition('void => enter-dialog', animate('150ms cubic-bezier(0, 0, 0.2, 1)', keyframes([
1869
1925
  style({ opacity: 0, transform: 'scale(0.7)' }),
1870
- style({ transform: 'none', opacity: 1 })
1926
+ style({ transform: 'none', opacity: 1 }),
1871
1927
  ]))),
1872
- transition('* => void', animate('100ms linear', style({ opacity: 0 })))
1928
+ transition('* => void', animate('100ms linear', style({ opacity: 0 }))),
1873
1929
  ]),
1874
1930
  /** Fades in the content of the calendar. */
1875
1931
  fadeInCalendar: trigger('fadeInCalendar', [
@@ -1877,8 +1933,8 @@ const matDatepickerAnimations = {
1877
1933
  state('enter', style({ opacity: 1 })),
1878
1934
  // TODO(crisbeto): this animation should be removed since it isn't quite on spec, but we
1879
1935
  // need to keep it until #12440 gets in, otherwise the exit animation will look glitchy.
1880
- transition('void => *', animate('120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)'))
1881
- ])
1936
+ transition('void => *', animate('120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)')),
1937
+ ]),
1882
1938
  };
1883
1939
 
1884
1940
  /**
@@ -1960,8 +2016,8 @@ class MatDatepickerContent extends _MatDatepickerContentBase {
1960
2016
  const newSelection = this._rangeSelectionStrategy.selectionFinished(value, selection, event.event);
1961
2017
  this._model.updateSelection(newSelection, this);
1962
2018
  }
1963
- else if (value && (isRange ||
1964
- !this._dateAdapter.sameDate(value, selection))) {
2019
+ else if (value &&
2020
+ (isRange || !this._dateAdapter.sameDate(value, selection))) {
1965
2021
  this._model.add(value);
1966
2022
  }
1967
2023
  // Delegate closing the overlay to the actions.
@@ -1983,22 +2039,16 @@ class MatDatepickerContent extends _MatDatepickerContentBase {
1983
2039
  }
1984
2040
  }
1985
2041
  }
1986
- MatDatepickerContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerContent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MatDateSelectionModel }, { token: i1$1.DateAdapter }, { token: MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }, { token: MatDatepickerIntl }], target: i0.ɵɵFactoryTarget.Component });
1987
- MatDatepickerContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerContent, selector: "mat-datepicker-content", inputs: { color: "color" }, host: { listeners: { "@transformPanel.done": "_animationDone.next()" }, properties: { "@transformPanel": "_animationState", "class.mat-datepicker-content-touch": "datepicker.touchUi" }, classAttribute: "mat-datepicker-content" }, viewQueries: [{ propertyName: "_calendar", first: true, predicate: MatCalendar, descendants: true }], exportAs: ["matDatepickerContent"], usesInheritance: true, ngImport: i0, template: "<div\n cdkTrapFocus\n class=\"mat-datepicker-content-container\"\n [class.mat-datepicker-content-container-with-actions]=\"_actionsPortal\">\n <mat-calendar\n [id]=\"datepicker.id\"\n [ngClass]=\"datepicker.panelClass\"\n [startAt]=\"datepicker.startAt\"\n [startView]=\"datepicker.startView\"\n [minDate]=\"datepicker._getMinDate()\"\n [maxDate]=\"datepicker._getMaxDate()\"\n [dateFilter]=\"datepicker._getDateFilter()\"\n [headerComponent]=\"datepicker.calendarHeaderComponent\"\n [selected]=\"_getSelected()\"\n [dateClass]=\"datepicker.dateClass\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n [@fadeInCalendar]=\"'enter'\"\n (yearSelected)=\"datepicker._selectYear($event)\"\n (monthSelected)=\"datepicker._selectMonth($event)\"\n (viewChanged)=\"datepicker._viewChanged($event)\"\n (_userSelection)=\"_handleUserSelection($event)\"></mat-calendar>\n\n <ng-template [cdkPortalOutlet]=\"_actionsPortal\"></ng-template>\n\n <!-- Invisible close button for screen reader users. -->\n <button\n type=\"button\"\n mat-raised-button\n [color]=\"color || 'primary'\"\n class=\"mat-datepicker-close-button\"\n [class.cdk-visually-hidden]=\"!_closeButtonFocused\"\n (focus)=\"_closeButtonFocused = true\"\n (blur)=\"_closeButtonFocused = false\"\n (click)=\"datepicker.close()\">{{ _closeButtonText }}</button>\n</div>\n", styles: [".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}\n"], components: [{ type: MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection"], exportAs: ["matCalendar"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i8.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [
1988
- matDatepickerAnimations.transformPanel,
1989
- matDatepickerAnimations.fadeInCalendar,
1990
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1991
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerContent, decorators: [{
2042
+ MatDatepickerContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerContent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MatDateSelectionModel }, { token: i1$1.DateAdapter }, { token: MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }, { token: MatDatepickerIntl }], target: i0.ɵɵFactoryTarget.Component });
2043
+ MatDatepickerContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerContent, selector: "mat-datepicker-content", inputs: { color: "color" }, host: { listeners: { "@transformPanel.done": "_animationDone.next()" }, properties: { "@transformPanel": "_animationState", "class.mat-datepicker-content-touch": "datepicker.touchUi" }, classAttribute: "mat-datepicker-content" }, viewQueries: [{ propertyName: "_calendar", first: true, predicate: MatCalendar, descendants: true }], exportAs: ["matDatepickerContent"], usesInheritance: true, ngImport: i0, template: "<div\n cdkTrapFocus\n class=\"mat-datepicker-content-container\"\n [class.mat-datepicker-content-container-with-actions]=\"_actionsPortal\">\n <mat-calendar\n [id]=\"datepicker.id\"\n [ngClass]=\"datepicker.panelClass\"\n [startAt]=\"datepicker.startAt\"\n [startView]=\"datepicker.startView\"\n [minDate]=\"datepicker._getMinDate()\"\n [maxDate]=\"datepicker._getMaxDate()\"\n [dateFilter]=\"datepicker._getDateFilter()\"\n [headerComponent]=\"datepicker.calendarHeaderComponent\"\n [selected]=\"_getSelected()\"\n [dateClass]=\"datepicker.dateClass\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n [@fadeInCalendar]=\"'enter'\"\n (yearSelected)=\"datepicker._selectYear($event)\"\n (monthSelected)=\"datepicker._selectMonth($event)\"\n (viewChanged)=\"datepicker._viewChanged($event)\"\n (_userSelection)=\"_handleUserSelection($event)\"></mat-calendar>\n\n <ng-template [cdkPortalOutlet]=\"_actionsPortal\"></ng-template>\n\n <!-- Invisible close button for screen reader users. -->\n <button\n type=\"button\"\n mat-raised-button\n [color]=\"color || 'primary'\"\n class=\"mat-datepicker-close-button\"\n [class.cdk-visually-hidden]=\"!_closeButtonFocused\"\n (focus)=\"_closeButtonFocused = true\"\n (blur)=\"_closeButtonFocused = false\"\n (click)=\"datepicker.close()\">{{ _closeButtonText }}</button>\n</div>\n", styles: [".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}\n"], components: [{ type: MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection"], exportAs: ["matCalendar"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i8.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [matDatepickerAnimations.transformPanel, matDatepickerAnimations.fadeInCalendar], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2044
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerContent, decorators: [{
1992
2045
  type: Component,
1993
2046
  args: [{ selector: 'mat-datepicker-content', host: {
1994
2047
  'class': 'mat-datepicker-content',
1995
2048
  '[@transformPanel]': '_animationState',
1996
2049
  '(@transformPanel.done)': '_animationDone.next()',
1997
2050
  '[class.mat-datepicker-content-touch]': 'datepicker.touchUi',
1998
- }, animations: [
1999
- matDatepickerAnimations.transformPanel,
2000
- matDatepickerAnimations.fadeInCalendar,
2001
- ], exportAs: 'matDatepickerContent', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, inputs: ['color'], template: "<div\n cdkTrapFocus\n class=\"mat-datepicker-content-container\"\n [class.mat-datepicker-content-container-with-actions]=\"_actionsPortal\">\n <mat-calendar\n [id]=\"datepicker.id\"\n [ngClass]=\"datepicker.panelClass\"\n [startAt]=\"datepicker.startAt\"\n [startView]=\"datepicker.startView\"\n [minDate]=\"datepicker._getMinDate()\"\n [maxDate]=\"datepicker._getMaxDate()\"\n [dateFilter]=\"datepicker._getDateFilter()\"\n [headerComponent]=\"datepicker.calendarHeaderComponent\"\n [selected]=\"_getSelected()\"\n [dateClass]=\"datepicker.dateClass\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n [@fadeInCalendar]=\"'enter'\"\n (yearSelected)=\"datepicker._selectYear($event)\"\n (monthSelected)=\"datepicker._selectMonth($event)\"\n (viewChanged)=\"datepicker._viewChanged($event)\"\n (_userSelection)=\"_handleUserSelection($event)\"></mat-calendar>\n\n <ng-template [cdkPortalOutlet]=\"_actionsPortal\"></ng-template>\n\n <!-- Invisible close button for screen reader users. -->\n <button\n type=\"button\"\n mat-raised-button\n [color]=\"color || 'primary'\"\n class=\"mat-datepicker-close-button\"\n [class.cdk-visually-hidden]=\"!_closeButtonFocused\"\n (focus)=\"_closeButtonFocused = true\"\n (blur)=\"_closeButtonFocused = false\"\n (click)=\"datepicker.close()\">{{ _closeButtonText }}</button>\n</div>\n", styles: [".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}\n"] }]
2051
+ }, animations: [matDatepickerAnimations.transformPanel, matDatepickerAnimations.fadeInCalendar], exportAs: 'matDatepickerContent', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, inputs: ['color'], template: "<div\n cdkTrapFocus\n class=\"mat-datepicker-content-container\"\n [class.mat-datepicker-content-container-with-actions]=\"_actionsPortal\">\n <mat-calendar\n [id]=\"datepicker.id\"\n [ngClass]=\"datepicker.panelClass\"\n [startAt]=\"datepicker.startAt\"\n [startView]=\"datepicker.startView\"\n [minDate]=\"datepicker._getMinDate()\"\n [maxDate]=\"datepicker._getMaxDate()\"\n [dateFilter]=\"datepicker._getDateFilter()\"\n [headerComponent]=\"datepicker.calendarHeaderComponent\"\n [selected]=\"_getSelected()\"\n [dateClass]=\"datepicker.dateClass\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n [@fadeInCalendar]=\"'enter'\"\n (yearSelected)=\"datepicker._selectYear($event)\"\n (monthSelected)=\"datepicker._selectMonth($event)\"\n (viewChanged)=\"datepicker._viewChanged($event)\"\n (_userSelection)=\"_handleUserSelection($event)\"></mat-calendar>\n\n <ng-template [cdkPortalOutlet]=\"_actionsPortal\"></ng-template>\n\n <!-- Invisible close button for screen reader users. -->\n <button\n type=\"button\"\n mat-raised-button\n [color]=\"color || 'primary'\"\n class=\"mat-datepicker-close-button\"\n [class.cdk-visually-hidden]=\"!_closeButtonFocused\"\n (focus)=\"_closeButtonFocused = true\"\n (blur)=\"_closeButtonFocused = false\"\n (click)=\"datepicker.close()\">{{ _closeButtonText }}</button>\n</div>\n", styles: [".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}\n"] }]
2002
2052
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: MatDateSelectionModel }, { type: i1$1.DateAdapter }, { type: undefined, decorators: [{
2003
2053
  type: Optional
2004
2054
  }, {
@@ -2069,8 +2119,7 @@ class MatDatepickerBase {
2069
2119
  }
2070
2120
  /** Color palette to use on the datepicker's calendar. */
2071
2121
  get color() {
2072
- return this._color ||
2073
- (this.datepickerInput ? this.datepickerInput.getThemePalette() : undefined);
2122
+ return (this._color || (this.datepickerInput ? this.datepickerInput.getThemePalette() : undefined));
2074
2123
  }
2075
2124
  set color(value) {
2076
2125
  this._color = value;
@@ -2079,14 +2128,17 @@ class MatDatepickerBase {
2079
2128
  * Whether the calendar UI is in touch mode. In touch mode the calendar opens in a dialog rather
2080
2129
  * than a dropdown and elements have more padding to allow for bigger touch targets.
2081
2130
  */
2082
- get touchUi() { return this._touchUi; }
2131
+ get touchUi() {
2132
+ return this._touchUi;
2133
+ }
2083
2134
  set touchUi(value) {
2084
2135
  this._touchUi = coerceBooleanProperty(value);
2085
2136
  }
2086
2137
  /** Whether the datepicker pop-up should be disabled. */
2087
2138
  get disabled() {
2088
- return this._disabled === undefined && this.datepickerInput ?
2089
- this.datepickerInput.disabled : !!this._disabled;
2139
+ return this._disabled === undefined && this.datepickerInput
2140
+ ? this.datepickerInput.disabled
2141
+ : !!this._disabled;
2090
2142
  }
2091
2143
  set disabled(value) {
2092
2144
  const newValue = coerceBooleanProperty(value);
@@ -2100,7 +2152,9 @@ class MatDatepickerBase {
2100
2152
  * Note that automatic focus restoration is an accessibility feature and it is recommended that
2101
2153
  * you provide your own equivalent, if you decide to turn it off.
2102
2154
  */
2103
- get restoreFocus() { return this._restoreFocus; }
2155
+ get restoreFocus() {
2156
+ return this._restoreFocus;
2157
+ }
2104
2158
  set restoreFocus(value) {
2105
2159
  this._restoreFocus = coerceBooleanProperty(value);
2106
2160
  }
@@ -2108,12 +2162,16 @@ class MatDatepickerBase {
2108
2162
  * Classes to be passed to the date picker panel.
2109
2163
  * Supports string and string array values, similar to `ngClass`.
2110
2164
  */
2111
- get panelClass() { return this._panelClass; }
2165
+ get panelClass() {
2166
+ return this._panelClass;
2167
+ }
2112
2168
  set panelClass(value) {
2113
2169
  this._panelClass = coerceStringArray(value);
2114
2170
  }
2115
2171
  /** Whether the calendar is open. */
2116
- get opened() { return this._opened; }
2172
+ get opened() {
2173
+ return this._opened;
2174
+ }
2117
2175
  set opened(value) {
2118
2176
  coerceBooleanProperty(value) ? this.open() : this.close();
2119
2177
  }
@@ -2174,8 +2232,7 @@ class MatDatepickerBase {
2174
2232
  }
2175
2233
  this._inputStateChanges.unsubscribe();
2176
2234
  this.datepickerInput = input;
2177
- this._inputStateChanges =
2178
- input.stateChanges.subscribe(() => this.stateChanges.next(undefined));
2235
+ this._inputStateChanges = input.stateChanges.subscribe(() => this.stateChanges.next(undefined));
2179
2236
  return this._model;
2180
2237
  }
2181
2238
  /**
@@ -2229,7 +2286,8 @@ class MatDatepickerBase {
2229
2286
  this._focusedElementBeforeOpen = null;
2230
2287
  }
2231
2288
  };
2232
- if (this._restoreFocus && this._focusedElementBeforeOpen &&
2289
+ if (this._restoreFocus &&
2290
+ this._focusedElementBeforeOpen &&
2233
2291
  typeof this._focusedElementBeforeOpen.focus === 'function') {
2234
2292
  // Because IE moves focus asynchronously, we can't count on it being restored before we've
2235
2293
  // marked the datepicker as closed. If the event fires out of sequence and the element that
@@ -2259,17 +2317,17 @@ class MatDatepickerBase {
2259
2317
  const isDialog = this.touchUi;
2260
2318
  const labelId = this.datepickerInput.getOverlayLabelId();
2261
2319
  const portal = new ComponentPortal(MatDatepickerContent, this._viewContainerRef);
2262
- const overlayRef = this._overlayRef = this._overlay.create(new OverlayConfig({
2320
+ const overlayRef = (this._overlayRef = this._overlay.create(new OverlayConfig({
2263
2321
  positionStrategy: isDialog ? this._getDialogStrategy() : this._getDropdownStrategy(),
2264
2322
  hasBackdrop: true,
2265
2323
  backdropClass: [
2266
2324
  isDialog ? 'cdk-overlay-dark-backdrop' : 'mat-overlay-transparent-backdrop',
2267
- this._backdropHarnessClass
2325
+ this._backdropHarnessClass,
2268
2326
  ],
2269
2327
  direction: this._dir,
2270
2328
  scrollStrategy: isDialog ? this._overlay.scrollStrategies.block() : this._scrollStrategy(),
2271
2329
  panelClass: `mat-datepicker-${isDialog ? 'dialog' : 'popup'}`,
2272
- }));
2330
+ })));
2273
2331
  const overlayElement = overlayRef.overlayElement;
2274
2332
  overlayElement.setAttribute('role', 'dialog');
2275
2333
  if (labelId) {
@@ -2304,7 +2362,8 @@ class MatDatepickerBase {
2304
2362
  }
2305
2363
  /** Gets a position strategy that will open the calendar as a dropdown. */
2306
2364
  _getDropdownStrategy() {
2307
- const strategy = this._overlay.position()
2365
+ const strategy = this._overlay
2366
+ .position()
2308
2367
  .flexibleConnectedTo(this.datepickerInput.getConnectedOverlayOrigin())
2309
2368
  .withTransformOriginOn('.mat-datepicker-content')
2310
2369
  .withFlexibleDimensions(false)
@@ -2323,40 +2382,40 @@ class MatDatepickerBase {
2323
2382
  originX: primaryX,
2324
2383
  originY: secondaryY,
2325
2384
  overlayX: primaryX,
2326
- overlayY: primaryY
2385
+ overlayY: primaryY,
2327
2386
  },
2328
2387
  {
2329
2388
  originX: primaryX,
2330
2389
  originY: primaryY,
2331
2390
  overlayX: primaryX,
2332
- overlayY: secondaryY
2391
+ overlayY: secondaryY,
2333
2392
  },
2334
2393
  {
2335
2394
  originX: secondaryX,
2336
2395
  originY: secondaryY,
2337
2396
  overlayX: secondaryX,
2338
- overlayY: primaryY
2397
+ overlayY: primaryY,
2339
2398
  },
2340
2399
  {
2341
2400
  originX: secondaryX,
2342
2401
  originY: primaryY,
2343
2402
  overlayX: secondaryX,
2344
- overlayY: secondaryY
2345
- }
2403
+ overlayY: secondaryY,
2404
+ },
2346
2405
  ]);
2347
2406
  }
2348
2407
  /** Gets an observable that will emit when the overlay is supposed to be closed. */
2349
2408
  _getCloseStream(overlayRef) {
2350
2409
  return merge(overlayRef.backdropClick(), overlayRef.detachments(), overlayRef.keydownEvents().pipe(filter(event => {
2351
2410
  // Closing on alt + up is only valid when there's an input associated with the datepicker.
2352
- return (event.keyCode === ESCAPE && !hasModifierKey(event)) || (this.datepickerInput &&
2353
- hasModifierKey(event, 'altKey') && event.keyCode === UP_ARROW);
2411
+ return ((event.keyCode === ESCAPE && !hasModifierKey(event)) ||
2412
+ (this.datepickerInput && hasModifierKey(event, 'altKey') && event.keyCode === UP_ARROW));
2354
2413
  })));
2355
2414
  }
2356
2415
  }
2357
- MatDatepickerBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerBase, deps: [{ token: i9.Overlay }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: MAT_DATEPICKER_SCROLL_STRATEGY }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: MatDateSelectionModel }], target: i0.ɵɵFactoryTarget.Directive });
2358
- MatDatepickerBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerBase, inputs: { calendarHeaderComponent: "calendarHeaderComponent", startAt: "startAt", startView: "startView", color: "color", touchUi: "touchUi", disabled: "disabled", xPosition: "xPosition", yPosition: "yPosition", restoreFocus: "restoreFocus", dateClass: "dateClass", panelClass: "panelClass", opened: "opened" }, outputs: { yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", openedStream: "opened", closedStream: "closed" }, usesOnChanges: true, ngImport: i0 });
2359
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerBase, decorators: [{
2416
+ MatDatepickerBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerBase, deps: [{ token: i9.Overlay }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: MAT_DATEPICKER_SCROLL_STRATEGY }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: MatDateSelectionModel }], target: i0.ɵɵFactoryTarget.Directive });
2417
+ MatDatepickerBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerBase, inputs: { calendarHeaderComponent: "calendarHeaderComponent", startAt: "startAt", startView: "startView", color: "color", touchUi: "touchUi", disabled: "disabled", xPosition: "xPosition", yPosition: "yPosition", restoreFocus: "restoreFocus", dateClass: "dateClass", panelClass: "panelClass", opened: "opened" }, outputs: { yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", openedStream: "opened", closedStream: "closed" }, usesOnChanges: true, ngImport: i0 });
2418
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerBase, decorators: [{
2360
2419
  type: Directive
2361
2420
  }], ctorParameters: function () { return [{ type: i9.Overlay }, { type: i0.NgZone }, { type: i0.ViewContainerRef }, { type: undefined, decorators: [{
2362
2421
  type: Inject,
@@ -2416,12 +2475,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
2416
2475
  /** Component responsible for managing the datepicker popup/dialog. */
2417
2476
  class MatDatepicker extends MatDatepickerBase {
2418
2477
  }
2419
- MatDatepicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepicker, deps: null, target: i0.ɵɵFactoryTarget.Component });
2420
- MatDatepicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepicker, selector: "mat-datepicker", providers: [
2478
+ MatDatepicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepicker, deps: null, target: i0.ɵɵFactoryTarget.Component });
2479
+ MatDatepicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepicker, selector: "mat-datepicker", providers: [
2421
2480
  MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER,
2422
2481
  { provide: MatDatepickerBase, useExisting: MatDatepicker },
2423
2482
  ], exportAs: ["matDatepicker"], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2424
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepicker, decorators: [{
2483
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepicker, decorators: [{
2425
2484
  type: Component,
2426
2485
  args: [{
2427
2486
  selector: 'mat-datepicker',
@@ -2432,7 +2491,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
2432
2491
  providers: [
2433
2492
  MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER,
2434
2493
  { provide: MatDatepickerBase, useExisting: MatDatepicker },
2435
- ]
2494
+ ],
2436
2495
  }]
2437
2496
  }] });
2438
2497
 
@@ -2478,30 +2537,32 @@ class MatDatepickerInputBase {
2478
2537
  this._localeSubscription = Subscription.EMPTY;
2479
2538
  /** The form control validator for whether the input parses. */
2480
2539
  this._parseValidator = () => {
2481
- return this._lastValueValid ?
2482
- null : { 'matDatepickerParse': { 'text': this._elementRef.nativeElement.value } };
2540
+ return this._lastValueValid
2541
+ ? null
2542
+ : { 'matDatepickerParse': { 'text': this._elementRef.nativeElement.value } };
2483
2543
  };
2484
2544
  /** The form control validator for the date filter. */
2485
2545
  this._filterValidator = (control) => {
2486
2546
  const controlValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(control.value));
2487
- return !controlValue || this._matchesFilter(controlValue) ?
2488
- null : { 'matDatepickerFilter': true };
2547
+ return !controlValue || this._matchesFilter(controlValue)
2548
+ ? null
2549
+ : { 'matDatepickerFilter': true };
2489
2550
  };
2490
2551
  /** The form control validator for the min date. */
2491
2552
  this._minValidator = (control) => {
2492
2553
  const controlValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(control.value));
2493
2554
  const min = this._getMinDate();
2494
- return (!min || !controlValue ||
2495
- this._dateAdapter.compareDate(min, controlValue) <= 0) ?
2496
- null : { 'matDatepickerMin': { 'min': min, 'actual': controlValue } };
2555
+ return !min || !controlValue || this._dateAdapter.compareDate(min, controlValue) <= 0
2556
+ ? null
2557
+ : { 'matDatepickerMin': { 'min': min, 'actual': controlValue } };
2497
2558
  };
2498
2559
  /** The form control validator for the max date. */
2499
2560
  this._maxValidator = (control) => {
2500
2561
  const controlValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(control.value));
2501
2562
  const max = this._getMaxDate();
2502
- return (!max || !controlValue ||
2503
- this._dateAdapter.compareDate(max, controlValue) >= 0) ?
2504
- null : { 'matDatepickerMax': { 'max': max, 'actual': controlValue } };
2563
+ return !max || !controlValue || this._dateAdapter.compareDate(max, controlValue) >= 0
2564
+ ? null
2565
+ : { 'matDatepickerMax': { 'max': max, 'actual': controlValue } };
2505
2566
  };
2506
2567
  /** Whether the last value set on the input was valid. */
2507
2568
  this._lastValueValid = false;
@@ -2526,7 +2587,9 @@ class MatDatepickerInputBase {
2526
2587
  this._assignValueProgrammatically(value);
2527
2588
  }
2528
2589
  /** Whether the datepicker-input is disabled. */
2529
- get disabled() { return !!this._disabled || this._parentDisabled(); }
2590
+ get disabled() {
2591
+ return !!this._disabled || this._parentDisabled();
2592
+ }
2530
2593
  set disabled(value) {
2531
2594
  const newValue = coerceBooleanProperty(value);
2532
2595
  const element = this._elementRef.nativeElement;
@@ -2646,8 +2709,9 @@ class MatDatepickerInputBase {
2646
2709
  }
2647
2710
  /** Formats a value and sets it on the input element. */
2648
2711
  _formatValue(value) {
2649
- this._elementRef.nativeElement.value =
2650
- value ? this._dateAdapter.format(value, this._dateFormats.display.dateInput) : '';
2712
+ this._elementRef.nativeElement.value = value
2713
+ ? this._dateAdapter.format(value, this._dateFormats.display.dateInput)
2714
+ : '';
2651
2715
  }
2652
2716
  /** Assigns a value to the model. */
2653
2717
  _assignValue(value) {
@@ -2686,9 +2750,9 @@ class MatDatepickerInputBase {
2686
2750
  return !filter || filter(value);
2687
2751
  }
2688
2752
  }
2689
- MatDatepickerInputBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerInputBase, deps: [{ token: i0.ElementRef }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2690
- MatDatepickerInputBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerInputBase, inputs: { value: "value", disabled: "disabled" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, usesOnChanges: true, ngImport: i0 });
2691
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerInputBase, decorators: [{
2753
+ MatDatepickerInputBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerInputBase, deps: [{ token: i0.ElementRef }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2754
+ MatDatepickerInputBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerInputBase, inputs: { value: "value", disabled: "disabled" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, usesOnChanges: true, ngImport: i0 });
2755
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerInputBase, decorators: [{
2692
2756
  type: Directive
2693
2757
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1$1.DateAdapter, decorators: [{
2694
2758
  type: Optional
@@ -2737,13 +2801,13 @@ function dateInputsHaveChanged(changes, adapter) {
2737
2801
  const MAT_DATEPICKER_VALUE_ACCESSOR = {
2738
2802
  provide: NG_VALUE_ACCESSOR,
2739
2803
  useExisting: forwardRef(() => MatDatepickerInput),
2740
- multi: true
2804
+ multi: true,
2741
2805
  };
2742
2806
  /** @docs-private */
2743
2807
  const MAT_DATEPICKER_VALIDATORS = {
2744
2808
  provide: NG_VALIDATORS,
2745
2809
  useExisting: forwardRef(() => MatDatepickerInput),
2746
- multi: true
2810
+ multi: true,
2747
2811
  };
2748
2812
  /** Directive used to connect an input to a MatDatepicker. */
2749
2813
  class MatDatepickerInput extends MatDatepickerInputBase {
@@ -2762,7 +2826,9 @@ class MatDatepickerInput extends MatDatepickerInputBase {
2762
2826
  }
2763
2827
  }
2764
2828
  /** The minimum valid date. */
2765
- get min() { return this._min; }
2829
+ get min() {
2830
+ return this._min;
2831
+ }
2766
2832
  set min(value) {
2767
2833
  const validValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
2768
2834
  if (!this._dateAdapter.sameDate(validValue, this._min)) {
@@ -2771,7 +2837,9 @@ class MatDatepickerInput extends MatDatepickerInputBase {
2771
2837
  }
2772
2838
  }
2773
2839
  /** The maximum valid date. */
2774
- get max() { return this._max; }
2840
+ get max() {
2841
+ return this._max;
2842
+ }
2775
2843
  set max(value) {
2776
2844
  const validValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
2777
2845
  if (!this._dateAdapter.sameDate(validValue, this._max)) {
@@ -2780,7 +2848,9 @@ class MatDatepickerInput extends MatDatepickerInputBase {
2780
2848
  }
2781
2849
  }
2782
2850
  /** Function that can be used to filter out dates within the datepicker. */
2783
- get dateFilter() { return this._dateFilter; }
2851
+ get dateFilter() {
2852
+ return this._dateFilter;
2853
+ }
2784
2854
  set dateFilter(value) {
2785
2855
  const wasMatchingValue = this._matchesFilter(this.value);
2786
2856
  this._dateFilter = value;
@@ -2844,13 +2914,13 @@ class MatDatepickerInput extends MatDatepickerInputBase {
2844
2914
  return event.source !== this;
2845
2915
  }
2846
2916
  }
2847
- MatDatepickerInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerInput, deps: [{ token: i0.ElementRef }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2848
- MatDatepickerInput.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerInput, selector: "input[matDatepicker]", inputs: { matDatepicker: "matDatepicker", min: "min", max: "max", dateFilter: ["matDatepickerFilter", "dateFilter"] }, host: { listeners: { "input": "_onInput($event.target.value)", "change": "_onChange()", "blur": "_onBlur()", "keydown": "_onKeydown($event)" }, properties: { "attr.aria-haspopup": "_datepicker ? \"dialog\" : null", "attr.aria-owns": "(_datepicker?.opened && _datepicker.id) || null", "attr.min": "min ? _dateAdapter.toIso8601(min) : null", "attr.max": "max ? _dateAdapter.toIso8601(max) : null", "attr.data-mat-calendar": "_datepicker ? _datepicker.id : null", "disabled": "disabled" }, classAttribute: "mat-datepicker-input" }, providers: [
2917
+ MatDatepickerInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerInput, deps: [{ token: i0.ElementRef }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2918
+ MatDatepickerInput.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerInput, selector: "input[matDatepicker]", inputs: { matDatepicker: "matDatepicker", min: "min", max: "max", dateFilter: ["matDatepickerFilter", "dateFilter"] }, host: { listeners: { "input": "_onInput($event.target.value)", "change": "_onChange()", "blur": "_onBlur()", "keydown": "_onKeydown($event)" }, properties: { "attr.aria-haspopup": "_datepicker ? \"dialog\" : null", "attr.aria-owns": "(_datepicker?.opened && _datepicker.id) || null", "attr.min": "min ? _dateAdapter.toIso8601(min) : null", "attr.max": "max ? _dateAdapter.toIso8601(max) : null", "attr.data-mat-calendar": "_datepicker ? _datepicker.id : null", "disabled": "disabled" }, classAttribute: "mat-datepicker-input" }, providers: [
2849
2919
  MAT_DATEPICKER_VALUE_ACCESSOR,
2850
2920
  MAT_DATEPICKER_VALIDATORS,
2851
2921
  { provide: MAT_INPUT_VALUE_ACCESSOR, useExisting: MatDatepickerInput },
2852
2922
  ], exportAs: ["matDatepickerInput"], usesInheritance: true, ngImport: i0 });
2853
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerInput, decorators: [{
2923
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerInput, decorators: [{
2854
2924
  type: Directive,
2855
2925
  args: [{
2856
2926
  selector: 'input[matDatepicker]',
@@ -2909,12 +2979,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
2909
2979
  /** Can be used to override the icon of a `matDatepickerToggle`. */
2910
2980
  class MatDatepickerToggleIcon {
2911
2981
  }
2912
- MatDatepickerToggleIcon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerToggleIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2913
- MatDatepickerToggleIcon.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]", ngImport: i0 });
2914
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerToggleIcon, decorators: [{
2982
+ MatDatepickerToggleIcon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerToggleIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2983
+ MatDatepickerToggleIcon.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]", ngImport: i0 });
2984
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerToggleIcon, decorators: [{
2915
2985
  type: Directive,
2916
2986
  args: [{
2917
- selector: '[matDatepickerToggleIcon]'
2987
+ selector: '[matDatepickerToggleIcon]',
2918
2988
  }]
2919
2989
  }] });
2920
2990
  class MatDatepickerToggle {
@@ -2923,7 +2993,7 @@ class MatDatepickerToggle {
2923
2993
  this._changeDetectorRef = _changeDetectorRef;
2924
2994
  this._stateChanges = Subscription.EMPTY;
2925
2995
  const parsedTabIndex = Number(defaultTabIndex);
2926
- this.tabIndex = (parsedTabIndex || parsedTabIndex === 0) ? parsedTabIndex : null;
2996
+ this.tabIndex = parsedTabIndex || parsedTabIndex === 0 ? parsedTabIndex : null;
2927
2997
  }
2928
2998
  /** Whether the toggle button is disabled. */
2929
2999
  get disabled() {
@@ -2954,18 +3024,19 @@ class MatDatepickerToggle {
2954
3024
  }
2955
3025
  _watchStateChanges() {
2956
3026
  const datepickerStateChanged = this.datepicker ? this.datepicker.stateChanges : of();
2957
- const inputStateChanged = this.datepicker && this.datepicker.datepickerInput ?
2958
- this.datepicker.datepickerInput.stateChanges : of();
2959
- const datepickerToggled = this.datepicker ?
2960
- merge(this.datepicker.openedStream, this.datepicker.closedStream) :
2961
- of();
3027
+ const inputStateChanged = this.datepicker && this.datepicker.datepickerInput
3028
+ ? this.datepicker.datepickerInput.stateChanges
3029
+ : of();
3030
+ const datepickerToggled = this.datepicker
3031
+ ? merge(this.datepicker.openedStream, this.datepicker.closedStream)
3032
+ : of();
2962
3033
  this._stateChanges.unsubscribe();
2963
3034
  this._stateChanges = merge(this._intl.changes, datepickerStateChanged, inputStateChanged, datepickerToggled).subscribe(() => this._changeDetectorRef.markForCheck());
2964
3035
  }
2965
3036
  }
2966
- MatDatepickerToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerToggle, deps: [{ token: MatDatepickerIntl }, { token: i0.ChangeDetectorRef }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
2967
- MatDatepickerToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: { datepicker: ["for", "datepicker"], tabIndex: "tabIndex", ariaLabel: ["aria-label", "ariaLabel"], disabled: "disabled", disableRipple: "disableRipple" }, host: { listeners: { "click": "_open($event)" }, properties: { "attr.tabindex": "null", "class.mat-datepicker-toggle-active": "datepicker && datepicker.opened", "class.mat-accent": "datepicker && datepicker.color === \"accent\"", "class.mat-warn": "datepicker && datepicker.color === \"warn\"", "attr.data-mat-calendar": "datepicker ? datepicker.id : null" }, classAttribute: "mat-datepicker-toggle" }, queries: [{ propertyName: "_customIcon", first: true, predicate: MatDatepickerToggleIcon, descendants: true }], viewQueries: [{ propertyName: "_button", first: true, predicate: ["button"], descendants: true }], exportAs: ["matDatepickerToggle"], usesOnChanges: true, ngImport: i0, template: "<button\n #button\n mat-icon-button\n type=\"button\"\n [attr.aria-haspopup]=\"datepicker ? 'dialog' : null\"\n [attr.aria-label]=\"ariaLabel || _intl.openCalendarLabel\"\n [attr.tabindex]=\"disabled ? -1 : tabIndex\"\n [disabled]=\"disabled\"\n [disableRipple]=\"disableRipple\">\n\n <svg\n *ngIf=\"!_customIcon\"\n class=\"mat-datepicker-toggle-default-icon\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n height=\"24px\"\n fill=\"currentColor\"\n focusable=\"false\">\n <path d=\"M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z\"/>\n </svg>\n\n <ng-content select=\"[matDatepickerToggleIcon]\"></ng-content>\n</button>\n", styles: [".mat-form-field-appearance-legacy .mat-form-field-prefix .mat-datepicker-toggle-default-icon,.mat-form-field-appearance-legacy .mat-form-field-suffix .mat-datepicker-toggle-default-icon{width:1em}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-datepicker-toggle-default-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-datepicker-toggle-default-icon{display:block;width:1.5em;height:1.5em}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-datepicker-toggle-default-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-datepicker-toggle-default-icon{margin:auto}.cdk-high-contrast-active .mat-datepicker-toggle-default-icon{color:CanvasText}\n"], components: [{ type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2968
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerToggle, decorators: [{
3037
+ MatDatepickerToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerToggle, deps: [{ token: MatDatepickerIntl }, { token: i0.ChangeDetectorRef }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
3038
+ MatDatepickerToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: { datepicker: ["for", "datepicker"], tabIndex: "tabIndex", ariaLabel: ["aria-label", "ariaLabel"], disabled: "disabled", disableRipple: "disableRipple" }, host: { listeners: { "click": "_open($event)" }, properties: { "attr.tabindex": "null", "class.mat-datepicker-toggle-active": "datepicker && datepicker.opened", "class.mat-accent": "datepicker && datepicker.color === \"accent\"", "class.mat-warn": "datepicker && datepicker.color === \"warn\"", "attr.data-mat-calendar": "datepicker ? datepicker.id : null" }, classAttribute: "mat-datepicker-toggle" }, queries: [{ propertyName: "_customIcon", first: true, predicate: MatDatepickerToggleIcon, descendants: true }], viewQueries: [{ propertyName: "_button", first: true, predicate: ["button"], descendants: true }], exportAs: ["matDatepickerToggle"], usesOnChanges: true, ngImport: i0, template: "<button\n #button\n mat-icon-button\n type=\"button\"\n [attr.aria-haspopup]=\"datepicker ? 'dialog' : null\"\n [attr.aria-label]=\"ariaLabel || _intl.openCalendarLabel\"\n [attr.tabindex]=\"disabled ? -1 : tabIndex\"\n [disabled]=\"disabled\"\n [disableRipple]=\"disableRipple\">\n\n <svg\n *ngIf=\"!_customIcon\"\n class=\"mat-datepicker-toggle-default-icon\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n height=\"24px\"\n fill=\"currentColor\"\n focusable=\"false\">\n <path d=\"M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z\"/>\n </svg>\n\n <ng-content select=\"[matDatepickerToggleIcon]\"></ng-content>\n</button>\n", styles: [".mat-form-field-appearance-legacy .mat-form-field-prefix .mat-datepicker-toggle-default-icon,.mat-form-field-appearance-legacy .mat-form-field-suffix .mat-datepicker-toggle-default-icon{width:1em}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-datepicker-toggle-default-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-datepicker-toggle-default-icon{display:block;width:1.5em;height:1.5em}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-datepicker-toggle-default-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-datepicker-toggle-default-icon{margin:auto}.cdk-high-contrast-active .mat-datepicker-toggle-default-icon{color:CanvasText}\n"], components: [{ type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3039
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerToggle, decorators: [{
2969
3040
  type: Component,
2970
3041
  args: [{ selector: 'mat-datepicker-toggle', host: {
2971
3042
  'class': 'mat-datepicker-toggle',
@@ -3089,14 +3160,15 @@ class MatDateRangeInputPartBase extends MatDatepickerInputBase {
3089
3160
  }
3090
3161
  _assignValueProgrammatically(value) {
3091
3162
  super._assignValueProgrammatically(value);
3092
- const opposite = (this === this._rangeInput._startInput ? this._rangeInput._endInput :
3093
- this._rangeInput._startInput);
3163
+ const opposite = (this === this._rangeInput._startInput
3164
+ ? this._rangeInput._endInput
3165
+ : this._rangeInput._startInput);
3094
3166
  opposite?._validatorOnChange();
3095
3167
  }
3096
3168
  }
3097
- MatDateRangeInputPartBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateRangeInputPartBase, deps: [{ token: MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1$1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$2.NgForm, optional: true }, { token: i2$2.FormGroupDirective, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3098
- MatDateRangeInputPartBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDateRangeInputPartBase, usesInheritance: true, ngImport: i0 });
3099
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateRangeInputPartBase, decorators: [{
3169
+ MatDateRangeInputPartBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateRangeInputPartBase, deps: [{ token: MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1$1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$2.NgForm, optional: true }, { token: i2$2.FormGroupDirective, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3170
+ MatDateRangeInputPartBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDateRangeInputPartBase, usesInheritance: true, ngImport: i0 });
3171
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateRangeInputPartBase, decorators: [{
3100
3172
  type: Directive
3101
3173
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
3102
3174
  type: Inject,
@@ -3125,9 +3197,9 @@ class MatStartDate extends _MatDateRangeInputBase {
3125
3197
  this._startValidator = (control) => {
3126
3198
  const start = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(control.value));
3127
3199
  const end = this._model ? this._model.selection.end : null;
3128
- return (!start || !end ||
3129
- this._dateAdapter.compareDate(start, end) <= 0) ?
3130
- null : { 'matStartDateInvalid': { 'end': end, 'actual': start } };
3200
+ return !start || !end || this._dateAdapter.compareDate(start, end) <= 0
3201
+ ? null
3202
+ : { 'matStartDateInvalid': { 'end': end, 'actual': start } };
3131
3203
  };
3132
3204
  this._validator = Validators.compose([...super._getValidators(), this._startValidator]);
3133
3205
  }
@@ -3157,8 +3229,9 @@ class MatStartDate extends _MatDateRangeInputBase {
3157
3229
  return false;
3158
3230
  }
3159
3231
  else {
3160
- return !change.oldValue?.start ? !!change.selection.start :
3161
- !change.selection.start ||
3232
+ return !change.oldValue?.start
3233
+ ? !!change.selection.start
3234
+ : !change.selection.start ||
3162
3235
  !!this._dateAdapter.compareDate(change.oldValue.start, change.selection.start);
3163
3236
  }
3164
3237
  }
@@ -3180,12 +3253,12 @@ class MatStartDate extends _MatDateRangeInputBase {
3180
3253
  return value.length > 0 ? value : element.placeholder;
3181
3254
  }
3182
3255
  }
3183
- MatStartDate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatStartDate, deps: [{ token: MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1$1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$2.NgForm, optional: true }, { token: i2$2.FormGroupDirective, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3184
- MatStartDate.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatStartDate, selector: "input[matStartDate]", inputs: { errorStateMatcher: "errorStateMatcher" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { attributes: { "type": "text" }, listeners: { "input": "_onInput($event.target.value)", "change": "_onChange()", "keydown": "_onKeydown($event)", "blur": "_onBlur()" }, properties: { "disabled": "disabled", "attr.id": "_rangeInput.id", "attr.aria-haspopup": "_rangeInput.rangePicker ? \"dialog\" : null", "attr.aria-owns": "(_rangeInput.rangePicker?.opened && _rangeInput.rangePicker.id) || null", "attr.min": "_getMinDate() ? _dateAdapter.toIso8601(_getMinDate()) : null", "attr.max": "_getMaxDate() ? _dateAdapter.toIso8601(_getMaxDate()) : null" }, classAttribute: "mat-start-date mat-date-range-input-inner" }, providers: [
3256
+ MatStartDate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatStartDate, deps: [{ token: MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1$1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$2.NgForm, optional: true }, { token: i2$2.FormGroupDirective, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3257
+ MatStartDate.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatStartDate, selector: "input[matStartDate]", inputs: { errorStateMatcher: "errorStateMatcher" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { attributes: { "type": "text" }, listeners: { "input": "_onInput($event.target.value)", "change": "_onChange()", "keydown": "_onKeydown($event)", "blur": "_onBlur()" }, properties: { "disabled": "disabled", "attr.id": "_rangeInput.id", "attr.aria-haspopup": "_rangeInput.rangePicker ? \"dialog\" : null", "attr.aria-owns": "(_rangeInput.rangePicker?.opened && _rangeInput.rangePicker.id) || null", "attr.min": "_getMinDate() ? _dateAdapter.toIso8601(_getMinDate()) : null", "attr.max": "_getMaxDate() ? _dateAdapter.toIso8601(_getMaxDate()) : null" }, classAttribute: "mat-start-date mat-date-range-input-inner" }, providers: [
3185
3258
  { provide: NG_VALUE_ACCESSOR, useExisting: MatStartDate, multi: true },
3186
- { provide: NG_VALIDATORS, useExisting: MatStartDate, multi: true }
3259
+ { provide: NG_VALIDATORS, useExisting: MatStartDate, multi: true },
3187
3260
  ], usesInheritance: true, ngImport: i0 });
3188
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatStartDate, decorators: [{
3261
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatStartDate, decorators: [{
3189
3262
  type: Directive,
3190
3263
  args: [{
3191
3264
  selector: 'input[matStartDate]',
@@ -3205,12 +3278,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
3205
3278
  },
3206
3279
  providers: [
3207
3280
  { provide: NG_VALUE_ACCESSOR, useExisting: MatStartDate, multi: true },
3208
- { provide: NG_VALIDATORS, useExisting: MatStartDate, multi: true }
3281
+ { provide: NG_VALIDATORS, useExisting: MatStartDate, multi: true },
3209
3282
  ],
3210
3283
  // These need to be specified explicitly, because some tooling doesn't
3211
3284
  // seem to pick them up from the base class. See #20932.
3212
3285
  outputs: ['dateChange', 'dateInput'],
3213
- inputs: ['errorStateMatcher']
3286
+ inputs: ['errorStateMatcher'],
3214
3287
  }]
3215
3288
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
3216
3289
  type: Inject,
@@ -3238,9 +3311,9 @@ class MatEndDate extends _MatDateRangeInputBase {
3238
3311
  this._endValidator = (control) => {
3239
3312
  const end = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(control.value));
3240
3313
  const start = this._model ? this._model.selection.start : null;
3241
- return (!end || !start ||
3242
- this._dateAdapter.compareDate(end, start) >= 0) ?
3243
- null : { 'matEndDateInvalid': { 'start': start, 'actual': end } };
3314
+ return !end || !start || this._dateAdapter.compareDate(end, start) >= 0
3315
+ ? null
3316
+ : { 'matEndDateInvalid': { 'start': start, 'actual': end } };
3244
3317
  };
3245
3318
  this._validator = Validators.compose([...super._getValidators(), this._endValidator]);
3246
3319
  }
@@ -3270,8 +3343,9 @@ class MatEndDate extends _MatDateRangeInputBase {
3270
3343
  return false;
3271
3344
  }
3272
3345
  else {
3273
- return !change.oldValue?.end ? !!change.selection.end :
3274
- !change.selection.end ||
3346
+ return !change.oldValue?.end
3347
+ ? !!change.selection.end
3348
+ : !change.selection.end ||
3275
3349
  !!this._dateAdapter.compareDate(change.oldValue.end, change.selection.end);
3276
3350
  }
3277
3351
  }
@@ -3289,12 +3363,12 @@ class MatEndDate extends _MatDateRangeInputBase {
3289
3363
  super._onKeydown(event);
3290
3364
  }
3291
3365
  }
3292
- MatEndDate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatEndDate, deps: [{ token: MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1$1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$2.NgForm, optional: true }, { token: i2$2.FormGroupDirective, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3293
- MatEndDate.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatEndDate, selector: "input[matEndDate]", inputs: { errorStateMatcher: "errorStateMatcher" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { attributes: { "type": "text" }, listeners: { "input": "_onInput($event.target.value)", "change": "_onChange()", "keydown": "_onKeydown($event)", "blur": "_onBlur()" }, properties: { "disabled": "disabled", "attr.aria-haspopup": "_rangeInput.rangePicker ? \"dialog\" : null", "attr.aria-owns": "(_rangeInput.rangePicker?.opened && _rangeInput.rangePicker.id) || null", "attr.min": "_getMinDate() ? _dateAdapter.toIso8601(_getMinDate()) : null", "attr.max": "_getMaxDate() ? _dateAdapter.toIso8601(_getMaxDate()) : null" }, classAttribute: "mat-end-date mat-date-range-input-inner" }, providers: [
3366
+ MatEndDate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatEndDate, deps: [{ token: MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1$1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$2.NgForm, optional: true }, { token: i2$2.FormGroupDirective, optional: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3367
+ MatEndDate.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatEndDate, selector: "input[matEndDate]", inputs: { errorStateMatcher: "errorStateMatcher" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { attributes: { "type": "text" }, listeners: { "input": "_onInput($event.target.value)", "change": "_onChange()", "keydown": "_onKeydown($event)", "blur": "_onBlur()" }, properties: { "disabled": "disabled", "attr.aria-haspopup": "_rangeInput.rangePicker ? \"dialog\" : null", "attr.aria-owns": "(_rangeInput.rangePicker?.opened && _rangeInput.rangePicker.id) || null", "attr.min": "_getMinDate() ? _dateAdapter.toIso8601(_getMinDate()) : null", "attr.max": "_getMaxDate() ? _dateAdapter.toIso8601(_getMaxDate()) : null" }, classAttribute: "mat-end-date mat-date-range-input-inner" }, providers: [
3294
3368
  { provide: NG_VALUE_ACCESSOR, useExisting: MatEndDate, multi: true },
3295
- { provide: NG_VALIDATORS, useExisting: MatEndDate, multi: true }
3369
+ { provide: NG_VALIDATORS, useExisting: MatEndDate, multi: true },
3296
3370
  ], usesInheritance: true, ngImport: i0 });
3297
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatEndDate, decorators: [{
3371
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatEndDate, decorators: [{
3298
3372
  type: Directive,
3299
3373
  args: [{
3300
3374
  selector: 'input[matEndDate]',
@@ -3313,12 +3387,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
3313
3387
  },
3314
3388
  providers: [
3315
3389
  { provide: NG_VALUE_ACCESSOR, useExisting: MatEndDate, multi: true },
3316
- { provide: NG_VALIDATORS, useExisting: MatEndDate, multi: true }
3390
+ { provide: NG_VALIDATORS, useExisting: MatEndDate, multi: true },
3317
3391
  ],
3318
3392
  // These need to be specified explicitly, because some tooling doesn't
3319
3393
  // seem to pick them up from the base class. See #20932.
3320
3394
  outputs: ['dateChange', 'dateInput'],
3321
- inputs: ['errorStateMatcher']
3395
+ inputs: ['errorStateMatcher'],
3322
3396
  }]
3323
3397
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
3324
3398
  type: Inject,
@@ -3397,10 +3471,12 @@ class MatDateRangeInput {
3397
3471
  get placeholder() {
3398
3472
  const start = this._startInput?._getPlaceholder() || '';
3399
3473
  const end = this._endInput?._getPlaceholder() || '';
3400
- return (start || end) ? `${start} ${this.separator} ${end}` : '';
3474
+ return start || end ? `${start} ${this.separator} ${end}` : '';
3401
3475
  }
3402
3476
  /** The range picker that this input is associated with. */
3403
- get rangePicker() { return this._rangePicker; }
3477
+ get rangePicker() {
3478
+ return this._rangePicker;
3479
+ }
3404
3480
  set rangePicker(rangePicker) {
3405
3481
  if (rangePicker) {
3406
3482
  this._model = rangePicker.registerInput(this);
@@ -3414,12 +3490,16 @@ class MatDateRangeInput {
3414
3490
  }
3415
3491
  }
3416
3492
  /** Whether the input is required. */
3417
- get required() { return !!this._required; }
3493
+ get required() {
3494
+ return !!this._required;
3495
+ }
3418
3496
  set required(value) {
3419
3497
  this._required = coerceBooleanProperty(value);
3420
3498
  }
3421
3499
  /** Function that can be used to filter out dates within the date range picker. */
3422
- get dateFilter() { return this._dateFilter; }
3500
+ get dateFilter() {
3501
+ return this._dateFilter;
3502
+ }
3423
3503
  set dateFilter(value) {
3424
3504
  const start = this._startInput;
3425
3505
  const end = this._endInput;
@@ -3434,7 +3514,9 @@ class MatDateRangeInput {
3434
3514
  }
3435
3515
  }
3436
3516
  /** The minimum valid date. */
3437
- get min() { return this._min; }
3517
+ get min() {
3518
+ return this._min;
3519
+ }
3438
3520
  set min(value) {
3439
3521
  const validValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
3440
3522
  if (!this._dateAdapter.sameDate(validValue, this._min)) {
@@ -3443,7 +3525,9 @@ class MatDateRangeInput {
3443
3525
  }
3444
3526
  }
3445
3527
  /** The maximum valid date. */
3446
- get max() { return this._max; }
3528
+ get max() {
3529
+ return this._max;
3530
+ }
3447
3531
  set max(value) {
3448
3532
  const validValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
3449
3533
  if (!this._dateAdapter.sameDate(validValue, this._max)) {
@@ -3453,9 +3537,9 @@ class MatDateRangeInput {
3453
3537
  }
3454
3538
  /** Whether the input is disabled. */
3455
3539
  get disabled() {
3456
- return (this._startInput && this._endInput) ?
3457
- (this._startInput.disabled && this._endInput.disabled) :
3458
- this._groupDisabled;
3540
+ return this._startInput && this._endInput
3541
+ ? this._startInput.disabled && this._endInput.disabled
3542
+ : this._groupDisabled;
3459
3543
  }
3460
3544
  set disabled(value) {
3461
3545
  const newValue = coerceBooleanProperty(value);
@@ -3562,8 +3646,9 @@ class MatDateRangeInput {
3562
3646
  }
3563
3647
  /** Whether the separate text should be hidden. */
3564
3648
  _shouldHideSeparator() {
3565
- return (!this._formField || (this._formField.getLabelId() &&
3566
- !this._formField._shouldLabelFloat())) && this.empty;
3649
+ return ((!this._formField ||
3650
+ (this._formField.getLabelId() && !this._formField._shouldLabelFloat())) &&
3651
+ this.empty);
3567
3652
  }
3568
3653
  /** Gets the value for the `aria-labelledby` attribute of the inputs. */
3569
3654
  _getAriaLabelledby() {
@@ -3594,12 +3679,12 @@ class MatDateRangeInput {
3594
3679
  }
3595
3680
  }
3596
3681
  }
3597
- MatDateRangeInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateRangeInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i2$2.ControlContainer, optional: true, self: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Component });
3598
- MatDateRangeInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDateRangeInput, selector: "mat-date-range-input", inputs: { rangePicker: "rangePicker", required: "required", dateFilter: "dateFilter", min: "min", max: "max", disabled: "disabled", separator: "separator", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, host: { attributes: { "role": "group" }, properties: { "class.mat-date-range-input-hide-placeholders": "_shouldHidePlaceholders()", "class.mat-date-range-input-required": "required", "attr.id": "null", "attr.aria-labelledby": "_getAriaLabelledby()", "attr.aria-describedby": "_ariaDescribedBy", "attr.data-mat-calendar": "rangePicker ? rangePicker.id : null" }, classAttribute: "mat-date-range-input" }, providers: [
3682
+ MatDateRangeInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateRangeInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i2$2.ControlContainer, optional: true, self: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Component });
3683
+ MatDateRangeInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDateRangeInput, selector: "mat-date-range-input", inputs: { rangePicker: "rangePicker", required: "required", dateFilter: "dateFilter", min: "min", max: "max", disabled: "disabled", separator: "separator", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, host: { attributes: { "role": "group" }, properties: { "class.mat-date-range-input-hide-placeholders": "_shouldHidePlaceholders()", "class.mat-date-range-input-required": "required", "attr.id": "null", "attr.aria-labelledby": "_getAriaLabelledby()", "attr.aria-describedby": "_ariaDescribedBy", "attr.data-mat-calendar": "rangePicker ? rangePicker.id : null" }, classAttribute: "mat-date-range-input" }, providers: [
3599
3684
  { provide: MatFormFieldControl, useExisting: MatDateRangeInput },
3600
3685
  { provide: MAT_DATE_RANGE_INPUT_PARENT, useExisting: MatDateRangeInput },
3601
3686
  ], queries: [{ propertyName: "_startInput", first: true, predicate: MatStartDate, descendants: true }, { propertyName: "_endInput", first: true, predicate: MatEndDate, descendants: true }], exportAs: ["matDateRangeInput"], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"mat-date-range-input-container\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"_updateFocus($event)\">\n <div class=\"mat-date-range-input-start-wrapper\">\n <ng-content select=\"input[matStartDate]\"></ng-content>\n <span\n class=\"mat-date-range-input-mirror\"\n aria-hidden=\"true\">{{_getInputMirrorValue()}}</span>\n </div>\n\n <span\n class=\"mat-date-range-input-separator\"\n [class.mat-date-range-input-separator-hidden]=\"_shouldHideSeparator()\">{{separator}}</span>\n\n <div class=\"mat-date-range-input-end-wrapper\">\n <ng-content select=\"input[matEndDate]\"></ng-content>\n </div>\n</div>\n\n", styles: [".mat-date-range-input{display:block;width:100%}.mat-date-range-input-container{display:flex;align-items:center}.mat-date-range-input-separator{transition:opacity 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);margin:0 4px}.mat-date-range-input-separator-hidden{-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:0;transition:none}.mat-date-range-input-inner{font:inherit;background:transparent;color:currentColor;border:none;outline:none;padding:0;margin:0;vertical-align:bottom;text-align:inherit;-webkit-appearance:none;width:100%}.mat-date-range-input-inner:-moz-ui-invalid{box-shadow:none}.mat-date-range-input-inner::placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner::-moz-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner::-webkit-input-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner:-ms-input-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{-webkit-user-select:none;-moz-user-select:none;user-select:none;color:transparent !important;-webkit-text-fill-color:transparent;transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{-webkit-user-select:none;-moz-user-select:none;user-select:none;color:transparent !important;-webkit-text-fill-color:transparent;transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{-webkit-user-select:none;-moz-user-select:none;user-select:none;color:transparent !important;-webkit-text-fill-color:transparent;transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{-webkit-user-select:none;-moz-user-select:none;user-select:none;color:transparent !important;-webkit-text-fill-color:transparent;transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{opacity:0}.mat-date-range-input-mirror{-webkit-user-select:none;-moz-user-select:none;user-select:none;visibility:hidden;white-space:nowrap;display:inline-block;min-width:2px}.mat-date-range-input-start-wrapper{position:relative;overflow:hidden;max-width:calc(50% - 4px)}.mat-date-range-input-start-wrapper .mat-date-range-input-inner{position:absolute;top:0;left:0}.mat-date-range-input-end-wrapper{flex-grow:1;max-width:calc(50% - 4px)}.mat-form-field-type-mat-date-range-input .mat-form-field-infix{width:200px}\n"], directives: [{ type: i4.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3602
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateRangeInput, decorators: [{
3687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateRangeInput, decorators: [{
3603
3688
  type: Component,
3604
3689
  args: [{ selector: 'mat-date-range-input', exportAs: 'matDateRangeInput', host: {
3605
3690
  'class': 'mat-date-range-input',
@@ -3674,13 +3759,13 @@ class MatDateRangePicker extends MatDatepickerBase {
3674
3759
  }
3675
3760
  }
3676
3761
  }
3677
- MatDateRangePicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateRangePicker, deps: null, target: i0.ɵɵFactoryTarget.Component });
3678
- MatDateRangePicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDateRangePicker, selector: "mat-date-range-picker", providers: [
3762
+ MatDateRangePicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateRangePicker, deps: null, target: i0.ɵɵFactoryTarget.Component });
3763
+ MatDateRangePicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDateRangePicker, selector: "mat-date-range-picker", providers: [
3679
3764
  MAT_RANGE_DATE_SELECTION_MODEL_PROVIDER,
3680
3765
  MAT_CALENDAR_RANGE_STRATEGY_PROVIDER,
3681
3766
  { provide: MatDatepickerBase, useExisting: MatDateRangePicker },
3682
3767
  ], exportAs: ["matDateRangePicker"], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3683
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDateRangePicker, decorators: [{
3768
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDateRangePicker, decorators: [{
3684
3769
  type: Component,
3685
3770
  args: [{
3686
3771
  selector: 'mat-date-range-picker',
@@ -3692,7 +3777,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
3692
3777
  MAT_RANGE_DATE_SELECTION_MODEL_PROVIDER,
3693
3778
  MAT_CALENDAR_RANGE_STRATEGY_PROVIDER,
3694
3779
  { provide: MatDatepickerBase, useExisting: MatDateRangePicker },
3695
- ]
3780
+ ],
3696
3781
  }]
3697
3782
  }] });
3698
3783
 
@@ -3713,13 +3798,13 @@ class MatDatepickerApply {
3713
3798
  this._datepicker.close();
3714
3799
  }
3715
3800
  }
3716
- MatDatepickerApply.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerApply, deps: [{ token: MatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
3717
- MatDatepickerApply.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerApply, selector: "[matDatepickerApply], [matDateRangePickerApply]", host: { listeners: { "click": "_applySelection()" } }, ngImport: i0 });
3718
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerApply, decorators: [{
3801
+ MatDatepickerApply.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerApply, deps: [{ token: MatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
3802
+ MatDatepickerApply.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerApply, selector: "[matDatepickerApply], [matDateRangePickerApply]", host: { listeners: { "click": "_applySelection()" } }, ngImport: i0 });
3803
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerApply, decorators: [{
3719
3804
  type: Directive,
3720
3805
  args: [{
3721
3806
  selector: '[matDatepickerApply], [matDateRangePickerApply]',
3722
- host: { '(click)': '_applySelection()' }
3807
+ host: { '(click)': '_applySelection()' },
3723
3808
  }]
3724
3809
  }], ctorParameters: function () { return [{ type: MatDatepickerBase }]; } });
3725
3810
  /** Button that will close the datepicker and discard the current selection. */
@@ -3728,13 +3813,13 @@ class MatDatepickerCancel {
3728
3813
  this._datepicker = _datepicker;
3729
3814
  }
3730
3815
  }
3731
- MatDatepickerCancel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerCancel, deps: [{ token: MatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
3732
- MatDatepickerCancel.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerCancel, selector: "[matDatepickerCancel], [matDateRangePickerCancel]", host: { listeners: { "click": "_datepicker.close()" } }, ngImport: i0 });
3733
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerCancel, decorators: [{
3816
+ MatDatepickerCancel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerCancel, deps: [{ token: MatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
3817
+ MatDatepickerCancel.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerCancel, selector: "[matDatepickerCancel], [matDateRangePickerCancel]", host: { listeners: { "click": "_datepicker.close()" } }, ngImport: i0 });
3818
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerCancel, decorators: [{
3734
3819
  type: Directive,
3735
3820
  args: [{
3736
3821
  selector: '[matDatepickerCancel], [matDateRangePickerCancel]',
3737
- host: { '(click)': '_datepicker.close()' }
3822
+ host: { '(click)': '_datepicker.close()' },
3738
3823
  }]
3739
3824
  }], ctorParameters: function () { return [{ type: MatDatepickerBase }]; } });
3740
3825
  /**
@@ -3758,15 +3843,15 @@ class MatDatepickerActions {
3758
3843
  }
3759
3844
  }
3760
3845
  }
3761
- MatDatepickerActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerActions, deps: [{ token: MatDatepickerBase }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
3762
- MatDatepickerActions.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions", viewQueries: [{ propertyName: "_template", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: `
3846
+ MatDatepickerActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerActions, deps: [{ token: MatDatepickerBase }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
3847
+ MatDatepickerActions.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions", viewQueries: [{ propertyName: "_template", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: `
3763
3848
  <ng-template>
3764
3849
  <div class="mat-datepicker-actions">
3765
3850
  <ng-content></ng-content>
3766
3851
  </div>
3767
3852
  </ng-template>
3768
3853
  `, isInline: true, styles: [".mat-datepicker-actions{display:flex;justify-content:flex-end;align-items:center;padding:0 8px 8px 8px}.mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:8px}[dir=rtl] .mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:0;margin-right:8px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3769
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerActions, decorators: [{
3854
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerActions, decorators: [{
3770
3855
  type: Component,
3771
3856
  args: [{ selector: 'mat-datepicker-actions, mat-date-range-picker-actions', template: `
3772
3857
  <ng-template>
@@ -3789,8 +3874,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
3789
3874
  */
3790
3875
  class MatDatepickerModule {
3791
3876
  }
3792
- MatDatepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3793
- MatDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerModule, declarations: [MatCalendar,
3877
+ MatDatepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3878
+ MatDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerModule, declarations: [MatCalendar,
3794
3879
  MatCalendarBody,
3795
3880
  MatDatepicker,
3796
3881
  MatDatepickerContent,
@@ -3831,10 +3916,7 @@ MatDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", ver
3831
3916
  MatDatepickerActions,
3832
3917
  MatDatepickerCancel,
3833
3918
  MatDatepickerApply] });
3834
- MatDatepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerModule, providers: [
3835
- MatDatepickerIntl,
3836
- MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER
3837
- ], imports: [[
3919
+ MatDatepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerModule, providers: [MatDatepickerIntl, MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [[
3838
3920
  CommonModule,
3839
3921
  MatButtonModule,
3840
3922
  OverlayModule,
@@ -3842,7 +3924,7 @@ MatDatepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ver
3842
3924
  PortalModule,
3843
3925
  MatCommonModule,
3844
3926
  ], CdkScrollableModule] });
3845
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatDatepickerModule, decorators: [{
3927
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatDatepickerModule, decorators: [{
3846
3928
  type: NgModule,
3847
3929
  args: [{
3848
3930
  imports: [
@@ -3872,7 +3954,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
3872
3954
  MatDateRangePicker,
3873
3955
  MatDatepickerActions,
3874
3956
  MatDatepickerCancel,
3875
- MatDatepickerApply
3957
+ MatDatepickerApply,
3876
3958
  ],
3877
3959
  declarations: [
3878
3960
  MatCalendar,
@@ -3892,16 +3974,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
3892
3974
  MatDateRangePicker,
3893
3975
  MatDatepickerActions,
3894
3976
  MatDatepickerCancel,
3895
- MatDatepickerApply
3896
- ],
3897
- providers: [
3898
- MatDatepickerIntl,
3899
- MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER
3977
+ MatDatepickerApply,
3900
3978
  ],
3901
- entryComponents: [
3902
- MatDatepickerContent,
3903
- MatCalendarHeader,
3904
- ]
3979
+ providers: [MatDatepickerIntl, MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER],
3980
+ entryComponents: [MatDatepickerContent, MatCalendarHeader],
3905
3981
  }]
3906
3982
  }] });
3907
3983
 
@@ -3913,6 +3989,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
3913
3989
  * found in the LICENSE file at https://angular.io/license
3914
3990
  */
3915
3991
 
3992
+ /**
3993
+ * @license
3994
+ * Copyright Google LLC All Rights Reserved.
3995
+ *
3996
+ * Use of this source code is governed by an MIT-style license that can be
3997
+ * found in the LICENSE file at https://angular.io/license
3998
+ */
3999
+
3916
4000
  /**
3917
4001
  * Generated bundle index. Do not edit.
3918
4002
  */