@angular/material 9.2.0 → 9.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (365) hide show
  1. package/_theming.scss +19 -4
  2. package/autocomplete/index.metadata.json +1 -1
  3. package/autocomplete/testing/autocomplete-harness.d.ts +4 -1
  4. package/badge/index.metadata.json +1 -1
  5. package/bottom-sheet/bottom-sheet.d.ts +2 -1
  6. package/bundles/material-autocomplete-testing.umd.js +55 -8
  7. package/bundles/material-autocomplete-testing.umd.js.map +1 -1
  8. package/bundles/material-autocomplete-testing.umd.min.js +4 -5
  9. package/bundles/material-autocomplete-testing.umd.min.js.map +1 -1
  10. package/bundles/material-autocomplete.umd.js +28 -27
  11. package/bundles/material-autocomplete.umd.js.map +1 -1
  12. package/bundles/material-autocomplete.umd.min.js +5 -5
  13. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  14. package/bundles/material-badge.umd.js +1 -1
  15. package/bundles/material-badge.umd.js.map +1 -1
  16. package/bundles/material-badge.umd.min.js +1 -1
  17. package/bundles/material-badge.umd.min.js.map +1 -1
  18. package/bundles/material-bottom-sheet.umd.js +3 -2
  19. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  20. package/bundles/material-bottom-sheet.umd.min.js +1 -1
  21. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  22. package/bundles/material-button-toggle.umd.js +16 -6
  23. package/bundles/material-button-toggle.umd.js.map +1 -1
  24. package/bundles/material-button-toggle.umd.min.js +3 -3
  25. package/bundles/material-button-toggle.umd.min.js.map +1 -1
  26. package/bundles/material-chips.umd.js +19 -3
  27. package/bundles/material-chips.umd.js.map +1 -1
  28. package/bundles/material-chips.umd.min.js +4 -4
  29. package/bundles/material-chips.umd.min.js.map +1 -1
  30. package/bundles/material-core.umd.js +95 -71
  31. package/bundles/material-core.umd.js.map +1 -1
  32. package/bundles/material-core.umd.min.js +9 -9
  33. package/bundles/material-core.umd.min.js.map +1 -1
  34. package/bundles/material-datepicker.umd.js +23 -10
  35. package/bundles/material-datepicker.umd.js.map +1 -1
  36. package/bundles/material-datepicker.umd.min.js +7 -7
  37. package/bundles/material-datepicker.umd.min.js.map +1 -1
  38. package/bundles/material-dialog.umd.js +46 -27
  39. package/bundles/material-dialog.umd.js.map +1 -1
  40. package/bundles/material-dialog.umd.min.js +6 -6
  41. package/bundles/material-dialog.umd.min.js.map +1 -1
  42. package/bundles/material-expansion.umd.js +3 -3
  43. package/bundles/material-expansion.umd.js.map +1 -1
  44. package/bundles/material-expansion.umd.min.js +1 -1
  45. package/bundles/material-expansion.umd.min.js.map +1 -1
  46. package/bundles/material-form-field.umd.js +6 -4
  47. package/bundles/material-form-field.umd.js.map +1 -1
  48. package/bundles/material-form-field.umd.min.js +3 -3
  49. package/bundles/material-form-field.umd.min.js.map +1 -1
  50. package/bundles/material-icon.umd.js +9 -5
  51. package/bundles/material-icon.umd.js.map +1 -1
  52. package/bundles/material-icon.umd.min.js +3 -3
  53. package/bundles/material-icon.umd.min.js.map +1 -1
  54. package/bundles/material-input.umd.js +18 -14
  55. package/bundles/material-input.umd.js.map +1 -1
  56. package/bundles/material-input.umd.min.js +1 -1
  57. package/bundles/material-input.umd.min.js.map +1 -1
  58. package/bundles/material-list.umd.js +4 -4
  59. package/bundles/material-list.umd.js.map +1 -1
  60. package/bundles/material-list.umd.min.js +2 -2
  61. package/bundles/material-list.umd.min.js.map +1 -1
  62. package/bundles/material-menu.umd.js +5 -5
  63. package/bundles/material-menu.umd.js.map +1 -1
  64. package/bundles/material-menu.umd.min.js +6 -6
  65. package/bundles/material-menu.umd.min.js.map +1 -1
  66. package/bundles/material-radio.umd.js +62 -47
  67. package/bundles/material-radio.umd.js.map +1 -1
  68. package/bundles/material-radio.umd.min.js +10 -2
  69. package/bundles/material-radio.umd.min.js.map +1 -1
  70. package/bundles/material-select-testing.umd.js +45 -10
  71. package/bundles/material-select-testing.umd.js.map +1 -1
  72. package/bundles/material-select-testing.umd.min.js +2 -3
  73. package/bundles/material-select-testing.umd.min.js.map +1 -1
  74. package/bundles/material-select.umd.js +23 -14
  75. package/bundles/material-select.umd.js.map +1 -1
  76. package/bundles/material-select.umd.min.js +3 -3
  77. package/bundles/material-select.umd.min.js.map +1 -1
  78. package/bundles/material-sidenav.umd.js +2 -1
  79. package/bundles/material-sidenav.umd.js.map +1 -1
  80. package/bundles/material-sidenav.umd.min.js +2 -2
  81. package/bundles/material-sidenav.umd.min.js.map +1 -1
  82. package/bundles/material-slider.umd.js +14 -12
  83. package/bundles/material-slider.umd.js.map +1 -1
  84. package/bundles/material-slider.umd.min.js +1 -1
  85. package/bundles/material-slider.umd.min.js.map +1 -1
  86. package/bundles/material-table.umd.js +1 -1
  87. package/bundles/material-table.umd.js.map +1 -1
  88. package/bundles/material-table.umd.min.js +1 -1
  89. package/bundles/material-table.umd.min.js.map +1 -1
  90. package/bundles/material-tabs.umd.js +9 -6
  91. package/bundles/material-tabs.umd.js.map +1 -1
  92. package/bundles/material-tabs.umd.min.js +1 -1
  93. package/bundles/material-tabs.umd.min.js.map +1 -1
  94. package/bundles/material-tooltip.umd.js +5 -5
  95. package/bundles/material-tooltip.umd.js.map +1 -1
  96. package/bundles/material-tooltip.umd.min.js +3 -3
  97. package/bundles/material-tooltip.umd.min.js.map +1 -1
  98. package/bundles/material-tree.umd.js +1 -1
  99. package/bundles/material-tree.umd.js.map +1 -1
  100. package/bundles/material-tree.umd.min.js +1 -1
  101. package/bundles/material-tree.umd.min.js.map +1 -1
  102. package/button-toggle/index.metadata.json +1 -1
  103. package/chips/chip.d.ts +10 -3
  104. package/chips/index.metadata.json +1 -1
  105. package/core/index.metadata.json +1 -1
  106. package/core/ripple/ripple-renderer.d.ts +10 -3
  107. package/core/ripple/ripple.d.ts +2 -1
  108. package/datepicker/datepicker-input.d.ts +5 -2
  109. package/datepicker/index.metadata.json +1 -1
  110. package/dialog/dialog-container.d.ts +9 -2
  111. package/dialog/dialog-ref.d.ts +5 -0
  112. package/dialog/index.metadata.json +1 -1
  113. package/esm2015/autocomplete/autocomplete-module.js +3 -1
  114. package/esm2015/autocomplete/autocomplete-trigger.js +25 -24
  115. package/esm2015/autocomplete/testing/autocomplete-harness.js +18 -7
  116. package/esm2015/badge/badge-module.js +2 -2
  117. package/esm2015/bottom-sheet/bottom-sheet.js +5 -3
  118. package/esm2015/button-toggle/button-toggle.js +18 -7
  119. package/esm2015/chips/chip-list.js +5 -2
  120. package/esm2015/chips/chip.js +34 -4
  121. package/esm2015/core/common-behaviors/common-module.js +1 -1
  122. package/esm2015/core/ripple/ripple-renderer.js +140 -119
  123. package/esm2015/core/ripple/ripple.js +10 -7
  124. package/esm2015/core/version.js +1 -1
  125. package/esm2015/datepicker/calendar-body.js +3 -3
  126. package/esm2015/datepicker/calendar.js +3 -3
  127. package/esm2015/datepicker/datepicker-input.js +17 -2
  128. package/esm2015/datepicker/datepicker-module.js +3 -1
  129. package/esm2015/datepicker/datepicker.js +8 -2
  130. package/esm2015/dialog/dialog-container.js +37 -17
  131. package/esm2015/dialog/dialog-ref.js +24 -6
  132. package/esm2015/dialog/dialog.js +1 -12
  133. package/esm2015/expansion/expansion-panel-header.js +3 -3
  134. package/esm2015/expansion/expansion-panel.js +1 -1
  135. package/esm2015/form-field/form-field-module.js +5 -2
  136. package/esm2015/icon/icon.js +15 -2
  137. package/esm2015/input/input.js +26 -23
  138. package/esm2015/list/selection-list.js +8 -6
  139. package/esm2015/menu/menu-module.js +3 -2
  140. package/esm2015/radio/public-api.js +2 -2
  141. package/esm2015/radio/radio.js +70 -59
  142. package/esm2015/select/select-module.js +10 -2
  143. package/esm2015/select/select.js +12 -10
  144. package/esm2015/select/testing/select-harness.js +11 -6
  145. package/esm2015/sidenav/sidenav-module.js +4 -3
  146. package/esm2015/slider/slider.js +17 -15
  147. package/esm2015/snack-bar/snack-bar.js +1 -1
  148. package/esm2015/table/table-module.js +2 -2
  149. package/esm2015/tabs/paginated-tab-header.js +7 -4
  150. package/esm2015/tabs/tab-header.js +1 -1
  151. package/esm2015/tabs/tab-nav-bar/tab-nav-bar.js +3 -3
  152. package/esm2015/tooltip/tooltip-module.js +3 -2
  153. package/esm2015/tree/tree-module.js +2 -2
  154. package/esm5/autocomplete/autocomplete-module.js +3 -1
  155. package/esm5/autocomplete/autocomplete-trigger.js +24 -24
  156. package/esm5/autocomplete/testing/autocomplete-harness.js +56 -9
  157. package/esm5/badge/badge-module.js +2 -2
  158. package/esm5/bottom-sheet/bottom-sheet.js +4 -3
  159. package/esm5/button-toggle/button-toggle.js +17 -7
  160. package/esm5/chips/chip-list.js +5 -2
  161. package/esm5/chips/chip.js +17 -4
  162. package/esm5/core/common-behaviors/common-module.js +1 -1
  163. package/esm5/core/ripple/ripple-renderer.js +91 -65
  164. package/esm5/core/ripple/ripple.js +4 -6
  165. package/esm5/core/version.js +1 -1
  166. package/esm5/datepicker/calendar-body.js +3 -3
  167. package/esm5/datepicker/calendar.js +3 -3
  168. package/esm5/datepicker/datepicker-input.js +8 -2
  169. package/esm5/datepicker/datepicker-module.js +3 -1
  170. package/esm5/datepicker/datepicker.js +8 -2
  171. package/esm5/dialog/dialog-container.js +29 -15
  172. package/esm5/dialog/dialog-ref.js +19 -6
  173. package/esm5/dialog/dialog.js +1 -9
  174. package/esm5/expansion/expansion-panel-header.js +3 -3
  175. package/esm5/expansion/expansion-panel.js +1 -1
  176. package/esm5/form-field/form-field-module.js +5 -2
  177. package/esm5/icon/icon.js +7 -2
  178. package/esm5/input/input.js +20 -16
  179. package/esm5/list/selection-list.js +5 -5
  180. package/esm5/menu/menu-module.js +3 -2
  181. package/esm5/radio/radio.js +63 -48
  182. package/esm5/select/select-module.js +10 -2
  183. package/esm5/select/select.js +12 -10
  184. package/esm5/select/testing/select-harness.js +46 -11
  185. package/esm5/sidenav/sidenav-module.js +4 -3
  186. package/esm5/slider/slider.js +15 -13
  187. package/esm5/table/table-module.js +2 -2
  188. package/esm5/tabs/paginated-tab-header.js +7 -4
  189. package/esm5/tabs/tab-header.js +1 -1
  190. package/esm5/tabs/tab-nav-bar/tab-nav-bar.js +3 -3
  191. package/esm5/tooltip/tooltip-module.js +3 -2
  192. package/esm5/tree/tree-module.js +2 -2
  193. package/expansion/index.metadata.json +1 -1
  194. package/fesm2015/autocomplete/testing.js +17 -6
  195. package/fesm2015/autocomplete/testing.js.map +1 -1
  196. package/fesm2015/autocomplete.js +26 -24
  197. package/fesm2015/autocomplete.js.map +1 -1
  198. package/fesm2015/badge.js +1 -1
  199. package/fesm2015/badge.js.map +1 -1
  200. package/fesm2015/bottom-sheet.js +4 -2
  201. package/fesm2015/bottom-sheet.js.map +1 -1
  202. package/fesm2015/button-toggle.js +17 -6
  203. package/fesm2015/button-toggle.js.map +1 -1
  204. package/fesm2015/chips.js +37 -4
  205. package/fesm2015/chips.js.map +1 -1
  206. package/fesm2015/core.js +150 -126
  207. package/fesm2015/core.js.map +1 -1
  208. package/fesm2015/datepicker.js +29 -6
  209. package/fesm2015/datepicker.js.map +1 -1
  210. package/fesm2015/dialog.js +59 -32
  211. package/fesm2015/dialog.js.map +1 -1
  212. package/fesm2015/expansion.js +3 -3
  213. package/fesm2015/expansion.js.map +1 -1
  214. package/fesm2015/form-field.js +4 -2
  215. package/fesm2015/form-field.js.map +1 -1
  216. package/fesm2015/icon.js +14 -2
  217. package/fesm2015/icon.js.map +1 -1
  218. package/fesm2015/input.js +25 -22
  219. package/fesm2015/input.js.map +1 -1
  220. package/fesm2015/list.js +7 -5
  221. package/fesm2015/list.js.map +1 -1
  222. package/fesm2015/menu.js +2 -1
  223. package/fesm2015/menu.js.map +1 -1
  224. package/fesm2015/radio.js +71 -60
  225. package/fesm2015/radio.js.map +1 -1
  226. package/fesm2015/select/testing.js +10 -5
  227. package/fesm2015/select/testing.js.map +1 -1
  228. package/fesm2015/select.js +20 -11
  229. package/fesm2015/select.js.map +1 -1
  230. package/fesm2015/sidenav.js +3 -2
  231. package/fesm2015/sidenav.js.map +1 -1
  232. package/fesm2015/slider.js +16 -14
  233. package/fesm2015/slider.js.map +1 -1
  234. package/fesm2015/table.js +1 -1
  235. package/fesm2015/table.js.map +1 -1
  236. package/fesm2015/tabs.js +9 -6
  237. package/fesm2015/tabs.js.map +1 -1
  238. package/fesm2015/tooltip.js +2 -2
  239. package/fesm2015/tooltip.js.map +1 -1
  240. package/fesm2015/tree.js +1 -1
  241. package/fesm2015/tree.js.map +1 -1
  242. package/fesm5/autocomplete/testing.js +55 -8
  243. package/fesm5/autocomplete/testing.js.map +1 -1
  244. package/fesm5/autocomplete.js +25 -24
  245. package/fesm5/autocomplete.js.map +1 -1
  246. package/fesm5/badge.js +1 -1
  247. package/fesm5/badge.js.map +1 -1
  248. package/fesm5/bottom-sheet.js +3 -2
  249. package/fesm5/bottom-sheet.js.map +1 -1
  250. package/fesm5/button-toggle.js +16 -6
  251. package/fesm5/button-toggle.js.map +1 -1
  252. package/fesm5/chips.js +20 -4
  253. package/fesm5/chips.js.map +1 -1
  254. package/fesm5/core.js +95 -71
  255. package/fesm5/core.js.map +1 -1
  256. package/fesm5/datepicker.js +20 -6
  257. package/fesm5/datepicker.js.map +1 -1
  258. package/fesm5/dialog.js +46 -27
  259. package/fesm5/dialog.js.map +1 -1
  260. package/fesm5/expansion.js +3 -3
  261. package/fesm5/expansion.js.map +1 -1
  262. package/fesm5/form-field.js +4 -2
  263. package/fesm5/form-field.js.map +1 -1
  264. package/fesm5/icon.js +6 -2
  265. package/fesm5/icon.js.map +1 -1
  266. package/fesm5/input.js +19 -15
  267. package/fesm5/input.js.map +1 -1
  268. package/fesm5/list.js +4 -4
  269. package/fesm5/list.js.map +1 -1
  270. package/fesm5/menu.js +2 -1
  271. package/fesm5/menu.js.map +1 -1
  272. package/fesm5/radio.js +63 -49
  273. package/fesm5/radio.js.map +1 -1
  274. package/fesm5/select/testing.js +45 -10
  275. package/fesm5/select/testing.js.map +1 -1
  276. package/fesm5/select.js +20 -11
  277. package/fesm5/select.js.map +1 -1
  278. package/fesm5/sidenav.js +3 -2
  279. package/fesm5/sidenav.js.map +1 -1
  280. package/fesm5/slider.js +14 -12
  281. package/fesm5/slider.js.map +1 -1
  282. package/fesm5/table.js +1 -1
  283. package/fesm5/table.js.map +1 -1
  284. package/fesm5/tabs.js +9 -6
  285. package/fesm5/tabs.js.map +1 -1
  286. package/fesm5/tooltip.js +2 -2
  287. package/fesm5/tooltip.js.map +1 -1
  288. package/fesm5/tree.js +1 -1
  289. package/fesm5/tree.js.map +1 -1
  290. package/form-field/index.metadata.json +1 -1
  291. package/icon/icon.d.ts +2 -0
  292. package/icon/index.metadata.json +1 -1
  293. package/input/index.metadata.json +1 -1
  294. package/input/input.d.ts +4 -4
  295. package/list/index.metadata.json +1 -1
  296. package/menu/index.metadata.json +1 -1
  297. package/package.json +2 -2
  298. package/prebuilt-themes/deeppurple-amber.css +1 -1
  299. package/prebuilt-themes/indigo-pink.css +1 -1
  300. package/prebuilt-themes/pink-bluegrey.css +1 -1
  301. package/prebuilt-themes/purple-green.css +1 -1
  302. package/radio/index.metadata.json +1 -1
  303. package/radio/radio.d.ts +8 -2
  304. package/schematics/collection.json +0 -7
  305. package/schematics/ng-add/index.js +1 -1
  306. package/schematics/ng-update/index.js +23 -23
  307. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/find-hammer-script-tags.d.ts +1 -1
  308. package/schematics/ng-update/migrations/hammer-gestures-v9/find-hammer-script-tags.js +51 -0
  309. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/find-main-module.d.ts +1 -1
  310. package/schematics/ng-update/migrations/hammer-gestures-v9/find-main-module.js +41 -0
  311. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/gesture-config.template +0 -0
  312. package/schematics/ng-update/{upgrade-rules/hammer-gestures-v9/hammer-gestures-rule.d.ts → migrations/hammer-gestures-v9/hammer-gestures-migration.d.ts} +6 -6
  313. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +784 -0
  314. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/hammer-template-check.d.ts +1 -1
  315. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-template-check.js +65 -0
  316. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/import-manager.d.ts +4 -4
  317. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +379 -0
  318. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/remove-array-element.d.ts +1 -1
  319. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-array-element.js +75 -0
  320. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/remove-element-from-html.d.ts +1 -1
  321. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-element-from-html.js +37 -0
  322. package/schematics/ng-update/migrations/misc-checks/misc-class-inheritance.d.ts +19 -0
  323. package/schematics/ng-update/migrations/misc-checks/misc-class-inheritance.js +57 -0
  324. package/schematics/ng-update/{upgrade-rules/misc-checks/misc-class-names-rule.d.ts → migrations/misc-checks/misc-class-names.d.ts} +5 -5
  325. package/schematics/ng-update/migrations/misc-checks/misc-class-names.js +52 -0
  326. package/schematics/ng-update/{upgrade-rules/misc-checks/misc-imports-rule.d.ts → migrations/misc-checks/misc-imports.d.ts} +5 -5
  327. package/schematics/ng-update/migrations/misc-checks/misc-imports.js +63 -0
  328. package/schematics/ng-update/{upgrade-rules/misc-checks/misc-property-names-rule.d.ts → migrations/misc-checks/misc-property-names.d.ts} +5 -5
  329. package/schematics/ng-update/migrations/misc-checks/misc-property-names.js +56 -0
  330. package/schematics/ng-update/migrations/misc-checks/misc-template.d.ts +17 -0
  331. package/schematics/ng-update/migrations/misc-checks/misc-template.js +69 -0
  332. package/schematics/ng-update/{upgrade-rules/misc-ripples-v7/ripple-speed-factor-rule.d.ts → migrations/misc-ripples-v7/ripple-speed-factor-migration.d.ts} +5 -5
  333. package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor-migration.js +147 -0
  334. package/schematics/ng-update/{upgrade-rules → migrations}/misc-ripples-v7/ripple-speed-factor.d.ts +1 -1
  335. package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor.js +39 -0
  336. package/schematics/ng-update/{upgrade-rules → migrations}/package-imports-v8/material-symbols.json +0 -0
  337. package/schematics/ng-update/{upgrade-rules/package-imports-v8/secondary-entry-points-rule.d.ts → migrations/package-imports-v8/secondary-entry-points-migration.d.ts} +5 -5
  338. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +177 -0
  339. package/schematics/ng-update/upgrade-data.d.ts +2 -2
  340. package/schematics/ng-update/upgrade-data.js +1 -1
  341. package/select/index.metadata.json +1 -1
  342. package/select/testing/select-harness.d.ts +2 -1
  343. package/sidenav/index.metadata.json +1 -1
  344. package/table/index.metadata.json +1 -1
  345. package/tabs/_tabs-common.scss +5 -3
  346. package/tabs/index.metadata.json +1 -1
  347. package/tooltip/index.metadata.json +1 -1
  348. package/tree/index.metadata.json +1 -1
  349. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/find-hammer-script-tags.js +0 -51
  350. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/find-main-module.js +0 -41
  351. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/hammer-gestures-rule.js +0 -781
  352. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/hammer-template-check.js +0 -65
  353. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/import-manager.js +0 -379
  354. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/remove-array-element.js +0 -75
  355. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/remove-element-from-html.js +0 -37
  356. package/schematics/ng-update/upgrade-rules/misc-checks/misc-class-inheritance-rule.d.ts +0 -19
  357. package/schematics/ng-update/upgrade-rules/misc-checks/misc-class-inheritance-rule.js +0 -57
  358. package/schematics/ng-update/upgrade-rules/misc-checks/misc-class-names-rule.js +0 -52
  359. package/schematics/ng-update/upgrade-rules/misc-checks/misc-imports-rule.js +0 -63
  360. package/schematics/ng-update/upgrade-rules/misc-checks/misc-property-names-rule.js +0 -56
  361. package/schematics/ng-update/upgrade-rules/misc-checks/misc-template-rule.d.ts +0 -17
  362. package/schematics/ng-update/upgrade-rules/misc-checks/misc-template-rule.js +0 -69
  363. package/schematics/ng-update/upgrade-rules/misc-ripples-v7/ripple-speed-factor-rule.js +0 -147
  364. package/schematics/ng-update/upgrade-rules/misc-ripples-v7/ripple-speed-factor.js +0 -39
  365. package/schematics/ng-update/upgrade-rules/package-imports-v8/secondary-entry-points-rule.js +0 -177
@@ -1,39 +1,39 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/cdk/a11y"),require("@angular/cdk/overlay"),require("@angular/cdk/portal"),require("@angular/common"),require("@angular/core"),require("@angular/material/button"),require("@angular/material/dialog"),require("@angular/material/core"),require("rxjs"),require("@angular/cdk/keycodes"),require("@angular/cdk/bidi"),require("rxjs/operators"),require("@angular/cdk/coercion"),require("@angular/animations"),require("@angular/forms"),require("@angular/material/form-field"),require("@angular/material/input")):"function"==typeof define&&define.amd?define("@angular/material/datepicker",["exports","@angular/cdk/a11y","@angular/cdk/overlay","@angular/cdk/portal","@angular/common","@angular/core","@angular/material/button","@angular/material/dialog","@angular/material/core","rxjs","@angular/cdk/keycodes","@angular/cdk/bidi","rxjs/operators","@angular/cdk/coercion","@angular/animations","@angular/forms","@angular/material/form-field","@angular/material/input"],t):t(((e=e||self).ng=e.ng||{},e.ng.material=e.ng.material||{},e.ng.material.datepicker={}),e.ng.cdk.a11y,e.ng.cdk.overlay,e.ng.cdk.portal,e.ng.common,e.ng.core,e.ng.material.button,e.ng.material.dialog,e.ng.material.core,e.rxjs,e.ng.cdk.keycodes,e.ng.cdk.bidi,e.rxjs.operators,e.ng.cdk.coercion,e.ng.animations,e.ng.forms,e.ng.material.formField,e.ng.material.input)}(this,(function(e,t,a,i,n,r,o,s,d,l,c,p,h,u,_,m,f,g){"use strict";
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/cdk/a11y"),require("@angular/cdk/overlay"),require("@angular/cdk/portal"),require("@angular/common"),require("@angular/core"),require("@angular/material/button"),require("@angular/material/dialog"),require("@angular/cdk/scrolling"),require("@angular/material/core"),require("rxjs"),require("@angular/cdk/keycodes"),require("@angular/cdk/bidi"),require("rxjs/operators"),require("@angular/cdk/coercion"),require("@angular/animations"),require("@angular/forms"),require("@angular/material/form-field"),require("@angular/material/input")):"function"==typeof define&&define.amd?define("@angular/material/datepicker",["exports","@angular/cdk/a11y","@angular/cdk/overlay","@angular/cdk/portal","@angular/common","@angular/core","@angular/material/button","@angular/material/dialog","@angular/cdk/scrolling","@angular/material/core","rxjs","@angular/cdk/keycodes","@angular/cdk/bidi","rxjs/operators","@angular/cdk/coercion","@angular/animations","@angular/forms","@angular/material/form-field","@angular/material/input"],t):t(((e=e||self).ng=e.ng||{},e.ng.material=e.ng.material||{},e.ng.material.datepicker={}),e.ng.cdk.a11y,e.ng.cdk.overlay,e.ng.cdk.portal,e.ng.common,e.ng.core,e.ng.material.button,e.ng.material.dialog,e.ng.cdk.scrolling,e.ng.material.core,e.rxjs,e.ng.cdk.keycodes,e.ng.cdk.bidi,e.rxjs.operators,e.ng.cdk.coercion,e.ng.animations,e.ng.forms,e.ng.material.formField,e.ng.material.input)}(this,(function(e,t,a,i,n,r,o,s,d,l,c,p,h,u,_,m,g,f,y){"use strict";
2
2
  /**
3
3
  * @license
4
4
  * Copyright Google LLC All Rights Reserved.
5
5
  *
6
6
  * Use of this source code is governed by an MIT-style license that can be
7
7
  * found in the LICENSE file at https://angular.io/license
8
- */function y(e){return Error("MatDatepicker: No provider found for "+e+". You must import one of the following modules at your application root: MatNativeDateModule, MatMomentDateModule, or provide a custom implementation.")}
8
+ */function b(e){return Error("MatDatepicker: No provider found for "+e+". You must import one of the following modules at your application root: MatNativeDateModule, MatMomentDateModule, or provide a custom implementation.")}
9
9
  /**
10
10
  * @license
11
11
  * Copyright Google LLC All Rights Reserved.
12
12
  *
13
13
  * Use of this source code is governed by an MIT-style license that can be
14
14
  * found in the LICENSE file at https://angular.io/license
15
- */var b=function(){function e(){this.changes=new l.Subject,this.calendarLabel="Calendar",this.openCalendarLabel="Open calendar",this.prevMonthLabel="Previous month",this.nextMonthLabel="Next month",this.prevYearLabel="Previous year",this.nextYearLabel="Next year",this.prevMultiYearLabel="Previous 20 years",this.nextMultiYearLabel="Next 20 years",this.switchToMonthViewLabel="Choose date",this.switchToMultiYearViewLabel="Choose month and year"}return e.prototype.formatYearRange=function(e,t){return e+" – "+t},e.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],e.ɵprov=r.ɵɵdefineInjectable({factory:function t(){return new e},token:e,providedIn:"root"}),e}(),D=function D(e,t,a,i,n){void 0===n&&(n={}),this.value=e,this.displayValue=t,this.ariaLabel=a,this.enabled=i,this.cssClasses=n},v=function(){function e(e,t){this._elementRef=e,this._ngZone=t,this.numCols=7,this.activeCell=0,this.cellAspectRatio=1,this.selectedValueChange=new r.EventEmitter}return e.prototype._cellClicked=function(e){e.enabled&&this.selectedValueChange.emit(e.value)},e.prototype.ngOnChanges=function(e){var t=e.numCols,a=this.rows,i=this.numCols;(e.rows||t)&&(this._firstRowOffset=a&&a.length&&a[0].length?i-a[0].length:0),(e.cellAspectRatio||t||!this._cellPadding)&&(this._cellPadding=50*this.cellAspectRatio/i+"%"),!t&&this._cellWidth||(this._cellWidth=100/i+"%")},e.prototype._isActiveCell=function(e,t){var a=e*this.numCols+t;return e&&(a-=this._firstRowOffset),a==this.activeCell},e.prototype._focusActiveCell=function(){var e=this;this._ngZone.runOutsideAngular((function(){e._ngZone.onStable.asObservable().pipe(h.take(1)).subscribe((function(){var t=e._elementRef.nativeElement.querySelector(".mat-calendar-body-active");t&&t.focus()}))}))},e.decorators=[{type:r.Component,args:[{selector:"[mat-calendar-body]",template:'\x3c!--\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--\x3e\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\x3c!-- Create the first row separately so we can include a special spacer cell. --\x3e\n<tr *ngFor="let row of rows; let rowIndex = index" role="row">\n \x3c!--\n We mark this cell as aria-hidden so it doesn\'t get read out as one of the days in the week.\n The aspect ratio of the table cells is maintained by setting the top and bottom padding as a\n percentage of the width (a variant of the trick described here:\n https://www.w3schools.com/howto/howto_css_aspect_ratio.asp).\n --\x3e\n <td *ngIf="rowIndex === 0 && _firstRowOffset"\n aria-hidden="true"\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 mat-focus-indicator"\n [ngClass]="item.cssClasses"\n [tabindex]="_isActiveCell(rowIndex, colIndex) ? 0 : -1"\n [class.mat-calendar-body-disabled]="!item.enabled"\n [class.mat-calendar-body-active]="_isActiveCell(rowIndex, colIndex)"\n [attr.aria-label]="item.ariaLabel"\n [attr.aria-disabled]="!item.enabled || null"\n [attr.aria-selected]="selectedValue === item.value"\n (click)="_cellClicked(item)"\n [style.width]="_cellWidth"\n [style.paddingTop]="_cellPadding"\n role="button"\n [style.paddingBottom]="_cellPadding">\n <div class="mat-calendar-body-cell-content"\n [class.mat-calendar-body-selected]="selectedValue === item.value"\n [class.mat-calendar-body-today]="todayValue === item.value">\n {{item.displayValue}}\n </div>\n </td>\n</tr>\n',host:{class:"mat-calendar-body",role:"grid","aria-readonly":"true"},exportAs:"matCalendarBody",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush,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-disabled{cursor:default}.mat-calendar-body-cell-content{position:absolute;top:5%;left:5%;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}.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-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}[dir=rtl] .mat-calendar-body-label{text-align:right}\n"]}]}],e.ctorParameters=function(){return[{type:r.ElementRef},{type:r.NgZone}]},e.propDecorators={label:[{type:r.Input}],rows:[{type:r.Input}],todayValue:[{type:r.Input}],selectedValue:[{type:r.Input}],labelMinRequiredCells:[{type:r.Input}],numCols:[{type:r.Input}],activeCell:[{type:r.Input}],cellAspectRatio:[{type:r.Input}],selectedValueChange:[{type:r.Output}]},e}(),A=function(){function e(e,t,a,i){if(this._changeDetectorRef=e,this._dateFormats=t,this._dateAdapter=a,this._dir=i,this._rerenderSubscription=l.Subscription.EMPTY,this.selectedChange=new r.EventEmitter,this._userSelection=new r.EventEmitter,this.activeDateChange=new r.EventEmitter,!this._dateAdapter)throw y("DateAdapter");if(!this._dateFormats)throw y("MAT_DATE_FORMATS");this._activeDate=this._dateAdapter.today()}return Object.defineProperty(e.prototype,"activeDate",{get:function(){return this._activeDate},set:function(e){var t=this._activeDate,a=this._getValidDateOrNull(this._dateAdapter.deserialize(e))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(a,this.minDate,this.maxDate),this._hasSameMonthAndYear(t,this._activeDate)||this._init()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._selectedDate=this._getDateInCurrentMonth(this._selected)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"minDate",{get:function(){return this._minDate},set:function(e){this._minDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{get:function(){return this._maxDate},set:function(e){this._maxDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){var e=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe(h.startWith(null)).subscribe((function(){return e._init()}))},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe()},e.prototype._dateSelected=function(e){if(this._selectedDate!=e){var t=this._dateAdapter.getYear(this.activeDate),a=this._dateAdapter.getMonth(this.activeDate),i=this._dateAdapter.createDate(t,a,e);this.selectedChange.emit(i)}this._userSelection.emit()},e.prototype._handleCalendarBodyKeydown=function(e){var t=this._activeDate,a=this._isRtl();switch(e.keyCode){case c.LEFT_ARROW:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,a?1:-1);break;case c.RIGHT_ARROW:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,a?-1:1);break;case c.UP_ARROW:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,-7);break;case c.DOWN_ARROW:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,7);break;case c.HOME:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,1-this._dateAdapter.getDate(this._activeDate));break;case c.END:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,this._dateAdapter.getNumDaysInMonth(this._activeDate)-this._dateAdapter.getDate(this._activeDate));break;case c.PAGE_UP:this.activeDate=e.altKey?this._dateAdapter.addCalendarYears(this._activeDate,-1):this._dateAdapter.addCalendarMonths(this._activeDate,-1);break;case c.PAGE_DOWN:this.activeDate=e.altKey?this._dateAdapter.addCalendarYears(this._activeDate,1):this._dateAdapter.addCalendarMonths(this._activeDate,1);break;case c.ENTER:case c.SPACE:return void(this.dateFilter&&!this.dateFilter(this._activeDate)||(this._dateSelected(this._dateAdapter.getDate(this._activeDate)),this._userSelection.emit(),e.preventDefault()));default:return}this._dateAdapter.compareDate(t,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),e.preventDefault()},e.prototype._init=function(){this._selectedDate=this._getDateInCurrentMonth(this.selected),this._todayDate=this._getDateInCurrentMonth(this._dateAdapter.today()),this._monthLabel=this._dateAdapter.getMonthNames("short")[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();var e=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),1);this._firstWeekOffset=(7+this._dateAdapter.getDayOfWeek(e)-this._dateAdapter.getFirstDayOfWeek())%7,this._initWeekdays(),this._createWeekCells(),this._changeDetectorRef.markForCheck()},e.prototype._focusActiveCell=function(){this._matCalendarBody._focusActiveCell()},e.prototype._initWeekdays=function(){var e=this._dateAdapter.getFirstDayOfWeek(),t=this._dateAdapter.getDayOfWeekNames("narrow"),a=this._dateAdapter.getDayOfWeekNames("long").map((function(e,a){return{long:e,narrow:t[a]}}));this._weekdays=a.slice(e).concat(a.slice(0,e))},e.prototype._createWeekCells=function(){var e=this._dateAdapter.getNumDaysInMonth(this.activeDate),t=this._dateAdapter.getDateNames();this._weeks=[[]];for(var a=0,i=this._firstWeekOffset;a<e;a++,i++){7==i&&(this._weeks.push([]),i=0);var n=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),a+1),r=this._shouldEnableDate(n),o=this._dateAdapter.format(n,this._dateFormats.display.dateA11yLabel),s=this.dateClass?this.dateClass(n):void 0;this._weeks[this._weeks.length-1].push(new D(a+1,t[a],o,r,s))}},e.prototype._shouldEnableDate=function(e){return!!e&&(!this.minDate||this._dateAdapter.compareDate(e,this.minDate)>=0)&&(!this.maxDate||this._dateAdapter.compareDate(e,this.maxDate)<=0)&&(!this.dateFilter||this.dateFilter(e))},e.prototype._getDateInCurrentMonth=function(e){return e&&this._hasSameMonthAndYear(e,this.activeDate)?this._dateAdapter.getDate(e):null},e.prototype._hasSameMonthAndYear=function(e,t){return!(!e||!t||this._dateAdapter.getMonth(e)!=this._dateAdapter.getMonth(t)||this._dateAdapter.getYear(e)!=this._dateAdapter.getYear(t))},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.prototype._isRtl=function(){return this._dir&&"rtl"===this._dir.value},e.decorators=[{type:r.Component,args:[{selector:"mat-month-view",template:'<table class="mat-calendar-table" role="presentation">\n <thead class="mat-calendar-table-header">\n <tr>\n <th scope="col" *ngFor="let day of _weekdays" [attr.aria-label]="day.long">{{day.narrow}}</th>\n </tr>\n <tr><th class="mat-calendar-table-header-divider" colspan="7" aria-hidden="true"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]="_monthLabel"\n [rows]="_weeks"\n [todayValue]="_todayDate!"\n [selectedValue]="_selectedDate!"\n [labelMinRequiredCells]="3"\n [activeCell]="_dateAdapter.getDate(activeDate) - 1"\n (selectedValueChange)="_dateSelected($event)"\n (keydown)="_handleCalendarBodyKeydown($event)">\n </tbody>\n</table>\n',exportAs:"matMonthView",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:r.ChangeDetectorRef},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[d.MAT_DATE_FORMATS]}]},{type:d.DateAdapter,decorators:[{type:r.Optional}]},{type:p.Directionality,decorators:[{type:r.Optional}]}]},e.propDecorators={activeDate:[{type:r.Input}],selected:[{type:r.Input}],minDate:[{type:r.Input}],maxDate:[{type:r.Input}],dateFilter:[{type:r.Input}],dateClass:[{type:r.Input}],selectedChange:[{type:r.Output}],_userSelection:[{type:r.Output}],activeDateChange:[{type:r.Output}],_matCalendarBody:[{type:r.ViewChild,args:[v]}]},e}(),C=24,k=function(){function e(e,t,a){if(this._changeDetectorRef=e,this._dateAdapter=t,this._dir=a,this._rerenderSubscription=l.Subscription.EMPTY,this.selectedChange=new r.EventEmitter,this.yearSelected=new r.EventEmitter,this.activeDateChange=new r.EventEmitter,!this._dateAdapter)throw y("DateAdapter");this._activeDate=this._dateAdapter.today()}return Object.defineProperty(e.prototype,"activeDate",{get:function(){return this._activeDate},set:function(e){var t=this._activeDate,a=this._getValidDateOrNull(this._dateAdapter.deserialize(e))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(a,this.minDate,this.maxDate),w(this._dateAdapter,t,this._activeDate,this.minDate,this.maxDate)||this._init()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._selectedYear=this._selected&&this._dateAdapter.getYear(this._selected)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"minDate",{get:function(){return this._minDate},set:function(e){this._minDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{get:function(){return this._maxDate},set:function(e){this._maxDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){var e=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe(h.startWith(null)).subscribe((function(){return e._init()}))},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe()},e.prototype._init=function(){var e=this;this._todayYear=this._dateAdapter.getYear(this._dateAdapter.today());var t=this._dateAdapter.getYear(this._activeDate)-O(this._dateAdapter,this.activeDate,this.minDate,this.maxDate);this._years=[];for(var a=0,i=[];a<C;a++)i.push(t+a),4==i.length&&(this._years.push(i.map((function(t){return e._createCellForYear(t)}))),i=[]);this._changeDetectorRef.markForCheck()},e.prototype._yearSelected=function(e){this.yearSelected.emit(this._dateAdapter.createDate(e,0,1));var t=this._dateAdapter.getMonth(this.activeDate),a=this._dateAdapter.getNumDaysInMonth(this._dateAdapter.createDate(e,t,1));this.selectedChange.emit(this._dateAdapter.createDate(e,t,Math.min(this._dateAdapter.getDate(this.activeDate),a)))},e.prototype._handleCalendarBodyKeydown=function(e){var t=this._activeDate,a=this._isRtl();switch(e.keyCode){case c.LEFT_ARROW:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,a?1:-1);break;case c.RIGHT_ARROW:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,a?-1:1);break;case c.UP_ARROW:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-4);break;case c.DOWN_ARROW:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,4);break;case c.HOME:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-O(this._dateAdapter,this.activeDate,this.minDate,this.maxDate));break;case c.END:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,C-O(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)-1);break;case c.PAGE_UP:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,e.altKey?10*-C:-C);break;case c.PAGE_DOWN:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,e.altKey?10*C:C);break;case c.ENTER:case c.SPACE:this._yearSelected(this._dateAdapter.getYear(this._activeDate));break;default:return}this._dateAdapter.compareDate(t,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),e.preventDefault()},e.prototype._getActiveCell=function(){return O(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)},e.prototype._focusActiveCell=function(){this._matCalendarBody._focusActiveCell()},e.prototype._createCellForYear=function(e){var t=this._dateAdapter.getYearName(this._dateAdapter.createDate(e,0,1));return new D(e,t,t,this._shouldEnableYear(e))},e.prototype._shouldEnableYear=function(e){if(null==e||this.maxDate&&e>this._dateAdapter.getYear(this.maxDate)||this.minDate&&e<this._dateAdapter.getYear(this.minDate))return!1;if(!this.dateFilter)return!0;for(var t=this._dateAdapter.createDate(e,0,1);this._dateAdapter.getYear(t)==e;t=this._dateAdapter.addCalendarDays(t,1))if(this.dateFilter(t))return!0;return!1},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.prototype._isRtl=function(){return this._dir&&"rtl"===this._dir.value},e.decorators=[{type:r.Component,args:[{selector:"mat-multi-year-view",template:'<table class="mat-calendar-table" role="presentation">\n <thead 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 [selectedValue]="_selectedYear!"\n [numCols]="4"\n [cellAspectRatio]="4 / 7"\n [activeCell]="_getActiveCell()"\n (selectedValueChange)="_yearSelected($event)"\n (keydown)="_handleCalendarBodyKeydown($event)">\n </tbody>\n</table>\n',exportAs:"matMultiYearView",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:r.ChangeDetectorRef},{type:d.DateAdapter,decorators:[{type:r.Optional}]},{type:p.Directionality,decorators:[{type:r.Optional}]}]},e.propDecorators={activeDate:[{type:r.Input}],selected:[{type:r.Input}],minDate:[{type:r.Input}],maxDate:[{type:r.Input}],dateFilter:[{type:r.Input}],selectedChange:[{type:r.Output}],yearSelected:[{type:r.Output}],activeDateChange:[{type:r.Output}],_matCalendarBody:[{type:r.ViewChild,args:[v]}]},e}();
15
+ */var v=function(){function e(){this.changes=new c.Subject,this.calendarLabel="Calendar",this.openCalendarLabel="Open calendar",this.prevMonthLabel="Previous month",this.nextMonthLabel="Next month",this.prevYearLabel="Previous year",this.nextYearLabel="Next year",this.prevMultiYearLabel="Previous 20 years",this.nextMultiYearLabel="Next 20 years",this.switchToMonthViewLabel="Choose date",this.switchToMultiYearViewLabel="Choose month and year"}return e.prototype.formatYearRange=function(e,t){return e+" – "+t},e.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],e.ɵprov=r.ɵɵdefineInjectable({factory:function t(){return new e},token:e,providedIn:"root"}),e}(),D=function D(e,t,a,i,n){void 0===n&&(n={}),this.value=e,this.displayValue=t,this.ariaLabel=a,this.enabled=i,this.cssClasses=n},A=function(){function e(e,t){this._elementRef=e,this._ngZone=t,this.numCols=7,this.activeCell=0,this.cellAspectRatio=1,this.selectedValueChange=new r.EventEmitter}return e.prototype._cellClicked=function(e){e.enabled&&this.selectedValueChange.emit(e.value)},e.prototype.ngOnChanges=function(e){var t=e.numCols,a=this.rows,i=this.numCols;(e.rows||t)&&(this._firstRowOffset=a&&a.length&&a[0].length?i-a[0].length:0),(e.cellAspectRatio||t||!this._cellPadding)&&(this._cellPadding=50*this.cellAspectRatio/i+"%"),!t&&this._cellWidth||(this._cellWidth=100/i+"%")},e.prototype._isActiveCell=function(e,t){var a=e*this.numCols+t;return e&&(a-=this._firstRowOffset),a==this.activeCell},e.prototype._focusActiveCell=function(){var e=this;this._ngZone.runOutsideAngular((function(){e._ngZone.onStable.asObservable().pipe(u.take(1)).subscribe((function(){var t=e._elementRef.nativeElement.querySelector(".mat-calendar-body-active");t&&t.focus()}))}))},e.decorators=[{type:r.Component,args:[{selector:"[mat-calendar-body]",template:'\x3c!--\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--\x3e\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\x3c!-- Create the first row separately so we can include a special spacer cell. --\x3e\n<tr *ngFor="let row of rows; let rowIndex = index" role="row">\n \x3c!--\n We mark this cell as aria-hidden so it doesn\'t get read out as one of the days in the week.\n The aspect ratio of the table cells is maintained by setting the top and bottom padding as a\n percentage of the width (a variant of the trick described here:\n https://www.w3schools.com/howto/howto_css_aspect_ratio.asp).\n --\x3e\n <td *ngIf="rowIndex === 0 && _firstRowOffset"\n aria-hidden="true"\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 mat-focus-indicator"\n [ngClass]="item.cssClasses"\n [tabindex]="_isActiveCell(rowIndex, colIndex) ? 0 : -1"\n [class.mat-calendar-body-disabled]="!item.enabled"\n [class.mat-calendar-body-active]="_isActiveCell(rowIndex, colIndex)"\n [attr.aria-label]="item.ariaLabel"\n [attr.aria-disabled]="!item.enabled || null"\n [attr.aria-selected]="selectedValue === item.value"\n (click)="_cellClicked(item)"\n [style.width]="_cellWidth"\n [style.paddingTop]="_cellPadding"\n [style.paddingBottom]="_cellPadding">\n <div class="mat-calendar-body-cell-content"\n [class.mat-calendar-body-selected]="selectedValue === item.value"\n [class.mat-calendar-body-today]="todayValue === item.value">\n {{item.displayValue}}\n </div>\n </td>\n</tr>\n',host:{class:"mat-calendar-body",role:"grid","aria-readonly":"true"},exportAs:"matCalendarBody",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush,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-disabled{cursor:default}.mat-calendar-body-cell-content{position:absolute;top:5%;left:5%;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}.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-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}[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"]}]}],e.ctorParameters=function(){return[{type:r.ElementRef},{type:r.NgZone}]},e.propDecorators={label:[{type:r.Input}],rows:[{type:r.Input}],todayValue:[{type:r.Input}],selectedValue:[{type:r.Input}],labelMinRequiredCells:[{type:r.Input}],numCols:[{type:r.Input}],activeCell:[{type:r.Input}],cellAspectRatio:[{type:r.Input}],selectedValueChange:[{type:r.Output}]},e}(),C=function(){function e(e,t,a,i){if(this._changeDetectorRef=e,this._dateFormats=t,this._dateAdapter=a,this._dir=i,this._rerenderSubscription=c.Subscription.EMPTY,this.selectedChange=new r.EventEmitter,this._userSelection=new r.EventEmitter,this.activeDateChange=new r.EventEmitter,!this._dateAdapter)throw b("DateAdapter");if(!this._dateFormats)throw b("MAT_DATE_FORMATS");this._activeDate=this._dateAdapter.today()}return Object.defineProperty(e.prototype,"activeDate",{get:function(){return this._activeDate},set:function(e){var t=this._activeDate,a=this._getValidDateOrNull(this._dateAdapter.deserialize(e))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(a,this.minDate,this.maxDate),this._hasSameMonthAndYear(t,this._activeDate)||this._init()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._selectedDate=this._getDateInCurrentMonth(this._selected)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"minDate",{get:function(){return this._minDate},set:function(e){this._minDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{get:function(){return this._maxDate},set:function(e){this._maxDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){var e=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe(u.startWith(null)).subscribe((function(){return e._init()}))},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe()},e.prototype._dateSelected=function(e){if(this._selectedDate!=e){var t=this._dateAdapter.getYear(this.activeDate),a=this._dateAdapter.getMonth(this.activeDate),i=this._dateAdapter.createDate(t,a,e);this.selectedChange.emit(i)}this._userSelection.emit()},e.prototype._handleCalendarBodyKeydown=function(e){var t=this._activeDate,a=this._isRtl();switch(e.keyCode){case p.LEFT_ARROW:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,a?1:-1);break;case p.RIGHT_ARROW:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,a?-1:1);break;case p.UP_ARROW:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,-7);break;case p.DOWN_ARROW:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,7);break;case p.HOME:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,1-this._dateAdapter.getDate(this._activeDate));break;case p.END:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,this._dateAdapter.getNumDaysInMonth(this._activeDate)-this._dateAdapter.getDate(this._activeDate));break;case p.PAGE_UP:this.activeDate=e.altKey?this._dateAdapter.addCalendarYears(this._activeDate,-1):this._dateAdapter.addCalendarMonths(this._activeDate,-1);break;case p.PAGE_DOWN:this.activeDate=e.altKey?this._dateAdapter.addCalendarYears(this._activeDate,1):this._dateAdapter.addCalendarMonths(this._activeDate,1);break;case p.ENTER:case p.SPACE:return void(this.dateFilter&&!this.dateFilter(this._activeDate)||(this._dateSelected(this._dateAdapter.getDate(this._activeDate)),this._userSelection.emit(),e.preventDefault()));default:return}this._dateAdapter.compareDate(t,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),e.preventDefault()},e.prototype._init=function(){this._selectedDate=this._getDateInCurrentMonth(this.selected),this._todayDate=this._getDateInCurrentMonth(this._dateAdapter.today()),this._monthLabel=this._dateAdapter.getMonthNames("short")[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();var e=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),1);this._firstWeekOffset=(7+this._dateAdapter.getDayOfWeek(e)-this._dateAdapter.getFirstDayOfWeek())%7,this._initWeekdays(),this._createWeekCells(),this._changeDetectorRef.markForCheck()},e.prototype._focusActiveCell=function(){this._matCalendarBody._focusActiveCell()},e.prototype._initWeekdays=function(){var e=this._dateAdapter.getFirstDayOfWeek(),t=this._dateAdapter.getDayOfWeekNames("narrow"),a=this._dateAdapter.getDayOfWeekNames("long").map((function(e,a){return{long:e,narrow:t[a]}}));this._weekdays=a.slice(e).concat(a.slice(0,e))},e.prototype._createWeekCells=function(){var e=this._dateAdapter.getNumDaysInMonth(this.activeDate),t=this._dateAdapter.getDateNames();this._weeks=[[]];for(var a=0,i=this._firstWeekOffset;a<e;a++,i++){7==i&&(this._weeks.push([]),i=0);var n=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),a+1),r=this._shouldEnableDate(n),o=this._dateAdapter.format(n,this._dateFormats.display.dateA11yLabel),s=this.dateClass?this.dateClass(n):void 0;this._weeks[this._weeks.length-1].push(new D(a+1,t[a],o,r,s))}},e.prototype._shouldEnableDate=function(e){return!!e&&(!this.minDate||this._dateAdapter.compareDate(e,this.minDate)>=0)&&(!this.maxDate||this._dateAdapter.compareDate(e,this.maxDate)<=0)&&(!this.dateFilter||this.dateFilter(e))},e.prototype._getDateInCurrentMonth=function(e){return e&&this._hasSameMonthAndYear(e,this.activeDate)?this._dateAdapter.getDate(e):null},e.prototype._hasSameMonthAndYear=function(e,t){return!(!e||!t||this._dateAdapter.getMonth(e)!=this._dateAdapter.getMonth(t)||this._dateAdapter.getYear(e)!=this._dateAdapter.getYear(t))},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.prototype._isRtl=function(){return this._dir&&"rtl"===this._dir.value},e.decorators=[{type:r.Component,args:[{selector:"mat-month-view",template:'<table class="mat-calendar-table" role="presentation">\n <thead class="mat-calendar-table-header">\n <tr>\n <th scope="col" *ngFor="let day of _weekdays" [attr.aria-label]="day.long">{{day.narrow}}</th>\n </tr>\n <tr><th class="mat-calendar-table-header-divider" colspan="7" aria-hidden="true"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]="_monthLabel"\n [rows]="_weeks"\n [todayValue]="_todayDate!"\n [selectedValue]="_selectedDate!"\n [labelMinRequiredCells]="3"\n [activeCell]="_dateAdapter.getDate(activeDate) - 1"\n (selectedValueChange)="_dateSelected($event)"\n (keydown)="_handleCalendarBodyKeydown($event)">\n </tbody>\n</table>\n',exportAs:"matMonthView",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:r.ChangeDetectorRef},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[l.MAT_DATE_FORMATS]}]},{type:l.DateAdapter,decorators:[{type:r.Optional}]},{type:h.Directionality,decorators:[{type:r.Optional}]}]},e.propDecorators={activeDate:[{type:r.Input}],selected:[{type:r.Input}],minDate:[{type:r.Input}],maxDate:[{type:r.Input}],dateFilter:[{type:r.Input}],dateClass:[{type:r.Input}],selectedChange:[{type:r.Output}],_userSelection:[{type:r.Output}],activeDateChange:[{type:r.Output}],_matCalendarBody:[{type:r.ViewChild,args:[A]}]},e}(),k=24,w=function(){function e(e,t,a){if(this._changeDetectorRef=e,this._dateAdapter=t,this._dir=a,this._rerenderSubscription=c.Subscription.EMPTY,this.selectedChange=new r.EventEmitter,this.yearSelected=new r.EventEmitter,this.activeDateChange=new r.EventEmitter,!this._dateAdapter)throw b("DateAdapter");this._activeDate=this._dateAdapter.today()}return Object.defineProperty(e.prototype,"activeDate",{get:function(){return this._activeDate},set:function(e){var t=this._activeDate,a=this._getValidDateOrNull(this._dateAdapter.deserialize(e))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(a,this.minDate,this.maxDate),O(this._dateAdapter,t,this._activeDate,this.minDate,this.maxDate)||this._init()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._selectedYear=this._selected&&this._dateAdapter.getYear(this._selected)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"minDate",{get:function(){return this._minDate},set:function(e){this._minDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{get:function(){return this._maxDate},set:function(e){this._maxDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){var e=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe(u.startWith(null)).subscribe((function(){return e._init()}))},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe()},e.prototype._init=function(){var e=this;this._todayYear=this._dateAdapter.getYear(this._dateAdapter.today());var t=this._dateAdapter.getYear(this._activeDate)-x(this._dateAdapter,this.activeDate,this.minDate,this.maxDate);this._years=[];for(var a=0,i=[];a<k;a++)i.push(t+a),4==i.length&&(this._years.push(i.map((function(t){return e._createCellForYear(t)}))),i=[]);this._changeDetectorRef.markForCheck()},e.prototype._yearSelected=function(e){this.yearSelected.emit(this._dateAdapter.createDate(e,0,1));var t=this._dateAdapter.getMonth(this.activeDate),a=this._dateAdapter.getNumDaysInMonth(this._dateAdapter.createDate(e,t,1));this.selectedChange.emit(this._dateAdapter.createDate(e,t,Math.min(this._dateAdapter.getDate(this.activeDate),a)))},e.prototype._handleCalendarBodyKeydown=function(e){var t=this._activeDate,a=this._isRtl();switch(e.keyCode){case p.LEFT_ARROW:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,a?1:-1);break;case p.RIGHT_ARROW:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,a?-1:1);break;case p.UP_ARROW:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-4);break;case p.DOWN_ARROW:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,4);break;case p.HOME:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-x(this._dateAdapter,this.activeDate,this.minDate,this.maxDate));break;case p.END:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,k-x(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)-1);break;case p.PAGE_UP:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,e.altKey?10*-k:-k);break;case p.PAGE_DOWN:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,e.altKey?10*k:k);break;case p.ENTER:case p.SPACE:this._yearSelected(this._dateAdapter.getYear(this._activeDate));break;default:return}this._dateAdapter.compareDate(t,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),e.preventDefault()},e.prototype._getActiveCell=function(){return x(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)},e.prototype._focusActiveCell=function(){this._matCalendarBody._focusActiveCell()},e.prototype._createCellForYear=function(e){var t=this._dateAdapter.getYearName(this._dateAdapter.createDate(e,0,1));return new D(e,t,t,this._shouldEnableYear(e))},e.prototype._shouldEnableYear=function(e){if(null==e||this.maxDate&&e>this._dateAdapter.getYear(this.maxDate)||this.minDate&&e<this._dateAdapter.getYear(this.minDate))return!1;if(!this.dateFilter)return!0;for(var t=this._dateAdapter.createDate(e,0,1);this._dateAdapter.getYear(t)==e;t=this._dateAdapter.addCalendarDays(t,1))if(this.dateFilter(t))return!0;return!1},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.prototype._isRtl=function(){return this._dir&&"rtl"===this._dir.value},e.decorators=[{type:r.Component,args:[{selector:"mat-multi-year-view",template:'<table class="mat-calendar-table" role="presentation">\n <thead 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 [selectedValue]="_selectedYear!"\n [numCols]="4"\n [cellAspectRatio]="4 / 7"\n [activeCell]="_getActiveCell()"\n (selectedValueChange)="_yearSelected($event)"\n (keydown)="_handleCalendarBodyKeydown($event)">\n </tbody>\n</table>\n',exportAs:"matMultiYearView",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:r.ChangeDetectorRef},{type:l.DateAdapter,decorators:[{type:r.Optional}]},{type:h.Directionality,decorators:[{type:r.Optional}]}]},e.propDecorators={activeDate:[{type:r.Input}],selected:[{type:r.Input}],minDate:[{type:r.Input}],maxDate:[{type:r.Input}],dateFilter:[{type:r.Input}],selectedChange:[{type:r.Output}],yearSelected:[{type:r.Output}],activeDateChange:[{type:r.Output}],_matCalendarBody:[{type:r.ViewChild,args:[A]}]},e}();
16
16
  /**
17
17
  * @license
18
18
  * Copyright Google LLC All Rights Reserved.
19
19
  *
20
20
  * Use of this source code is governed by an MIT-style license that can be
21
21
  * found in the LICENSE file at https://angular.io/license
22
- */function w(e,t,a,i,n){var r=e.getYear(t),o=e.getYear(a),s=x(e,i,n);return Math.floor((r-s)/C)===Math.floor((o-s)/C)}function O(e,t,a,i){return function n(e,t){return(e%t+t)%t}
22
+ */function O(e,t,a,i,n){var r=e.getYear(t),o=e.getYear(a),s=V(e,i,n);return Math.floor((r-s)/k)===Math.floor((o-s)/k)}function x(e,t,a,i){return function n(e,t){return(e%t+t)%t}
23
23
  /**
24
24
  * @license
25
25
  * Copyright Google LLC All Rights Reserved.
26
26
  *
27
27
  * Use of this source code is governed by an MIT-style license that can be
28
28
  * found in the LICENSE file at https://angular.io/license
29
- */(e.getYear(t)-x(e,a,i),C)}function x(e,t,a){var i=0;return a?i=e.getYear(a)-C+1:t&&(i=e.getYear(t)),i}var V=function(){function e(e,t,a,i){if(this._changeDetectorRef=e,this._dateFormats=t,this._dateAdapter=a,this._dir=i,this._rerenderSubscription=l.Subscription.EMPTY,this.selectedChange=new r.EventEmitter,this.monthSelected=new r.EventEmitter,this.activeDateChange=new r.EventEmitter,!this._dateAdapter)throw y("DateAdapter");if(!this._dateFormats)throw y("MAT_DATE_FORMATS");this._activeDate=this._dateAdapter.today()}return Object.defineProperty(e.prototype,"activeDate",{get:function(){return this._activeDate},set:function(e){var t=this._activeDate,a=this._getValidDateOrNull(this._dateAdapter.deserialize(e))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(a,this.minDate,this.maxDate),this._dateAdapter.getYear(t)!==this._dateAdapter.getYear(this._activeDate)&&this._init()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._selectedMonth=this._getMonthInCurrentYear(this._selected)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"minDate",{get:function(){return this._minDate},set:function(e){this._minDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{get:function(){return this._maxDate},set:function(e){this._maxDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){var e=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe(h.startWith(null)).subscribe((function(){return e._init()}))},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe()},e.prototype._monthSelected=function(e){var t=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),e,1);this.monthSelected.emit(t);var a=this._dateAdapter.getNumDaysInMonth(t);this.selectedChange.emit(this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),e,Math.min(this._dateAdapter.getDate(this.activeDate),a)))},e.prototype._handleCalendarBodyKeydown=function(e){var t=this._activeDate,a=this._isRtl();switch(e.keyCode){case c.LEFT_ARROW:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,a?1:-1);break;case c.RIGHT_ARROW:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,a?-1:1);break;case c.UP_ARROW:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-4);break;case c.DOWN_ARROW:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,4);break;case c.HOME:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-this._dateAdapter.getMonth(this._activeDate));break;case c.END:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,11-this._dateAdapter.getMonth(this._activeDate));break;case c.PAGE_UP:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,e.altKey?-10:-1);break;case c.PAGE_DOWN:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,e.altKey?10:1);break;case c.ENTER:case c.SPACE:this._monthSelected(this._dateAdapter.getMonth(this._activeDate));break;default:return}this._dateAdapter.compareDate(t,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),e.preventDefault()},e.prototype._init=function(){var e=this;this._selectedMonth=this._getMonthInCurrentYear(this.selected),this._todayMonth=this._getMonthInCurrentYear(this._dateAdapter.today()),this._yearLabel=this._dateAdapter.getYearName(this.activeDate);var t=this._dateAdapter.getMonthNames("short");this._months=[[0,1,2,3],[4,5,6,7],[8,9,10,11]].map((function(a){return a.map((function(a){return e._createCellForMonth(a,t[a])}))})),this._changeDetectorRef.markForCheck()},e.prototype._focusActiveCell=function(){this._matCalendarBody._focusActiveCell()},e.prototype._getMonthInCurrentYear=function(e){return e&&this._dateAdapter.getYear(e)==this._dateAdapter.getYear(this.activeDate)?this._dateAdapter.getMonth(e):null},e.prototype._createCellForMonth=function(e,t){var a=this._dateAdapter.format(this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),e,1),this._dateFormats.display.monthYearA11yLabel);return new D(e,t.toLocaleUpperCase(),a,this._shouldEnableMonth(e))},e.prototype._shouldEnableMonth=function(e){var t=this._dateAdapter.getYear(this.activeDate);if(null==e||this._isYearAndMonthAfterMaxDate(t,e)||this._isYearAndMonthBeforeMinDate(t,e))return!1;if(!this.dateFilter)return!0;for(var a=this._dateAdapter.createDate(t,e,1);this._dateAdapter.getMonth(a)==e;a=this._dateAdapter.addCalendarDays(a,1))if(this.dateFilter(a))return!0;return!1},e.prototype._isYearAndMonthAfterMaxDate=function(e,t){if(this.maxDate){var a=this._dateAdapter.getYear(this.maxDate),i=this._dateAdapter.getMonth(this.maxDate);return e>a||e===a&&t>i}return!1},e.prototype._isYearAndMonthBeforeMinDate=function(e,t){if(this.minDate){var a=this._dateAdapter.getYear(this.minDate),i=this._dateAdapter.getMonth(this.minDate);return e<a||e===a&&t<i}return!1},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.prototype._isRtl=function(){return this._dir&&"rtl"===this._dir.value},e.decorators=[{type:r.Component,args:[{selector:"mat-year-view",template:'<table class="mat-calendar-table" role="presentation">\n <thead 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 [selectedValue]="_selectedMonth!"\n [labelMinRequiredCells]="2"\n [numCols]="4"\n [cellAspectRatio]="4 / 7"\n [activeCell]="_dateAdapter.getMonth(activeDate)"\n (selectedValueChange)="_monthSelected($event)"\n (keydown)="_handleCalendarBodyKeydown($event)">\n </tbody>\n</table>\n',exportAs:"matYearView",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:r.ChangeDetectorRef},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[d.MAT_DATE_FORMATS]}]},{type:d.DateAdapter,decorators:[{type:r.Optional}]},{type:p.Directionality,decorators:[{type:r.Optional}]}]},e.propDecorators={activeDate:[{type:r.Input}],selected:[{type:r.Input}],minDate:[{type:r.Input}],maxDate:[{type:r.Input}],dateFilter:[{type:r.Input}],selectedChange:[{type:r.Output}],monthSelected:[{type:r.Output}],activeDateChange:[{type:r.Output}],_matCalendarBody:[{type:r.ViewChild,args:[v]}]},e}(),I=function(){function e(e,t,a,i,n){this._intl=e,this.calendar=t,this._dateAdapter=a,this._dateFormats=i,this.calendar.stateChanges.subscribe((function(){return n.markForCheck()}))}return Object.defineProperty(e.prototype,"periodButtonText",{get:function(){if("month"==this.calendar.currentView)return this._dateAdapter.format(this.calendar.activeDate,this._dateFormats.display.monthYearLabel).toLocaleUpperCase();if("year"==this.calendar.currentView)return this._dateAdapter.getYearName(this.calendar.activeDate);var e=this._dateAdapter.getYear(this.calendar.activeDate)-O(this._dateAdapter,this.calendar.activeDate,this.calendar.minDate,this.calendar.maxDate),t=e+C-1,a=this._dateAdapter.getYearName(this._dateAdapter.createDate(e,0,1)),i=this._dateAdapter.getYearName(this._dateAdapter.createDate(t,0,1));return this._intl.formatYearRange(a,i)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"periodButtonLabel",{get:function(){return"month"==this.calendar.currentView?this._intl.switchToMultiYearViewLabel:this._intl.switchToMonthViewLabel},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"prevButtonLabel",{get:function(){return{month:this._intl.prevMonthLabel,year:this._intl.prevYearLabel,"multi-year":this._intl.prevMultiYearLabel}[this.calendar.currentView]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nextButtonLabel",{get:function(){return{month:this._intl.nextMonthLabel,year:this._intl.nextYearLabel,"multi-year":this._intl.nextMultiYearLabel}[this.calendar.currentView]},enumerable:!0,configurable:!0}),e.prototype.currentPeriodClicked=function(){this.calendar.currentView="month"==this.calendar.currentView?"multi-year":"month"},e.prototype.previousClicked=function(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,-1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?-1:-C)},e.prototype.nextClicked=function(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?1:C)},e.prototype.previousEnabled=function(){return!this.calendar.minDate||!this.calendar.minDate||!this._isSameView(this.calendar.activeDate,this.calendar.minDate)},e.prototype.nextEnabled=function(){return!this.calendar.maxDate||!this._isSameView(this.calendar.activeDate,this.calendar.maxDate)},e.prototype._isSameView=function(e,t){return"month"==this.calendar.currentView?this._dateAdapter.getYear(e)==this._dateAdapter.getYear(t)&&this._dateAdapter.getMonth(e)==this._dateAdapter.getMonth(t):"year"==this.calendar.currentView?this._dateAdapter.getYear(e)==this._dateAdapter.getYear(t):w(this._dateAdapter,e,t,this.calendar.minDate,this.calendar.maxDate)},e.decorators=[{type:r.Component,args:[{selector:"mat-calendar-header",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 cdkAriaLive="polite">\n {{periodButtonText}}\n <div class="mat-calendar-arrow"\n [class.mat-calendar-invert]="calendar.currentView != \'month\'"></div>\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',exportAs:"matCalendarHeader",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:b},{type:M,decorators:[{type:r.Inject,args:[r.forwardRef((function(){return M}))]}]},{type:d.DateAdapter,decorators:[{type:r.Optional}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[d.MAT_DATE_FORMATS]}]},{type:r.ChangeDetectorRef}]},e}(),M=function(){function e(e,t,a,i){var n=this;if(this._dateAdapter=t,this._dateFormats=a,this._changeDetectorRef=i,this._moveFocusOnNextTick=!1,this.startView="month",this.selectedChange=new r.EventEmitter,this.yearSelected=new r.EventEmitter,this.monthSelected=new r.EventEmitter,this._userSelection=new r.EventEmitter,this.stateChanges=new l.Subject,!this._dateAdapter)throw y("DateAdapter");if(!this._dateFormats)throw y("MAT_DATE_FORMATS");this._intlChanges=e.changes.subscribe((function(){i.markForCheck(),n.stateChanges.next()}))}return Object.defineProperty(e.prototype,"startAt",{get:function(){return this._startAt},set:function(e){this._startAt=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"minDate",{get:function(){return this._minDate},set:function(e){this._minDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{get:function(){return this._maxDate},set:function(e){this._maxDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"activeDate",{get:function(){return this._clampedActiveDate},set:function(e){this._clampedActiveDate=this._dateAdapter.clampDate(e,this.minDate,this.maxDate),this.stateChanges.next(),this._changeDetectorRef.markForCheck()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"currentView",{get:function(){return this._currentView},set:function(e){this._currentView=e,this._moveFocusOnNextTick=!0,this._changeDetectorRef.markForCheck()},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){this._calendarHeaderPortal=new i.ComponentPortal(this.headerComponent||I),this.activeDate=this.startAt||this._dateAdapter.today(),this._currentView=this.startView},e.prototype.ngAfterViewChecked=function(){this._moveFocusOnNextTick&&(this._moveFocusOnNextTick=!1,this.focusActiveCell())},e.prototype.ngOnDestroy=function(){this._intlChanges.unsubscribe(),this.stateChanges.complete()},e.prototype.ngOnChanges=function(e){var t=e.minDate||e.maxDate||e.dateFilter;if(t&&!t.firstChange){var a=this._getCurrentViewComponent();a&&(this._changeDetectorRef.detectChanges(),a._init())}this.stateChanges.next()},e.prototype.focusActiveCell=function(){this._getCurrentViewComponent()._focusActiveCell()},e.prototype.updateTodaysDate=function(){var e=this.currentView;("month"===e?this.monthView:"year"===e?this.yearView:this.multiYearView).ngAfterContentInit()},e.prototype._dateSelected=function(e){e&&!this._dateAdapter.sameDate(e,this.selected)&&this.selectedChange.emit(e)},e.prototype._yearSelectedInMultiYearView=function(e){this.yearSelected.emit(e)},e.prototype._monthSelectedInYearView=function(e){this.monthSelected.emit(e)},e.prototype._userSelected=function(){this._userSelection.emit()},e.prototype._goToDateInView=function(e,t){this.activeDate=e,this.currentView=t},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.prototype._getCurrentViewComponent=function(){return this.monthView||this.yearView||this.multiYearView},e.decorators=[{type:r.Component,args:[{selector:"mat-calendar",template:'\n<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 (selectedChange)="_dateSelected($event)"\n (_userSelection)="_userSelected()">\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 (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 (yearSelected)="_yearSelectedInMultiYearView($event)"\n (selectedChange)="_goToDateInView($event, \'year\')">\n </mat-multi-year-view>\n</div>\n',host:{class:"mat-calendar"},exportAs:"matCalendar",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush,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(33% / 7 - 16px)}.mat-calendar-spacer{flex:1 1 auto}.mat-calendar-period-button{min-width:0}.mat-calendar-arrow{display:inline-block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top-width:5px;border-top-style:solid;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}.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}\n']}]}],e.ctorParameters=function(){return[{type:b},{type:d.DateAdapter,decorators:[{type:r.Optional}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[d.MAT_DATE_FORMATS]}]},{type:r.ChangeDetectorRef}]},e.propDecorators={headerComponent:[{type:r.Input}],startAt:[{type:r.Input}],startView:[{type:r.Input}],selected:[{type:r.Input}],minDate:[{type:r.Input}],maxDate:[{type:r.Input}],dateFilter:[{type:r.Input}],dateClass:[{type:r.Input}],selectedChange:[{type:r.Output}],yearSelected:[{type:r.Output}],monthSelected:[{type:r.Output}],_userSelection:[{type:r.Output}],monthView:[{type:r.ViewChild,args:[A]}],yearView:[{type:r.ViewChild,args:[V]}],multiYearView:[{type:r.ViewChild,args:[k]}]},e}(),R=function(e,t){return(R=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var a in t)t.hasOwnProperty(a)&&(e[a]=t[a])})(e,t)},E={transformPanel:_.trigger("transformPanel",[_.state("void",_.style({opacity:0,transform:"scale(1, 0.8)"})),_.transition("void => enter",_.animate("120ms cubic-bezier(0, 0, 0.2, 1)",_.style({opacity:1,transform:"scale(1, 1)"}))),_.transition("* => void",_.animate("100ms linear",_.style({opacity:0})))]),fadeInCalendar:_.trigger("fadeInCalendar",[_.state("void",_.style({opacity:0})),_.state("enter",_.style({opacity:1})),_.transition("void => *",_.animate("120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)"))])},S=0,P=new r.InjectionToken("mat-datepicker-scroll-strategy");
29
+ */(e.getYear(t)-V(e,a,i),k)}function V(e,t,a){var i=0;return a?i=e.getYear(a)-k+1:t&&(i=e.getYear(t)),i}var I=function(){function e(e,t,a,i){if(this._changeDetectorRef=e,this._dateFormats=t,this._dateAdapter=a,this._dir=i,this._rerenderSubscription=c.Subscription.EMPTY,this.selectedChange=new r.EventEmitter,this.monthSelected=new r.EventEmitter,this.activeDateChange=new r.EventEmitter,!this._dateAdapter)throw b("DateAdapter");if(!this._dateFormats)throw b("MAT_DATE_FORMATS");this._activeDate=this._dateAdapter.today()}return Object.defineProperty(e.prototype,"activeDate",{get:function(){return this._activeDate},set:function(e){var t=this._activeDate,a=this._getValidDateOrNull(this._dateAdapter.deserialize(e))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(a,this.minDate,this.maxDate),this._dateAdapter.getYear(t)!==this._dateAdapter.getYear(this._activeDate)&&this._init()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._selectedMonth=this._getMonthInCurrentYear(this._selected)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"minDate",{get:function(){return this._minDate},set:function(e){this._minDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{get:function(){return this._maxDate},set:function(e){this._maxDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){var e=this;this._rerenderSubscription=this._dateAdapter.localeChanges.pipe(u.startWith(null)).subscribe((function(){return e._init()}))},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe()},e.prototype._monthSelected=function(e){var t=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),e,1);this.monthSelected.emit(t);var a=this._dateAdapter.getNumDaysInMonth(t);this.selectedChange.emit(this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),e,Math.min(this._dateAdapter.getDate(this.activeDate),a)))},e.prototype._handleCalendarBodyKeydown=function(e){var t=this._activeDate,a=this._isRtl();switch(e.keyCode){case p.LEFT_ARROW:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,a?1:-1);break;case p.RIGHT_ARROW:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,a?-1:1);break;case p.UP_ARROW:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-4);break;case p.DOWN_ARROW:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,4);break;case p.HOME:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-this._dateAdapter.getMonth(this._activeDate));break;case p.END:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,11-this._dateAdapter.getMonth(this._activeDate));break;case p.PAGE_UP:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,e.altKey?-10:-1);break;case p.PAGE_DOWN:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,e.altKey?10:1);break;case p.ENTER:case p.SPACE:this._monthSelected(this._dateAdapter.getMonth(this._activeDate));break;default:return}this._dateAdapter.compareDate(t,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCell(),e.preventDefault()},e.prototype._init=function(){var e=this;this._selectedMonth=this._getMonthInCurrentYear(this.selected),this._todayMonth=this._getMonthInCurrentYear(this._dateAdapter.today()),this._yearLabel=this._dateAdapter.getYearName(this.activeDate);var t=this._dateAdapter.getMonthNames("short");this._months=[[0,1,2,3],[4,5,6,7],[8,9,10,11]].map((function(a){return a.map((function(a){return e._createCellForMonth(a,t[a])}))})),this._changeDetectorRef.markForCheck()},e.prototype._focusActiveCell=function(){this._matCalendarBody._focusActiveCell()},e.prototype._getMonthInCurrentYear=function(e){return e&&this._dateAdapter.getYear(e)==this._dateAdapter.getYear(this.activeDate)?this._dateAdapter.getMonth(e):null},e.prototype._createCellForMonth=function(e,t){var a=this._dateAdapter.format(this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),e,1),this._dateFormats.display.monthYearA11yLabel);return new D(e,t.toLocaleUpperCase(),a,this._shouldEnableMonth(e))},e.prototype._shouldEnableMonth=function(e){var t=this._dateAdapter.getYear(this.activeDate);if(null==e||this._isYearAndMonthAfterMaxDate(t,e)||this._isYearAndMonthBeforeMinDate(t,e))return!1;if(!this.dateFilter)return!0;for(var a=this._dateAdapter.createDate(t,e,1);this._dateAdapter.getMonth(a)==e;a=this._dateAdapter.addCalendarDays(a,1))if(this.dateFilter(a))return!0;return!1},e.prototype._isYearAndMonthAfterMaxDate=function(e,t){if(this.maxDate){var a=this._dateAdapter.getYear(this.maxDate),i=this._dateAdapter.getMonth(this.maxDate);return e>a||e===a&&t>i}return!1},e.prototype._isYearAndMonthBeforeMinDate=function(e,t){if(this.minDate){var a=this._dateAdapter.getYear(this.minDate),i=this._dateAdapter.getMonth(this.minDate);return e<a||e===a&&t<i}return!1},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.prototype._isRtl=function(){return this._dir&&"rtl"===this._dir.value},e.decorators=[{type:r.Component,args:[{selector:"mat-year-view",template:'<table class="mat-calendar-table" role="presentation">\n <thead 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 [selectedValue]="_selectedMonth!"\n [labelMinRequiredCells]="2"\n [numCols]="4"\n [cellAspectRatio]="4 / 7"\n [activeCell]="_dateAdapter.getMonth(activeDate)"\n (selectedValueChange)="_monthSelected($event)"\n (keydown)="_handleCalendarBodyKeydown($event)">\n </tbody>\n</table>\n',exportAs:"matYearView",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:r.ChangeDetectorRef},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[l.MAT_DATE_FORMATS]}]},{type:l.DateAdapter,decorators:[{type:r.Optional}]},{type:h.Directionality,decorators:[{type:r.Optional}]}]},e.propDecorators={activeDate:[{type:r.Input}],selected:[{type:r.Input}],minDate:[{type:r.Input}],maxDate:[{type:r.Input}],dateFilter:[{type:r.Input}],selectedChange:[{type:r.Output}],monthSelected:[{type:r.Output}],activeDateChange:[{type:r.Output}],_matCalendarBody:[{type:r.ViewChild,args:[A]}]},e}(),M=function(){function e(e,t,a,i,n){this._intl=e,this.calendar=t,this._dateAdapter=a,this._dateFormats=i,this.calendar.stateChanges.subscribe((function(){return n.markForCheck()}))}return Object.defineProperty(e.prototype,"periodButtonText",{get:function(){if("month"==this.calendar.currentView)return this._dateAdapter.format(this.calendar.activeDate,this._dateFormats.display.monthYearLabel).toLocaleUpperCase();if("year"==this.calendar.currentView)return this._dateAdapter.getYearName(this.calendar.activeDate);var e=this._dateAdapter.getYear(this.calendar.activeDate)-x(this._dateAdapter,this.calendar.activeDate,this.calendar.minDate,this.calendar.maxDate),t=e+k-1,a=this._dateAdapter.getYearName(this._dateAdapter.createDate(e,0,1)),i=this._dateAdapter.getYearName(this._dateAdapter.createDate(t,0,1));return this._intl.formatYearRange(a,i)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"periodButtonLabel",{get:function(){return"month"==this.calendar.currentView?this._intl.switchToMultiYearViewLabel:this._intl.switchToMonthViewLabel},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"prevButtonLabel",{get:function(){return{month:this._intl.prevMonthLabel,year:this._intl.prevYearLabel,"multi-year":this._intl.prevMultiYearLabel}[this.calendar.currentView]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nextButtonLabel",{get:function(){return{month:this._intl.nextMonthLabel,year:this._intl.nextYearLabel,"multi-year":this._intl.nextMultiYearLabel}[this.calendar.currentView]},enumerable:!0,configurable:!0}),e.prototype.currentPeriodClicked=function(){this.calendar.currentView="month"==this.calendar.currentView?"multi-year":"month"},e.prototype.previousClicked=function(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,-1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?-1:-k)},e.prototype.nextClicked=function(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?1:k)},e.prototype.previousEnabled=function(){return!this.calendar.minDate||!this.calendar.minDate||!this._isSameView(this.calendar.activeDate,this.calendar.minDate)},e.prototype.nextEnabled=function(){return!this.calendar.maxDate||!this._isSameView(this.calendar.activeDate,this.calendar.maxDate)},e.prototype._isSameView=function(e,t){return"month"==this.calendar.currentView?this._dateAdapter.getYear(e)==this._dateAdapter.getYear(t)&&this._dateAdapter.getMonth(e)==this._dateAdapter.getMonth(t):"year"==this.calendar.currentView?this._dateAdapter.getYear(e)==this._dateAdapter.getYear(t):O(this._dateAdapter,e,t,this.calendar.minDate,this.calendar.maxDate)},e.decorators=[{type:r.Component,args:[{selector:"mat-calendar-header",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 cdkAriaLive="polite">\n {{periodButtonText}}\n <div class="mat-calendar-arrow"\n [class.mat-calendar-invert]="calendar.currentView != \'month\'"></div>\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',exportAs:"matCalendarHeader",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:v},{type:R,decorators:[{type:r.Inject,args:[r.forwardRef((function(){return R}))]}]},{type:l.DateAdapter,decorators:[{type:r.Optional}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[l.MAT_DATE_FORMATS]}]},{type:r.ChangeDetectorRef}]},e}(),R=function(){function e(e,t,a,i){var n=this;if(this._dateAdapter=t,this._dateFormats=a,this._changeDetectorRef=i,this._moveFocusOnNextTick=!1,this.startView="month",this.selectedChange=new r.EventEmitter,this.yearSelected=new r.EventEmitter,this.monthSelected=new r.EventEmitter,this._userSelection=new r.EventEmitter,this.stateChanges=new c.Subject,!this._dateAdapter)throw b("DateAdapter");if(!this._dateFormats)throw b("MAT_DATE_FORMATS");this._intlChanges=e.changes.subscribe((function(){i.markForCheck(),n.stateChanges.next()}))}return Object.defineProperty(e.prototype,"startAt",{get:function(){return this._startAt},set:function(e){this._startAt=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"minDate",{get:function(){return this._minDate},set:function(e){this._minDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{get:function(){return this._maxDate},set:function(e){this._maxDate=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"activeDate",{get:function(){return this._clampedActiveDate},set:function(e){this._clampedActiveDate=this._dateAdapter.clampDate(e,this.minDate,this.maxDate),this.stateChanges.next(),this._changeDetectorRef.markForCheck()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"currentView",{get:function(){return this._currentView},set:function(e){this._currentView=e,this._moveFocusOnNextTick=!0,this._changeDetectorRef.markForCheck()},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){this._calendarHeaderPortal=new i.ComponentPortal(this.headerComponent||M),this.activeDate=this.startAt||this._dateAdapter.today(),this._currentView=this.startView},e.prototype.ngAfterViewChecked=function(){this._moveFocusOnNextTick&&(this._moveFocusOnNextTick=!1,this.focusActiveCell())},e.prototype.ngOnDestroy=function(){this._intlChanges.unsubscribe(),this.stateChanges.complete()},e.prototype.ngOnChanges=function(e){var t=e.minDate||e.maxDate||e.dateFilter;if(t&&!t.firstChange){var a=this._getCurrentViewComponent();a&&(this._changeDetectorRef.detectChanges(),a._init())}this.stateChanges.next()},e.prototype.focusActiveCell=function(){this._getCurrentViewComponent()._focusActiveCell()},e.prototype.updateTodaysDate=function(){var e=this.currentView;("month"===e?this.monthView:"year"===e?this.yearView:this.multiYearView)._init()},e.prototype._dateSelected=function(e){e&&!this._dateAdapter.sameDate(e,this.selected)&&this.selectedChange.emit(e)},e.prototype._yearSelectedInMultiYearView=function(e){this.yearSelected.emit(e)},e.prototype._monthSelectedInYearView=function(e){this.monthSelected.emit(e)},e.prototype._userSelected=function(){this._userSelection.emit()},e.prototype._goToDateInView=function(e,t){this.activeDate=e,this.currentView=t},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.prototype._getCurrentViewComponent=function(){return this.monthView||this.yearView||this.multiYearView},e.decorators=[{type:r.Component,args:[{selector:"mat-calendar",template:'\n<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 (selectedChange)="_dateSelected($event)"\n (_userSelection)="_userSelected()">\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 (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 (yearSelected)="_yearSelectedInMultiYearView($event)"\n (selectedChange)="_goToDateInView($event, \'year\')">\n </mat-multi-year-view>\n</div>\n',host:{class:"mat-calendar"},exportAs:"matCalendar",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush,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(33% / 7 - 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:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top-width:5px;border-top-style:solid;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}.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}\n']}]}],e.ctorParameters=function(){return[{type:v},{type:l.DateAdapter,decorators:[{type:r.Optional}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[l.MAT_DATE_FORMATS]}]},{type:r.ChangeDetectorRef}]},e.propDecorators={headerComponent:[{type:r.Input}],startAt:[{type:r.Input}],startView:[{type:r.Input}],selected:[{type:r.Input}],minDate:[{type:r.Input}],maxDate:[{type:r.Input}],dateFilter:[{type:r.Input}],dateClass:[{type:r.Input}],selectedChange:[{type:r.Output}],yearSelected:[{type:r.Output}],monthSelected:[{type:r.Output}],_userSelection:[{type:r.Output}],monthView:[{type:r.ViewChild,args:[C]}],yearView:[{type:r.ViewChild,args:[I]}],multiYearView:[{type:r.ViewChild,args:[w]}]},e}(),E=function(e,t){return(E=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var a in t)t.hasOwnProperty(a)&&(e[a]=t[a])})(e,t)},S={transformPanel:m.trigger("transformPanel",[m.state("void",m.style({opacity:0,transform:"scale(1, 0.8)"})),m.transition("void => enter",m.animate("120ms cubic-bezier(0, 0, 0.2, 1)",m.style({opacity:1,transform:"scale(1, 1)"}))),m.transition("* => void",m.animate("100ms linear",m.style({opacity:0})))]),fadeInCalendar:m.trigger("fadeInCalendar",[m.state("void",m.style({opacity:0})),m.state("enter",m.style({opacity:1})),m.transition("void => *",m.animate("120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)"))])},P=0,Y=new r.InjectionToken("mat-datepicker-scroll-strategy");
30
30
  /**
31
31
  * @license
32
32
  * Copyright Google LLC All Rights Reserved.
33
33
  *
34
34
  * Use of this source code is governed by an MIT-style license that can be
35
35
  * found in the LICENSE file at https://angular.io/license
36
- */function Y(e){return function(){return e.scrollStrategies.reposition()}}var T={provide:P,deps:[a.Overlay],useFactory:Y},F=function(e){function t(t,a){var i=e.call(this,t)||this;return i._changeDetectorRef=a,i._animationState="enter",i._animationDone=new l.Subject,i}return function a(e,t){function a(){this.constructor=e}R(e,t),e.prototype=null===t?Object.create(t):(a.prototype=t.prototype,new a)}(t,e),t.prototype.ngAfterViewInit=function(){this._calendar.focusActiveCell()},t.prototype.ngOnDestroy=function(){this._animationDone.complete()},t.prototype._startExitAnimation=function(){this._animationState="void",this._changeDetectorRef&&this._changeDetectorRef.markForCheck()},t.decorators=[{type:r.Component,args:[{selector:"mat-datepicker-content",template:'<mat-calendar cdkTrapFocus\n [id]="datepicker.id"\n [ngClass]="datepicker.panelClass"\n [startAt]="datepicker.startAt"\n [startView]="datepicker.startView"\n [minDate]="datepicker._minDate"\n [maxDate]="datepicker._maxDate"\n [dateFilter]="datepicker._dateFilter"\n [headerComponent]="datepicker.calendarHeaderComponent"\n [selected]="datepicker._selected"\n [dateClass]="datepicker.dateClass"\n [@fadeInCalendar]="\'enter\'"\n (selectedChange)="datepicker.select($event)"\n (yearSelected)="datepicker._selectYear($event)"\n (monthSelected)="datepicker._selectMonth($event)"\n (_userSelection)="datepicker.close()">\n</mat-calendar>\n',host:{class:"mat-datepicker-content","[@transformPanel]":"_animationState","(@transformPanel.done)":"_animationDone.next()","[class.mat-datepicker-content-touch]":"datepicker.touchUi"},animations:[E.transformPanel,E.fadeInCalendar],exportAs:"matDatepickerContent",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush,inputs:["color"],styles:[".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content-touch{display:block;max-height:80vh;overflow:auto;margin:-24px}.mat-datepicker-content-touch .mat-calendar{min-width:250px;min-height:312px;max-width:750px;max-height:788px}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-calendar{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-calendar{width:80vw;height:100vw}}\n"]}]}],t.ctorParameters=function(){return[{type:r.ElementRef},{type:r.ChangeDetectorRef}]},t.propDecorators={_calendar:[{type:r.ViewChild,args:[M]}]},t}(d.mixinColor((function N(e){this._elementRef=e}))),j=function(){function e(e,t,a,i,n,o,s,d){if(this._dialog=e,this._overlay=t,this._ngZone=a,this._viewContainerRef=i,this._dateAdapter=o,this._dir=s,this._document=d,this.startView="month",this._touchUi=!1,this.yearSelected=new r.EventEmitter,this.monthSelected=new r.EventEmitter,this.openedStream=new r.EventEmitter,this.closedStream=new r.EventEmitter,this._opened=!1,this.id="mat-datepicker-"+S++,this._validSelected=null,this._focusedElementBeforeOpen=null,this._inputSubscription=l.Subscription.EMPTY,this._disabledChange=new l.Subject,this._selectedChanged=new l.Subject,!this._dateAdapter)throw y("DateAdapter");this._scrollStrategy=n}return Object.defineProperty(e.prototype,"startAt",{get:function(){return this._startAt||(this._datepickerInput?this._datepickerInput.value:null)},set:function(e){this._startAt=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"color",{get:function(){return this._color||(this._datepickerInput?this._datepickerInput._getThemePalette():void 0)},set:function(e){this._color=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"touchUi",{get:function(){return this._touchUi},set:function(e){this._touchUi=u.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{get:function(){return void 0===this._disabled&&this._datepickerInput?this._datepickerInput.disabled:!!this._disabled},set:function(e){var t=u.coerceBooleanProperty(e);t!==this._disabled&&(this._disabled=t,this._disabledChange.next(t))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"opened",{get:function(){return this._opened},set:function(e){e?this.open():this.close()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_selected",{get:function(){return this._validSelected},set:function(e){this._validSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_minDate",{get:function(){return this._datepickerInput&&this._datepickerInput.min},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_maxDate",{get:function(){return this._datepickerInput&&this._datepickerInput.max},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_dateFilter",{get:function(){return this._datepickerInput&&this._datepickerInput._dateFilter},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this._destroyPopup(),this.close(),this._inputSubscription.unsubscribe(),this._disabledChange.complete()},e.prototype.select=function(e){var t=this._selected;this._selected=e,this._dateAdapter.sameDate(t,this._selected)||this._selectedChanged.next(e)},e.prototype._selectYear=function(e){this.yearSelected.emit(e)},e.prototype._selectMonth=function(e){this.monthSelected.emit(e)},e.prototype._registerInput=function(e){var t=this;if(this._datepickerInput)throw Error("A MatDatepicker can only be associated with a single input.");this._datepickerInput=e,this._inputSubscription=this._datepickerInput._valueChange.subscribe((function(e){return t._selected=e}))},e.prototype.open=function(){if(!this._opened&&!this.disabled){if(!this._datepickerInput)throw Error("Attempted to open an MatDatepicker with no associated input.");this._document&&(this._focusedElementBeforeOpen=this._document.activeElement),this.touchUi?this._openAsDialog():this._openAsPopup(),this._opened=!0,this.openedStream.emit()}},e.prototype.close=function(){var e=this;if(this._opened){if(this._popupComponentRef&&this._popupRef){var t=this._popupComponentRef.instance;t._startExitAnimation(),t._animationDone.pipe(h.take(1)).subscribe((function(){return e._destroyPopup()}))}this._dialogRef&&(this._dialogRef.close(),this._dialogRef=null);var a=function(){e._opened&&(e._opened=!1,e.closedStream.emit(),e._focusedElementBeforeOpen=null)};this._focusedElementBeforeOpen&&"function"==typeof this._focusedElementBeforeOpen.focus?(this._focusedElementBeforeOpen.focus(),setTimeout(a)):a()}},e.prototype._openAsDialog=function(){var e=this;this._dialogRef&&this._dialogRef.close(),this._dialogRef=this._dialog.open(F,{direction:this._dir?this._dir.value:"ltr",viewContainerRef:this._viewContainerRef,panelClass:"mat-datepicker-dialog",hasBackdrop:!0,disableClose:!1,width:"",height:"",minWidth:"",minHeight:"",maxWidth:"80vw",maxHeight:"",position:{},autoFocus:!0,restoreFocus:!0}),this._dialogRef.afterClosed().subscribe((function(){return e.close()})),this._dialogRef.componentInstance.datepicker=this,this._dialogRef.componentInstance.color=this.color},e.prototype._openAsPopup=function(){var e=this,t=new i.ComponentPortal(F,this._viewContainerRef);this._destroyPopup(),this._createPopup();var a=this._popupComponentRef=this._popupRef.attach(t);a.instance.datepicker=this,a.instance.color=this.color,this._ngZone.onStable.asObservable().pipe(h.take(1)).subscribe((function(){e._popupRef.updatePosition()}))},e.prototype._createPopup=function(){var e=this,t=new a.OverlayConfig({positionStrategy:this._createPopupPositionStrategy(),hasBackdrop:!0,backdropClass:"mat-overlay-transparent-backdrop",direction:this._dir,scrollStrategy:this._scrollStrategy(),panelClass:"mat-datepicker-popup"});this._popupRef=this._overlay.create(t),this._popupRef.overlayElement.setAttribute("role","dialog"),l.merge(this._popupRef.backdropClick(),this._popupRef.detachments(),this._popupRef.keydownEvents().pipe(h.filter((function(t){return t.keyCode===c.ESCAPE||e._datepickerInput&&t.altKey&&t.keyCode===c.UP_ARROW})))).subscribe((function(t){t&&t.preventDefault(),e.close()}))},e.prototype._destroyPopup=function(){this._popupRef&&(this._popupRef.dispose(),this._popupRef=this._popupComponentRef=null)},e.prototype._createPopupPositionStrategy=function(){return this._overlay.position().flexibleConnectedTo(this._datepickerInput.getConnectedOverlayOrigin()).withTransformOriginOn(".mat-datepicker-content").withFlexibleDimensions(!1).withViewportMargin(8).withLockedPosition().withPositions([{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"}])},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.decorators=[{type:r.Component,args:[{selector:"mat-datepicker",template:"",exportAs:"matDatepicker",changeDetection:r.ChangeDetectionStrategy.OnPush,encapsulation:r.ViewEncapsulation.None}]}],e.ctorParameters=function(){return[{type:s.MatDialog},{type:a.Overlay},{type:r.NgZone},{type:r.ViewContainerRef},{type:void 0,decorators:[{type:r.Inject,args:[P]}]},{type:d.DateAdapter,decorators:[{type:r.Optional}]},{type:p.Directionality,decorators:[{type:r.Optional}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[n.DOCUMENT]}]}]},e.propDecorators={calendarHeaderComponent:[{type:r.Input}],startAt:[{type:r.Input}],startView:[{type:r.Input}],color:[{type:r.Input}],touchUi:[{type:r.Input}],disabled:[{type:r.Input}],yearSelected:[{type:r.Output}],monthSelected:[{type:r.Output}],panelClass:[{type:r.Input}],dateClass:[{type:r.Input}],openedStream:[{type:r.Output,args:["opened"]}],closedStream:[{type:r.Output,args:["closed"]}],opened:[{type:r.Input}]},e}(),L={provide:m.NG_VALUE_ACCESSOR,useExisting:r.forwardRef((function(){return z})),multi:!0},B={provide:m.NG_VALIDATORS,useExisting:r.forwardRef((function(){return z})),multi:!0},W=function W(e,t){this.target=e,this.targetElement=t,this.value=this.target.value},z=function(){function e(e,t,a,i){var n=this;if(this._elementRef=e,this._dateAdapter=t,this._dateFormats=a,this._formField=i,this.dateChange=new r.EventEmitter,this.dateInput=new r.EventEmitter,this._valueChange=new r.EventEmitter,this._disabledChange=new r.EventEmitter,this._onTouched=function(){},this._cvaOnChange=function(){},this._validatorOnChange=function(){},this._datepickerSubscription=l.Subscription.EMPTY,this._localeSubscription=l.Subscription.EMPTY,this._parseValidator=function(){return n._lastValueValid?null:{matDatepickerParse:{text:n._elementRef.nativeElement.value}}},this._minValidator=function(e){var t=n._getValidDateOrNull(n._dateAdapter.deserialize(e.value));return!n.min||!t||n._dateAdapter.compareDate(n.min,t)<=0?null:{matDatepickerMin:{min:n.min,actual:t}}},this._maxValidator=function(e){var t=n._getValidDateOrNull(n._dateAdapter.deserialize(e.value));return!n.max||!t||n._dateAdapter.compareDate(n.max,t)>=0?null:{matDatepickerMax:{max:n.max,actual:t}}},this._filterValidator=function(e){var t=n._getValidDateOrNull(n._dateAdapter.deserialize(e.value));return n._dateFilter&&t&&!n._dateFilter(t)?{matDatepickerFilter:!0}:null},this._validator=m.Validators.compose([this._parseValidator,this._minValidator,this._maxValidator,this._filterValidator]),this._lastValueValid=!1,!this._dateAdapter)throw y("DateAdapter");if(!this._dateFormats)throw y("MAT_DATE_FORMATS");this._localeSubscription=t.localeChanges.subscribe((function(){n.value=n.value}))}return Object.defineProperty(e.prototype,"matDatepicker",{set:function(e){var t=this;e&&(this._datepicker=e,this._datepicker._registerInput(this),this._datepickerSubscription.unsubscribe(),this._datepickerSubscription=this._datepicker._selectedChanged.subscribe((function(e){t.value=e,t._cvaOnChange(e),t._onTouched(),t.dateInput.emit(new W(t,t._elementRef.nativeElement)),t.dateChange.emit(new W(t,t._elementRef.nativeElement))})))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"matDatepickerFilter",{set:function(e){this._dateFilter=e,this._validatorOnChange()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){e=this._dateAdapter.deserialize(e),this._lastValueValid=!e||this._dateAdapter.isValid(e),e=this._getValidDateOrNull(e);var t=this.value;this._value=e,this._formatValue(e),this._dateAdapter.sameDate(t,e)||this._valueChange.emit(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"min",{get:function(){return this._min},set:function(e){this._min=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._validatorOnChange()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"max",{get:function(){return this._max},set:function(e){this._max=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._validatorOnChange()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{get:function(){return!!this._disabled},set:function(e){var t=u.coerceBooleanProperty(e),a=this._elementRef.nativeElement;this._disabled!==t&&(this._disabled=t,this._disabledChange.emit(t)),t&&a.blur&&a.blur()},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this._datepickerSubscription.unsubscribe(),this._localeSubscription.unsubscribe(),this._valueChange.complete(),this._disabledChange.complete()},e.prototype.registerOnValidatorChange=function(e){this._validatorOnChange=e},e.prototype.validate=function(e){return this._validator?this._validator(e):null},e.prototype.getPopupConnectionElementRef=function(){return this.getConnectedOverlayOrigin()},e.prototype.getConnectedOverlayOrigin=function(){return this._formField?this._formField.getConnectedOverlayOrigin():this._elementRef},e.prototype.writeValue=function(e){this.value=e},e.prototype.registerOnChange=function(e){this._cvaOnChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e.prototype._onKeydown=function(e){this._datepicker&&e.altKey&&e.keyCode===c.DOWN_ARROW&&!this._elementRef.nativeElement.readOnly&&(this._datepicker.open(),e.preventDefault())},e.prototype._onInput=function(e){var t=this._lastValueValid,a=this._dateAdapter.parse(e,this._dateFormats.parse.dateInput);this._lastValueValid=!a||this._dateAdapter.isValid(a),a=this._getValidDateOrNull(a),this._dateAdapter.sameDate(a,this._value)?t!==this._lastValueValid&&this._validatorOnChange():(this._value=a,this._cvaOnChange(a),this._valueChange.emit(a),this.dateInput.emit(new W(this,this._elementRef.nativeElement)))},e.prototype._onChange=function(){this.dateChange.emit(new W(this,this._elementRef.nativeElement))},e.prototype._getThemePalette=function(){return this._formField?this._formField.color:void 0},e.prototype._onBlur=function(){this.value&&this._formatValue(this.value),this._onTouched()},e.prototype._formatValue=function(e){this._elementRef.nativeElement.value=e?this._dateAdapter.format(e,this._dateFormats.display.dateInput):""},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.decorators=[{type:r.Directive,args:[{selector:"input[matDatepicker]",providers:[L,B,{provide:g.MAT_INPUT_VALUE_ACCESSOR,useExisting:e}],host:{"[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","[disabled]":"disabled","(input)":"_onInput($event.target.value)","(change)":"_onChange()","(blur)":"_onBlur()","(keydown)":"_onKeydown($event)"},exportAs:"matDatepickerInput"}]}],e.ctorParameters=function(){return[{type:r.ElementRef},{type:d.DateAdapter,decorators:[{type:r.Optional}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[d.MAT_DATE_FORMATS]}]},{type:f.MatFormField,decorators:[{type:r.Optional},{type:r.Inject,args:[f.MAT_FORM_FIELD]}]}]},e.propDecorators={matDatepicker:[{type:r.Input}],matDatepickerFilter:[{type:r.Input}],value:[{type:r.Input}],min:[{type:r.Input}],max:[{type:r.Input}],disabled:[{type:r.Input}],dateChange:[{type:r.Output}],dateInput:[{type:r.Output}]},e}(),q=function(){function e(){}return e.decorators=[{type:r.Directive,args:[{selector:"[matDatepickerToggleIcon]"}]}],e}(),U=function(){function e(e,t,a){this._intl=e,this._changeDetectorRef=t,this._stateChanges=l.Subscription.EMPTY;var i=Number(a);this.tabIndex=i||0===i?i:null}return Object.defineProperty(e.prototype,"disabled",{get:function(){return void 0===this._disabled&&this.datepicker?this.datepicker.disabled:!!this._disabled},set:function(e){this._disabled=u.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),e.prototype.ngOnChanges=function(e){e.datepicker&&this._watchStateChanges()},e.prototype.ngOnDestroy=function(){this._stateChanges.unsubscribe()},e.prototype.ngAfterContentInit=function(){this._watchStateChanges()},e.prototype._open=function(e){this.datepicker&&!this.disabled&&(this.datepicker.open(),e.stopPropagation())},e.prototype._watchStateChanges=function(){var e=this,t=this.datepicker?this.datepicker._disabledChange:l.of(),a=this.datepicker&&this.datepicker._datepickerInput?this.datepicker._datepickerInput._disabledChange:l.of(),i=this.datepicker?l.merge(this.datepicker.openedStream,this.datepicker.closedStream):l.of();this._stateChanges.unsubscribe(),this._stateChanges=l.merge(this._intl.changes,t,a,i).subscribe((function(){return e._changeDetectorRef.markForCheck()}))},e.decorators=[{type:r.Component,args:[{selector:"mat-datepicker-toggle",template:'<button\n #button\n mat-icon-button\n type="button"\n [attr.aria-haspopup]="datepicker ? \'dialog\' : null"\n [attr.aria-label]="_intl.openCalendarLabel"\n [attr.tabindex]="disabled ? -1 : tabIndex"\n [disabled]="disabled"\n [disableRipple]="disableRipple"\n (click)="_open($event)">\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',host:{class:"mat-datepicker-toggle","[attr.tabindex]":"disabled ? null : -1","[class.mat-datepicker-toggle-active]":"datepicker && datepicker.opened","[class.mat-accent]":'datepicker && datepicker.color === "accent"',"[class.mat-warn]":'datepicker && datepicker.color === "warn"',"(focus)":"_button.focus()"},exportAs:"matDatepickerToggle",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush,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}\n"]}]}],e.ctorParameters=function(){return[{type:b},{type:r.ChangeDetectorRef},{type:String,decorators:[{type:r.Attribute,args:["tabindex"]}]}]},e.propDecorators={datepicker:[{type:r.Input,args:["for"]}],tabIndex:[{type:r.Input}],disabled:[{type:r.Input}],disableRipple:[{type:r.Input}],_customIcon:[{type:r.ContentChild,args:[q]}],_button:[{type:r.ViewChild,args:["button"]}]},e}(),K=function(){function e(){}return e.decorators=[{type:r.NgModule,args:[{imports:[n.CommonModule,o.MatButtonModule,s.MatDialogModule,a.OverlayModule,t.A11yModule,i.PortalModule],exports:[M,v,j,F,z,U,q,A,V,k,I],declarations:[M,v,j,F,z,U,q,A,V,k,I],providers:[b,T],entryComponents:[F,I]}]}],e}();
36
+ */function T(e){return function(){return e.scrollStrategies.reposition()}}var F={provide:Y,deps:[a.Overlay],useFactory:T},N=function(e){function t(t,a){var i=e.call(this,t)||this;return i._changeDetectorRef=a,i._animationState="enter",i._animationDone=new c.Subject,i}return function a(e,t){function a(){this.constructor=e}E(e,t),e.prototype=null===t?Object.create(t):(a.prototype=t.prototype,new a)}(t,e),t.prototype.ngAfterViewInit=function(){this._calendar.focusActiveCell()},t.prototype.ngOnDestroy=function(){this._animationDone.complete()},t.prototype._startExitAnimation=function(){this._animationState="void",this._changeDetectorRef&&this._changeDetectorRef.markForCheck()},t.decorators=[{type:r.Component,args:[{selector:"mat-datepicker-content",template:'<mat-calendar cdkTrapFocus\n [id]="datepicker.id"\n [ngClass]="datepicker.panelClass"\n [startAt]="datepicker.startAt"\n [startView]="datepicker.startView"\n [minDate]="datepicker._minDate"\n [maxDate]="datepicker._maxDate"\n [dateFilter]="datepicker._dateFilter"\n [headerComponent]="datepicker.calendarHeaderComponent"\n [selected]="datepicker._selected"\n [dateClass]="datepicker.dateClass"\n [@fadeInCalendar]="\'enter\'"\n (selectedChange)="datepicker.select($event)"\n (yearSelected)="datepicker._selectYear($event)"\n (monthSelected)="datepicker._selectMonth($event)"\n (_userSelection)="datepicker.close()">\n</mat-calendar>\n',host:{class:"mat-datepicker-content","[@transformPanel]":"_animationState","(@transformPanel.done)":"_animationDone.next()","[class.mat-datepicker-content-touch]":"datepicker.touchUi"},animations:[S.transformPanel,S.fadeInCalendar],exportAs:"matDatepickerContent",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush,inputs:["color"],styles:[".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content-touch{display:block;max-height:80vh;overflow:auto;margin:-24px}.mat-datepicker-content-touch .mat-calendar{min-width:250px;min-height:312px;max-width:750px;max-height:788px}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-calendar{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-calendar{width:80vw;height:100vw}}\n"]}]}],t.ctorParameters=function(){return[{type:r.ElementRef},{type:r.ChangeDetectorRef}]},t.propDecorators={_calendar:[{type:r.ViewChild,args:[R]}]},t}(l.mixinColor((function j(e){this._elementRef=e}))),L=function(){function e(e,t,a,i,n,o,s,d){if(this._dialog=e,this._overlay=t,this._ngZone=a,this._viewContainerRef=i,this._dateAdapter=o,this._dir=s,this._document=d,this.startView="month",this._touchUi=!1,this.yearSelected=new r.EventEmitter,this.monthSelected=new r.EventEmitter,this.openedStream=new r.EventEmitter,this.closedStream=new r.EventEmitter,this._opened=!1,this.id="mat-datepicker-"+P++,this._validSelected=null,this._focusedElementBeforeOpen=null,this._inputSubscription=c.Subscription.EMPTY,this._disabledChange=new c.Subject,this._selectedChanged=new c.Subject,!this._dateAdapter)throw b("DateAdapter");this._scrollStrategy=n}return Object.defineProperty(e.prototype,"startAt",{get:function(){return this._startAt||(this._datepickerInput?this._datepickerInput.value:null)},set:function(e){this._startAt=this._getValidDateOrNull(this._dateAdapter.deserialize(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"color",{get:function(){return this._color||(this._datepickerInput?this._datepickerInput._getThemePalette():void 0)},set:function(e){this._color=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"touchUi",{get:function(){return this._touchUi},set:function(e){this._touchUi=_.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{get:function(){return void 0===this._disabled&&this._datepickerInput?this._datepickerInput.disabled:!!this._disabled},set:function(e){var t=_.coerceBooleanProperty(e);t!==this._disabled&&(this._disabled=t,this._disabledChange.next(t))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"opened",{get:function(){return this._opened},set:function(e){e?this.open():this.close()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_selected",{get:function(){return this._validSelected},set:function(e){this._validSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_minDate",{get:function(){return this._datepickerInput&&this._datepickerInput.min},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_maxDate",{get:function(){return this._datepickerInput&&this._datepickerInput.max},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_dateFilter",{get:function(){return this._datepickerInput&&this._datepickerInput._dateFilter},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this._destroyPopup(),this.close(),this._inputSubscription.unsubscribe(),this._disabledChange.complete()},e.prototype.select=function(e){var t=this._selected;this._selected=e,this._dateAdapter.sameDate(t,this._selected)||this._selectedChanged.next(e)},e.prototype._selectYear=function(e){this.yearSelected.emit(e)},e.prototype._selectMonth=function(e){this.monthSelected.emit(e)},e.prototype._registerInput=function(e){var t=this;if(this._datepickerInput)throw Error("A MatDatepicker can only be associated with a single input.");this._datepickerInput=e,this._inputSubscription=this._datepickerInput._valueChange.subscribe((function(e){return t._selected=e}))},e.prototype.open=function(){if(!this._opened&&!this.disabled){if(!this._datepickerInput)throw Error("Attempted to open an MatDatepicker with no associated input.");this._document&&(this._focusedElementBeforeOpen=this._document.activeElement),this.touchUi?this._openAsDialog():this._openAsPopup(),this._opened=!0,this.openedStream.emit()}},e.prototype.close=function(){var e=this;if(this._opened){if(this._popupComponentRef&&this._popupRef){var t=this._popupComponentRef.instance;t._startExitAnimation(),t._animationDone.pipe(u.take(1)).subscribe((function(){return e._destroyPopup()}))}this._dialogRef&&(this._dialogRef.close(),this._dialogRef=null);var a=function(){e._opened&&(e._opened=!1,e.closedStream.emit(),e._focusedElementBeforeOpen=null)};this._focusedElementBeforeOpen&&"function"==typeof this._focusedElementBeforeOpen.focus?(this._focusedElementBeforeOpen.focus(),setTimeout(a)):a()}},e.prototype._openAsDialog=function(){var e=this;this._dialogRef&&this._dialogRef.close(),this._dialogRef=this._dialog.open(N,{direction:this._dir?this._dir.value:"ltr",viewContainerRef:this._viewContainerRef,panelClass:"mat-datepicker-dialog",hasBackdrop:!0,disableClose:!1,width:"",height:"",minWidth:"",minHeight:"",maxWidth:"80vw",maxHeight:"",position:{},autoFocus:!0,restoreFocus:!1}),this._dialogRef.afterClosed().subscribe((function(){return e.close()})),this._dialogRef.componentInstance.datepicker=this,this._dialogRef.componentInstance.color=this.color},e.prototype._openAsPopup=function(){var e=this,t=new i.ComponentPortal(N,this._viewContainerRef);this._destroyPopup(),this._createPopup();var a=this._popupComponentRef=this._popupRef.attach(t);a.instance.datepicker=this,a.instance.color=this.color,this._ngZone.onStable.asObservable().pipe(u.take(1)).subscribe((function(){e._popupRef.updatePosition()}))},e.prototype._createPopup=function(){var e=this,t=new a.OverlayConfig({positionStrategy:this._createPopupPositionStrategy(),hasBackdrop:!0,backdropClass:"mat-overlay-transparent-backdrop",direction:this._dir,scrollStrategy:this._scrollStrategy(),panelClass:"mat-datepicker-popup"});this._popupRef=this._overlay.create(t),this._popupRef.overlayElement.setAttribute("role","dialog"),c.merge(this._popupRef.backdropClick(),this._popupRef.detachments(),this._popupRef.keydownEvents().pipe(u.filter((function(t){return t.keyCode===p.ESCAPE||e._datepickerInput&&t.altKey&&t.keyCode===p.UP_ARROW})))).subscribe((function(t){t&&t.preventDefault(),e.close()}))},e.prototype._destroyPopup=function(){this._popupRef&&(this._popupRef.dispose(),this._popupRef=this._popupComponentRef=null)},e.prototype._createPopupPositionStrategy=function(){return this._overlay.position().flexibleConnectedTo(this._datepickerInput.getConnectedOverlayOrigin()).withTransformOriginOn(".mat-datepicker-content").withFlexibleDimensions(!1).withViewportMargin(8).withLockedPosition().withPositions([{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"}])},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.decorators=[{type:r.Component,args:[{selector:"mat-datepicker",template:"",exportAs:"matDatepicker",changeDetection:r.ChangeDetectionStrategy.OnPush,encapsulation:r.ViewEncapsulation.None}]}],e.ctorParameters=function(){return[{type:s.MatDialog},{type:a.Overlay},{type:r.NgZone},{type:r.ViewContainerRef},{type:void 0,decorators:[{type:r.Inject,args:[Y]}]},{type:l.DateAdapter,decorators:[{type:r.Optional}]},{type:h.Directionality,decorators:[{type:r.Optional}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[n.DOCUMENT]}]}]},e.propDecorators={calendarHeaderComponent:[{type:r.Input}],startAt:[{type:r.Input}],startView:[{type:r.Input}],color:[{type:r.Input}],touchUi:[{type:r.Input}],disabled:[{type:r.Input}],yearSelected:[{type:r.Output}],monthSelected:[{type:r.Output}],panelClass:[{type:r.Input}],dateClass:[{type:r.Input}],openedStream:[{type:r.Output,args:["opened"]}],closedStream:[{type:r.Output,args:["closed"]}],opened:[{type:r.Input}]},e}(),B={provide:g.NG_VALUE_ACCESSOR,useExisting:r.forwardRef((function(){return q})),multi:!0},W={provide:g.NG_VALIDATORS,useExisting:r.forwardRef((function(){return q})),multi:!0},z=function z(e,t){this.target=e,this.targetElement=t,this.value=this.target.value},q=function(){function e(e,t,a,i){var n=this;if(this._elementRef=e,this._dateAdapter=t,this._dateFormats=a,this._formField=i,this.dateChange=new r.EventEmitter,this.dateInput=new r.EventEmitter,this._valueChange=new r.EventEmitter,this._disabledChange=new r.EventEmitter,this._onTouched=function(){},this._cvaOnChange=function(){},this._validatorOnChange=function(){},this._datepickerSubscription=c.Subscription.EMPTY,this._localeSubscription=c.Subscription.EMPTY,this._parseValidator=function(){return n._lastValueValid?null:{matDatepickerParse:{text:n._elementRef.nativeElement.value}}},this._minValidator=function(e){var t=n._getValidDateOrNull(n._dateAdapter.deserialize(e.value));return!n.min||!t||n._dateAdapter.compareDate(n.min,t)<=0?null:{matDatepickerMin:{min:n.min,actual:t}}},this._maxValidator=function(e){var t=n._getValidDateOrNull(n._dateAdapter.deserialize(e.value));return!n.max||!t||n._dateAdapter.compareDate(n.max,t)>=0?null:{matDatepickerMax:{max:n.max,actual:t}}},this._filterValidator=function(e){var t=n._getValidDateOrNull(n._dateAdapter.deserialize(e.value));return n._dateFilter&&t&&!n._dateFilter(t)?{matDatepickerFilter:!0}:null},this._validator=g.Validators.compose([this._parseValidator,this._minValidator,this._maxValidator,this._filterValidator]),this._lastValueValid=!1,!this._dateAdapter)throw b("DateAdapter");if(!this._dateFormats)throw b("MAT_DATE_FORMATS");this._localeSubscription=t.localeChanges.subscribe((function(){n.value=n.value}))}return Object.defineProperty(e.prototype,"matDatepicker",{set:function(e){var t=this;e&&(this._datepicker=e,this._datepicker._registerInput(this),this._datepickerSubscription.unsubscribe(),this._datepickerSubscription=this._datepicker._selectedChanged.subscribe((function(e){t.value=e,t._cvaOnChange(e),t._onTouched(),t.dateInput.emit(new z(t,t._elementRef.nativeElement)),t.dateChange.emit(new z(t,t._elementRef.nativeElement))})))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"matDatepickerFilter",{set:function(e){this._dateFilter=e,this._validatorOnChange()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){e=this._dateAdapter.deserialize(e),this._lastValueValid=!e||this._dateAdapter.isValid(e),e=this._getValidDateOrNull(e);var t=this.value;this._value=e,this._formatValue(e),this._dateAdapter.sameDate(t,e)||this._valueChange.emit(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"min",{get:function(){return this._min},set:function(e){this._min=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._validatorOnChange()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"max",{get:function(){return this._max},set:function(e){this._max=this._getValidDateOrNull(this._dateAdapter.deserialize(e)),this._validatorOnChange()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{get:function(){return!!this._disabled},set:function(e){var t=_.coerceBooleanProperty(e),a=this._elementRef.nativeElement;this._disabled!==t&&(this._disabled=t,this._disabledChange.emit(t)),t&&this._isInitialized&&a.blur&&a.blur()},enumerable:!0,configurable:!0}),e.prototype.ngAfterViewInit=function(){this._isInitialized=!0},e.prototype.ngOnDestroy=function(){this._datepickerSubscription.unsubscribe(),this._localeSubscription.unsubscribe(),this._valueChange.complete(),this._disabledChange.complete()},e.prototype.registerOnValidatorChange=function(e){this._validatorOnChange=e},e.prototype.validate=function(e){return this._validator?this._validator(e):null},e.prototype.getPopupConnectionElementRef=function(){return this.getConnectedOverlayOrigin()},e.prototype.getConnectedOverlayOrigin=function(){return this._formField?this._formField.getConnectedOverlayOrigin():this._elementRef},e.prototype.writeValue=function(e){this.value=e},e.prototype.registerOnChange=function(e){this._cvaOnChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e.prototype._onKeydown=function(e){this._datepicker&&e.altKey&&e.keyCode===p.DOWN_ARROW&&!this._elementRef.nativeElement.readOnly&&(this._datepicker.open(),e.preventDefault())},e.prototype._onInput=function(e){var t=this._lastValueValid,a=this._dateAdapter.parse(e,this._dateFormats.parse.dateInput);this._lastValueValid=!a||this._dateAdapter.isValid(a),a=this._getValidDateOrNull(a),this._dateAdapter.sameDate(a,this._value)?t!==this._lastValueValid&&this._validatorOnChange():(this._value=a,this._cvaOnChange(a),this._valueChange.emit(a),this.dateInput.emit(new z(this,this._elementRef.nativeElement)))},e.prototype._onChange=function(){this.dateChange.emit(new z(this,this._elementRef.nativeElement))},e.prototype._getThemePalette=function(){return this._formField?this._formField.color:void 0},e.prototype._onBlur=function(){this.value&&this._formatValue(this.value),this._onTouched()},e.prototype._formatValue=function(e){this._elementRef.nativeElement.value=e?this._dateAdapter.format(e,this._dateFormats.display.dateInput):""},e.prototype._getValidDateOrNull=function(e){return this._dateAdapter.isDateInstance(e)&&this._dateAdapter.isValid(e)?e:null},e.decorators=[{type:r.Directive,args:[{selector:"input[matDatepicker]",providers:[B,W,{provide:y.MAT_INPUT_VALUE_ACCESSOR,useExisting:e}],host:{"[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","[disabled]":"disabled","(input)":"_onInput($event.target.value)","(change)":"_onChange()","(blur)":"_onBlur()","(keydown)":"_onKeydown($event)"},exportAs:"matDatepickerInput"}]}],e.ctorParameters=function(){return[{type:r.ElementRef},{type:l.DateAdapter,decorators:[{type:r.Optional}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[l.MAT_DATE_FORMATS]}]},{type:f.MatFormField,decorators:[{type:r.Optional},{type:r.Inject,args:[f.MAT_FORM_FIELD]}]}]},e.propDecorators={matDatepicker:[{type:r.Input}],matDatepickerFilter:[{type:r.Input}],value:[{type:r.Input}],min:[{type:r.Input}],max:[{type:r.Input}],disabled:[{type:r.Input}],dateChange:[{type:r.Output}],dateInput:[{type:r.Output}]},e}(),U=function(){function e(){}return e.decorators=[{type:r.Directive,args:[{selector:"[matDatepickerToggleIcon]"}]}],e}(),K=function(){function e(e,t,a){this._intl=e,this._changeDetectorRef=t,this._stateChanges=c.Subscription.EMPTY;var i=Number(a);this.tabIndex=i||0===i?i:null}return Object.defineProperty(e.prototype,"disabled",{get:function(){return void 0===this._disabled&&this.datepicker?this.datepicker.disabled:!!this._disabled},set:function(e){this._disabled=_.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),e.prototype.ngOnChanges=function(e){e.datepicker&&this._watchStateChanges()},e.prototype.ngOnDestroy=function(){this._stateChanges.unsubscribe()},e.prototype.ngAfterContentInit=function(){this._watchStateChanges()},e.prototype._open=function(e){this.datepicker&&!this.disabled&&(this.datepicker.open(),e.stopPropagation())},e.prototype._watchStateChanges=function(){var e=this,t=this.datepicker?this.datepicker._disabledChange:c.of(),a=this.datepicker&&this.datepicker._datepickerInput?this.datepicker._datepickerInput._disabledChange:c.of(),i=this.datepicker?c.merge(this.datepicker.openedStream,this.datepicker.closedStream):c.of();this._stateChanges.unsubscribe(),this._stateChanges=c.merge(this._intl.changes,t,a,i).subscribe((function(){return e._changeDetectorRef.markForCheck()}))},e.decorators=[{type:r.Component,args:[{selector:"mat-datepicker-toggle",template:'<button\n #button\n mat-icon-button\n type="button"\n [attr.aria-haspopup]="datepicker ? \'dialog\' : null"\n [attr.aria-label]="_intl.openCalendarLabel"\n [attr.tabindex]="disabled ? -1 : tabIndex"\n [disabled]="disabled"\n [disableRipple]="disableRipple"\n (click)="_open($event)">\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',host:{class:"mat-datepicker-toggle","[attr.tabindex]":"disabled ? null : -1","[class.mat-datepicker-toggle-active]":"datepicker && datepicker.opened","[class.mat-accent]":'datepicker && datepicker.color === "accent"',"[class.mat-warn]":'datepicker && datepicker.color === "warn"',"(focus)":"_button.focus()"},exportAs:"matDatepickerToggle",encapsulation:r.ViewEncapsulation.None,changeDetection:r.ChangeDetectionStrategy.OnPush,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}\n"]}]}],e.ctorParameters=function(){return[{type:v},{type:r.ChangeDetectorRef},{type:String,decorators:[{type:r.Attribute,args:["tabindex"]}]}]},e.propDecorators={datepicker:[{type:r.Input,args:["for"]}],tabIndex:[{type:r.Input}],disabled:[{type:r.Input}],disableRipple:[{type:r.Input}],_customIcon:[{type:r.ContentChild,args:[U]}],_button:[{type:r.ViewChild,args:["button"]}]},e}(),H=function(){function e(){}return e.decorators=[{type:r.NgModule,args:[{imports:[n.CommonModule,o.MatButtonModule,s.MatDialogModule,a.OverlayModule,t.A11yModule,i.PortalModule],exports:[d.CdkScrollableModule,R,A,L,N,q,K,U,C,I,w,M],declarations:[R,A,L,N,q,K,U,C,I,w,M],providers:[v,F],entryComponents:[N,M]}]}],e}();
37
37
  /**
38
38
  * @license
39
39
  * Copyright Google LLC All Rights Reserved.
@@ -41,4 +41,4 @@
41
41
  * Use of this source code is governed by an MIT-style license that can be
42
42
  * found in the LICENSE file at https://angular.io/license
43
43
  */
44
- e.MAT_DATEPICKER_SCROLL_STRATEGY=P,e.MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY=Y,e.MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER=T,e.MAT_DATEPICKER_VALIDATORS=B,e.MAT_DATEPICKER_VALUE_ACCESSOR=L,e.MatCalendar=M,e.MatCalendarBody=v,e.MatCalendarCell=D,e.MatCalendarHeader=I,e.MatDatepicker=j,e.MatDatepickerContent=F,e.MatDatepickerInput=z,e.MatDatepickerInputEvent=W,e.MatDatepickerIntl=b,e.MatDatepickerModule=K,e.MatDatepickerToggle=U,e.MatDatepickerToggleIcon=q,e.MatMonthView=A,e.MatMultiYearView=k,e.MatYearView=V,e.matDatepickerAnimations=E,e.yearsPerPage=C,e.yearsPerRow=4,Object.defineProperty(e,"__esModule",{value:!0})}));
44
+ e.MAT_DATEPICKER_SCROLL_STRATEGY=Y,e.MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY=T,e.MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER=F,e.MAT_DATEPICKER_VALIDATORS=W,e.MAT_DATEPICKER_VALUE_ACCESSOR=B,e.MatCalendar=R,e.MatCalendarBody=A,e.MatCalendarCell=D,e.MatCalendarHeader=M,e.MatDatepicker=L,e.MatDatepickerContent=N,e.MatDatepickerInput=q,e.MatDatepickerInputEvent=z,e.MatDatepickerIntl=v,e.MatDatepickerModule=H,e.MatDatepickerToggle=K,e.MatDatepickerToggleIcon=U,e.MatMonthView=C,e.MatMultiYearView=w,e.MatYearView=I,e.matDatepickerAnimations=S,e.yearsPerPage=k,e.yearsPerRow=4,Object.defineProperty(e,"__esModule",{value:!0})}));