@angular/material 9.2.1 → 9.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. package/autocomplete/index.metadata.json +1 -1
  2. package/autocomplete/testing/autocomplete-harness.d.ts +4 -1
  3. package/badge/index.metadata.json +1 -1
  4. package/bundles/material-autocomplete-testing.umd.js +55 -8
  5. package/bundles/material-autocomplete-testing.umd.js.map +1 -1
  6. package/bundles/material-autocomplete-testing.umd.min.js +4 -5
  7. package/bundles/material-autocomplete-testing.umd.min.js.map +1 -1
  8. package/bundles/material-autocomplete.umd.js +5 -4
  9. package/bundles/material-autocomplete.umd.js.map +1 -1
  10. package/bundles/material-autocomplete.umd.min.js +2 -2
  11. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  12. package/bundles/material-badge.umd.js +1 -1
  13. package/bundles/material-badge.umd.js.map +1 -1
  14. package/bundles/material-badge.umd.min.js +1 -1
  15. package/bundles/material-badge.umd.min.js.map +1 -1
  16. package/bundles/material-button-toggle.umd.js +15 -5
  17. package/bundles/material-button-toggle.umd.js.map +1 -1
  18. package/bundles/material-button-toggle.umd.min.js +3 -3
  19. package/bundles/material-button-toggle.umd.min.js.map +1 -1
  20. package/bundles/material-chips.umd.js +3 -0
  21. package/bundles/material-chips.umd.js.map +1 -1
  22. package/bundles/material-chips.umd.min.js +1 -1
  23. package/bundles/material-chips.umd.min.js.map +1 -1
  24. package/bundles/material-core.umd.js +2 -2
  25. package/bundles/material-core.umd.js.map +1 -1
  26. package/bundles/material-core.umd.min.js +1 -1
  27. package/bundles/material-core.umd.min.js.map +1 -1
  28. package/bundles/material-datepicker.umd.js +12 -5
  29. package/bundles/material-datepicker.umd.js.map +1 -1
  30. package/bundles/material-datepicker.umd.min.js +7 -7
  31. package/bundles/material-datepicker.umd.min.js.map +1 -1
  32. package/bundles/material-dialog.umd.js +10 -5
  33. package/bundles/material-dialog.umd.js.map +1 -1
  34. package/bundles/material-dialog.umd.min.js +1 -1
  35. package/bundles/material-dialog.umd.min.js.map +1 -1
  36. package/bundles/material-input.umd.js +14 -4
  37. package/bundles/material-input.umd.js.map +1 -1
  38. package/bundles/material-input.umd.min.js +1 -1
  39. package/bundles/material-input.umd.min.js.map +1 -1
  40. package/bundles/material-list.umd.js +4 -3
  41. package/bundles/material-list.umd.js.map +1 -1
  42. package/bundles/material-list.umd.min.js +2 -2
  43. package/bundles/material-list.umd.min.js.map +1 -1
  44. package/bundles/material-menu.umd.js +5 -5
  45. package/bundles/material-menu.umd.js.map +1 -1
  46. package/bundles/material-menu.umd.min.js +6 -6
  47. package/bundles/material-menu.umd.min.js.map +1 -1
  48. package/bundles/material-radio.umd.js +62 -47
  49. package/bundles/material-radio.umd.js.map +1 -1
  50. package/bundles/material-radio.umd.min.js +10 -2
  51. package/bundles/material-radio.umd.min.js.map +1 -1
  52. package/bundles/material-select-testing.umd.js +45 -10
  53. package/bundles/material-select-testing.umd.js.map +1 -1
  54. package/bundles/material-select-testing.umd.min.js +2 -3
  55. package/bundles/material-select-testing.umd.min.js.map +1 -1
  56. package/bundles/material-select.umd.js +23 -14
  57. package/bundles/material-select.umd.js.map +1 -1
  58. package/bundles/material-select.umd.min.js +3 -3
  59. package/bundles/material-select.umd.min.js.map +1 -1
  60. package/bundles/material-sidenav.umd.js +2 -1
  61. package/bundles/material-sidenav.umd.js.map +1 -1
  62. package/bundles/material-sidenav.umd.min.js +2 -2
  63. package/bundles/material-sidenav.umd.min.js.map +1 -1
  64. package/bundles/material-table.umd.js +1 -1
  65. package/bundles/material-table.umd.js.map +1 -1
  66. package/bundles/material-table.umd.min.js +1 -1
  67. package/bundles/material-table.umd.min.js.map +1 -1
  68. package/bundles/material-tabs.umd.js +4 -3
  69. package/bundles/material-tabs.umd.js.map +1 -1
  70. package/bundles/material-tabs.umd.min.js +4 -4
  71. package/bundles/material-tabs.umd.min.js.map +1 -1
  72. package/bundles/material-tooltip.umd.js +5 -5
  73. package/bundles/material-tooltip.umd.js.map +1 -1
  74. package/bundles/material-tooltip.umd.min.js +3 -3
  75. package/bundles/material-tooltip.umd.min.js.map +1 -1
  76. package/bundles/material-tree.umd.js +1 -1
  77. package/bundles/material-tree.umd.js.map +1 -1
  78. package/bundles/material-tree.umd.min.js +1 -1
  79. package/bundles/material-tree.umd.min.js.map +1 -1
  80. package/core/index.metadata.json +1 -1
  81. package/datepicker/index.metadata.json +1 -1
  82. package/dialog/dialog-ref.d.ts +5 -0
  83. package/dialog/index.metadata.json +1 -1
  84. package/esm2015/autocomplete/autocomplete-module.js +3 -1
  85. package/esm2015/autocomplete/testing/autocomplete-harness.js +18 -7
  86. package/esm2015/badge/badge-module.js +2 -2
  87. package/esm2015/button-toggle/button-toggle.js +17 -6
  88. package/esm2015/chips/chip-list.js +4 -1
  89. package/esm2015/core/common-behaviors/common-module.js +1 -1
  90. package/esm2015/core/version.js +1 -1
  91. package/esm2015/datepicker/datepicker-module.js +3 -1
  92. package/esm2015/datepicker/datepicker.js +8 -2
  93. package/esm2015/dialog/dialog-ref.js +13 -6
  94. package/esm2015/input/input.js +16 -6
  95. package/esm2015/list/selection-list.js +8 -5
  96. package/esm2015/menu/menu-module.js +3 -2
  97. package/esm2015/radio/public-api.js +2 -2
  98. package/esm2015/radio/radio.js +70 -59
  99. package/esm2015/select/select-module.js +10 -2
  100. package/esm2015/select/select.js +12 -10
  101. package/esm2015/select/testing/select-harness.js +11 -6
  102. package/esm2015/sidenav/sidenav-module.js +4 -3
  103. package/esm2015/table/table-module.js +2 -2
  104. package/esm2015/tabs/paginated-tab-header.js +3 -2
  105. package/esm2015/tabs/tab-header.js +1 -1
  106. package/esm2015/tabs/tab-nav-bar/tab-nav-bar.js +1 -1
  107. package/esm2015/tooltip/tooltip-module.js +3 -2
  108. package/esm2015/tree/tree-module.js +2 -2
  109. package/esm5/autocomplete/autocomplete-module.js +3 -1
  110. package/esm5/autocomplete/testing/autocomplete-harness.js +56 -9
  111. package/esm5/badge/badge-module.js +2 -2
  112. package/esm5/button-toggle/button-toggle.js +16 -6
  113. package/esm5/chips/chip-list.js +4 -1
  114. package/esm5/core/common-behaviors/common-module.js +1 -1
  115. package/esm5/core/version.js +1 -1
  116. package/esm5/datepicker/datepicker-module.js +3 -1
  117. package/esm5/datepicker/datepicker.js +8 -2
  118. package/esm5/dialog/dialog-ref.js +11 -6
  119. package/esm5/input/input.js +16 -6
  120. package/esm5/list/selection-list.js +5 -4
  121. package/esm5/menu/menu-module.js +3 -2
  122. package/esm5/radio/radio.js +63 -48
  123. package/esm5/select/select-module.js +10 -2
  124. package/esm5/select/select.js +12 -10
  125. package/esm5/select/testing/select-harness.js +46 -11
  126. package/esm5/sidenav/sidenav-module.js +4 -3
  127. package/esm5/table/table-module.js +2 -2
  128. package/esm5/tabs/paginated-tab-header.js +3 -2
  129. package/esm5/tabs/tab-header.js +1 -1
  130. package/esm5/tabs/tab-nav-bar/tab-nav-bar.js +1 -1
  131. package/esm5/tooltip/tooltip-module.js +3 -2
  132. package/esm5/tree/tree-module.js +2 -2
  133. package/fesm2015/autocomplete/testing.js +17 -6
  134. package/fesm2015/autocomplete/testing.js.map +1 -1
  135. package/fesm2015/autocomplete.js +2 -1
  136. package/fesm2015/autocomplete.js.map +1 -1
  137. package/fesm2015/badge.js +1 -1
  138. package/fesm2015/badge.js.map +1 -1
  139. package/fesm2015/button-toggle.js +16 -5
  140. package/fesm2015/button-toggle.js.map +1 -1
  141. package/fesm2015/chips.js +3 -0
  142. package/fesm2015/chips.js.map +1 -1
  143. package/fesm2015/core.js +2 -2
  144. package/fesm2015/core.js.map +1 -1
  145. package/fesm2015/datepicker.js +9 -1
  146. package/fesm2015/datepicker.js.map +1 -1
  147. package/fesm2015/dialog.js +12 -5
  148. package/fesm2015/dialog.js.map +1 -1
  149. package/fesm2015/input.js +15 -5
  150. package/fesm2015/input.js.map +1 -1
  151. package/fesm2015/list.js +7 -4
  152. package/fesm2015/list.js.map +1 -1
  153. package/fesm2015/menu.js +2 -1
  154. package/fesm2015/menu.js.map +1 -1
  155. package/fesm2015/radio.js +71 -60
  156. package/fesm2015/radio.js.map +1 -1
  157. package/fesm2015/select/testing.js +10 -5
  158. package/fesm2015/select/testing.js.map +1 -1
  159. package/fesm2015/select.js +20 -11
  160. package/fesm2015/select.js.map +1 -1
  161. package/fesm2015/sidenav.js +3 -2
  162. package/fesm2015/sidenav.js.map +1 -1
  163. package/fesm2015/table.js +1 -1
  164. package/fesm2015/table.js.map +1 -1
  165. package/fesm2015/tabs.js +4 -3
  166. package/fesm2015/tabs.js.map +1 -1
  167. package/fesm2015/tooltip.js +2 -2
  168. package/fesm2015/tooltip.js.map +1 -1
  169. package/fesm2015/tree.js +1 -1
  170. package/fesm2015/tree.js.map +1 -1
  171. package/fesm5/autocomplete/testing.js +55 -8
  172. package/fesm5/autocomplete/testing.js.map +1 -1
  173. package/fesm5/autocomplete.js +2 -1
  174. package/fesm5/autocomplete.js.map +1 -1
  175. package/fesm5/badge.js +1 -1
  176. package/fesm5/badge.js.map +1 -1
  177. package/fesm5/button-toggle.js +15 -5
  178. package/fesm5/button-toggle.js.map +1 -1
  179. package/fesm5/chips.js +3 -0
  180. package/fesm5/chips.js.map +1 -1
  181. package/fesm5/core.js +2 -2
  182. package/fesm5/core.js.map +1 -1
  183. package/fesm5/datepicker.js +9 -1
  184. package/fesm5/datepicker.js.map +1 -1
  185. package/fesm5/dialog.js +10 -5
  186. package/fesm5/dialog.js.map +1 -1
  187. package/fesm5/input.js +15 -5
  188. package/fesm5/input.js.map +1 -1
  189. package/fesm5/list.js +4 -3
  190. package/fesm5/list.js.map +1 -1
  191. package/fesm5/menu.js +2 -1
  192. package/fesm5/menu.js.map +1 -1
  193. package/fesm5/radio.js +63 -49
  194. package/fesm5/radio.js.map +1 -1
  195. package/fesm5/select/testing.js +45 -10
  196. package/fesm5/select/testing.js.map +1 -1
  197. package/fesm5/select.js +20 -11
  198. package/fesm5/select.js.map +1 -1
  199. package/fesm5/sidenav.js +3 -2
  200. package/fesm5/sidenav.js.map +1 -1
  201. package/fesm5/table.js +1 -1
  202. package/fesm5/table.js.map +1 -1
  203. package/fesm5/tabs.js +4 -3
  204. package/fesm5/tabs.js.map +1 -1
  205. package/fesm5/tooltip.js +2 -2
  206. package/fesm5/tooltip.js.map +1 -1
  207. package/fesm5/tree.js +1 -1
  208. package/fesm5/tree.js.map +1 -1
  209. package/input/index.metadata.json +1 -1
  210. package/menu/index.metadata.json +1 -1
  211. package/package.json +2 -2
  212. package/radio/index.metadata.json +1 -1
  213. package/radio/radio.d.ts +8 -2
  214. package/schematics/collection.json +0 -7
  215. package/schematics/ng-add/index.js +1 -1
  216. package/schematics/ng-update/index.js +23 -23
  217. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/find-hammer-script-tags.d.ts +1 -1
  218. package/schematics/ng-update/migrations/hammer-gestures-v9/find-hammer-script-tags.js +51 -0
  219. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/find-main-module.d.ts +1 -1
  220. package/schematics/ng-update/migrations/hammer-gestures-v9/find-main-module.js +41 -0
  221. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/gesture-config.template +0 -0
  222. 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
  223. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +784 -0
  224. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/hammer-template-check.d.ts +1 -1
  225. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-template-check.js +65 -0
  226. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/import-manager.d.ts +4 -4
  227. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +379 -0
  228. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/remove-array-element.d.ts +1 -1
  229. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-array-element.js +75 -0
  230. package/schematics/ng-update/{upgrade-rules → migrations}/hammer-gestures-v9/remove-element-from-html.d.ts +1 -1
  231. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-element-from-html.js +37 -0
  232. package/schematics/ng-update/migrations/misc-checks/misc-class-inheritance.d.ts +19 -0
  233. package/schematics/ng-update/migrations/misc-checks/misc-class-inheritance.js +57 -0
  234. package/schematics/ng-update/{upgrade-rules/misc-checks/misc-class-names-rule.d.ts → migrations/misc-checks/misc-class-names.d.ts} +5 -5
  235. package/schematics/ng-update/migrations/misc-checks/misc-class-names.js +52 -0
  236. package/schematics/ng-update/{upgrade-rules/misc-checks/misc-imports-rule.d.ts → migrations/misc-checks/misc-imports.d.ts} +5 -5
  237. package/schematics/ng-update/migrations/misc-checks/misc-imports.js +63 -0
  238. package/schematics/ng-update/{upgrade-rules/misc-checks/misc-property-names-rule.d.ts → migrations/misc-checks/misc-property-names.d.ts} +5 -5
  239. package/schematics/ng-update/migrations/misc-checks/misc-property-names.js +56 -0
  240. package/schematics/ng-update/migrations/misc-checks/misc-template.d.ts +17 -0
  241. package/schematics/ng-update/migrations/misc-checks/misc-template.js +69 -0
  242. 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
  243. package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor-migration.js +147 -0
  244. package/schematics/ng-update/{upgrade-rules → migrations}/misc-ripples-v7/ripple-speed-factor.d.ts +1 -1
  245. package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor.js +39 -0
  246. package/schematics/ng-update/{upgrade-rules → migrations}/package-imports-v8/material-symbols.json +0 -0
  247. 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
  248. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +177 -0
  249. package/schematics/ng-update/upgrade-data.d.ts +2 -2
  250. package/schematics/ng-update/upgrade-data.js +1 -1
  251. package/select/index.metadata.json +1 -1
  252. package/select/testing/select-harness.d.ts +2 -1
  253. package/sidenav/index.metadata.json +1 -1
  254. package/table/index.metadata.json +1 -1
  255. package/tabs/_tabs-common.scss +5 -3
  256. package/tabs/index.metadata.json +1 -1
  257. package/tooltip/index.metadata.json +1 -1
  258. package/tree/index.metadata.json +1 -1
  259. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/find-hammer-script-tags.js +0 -51
  260. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/find-main-module.js +0 -41
  261. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/hammer-gestures-rule.js +0 -781
  262. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/hammer-template-check.js +0 -65
  263. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/import-manager.js +0 -379
  264. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/remove-array-element.js +0 -75
  265. package/schematics/ng-update/upgrade-rules/hammer-gestures-v9/remove-element-from-html.js +0 -37
  266. package/schematics/ng-update/upgrade-rules/misc-checks/misc-class-inheritance-rule.d.ts +0 -19
  267. package/schematics/ng-update/upgrade-rules/misc-checks/misc-class-inheritance-rule.js +0 -57
  268. package/schematics/ng-update/upgrade-rules/misc-checks/misc-class-names-rule.js +0 -52
  269. package/schematics/ng-update/upgrade-rules/misc-checks/misc-imports-rule.js +0 -63
  270. package/schematics/ng-update/upgrade-rules/misc-checks/misc-property-names-rule.js +0 -56
  271. package/schematics/ng-update/upgrade-rules/misc-checks/misc-template-rule.d.ts +0 -17
  272. package/schematics/ng-update/upgrade-rules/misc-checks/misc-template-rule.js +0 -69
  273. package/schematics/ng-update/upgrade-rules/misc-ripples-v7/ripple-speed-factor-rule.js +0 -147
  274. package/schematics/ng-update/upgrade-rules/misc-ripples-v7/ripple-speed-factor.js +0 -39
  275. package/schematics/ng-update/upgrade-rules/package-imports-v8/secondary-entry-points-rule.js +0 -177
@@ -0,0 +1,75 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ (function (factory) {
9
+ if (typeof module === "object" && typeof module.exports === "object") {
10
+ var v = factory(require, exports);
11
+ if (v !== undefined) module.exports = v;
12
+ }
13
+ else if (typeof define === "function" && define.amd) {
14
+ define("@angular/material/schematics/ng-update/migrations/hammer-gestures-v9/remove-array-element", ["require", "exports", "typescript"], factory);
15
+ }
16
+ })(function (require, exports) {
17
+ "use strict";
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ const ts = require("typescript");
20
+ /**
21
+ * Retrieves the parent syntax list of the given node. A syntax list node is usually
22
+ * hidden from the default AST node hierarchy because it only contains information that
23
+ * is need when printing a node. e.g. it contains information about comma positions in
24
+ * an array literal expression.
25
+ */
26
+ function getParentSyntaxList(node) {
27
+ if (!node.parent) {
28
+ return null;
29
+ }
30
+ const parent = node.parent;
31
+ const { pos, end } = node;
32
+ for (const child of parent.getChildren()) {
33
+ if (child.pos > end || child === node) {
34
+ return null;
35
+ }
36
+ if (child.kind === ts.SyntaxKind.SyntaxList && child.pos <= pos && child.end >= end) {
37
+ return child;
38
+ }
39
+ }
40
+ return null;
41
+ }
42
+ exports.getParentSyntaxList = getParentSyntaxList;
43
+ /** Looks for the trailing comma of the given element within the syntax list. */
44
+ function findTrailingCommaToken(list, element) {
45
+ let foundElement = false;
46
+ for (let child of list.getChildren()) {
47
+ if (!foundElement && child === element) {
48
+ foundElement = true;
49
+ }
50
+ else if (foundElement) {
51
+ if (child.kind === ts.SyntaxKind.CommaToken) {
52
+ return child;
53
+ }
54
+ break;
55
+ }
56
+ }
57
+ return null;
58
+ }
59
+ /** Removes a given element from its parent array literal expression. */
60
+ function removeElementFromArrayExpression(element, recorder) {
61
+ recorder.remove(element.getFullStart(), element.getFullWidth());
62
+ const syntaxList = getParentSyntaxList(element);
63
+ if (!syntaxList) {
64
+ return;
65
+ }
66
+ // if there is a trailing comma token for the element, we need to remove it
67
+ // because otherwise the array literal expression will have syntax failures.
68
+ const trailingComma = findTrailingCommaToken(syntaxList, element);
69
+ if (trailingComma !== null) {
70
+ recorder.remove(trailingComma.getFullStart(), trailingComma.getFullWidth());
71
+ }
72
+ }
73
+ exports.removeElementFromArrayExpression = removeElementFromArrayExpression;
74
+ });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWFycmF5LWVsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwvc2NoZW1hdGljcy9uZy11cGRhdGUvbWlncmF0aW9ucy9oYW1tZXItZ2VzdHVyZXMtdjkvcmVtb3ZlLWFycmF5LWVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUFHSCxpQ0FBaUM7SUFFakM7Ozs7O09BS0c7SUFDSCxTQUFnQixtQkFBbUIsQ0FBQyxJQUFhO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLE1BQU0sRUFBQyxHQUFHLEVBQUUsR0FBRyxFQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3hDLElBQUksS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtnQkFDckMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsSUFBSSxLQUFLLENBQUMsR0FBRyxJQUFJLEdBQUcsSUFBSSxLQUFLLENBQUMsR0FBRyxJQUFJLEdBQUcsRUFBRTtnQkFDbkYsT0FBTyxLQUFzQixDQUFDO2FBQy9CO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFoQkQsa0RBZ0JDO0lBRUQsZ0ZBQWdGO0lBQ2hGLFNBQVMsc0JBQXNCLENBQUMsSUFBbUIsRUFBRSxPQUFnQjtRQUNuRSxJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDekIsS0FBSyxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDcEMsSUFBSSxDQUFDLFlBQVksSUFBSSxLQUFLLEtBQUssT0FBTyxFQUFFO2dCQUN0QyxZQUFZLEdBQUcsSUFBSSxDQUFDO2FBQ3JCO2lCQUFNLElBQUksWUFBWSxFQUFFO2dCQUN2QixJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEVBQUU7b0JBQzNDLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2dCQUNELE1BQU07YUFDUDtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsd0VBQXdFO0lBQ3hFLFNBQWdCLGdDQUFnQyxDQUFDLE9BQWdCLEVBQUUsUUFBd0I7UUFDekYsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLEVBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7UUFFaEUsTUFBTSxVQUFVLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNmLE9BQU87U0FDUjtRQUVELDJFQUEyRTtRQUMzRSw0RUFBNEU7UUFDNUUsTUFBTSxhQUFhLEdBQUcsc0JBQXNCLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xFLElBQUksYUFBYSxLQUFLLElBQUksRUFBRTtZQUMxQixRQUFRLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztTQUM3RTtJQUNILENBQUM7SUFkRCw0RUFjQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1VwZGF0ZVJlY29yZGVyfSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcyc7XG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIHBhcmVudCBzeW50YXggbGlzdCBvZiB0aGUgZ2l2ZW4gbm9kZS4gQSBzeW50YXggbGlzdCBub2RlIGlzIHVzdWFsbHlcbiAqIGhpZGRlbiBmcm9tIHRoZSBkZWZhdWx0IEFTVCBub2RlIGhpZXJhcmNoeSBiZWNhdXNlIGl0IG9ubHkgY29udGFpbnMgaW5mb3JtYXRpb24gdGhhdFxuICogaXMgbmVlZCB3aGVuIHByaW50aW5nIGEgbm9kZS4gZS5nLiBpdCBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCBjb21tYSBwb3NpdGlvbnMgaW5cbiAqIGFuIGFycmF5IGxpdGVyYWwgZXhwcmVzc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFBhcmVudFN5bnRheExpc3Qobm9kZTogdHMuTm9kZSk6IHRzLlN5bnRheExpc3R8bnVsbCB7XG4gIGlmICghbm9kZS5wYXJlbnQpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBwYXJlbnQgPSBub2RlLnBhcmVudDtcbiAgY29uc3Qge3BvcywgZW5kfSA9IG5vZGU7XG4gIGZvciAoY29uc3QgY2hpbGQgb2YgcGFyZW50LmdldENoaWxkcmVuKCkpIHtcbiAgICBpZiAoY2hpbGQucG9zID4gZW5kIHx8IGNoaWxkID09PSBub2RlKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoY2hpbGQua2luZCA9PT0gdHMuU3ludGF4S2luZC5TeW50YXhMaXN0ICYmIGNoaWxkLnBvcyA8PSBwb3MgJiYgY2hpbGQuZW5kID49IGVuZCkge1xuICAgICAgcmV0dXJuIGNoaWxkIGFzIHRzLlN5bnRheExpc3Q7XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG4vKiogTG9va3MgZm9yIHRoZSB0cmFpbGluZyBjb21tYSBvZiB0aGUgZ2l2ZW4gZWxlbWVudCB3aXRoaW4gdGhlIHN5bnRheCBsaXN0LiAqL1xuZnVuY3Rpb24gZmluZFRyYWlsaW5nQ29tbWFUb2tlbihsaXN0OiB0cy5TeW50YXhMaXN0LCBlbGVtZW50OiB0cy5Ob2RlKTogdHMuTm9kZXxudWxsIHtcbiAgbGV0IGZvdW5kRWxlbWVudCA9IGZhbHNlO1xuICBmb3IgKGxldCBjaGlsZCBvZiBsaXN0LmdldENoaWxkcmVuKCkpIHtcbiAgICBpZiAoIWZvdW5kRWxlbWVudCAmJiBjaGlsZCA9PT0gZWxlbWVudCkge1xuICAgICAgZm91bmRFbGVtZW50ID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKGZvdW5kRWxlbWVudCkge1xuICAgICAgaWYgKGNoaWxkLmtpbmQgPT09IHRzLlN5bnRheEtpbmQuQ29tbWFUb2tlbikge1xuICAgICAgICByZXR1cm4gY2hpbGQ7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbi8qKiBSZW1vdmVzIGEgZ2l2ZW4gZWxlbWVudCBmcm9tIGl0cyBwYXJlbnQgYXJyYXkgbGl0ZXJhbCBleHByZXNzaW9uLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUVsZW1lbnRGcm9tQXJyYXlFeHByZXNzaW9uKGVsZW1lbnQ6IHRzLk5vZGUsIHJlY29yZGVyOiBVcGRhdGVSZWNvcmRlcikge1xuICByZWNvcmRlci5yZW1vdmUoZWxlbWVudC5nZXRGdWxsU3RhcnQoKSwgZWxlbWVudC5nZXRGdWxsV2lkdGgoKSk7XG5cbiAgY29uc3Qgc3ludGF4TGlzdCA9IGdldFBhcmVudFN5bnRheExpc3QoZWxlbWVudCk7XG4gIGlmICghc3ludGF4TGlzdCkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8vIGlmIHRoZXJlIGlzIGEgdHJhaWxpbmcgY29tbWEgdG9rZW4gZm9yIHRoZSBlbGVtZW50LCB3ZSBuZWVkIHRvIHJlbW92ZSBpdFxuICAvLyBiZWNhdXNlIG90aGVyd2lzZSB0aGUgYXJyYXkgbGl0ZXJhbCBleHByZXNzaW9uIHdpbGwgaGF2ZSBzeW50YXggZmFpbHVyZXMuXG4gIGNvbnN0IHRyYWlsaW5nQ29tbWEgPSBmaW5kVHJhaWxpbmdDb21tYVRva2VuKHN5bnRheExpc3QsIGVsZW1lbnQpO1xuICBpZiAodHJhaWxpbmdDb21tYSAhPT0gbnVsbCkge1xuICAgIHJlY29yZGVyLnJlbW92ZSh0cmFpbGluZ0NvbW1hLmdldEZ1bGxTdGFydCgpLCB0cmFpbGluZ0NvbW1hLmdldEZ1bGxXaWR0aCgpKTtcbiAgfVxufVxuIl19
@@ -5,7 +5,7 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- /// <amd-module name="@angular/material/schematics/ng-update/upgrade-rules/hammer-gestures-v9/remove-element-from-html" />
8
+ /// <amd-module name="@angular/material/schematics/ng-update/migrations/hammer-gestures-v9/remove-element-from-html" />
9
9
  import { UpdateRecorder } from '@angular-devkit/schematics';
10
10
  import { parse5 } from '@angular/cdk/schematics';
11
11
  /**
@@ -0,0 +1,37 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ (function (factory) {
9
+ if (typeof module === "object" && typeof module.exports === "object") {
10
+ var v = factory(require, exports);
11
+ if (v !== undefined) module.exports = v;
12
+ }
13
+ else if (typeof define === "function" && define.amd) {
14
+ define("@angular/material/schematics/ng-update/migrations/hammer-gestures-v9/remove-element-from-html", ["require", "exports"], factory);
15
+ }
16
+ })(function (require, exports) {
17
+ "use strict";
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ /**
20
+ * Removes the specified element. Additionally, preceding whitespace will be removed
21
+ * to not leave empty lines in the resulting HTML.
22
+ */
23
+ function removeElementFromHtml(element, recorder) {
24
+ // sourceCodeLocation is always set since we parse with location info enabled.
25
+ const { startOffset, endOffset } = element.sourceCodeLocation;
26
+ const parentIndex = element.parentNode.childNodes.indexOf(element);
27
+ const precedingTextSibling = element.parentNode.childNodes.find((f, i) => f.nodeName === '#text' && i === parentIndex - 1);
28
+ recorder.remove(startOffset, endOffset - startOffset);
29
+ // If we found a preceding text node which just consists of whitespace, remove it.
30
+ if (precedingTextSibling && /^\s+$/.test(precedingTextSibling.value)) {
31
+ const textSiblingLocation = precedingTextSibling.sourceCodeLocation;
32
+ recorder.remove(textSiblingLocation.startOffset, textSiblingLocation.endOffset - textSiblingLocation.startOffset);
33
+ }
34
+ }
35
+ exports.removeElementFromHtml = removeElementFromHtml;
36
+ });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWVsZW1lbnQtZnJvbS1odG1sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvaGFtbWVyLWdlc3R1cmVzLXY5L3JlbW92ZS1lbGVtZW50LWZyb20taHRtbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7OztJQUtIOzs7T0FHRztJQUNILFNBQWdCLHFCQUFxQixDQUNqQyxPQUFrQyxFQUFFLFFBQXdCO1FBQzlELDhFQUE4RTtRQUM5RSxNQUFNLEVBQUMsV0FBVyxFQUFFLFNBQVMsRUFBQyxHQUFHLE9BQU8sQ0FBQyxrQkFBbUIsQ0FBQztRQUM3RCxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkUsTUFBTSxvQkFBb0IsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzNELENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBbUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsS0FBSyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFaEcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsU0FBUyxHQUFHLFdBQVcsQ0FBQyxDQUFDO1FBRXRELGtGQUFrRjtRQUNsRixJQUFJLG9CQUFvQixJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEUsTUFBTSxtQkFBbUIsR0FBRyxvQkFBb0IsQ0FBQyxrQkFBbUIsQ0FBQztZQUNyRSxRQUFRLENBQUMsTUFBTSxDQUNYLG1CQUFtQixDQUFDLFdBQVcsRUFDL0IsbUJBQW1CLENBQUMsU0FBUyxHQUFHLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3RFO0lBQ0gsQ0FBQztJQWpCRCxzREFpQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtVcGRhdGVSZWNvcmRlcn0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3MnO1xuaW1wb3J0IHtwYXJzZTV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY2hlbWF0aWNzJztcblxuLyoqXG4gKiBSZW1vdmVzIHRoZSBzcGVjaWZpZWQgZWxlbWVudC4gQWRkaXRpb25hbGx5LCBwcmVjZWRpbmcgd2hpdGVzcGFjZSB3aWxsIGJlIHJlbW92ZWRcbiAqIHRvIG5vdCBsZWF2ZSBlbXB0eSBsaW5lcyBpbiB0aGUgcmVzdWx0aW5nIEhUTUwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVFbGVtZW50RnJvbUh0bWwoXG4gICAgZWxlbWVudDogcGFyc2U1LkRlZmF1bHRUcmVlRWxlbWVudCwgcmVjb3JkZXI6IFVwZGF0ZVJlY29yZGVyKSB7XG4gIC8vIHNvdXJjZUNvZGVMb2NhdGlvbiBpcyBhbHdheXMgc2V0IHNpbmNlIHdlIHBhcnNlIHdpdGggbG9jYXRpb24gaW5mbyBlbmFibGVkLlxuICBjb25zdCB7c3RhcnRPZmZzZXQsIGVuZE9mZnNldH0gPSBlbGVtZW50LnNvdXJjZUNvZGVMb2NhdGlvbiE7XG4gIGNvbnN0IHBhcmVudEluZGV4ID0gZWxlbWVudC5wYXJlbnROb2RlLmNoaWxkTm9kZXMuaW5kZXhPZihlbGVtZW50KTtcbiAgY29uc3QgcHJlY2VkaW5nVGV4dFNpYmxpbmcgPSBlbGVtZW50LnBhcmVudE5vZGUuY2hpbGROb2Rlcy5maW5kKFxuICAgICAgKGYsIGkpOiBmIGlzIHBhcnNlNS5EZWZhdWx0VHJlZVRleHROb2RlID0+IGYubm9kZU5hbWUgPT09ICcjdGV4dCcgJiYgaSA9PT0gcGFyZW50SW5kZXggLSAxKTtcblxuICByZWNvcmRlci5yZW1vdmUoc3RhcnRPZmZzZXQsIGVuZE9mZnNldCAtIHN0YXJ0T2Zmc2V0KTtcblxuICAvLyBJZiB3ZSBmb3VuZCBhIHByZWNlZGluZyB0ZXh0IG5vZGUgd2hpY2gganVzdCBjb25zaXN0cyBvZiB3aGl0ZXNwYWNlLCByZW1vdmUgaXQuXG4gIGlmIChwcmVjZWRpbmdUZXh0U2libGluZyAmJiAvXlxccyskLy50ZXN0KHByZWNlZGluZ1RleHRTaWJsaW5nLnZhbHVlKSkge1xuICAgIGNvbnN0IHRleHRTaWJsaW5nTG9jYXRpb24gPSBwcmVjZWRpbmdUZXh0U2libGluZy5zb3VyY2VDb2RlTG9jYXRpb24hO1xuICAgIHJlY29yZGVyLnJlbW92ZShcbiAgICAgICAgdGV4dFNpYmxpbmdMb2NhdGlvbi5zdGFydE9mZnNldCxcbiAgICAgICAgdGV4dFNpYmxpbmdMb2NhdGlvbi5lbmRPZmZzZXQgLSB0ZXh0U2libGluZ0xvY2F0aW9uLnN0YXJ0T2Zmc2V0KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ /// <amd-module name="@angular/material/schematics/ng-update/migrations/misc-checks/misc-class-inheritance" />
9
+ import { Migration } from '@angular/cdk/schematics';
10
+ import * as ts from 'typescript';
11
+ /**
12
+ * Migration that checks for classes that extend Angular Material classes which
13
+ * have changed their API.
14
+ */
15
+ export declare class MiscClassInheritanceMigration extends Migration<null> {
16
+ enabled: boolean;
17
+ visitNode(node: ts.Node): void;
18
+ private _visitClassDeclaration;
19
+ }
@@ -0,0 +1,57 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ (function (factory) {
9
+ if (typeof module === "object" && typeof module.exports === "object") {
10
+ var v = factory(require, exports);
11
+ if (v !== undefined) module.exports = v;
12
+ }
13
+ else if (typeof define === "function" && define.amd) {
14
+ define("@angular/material/schematics/ng-update/migrations/misc-checks/misc-class-inheritance", ["require", "exports", "@angular/cdk/schematics", "typescript"], factory);
15
+ }
16
+ })(function (require, exports) {
17
+ "use strict";
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ const schematics_1 = require("@angular/cdk/schematics");
20
+ const ts = require("typescript");
21
+ /**
22
+ * Migration that checks for classes that extend Angular Material classes which
23
+ * have changed their API.
24
+ */
25
+ class MiscClassInheritanceMigration extends schematics_1.Migration {
26
+ constructor() {
27
+ super(...arguments);
28
+ // Only enable this rule if the migration targets version 6. The rule
29
+ // currently only includes migrations for V6 deprecations.
30
+ this.enabled = this.targetVersion === schematics_1.TargetVersion.V6;
31
+ }
32
+ visitNode(node) {
33
+ if (ts.isClassDeclaration(node)) {
34
+ this._visitClassDeclaration(node);
35
+ }
36
+ }
37
+ _visitClassDeclaration(node) {
38
+ const baseTypes = schematics_1.determineBaseTypes(node);
39
+ const className = node.name ? node.name.text : '{unknown-name}';
40
+ if (!baseTypes) {
41
+ return;
42
+ }
43
+ // Migration for: https://github.com/angular/components/pull/10293 (v6)
44
+ if (baseTypes.includes('MatFormFieldControl')) {
45
+ const hasFloatLabelMember = node.members.filter(member => member.name)
46
+ .find(member => member.name.getText() === 'shouldLabelFloat');
47
+ if (!hasFloatLabelMember) {
48
+ this.createFailureAtNode(node, `Found class "${className}" which extends ` +
49
+ `"${'MatFormFieldControl'}". This class must define ` +
50
+ `"${'shouldLabelFloat'}" which is now a required property.`);
51
+ }
52
+ }
53
+ }
54
+ }
55
+ exports.MiscClassInheritanceMigration = MiscClassInheritanceMigration;
56
+ });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzYy1jbGFzcy1pbmhlcml0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL21pc2MtY2hlY2tzL21pc2MtY2xhc3MtaW5oZXJpdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUFFSCx3REFBcUY7SUFDckYsaUNBQWlDO0lBRWpDOzs7T0FHRztJQUNILE1BQWEsNkJBQThCLFNBQVEsc0JBQWU7UUFBbEU7O1lBRUUscUVBQXFFO1lBQ3JFLDBEQUEwRDtZQUMxRCxZQUFPLEdBQUcsSUFBSSxDQUFDLGFBQWEsS0FBSywwQkFBYSxDQUFDLEVBQUUsQ0FBQztRQStCcEQsQ0FBQztRQTdCQyxTQUFTLENBQUMsSUFBYTtZQUNyQixJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDL0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ25DO1FBQ0gsQ0FBQztRQUVPLHNCQUFzQixDQUFDLElBQXlCO1lBQ3RELE1BQU0sU0FBUyxHQUFHLCtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzNDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQztZQUVoRSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNkLE9BQU87YUFDUjtZQUVELHVFQUF1RTtZQUN2RSxJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsRUFBRTtnQkFDN0MsTUFBTSxtQkFBbUIsR0FDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO3FCQUNyQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixDQUFDLENBQUM7Z0JBRXZFLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtvQkFDeEIsSUFBSSxDQUFDLG1CQUFtQixDQUNwQixJQUFJLEVBQ0osZ0JBQWdCLFNBQVMsa0JBQWtCO3dCQUN2QyxJQUFJLHFCQUFxQiw0QkFBNEI7d0JBQ3JELElBQUksa0JBQWtCLHFDQUFxQyxDQUFDLENBQUM7aUJBQ3RFO2FBQ0Y7UUFDSCxDQUFDO0tBQ0Y7SUFuQ0Qsc0VBbUNDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7ZGV0ZXJtaW5lQmFzZVR5cGVzLCBNaWdyYXRpb24sIFRhcmdldFZlcnNpb259IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY2hlbWF0aWNzJztcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG4vKipcbiAqIE1pZ3JhdGlvbiB0aGF0IGNoZWNrcyBmb3IgY2xhc3NlcyB0aGF0IGV4dGVuZCBBbmd1bGFyIE1hdGVyaWFsIGNsYXNzZXMgd2hpY2hcbiAqIGhhdmUgY2hhbmdlZCB0aGVpciBBUEkuXG4gKi9cbmV4cG9ydCBjbGFzcyBNaXNjQ2xhc3NJbmhlcml0YW5jZU1pZ3JhdGlvbiBleHRlbmRzIE1pZ3JhdGlvbjxudWxsPiB7XG5cbiAgLy8gT25seSBlbmFibGUgdGhpcyBydWxlIGlmIHRoZSBtaWdyYXRpb24gdGFyZ2V0cyB2ZXJzaW9uIDYuIFRoZSBydWxlXG4gIC8vIGN1cnJlbnRseSBvbmx5IGluY2x1ZGVzIG1pZ3JhdGlvbnMgZm9yIFY2IGRlcHJlY2F0aW9ucy5cbiAgZW5hYmxlZCA9IHRoaXMudGFyZ2V0VmVyc2lvbiA9PT0gVGFyZ2V0VmVyc2lvbi5WNjtcblxuICB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc0NsYXNzRGVjbGFyYXRpb24obm9kZSkpIHtcbiAgICAgIHRoaXMuX3Zpc2l0Q2xhc3NEZWNsYXJhdGlvbihub2RlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF92aXNpdENsYXNzRGVjbGFyYXRpb24obm9kZTogdHMuQ2xhc3NEZWNsYXJhdGlvbikge1xuICAgIGNvbnN0IGJhc2VUeXBlcyA9IGRldGVybWluZUJhc2VUeXBlcyhub2RlKTtcbiAgICBjb25zdCBjbGFzc05hbWUgPSBub2RlLm5hbWUgPyBub2RlLm5hbWUudGV4dCA6ICd7dW5rbm93bi1uYW1lfSc7XG5cbiAgICBpZiAoIWJhc2VUeXBlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIE1pZ3JhdGlvbiBmb3I6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvcHVsbC8xMDI5MyAodjYpXG4gICAgaWYgKGJhc2VUeXBlcy5pbmNsdWRlcygnTWF0Rm9ybUZpZWxkQ29udHJvbCcpKSB7XG4gICAgICBjb25zdCBoYXNGbG9hdExhYmVsTWVtYmVyID1cbiAgICAgICAgICBub2RlLm1lbWJlcnMuZmlsdGVyKG1lbWJlciA9PiBtZW1iZXIubmFtZSlcbiAgICAgICAgICAgICAgLmZpbmQobWVtYmVyID0+IG1lbWJlci5uYW1lIS5nZXRUZXh0KCkgPT09ICdzaG91bGRMYWJlbEZsb2F0Jyk7XG5cbiAgICAgIGlmICghaGFzRmxvYXRMYWJlbE1lbWJlcikge1xuICAgICAgICB0aGlzLmNyZWF0ZUZhaWx1cmVBdE5vZGUoXG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgYEZvdW5kIGNsYXNzIFwiJHtjbGFzc05hbWV9XCIgd2hpY2ggZXh0ZW5kcyBgICtcbiAgICAgICAgICAgICAgICBgXCIkeydNYXRGb3JtRmllbGRDb250cm9sJ31cIi4gVGhpcyBjbGFzcyBtdXN0IGRlZmluZSBgICtcbiAgICAgICAgICAgICAgICBgXCIkeydzaG91bGRMYWJlbEZsb2F0J31cIiB3aGljaCBpcyBub3cgYSByZXF1aXJlZCBwcm9wZXJ0eS5gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -5,15 +5,15 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- /// <amd-module name="@angular/material/schematics/ng-update/upgrade-rules/misc-checks/misc-class-names-rule" />
9
- import { MigrationRule } from '@angular/cdk/schematics';
8
+ /// <amd-module name="@angular/material/schematics/ng-update/migrations/misc-checks/misc-class-names" />
9
+ import { Migration } from '@angular/cdk/schematics';
10
10
  import * as ts from 'typescript';
11
11
  /**
12
- * Rule that looks for class name identifiers that have been removed but
12
+ * Migration that looks for class name identifiers that have been removed but
13
13
  * cannot be automatically migrated.
14
14
  */
15
- export declare class MiscClassNamesRule extends MigrationRule<null> {
16
- ruleEnabled: boolean;
15
+ export declare class MiscClassNamesMigration extends Migration<null> {
16
+ enabled: boolean;
17
17
  visitNode(node: ts.Node): void;
18
18
  private _visitIdentifier;
19
19
  }
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ (function (factory) {
9
+ if (typeof module === "object" && typeof module.exports === "object") {
10
+ var v = factory(require, exports);
11
+ if (v !== undefined) module.exports = v;
12
+ }
13
+ else if (typeof define === "function" && define.amd) {
14
+ define("@angular/material/schematics/ng-update/migrations/misc-checks/misc-class-names", ["require", "exports", "@angular/cdk/schematics", "typescript"], factory);
15
+ }
16
+ })(function (require, exports) {
17
+ "use strict";
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ const schematics_1 = require("@angular/cdk/schematics");
20
+ const ts = require("typescript");
21
+ /**
22
+ * Migration that looks for class name identifiers that have been removed but
23
+ * cannot be automatically migrated.
24
+ */
25
+ class MiscClassNamesMigration extends schematics_1.Migration {
26
+ constructor() {
27
+ super(...arguments);
28
+ // Only enable this rule if the migration targets version 6. The rule
29
+ // currently only includes migrations for V6 deprecations.
30
+ this.enabled = this.targetVersion === schematics_1.TargetVersion.V6;
31
+ }
32
+ visitNode(node) {
33
+ if (ts.isIdentifier(node)) {
34
+ this._visitIdentifier(node);
35
+ }
36
+ }
37
+ _visitIdentifier(identifier) {
38
+ // Migration for: https://github.com/angular/components/pull/10279 (v6)
39
+ if (identifier.getText() === 'MatDrawerToggleResult') {
40
+ this.createFailureAtNode(identifier, `Found "MatDrawerToggleResult" which has changed from a class type to a string ` +
41
+ `literal type. Your code may need to be updated.`);
42
+ }
43
+ // Migration for: https://github.com/angular/components/pull/10398 (v6)
44
+ if (identifier.getText() === 'MatListOptionChange') {
45
+ this.createFailureAtNode(identifier, `Found usage of "MatListOptionChange" which has been removed. Please listen for ` +
46
+ `"selectionChange" on "MatSelectionList" instead.`);
47
+ }
48
+ }
49
+ }
50
+ exports.MiscClassNamesMigration = MiscClassNamesMigration;
51
+ });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzYy1jbGFzcy1uYW1lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL21pc2MtY2hlY2tzL21pc2MtY2xhc3MtbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUFFSCx3REFBaUU7SUFDakUsaUNBQWlDO0lBRWpDOzs7T0FHRztJQUNILE1BQWEsdUJBQXdCLFNBQVEsc0JBQWU7UUFBNUQ7O1lBRUUscUVBQXFFO1lBQ3JFLDBEQUEwRDtZQUMxRCxZQUFPLEdBQUcsSUFBSSxDQUFDLGFBQWEsS0FBSywwQkFBYSxDQUFDLEVBQUUsQ0FBQztRQXlCcEQsQ0FBQztRQXZCQyxTQUFTLENBQUMsSUFBYTtZQUNyQixJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUM3QjtRQUNILENBQUM7UUFFTyxnQkFBZ0IsQ0FBQyxVQUF5QjtZQUNoRCx1RUFBdUU7WUFDdkUsSUFBSSxVQUFVLENBQUMsT0FBTyxFQUFFLEtBQUssdUJBQXVCLEVBQUU7Z0JBQ3BELElBQUksQ0FBQyxtQkFBbUIsQ0FDcEIsVUFBVSxFQUNWLGdGQUFnRjtvQkFDNUUsaURBQWlELENBQUMsQ0FBQzthQUM1RDtZQUVELHVFQUF1RTtZQUN2RSxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxxQkFBcUIsRUFBRTtnQkFDbEQsSUFBSSxDQUFDLG1CQUFtQixDQUNwQixVQUFVLEVBQ1YsaUZBQWlGO29CQUM3RSxrREFBa0QsQ0FBQyxDQUFDO2FBQzdEO1FBQ0gsQ0FBQztLQUNGO0lBN0JELDBEQTZCQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge01pZ3JhdGlvbiwgVGFyZ2V0VmVyc2lvbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3NjaGVtYXRpY3MnO1xuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbi8qKlxuICogTWlncmF0aW9uIHRoYXQgbG9va3MgZm9yIGNsYXNzIG5hbWUgaWRlbnRpZmllcnMgdGhhdCBoYXZlIGJlZW4gcmVtb3ZlZCBidXRcbiAqIGNhbm5vdCBiZSBhdXRvbWF0aWNhbGx5IG1pZ3JhdGVkLlxuICovXG5leHBvcnQgY2xhc3MgTWlzY0NsYXNzTmFtZXNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248bnVsbD4ge1xuXG4gIC8vIE9ubHkgZW5hYmxlIHRoaXMgcnVsZSBpZiB0aGUgbWlncmF0aW9uIHRhcmdldHMgdmVyc2lvbiA2LiBUaGUgcnVsZVxuICAvLyBjdXJyZW50bHkgb25seSBpbmNsdWRlcyBtaWdyYXRpb25zIGZvciBWNiBkZXByZWNhdGlvbnMuXG4gIGVuYWJsZWQgPSB0aGlzLnRhcmdldFZlcnNpb24gPT09IFRhcmdldFZlcnNpb24uVjY7XG5cbiAgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNJZGVudGlmaWVyKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdElkZW50aWZpZXIobm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdmlzaXRJZGVudGlmaWVyKGlkZW50aWZpZXI6IHRzLklkZW50aWZpZXIpIHtcbiAgICAvLyBNaWdyYXRpb24gZm9yOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL3B1bGwvMTAyNzkgKHY2KVxuICAgIGlmIChpZGVudGlmaWVyLmdldFRleHQoKSA9PT0gJ01hdERyYXdlclRvZ2dsZVJlc3VsdCcpIHtcbiAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgICBpZGVudGlmaWVyLFxuICAgICAgICAgIGBGb3VuZCBcIk1hdERyYXdlclRvZ2dsZVJlc3VsdFwiIHdoaWNoIGhhcyBjaGFuZ2VkIGZyb20gYSBjbGFzcyB0eXBlIHRvIGEgc3RyaW5nIGAgK1xuICAgICAgICAgICAgICBgbGl0ZXJhbCB0eXBlLiBZb3VyIGNvZGUgbWF5IG5lZWQgdG8gYmUgdXBkYXRlZC5gKTtcbiAgICB9XG5cbiAgICAvLyBNaWdyYXRpb24gZm9yOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL3B1bGwvMTAzOTggKHY2KVxuICAgIGlmIChpZGVudGlmaWVyLmdldFRleHQoKSA9PT0gJ01hdExpc3RPcHRpb25DaGFuZ2UnKSB7XG4gICAgICB0aGlzLmNyZWF0ZUZhaWx1cmVBdE5vZGUoXG4gICAgICAgICAgaWRlbnRpZmllcixcbiAgICAgICAgICBgRm91bmQgdXNhZ2Ugb2YgXCJNYXRMaXN0T3B0aW9uQ2hhbmdlXCIgd2hpY2ggaGFzIGJlZW4gcmVtb3ZlZC4gUGxlYXNlIGxpc3RlbiBmb3IgYCArXG4gICAgICAgICAgICAgIGBcInNlbGVjdGlvbkNoYW5nZVwiIG9uIFwiTWF0U2VsZWN0aW9uTGlzdFwiIGluc3RlYWQuYCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -5,15 +5,15 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- /// <amd-module name="@angular/material/schematics/ng-update/upgrade-rules/misc-checks/misc-imports-rule" />
9
- import { MigrationRule } from '@angular/cdk/schematics';
8
+ /// <amd-module name="@angular/material/schematics/ng-update/migrations/misc-checks/misc-imports" />
9
+ import { Migration } from '@angular/cdk/schematics';
10
10
  import * as ts from 'typescript';
11
11
  /**
12
- * Rule that detects import declarations that refer to outdated identifiers from
12
+ * Migration that detects import declarations that refer to outdated identifiers from
13
13
  * Angular Material which cannot be updated automatically.
14
14
  */
15
- export declare class MiscImportsRule extends MigrationRule<null> {
16
- ruleEnabled: boolean;
15
+ export declare class MiscImportsMigration extends Migration<null> {
16
+ enabled: boolean;
17
17
  visitNode(node: ts.Node): void;
18
18
  private _visitImportDeclaration;
19
19
  /**
@@ -0,0 +1,63 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ (function (factory) {
9
+ if (typeof module === "object" && typeof module.exports === "object") {
10
+ var v = factory(require, exports);
11
+ if (v !== undefined) module.exports = v;
12
+ }
13
+ else if (typeof define === "function" && define.amd) {
14
+ define("@angular/material/schematics/ng-update/migrations/misc-checks/misc-imports", ["require", "exports", "@angular/cdk/schematics", "typescript"], factory);
15
+ }
16
+ })(function (require, exports) {
17
+ "use strict";
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ const schematics_1 = require("@angular/cdk/schematics");
20
+ const ts = require("typescript");
21
+ /**
22
+ * Migration that detects import declarations that refer to outdated identifiers from
23
+ * Angular Material which cannot be updated automatically.
24
+ */
25
+ class MiscImportsMigration extends schematics_1.Migration {
26
+ constructor() {
27
+ super(...arguments);
28
+ // Only enable this rule if the migration targets version 6. The rule
29
+ // currently only includes migrations for V6 deprecations.
30
+ this.enabled = this.targetVersion === schematics_1.TargetVersion.V6;
31
+ }
32
+ visitNode(node) {
33
+ if (ts.isImportDeclaration(node)) {
34
+ this._visitImportDeclaration(node);
35
+ }
36
+ }
37
+ _visitImportDeclaration(node) {
38
+ if (!schematics_1.isMaterialImportDeclaration(node) || !node.importClause ||
39
+ !node.importClause.namedBindings) {
40
+ return;
41
+ }
42
+ const namedBindings = node.importClause.namedBindings;
43
+ if (ts.isNamedImports(namedBindings)) {
44
+ // Migration for: https://github.com/angular/components/pull/10405 (v6)
45
+ this._checkAnimationConstants(namedBindings);
46
+ }
47
+ }
48
+ /**
49
+ * Checks for named imports that refer to the deleted animation constants.
50
+ * https://github.com/angular/components/commit/9f3bf274c4f15f0b0fbd8ab7dbf1a453076e66d9
51
+ */
52
+ _checkAnimationConstants(namedImports) {
53
+ namedImports.elements.filter(element => ts.isIdentifier(element.name)).forEach(element => {
54
+ const importName = element.name.text;
55
+ if (importName === 'SHOW_ANIMATION' || importName === 'HIDE_ANIMATION') {
56
+ this.createFailureAtNode(element, `Found deprecated symbol "${importName}" which has been removed`);
57
+ }
58
+ });
59
+ }
60
+ }
61
+ exports.MiscImportsMigration = MiscImportsMigration;
62
+ });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzYy1pbXBvcnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvbWlzYy1jaGVja3MvbWlzYy1pbXBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBRUgsd0RBQThGO0lBQzlGLGlDQUFpQztJQUVqQzs7O09BR0c7SUFDSCxNQUFhLG9CQUFxQixTQUFRLHNCQUFlO1FBQXpEOztZQUVFLHFFQUFxRTtZQUNyRSwwREFBMEQ7WUFDMUQsWUFBTyxHQUFHLElBQUksQ0FBQyxhQUFhLEtBQUssMEJBQWEsQ0FBQyxFQUFFLENBQUM7UUFvQ3BELENBQUM7UUFsQ0MsU0FBUyxDQUFDLElBQWE7WUFDckIsSUFBSSxFQUFFLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ2hDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNwQztRQUNILENBQUM7UUFFTyx1QkFBdUIsQ0FBQyxJQUEwQjtZQUN4RCxJQUFJLENBQUMsd0NBQTJCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWTtnQkFDeEQsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRTtnQkFDcEMsT0FBTzthQUNSO1lBRUQsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUM7WUFFdEQsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxFQUFFO2dCQUNwQyx1RUFBdUU7Z0JBQ3ZFLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUM5QztRQUNILENBQUM7UUFFRDs7O1dBR0c7UUFDSyx3QkFBd0IsQ0FBQyxZQUE2QjtZQUM1RCxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUN2RixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztnQkFFckMsSUFBSSxVQUFVLEtBQUssZ0JBQWdCLElBQUksVUFBVSxLQUFLLGdCQUFnQixFQUFFO29CQUN0RSxJQUFJLENBQUMsbUJBQW1CLENBQ3BCLE9BQU8sRUFBRSw0QkFBNEIsVUFBVSwwQkFBMEIsQ0FBQyxDQUFDO2lCQUNoRjtZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztLQUNGO0lBeENELG9EQXdDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2lzTWF0ZXJpYWxJbXBvcnREZWNsYXJhdGlvbiwgTWlncmF0aW9uLCBUYXJnZXRWZXJzaW9ufSBmcm9tICdAYW5ndWxhci9jZGsvc2NoZW1hdGljcyc7XG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCBkZXRlY3RzIGltcG9ydCBkZWNsYXJhdGlvbnMgdGhhdCByZWZlciB0byBvdXRkYXRlZCBpZGVudGlmaWVycyBmcm9tXG4gKiBBbmd1bGFyIE1hdGVyaWFsIHdoaWNoIGNhbm5vdCBiZSB1cGRhdGVkIGF1dG9tYXRpY2FsbHkuXG4gKi9cbmV4cG9ydCBjbGFzcyBNaXNjSW1wb3J0c01pZ3JhdGlvbiBleHRlbmRzIE1pZ3JhdGlvbjxudWxsPiB7XG5cbiAgLy8gT25seSBlbmFibGUgdGhpcyBydWxlIGlmIHRoZSBtaWdyYXRpb24gdGFyZ2V0cyB2ZXJzaW9uIDYuIFRoZSBydWxlXG4gIC8vIGN1cnJlbnRseSBvbmx5IGluY2x1ZGVzIG1pZ3JhdGlvbnMgZm9yIFY2IGRlcHJlY2F0aW9ucy5cbiAgZW5hYmxlZCA9IHRoaXMudGFyZ2V0VmVyc2lvbiA9PT0gVGFyZ2V0VmVyc2lvbi5WNjtcblxuICB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc0ltcG9ydERlY2xhcmF0aW9uKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdEltcG9ydERlY2xhcmF0aW9uKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Zpc2l0SW1wb3J0RGVjbGFyYXRpb24obm9kZTogdHMuSW1wb3J0RGVjbGFyYXRpb24pIHtcbiAgICBpZiAoIWlzTWF0ZXJpYWxJbXBvcnREZWNsYXJhdGlvbihub2RlKSB8fCAhbm9kZS5pbXBvcnRDbGF1c2UgfHxcbiAgICAgICAgIW5vZGUuaW1wb3J0Q2xhdXNlLm5hbWVkQmluZGluZ3MpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBuYW1lZEJpbmRpbmdzID0gbm9kZS5pbXBvcnRDbGF1c2UubmFtZWRCaW5kaW5ncztcblxuICAgIGlmICh0cy5pc05hbWVkSW1wb3J0cyhuYW1lZEJpbmRpbmdzKSkge1xuICAgICAgLy8gTWlncmF0aW9uIGZvcjogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9wdWxsLzEwNDA1ICh2NilcbiAgICAgIHRoaXMuX2NoZWNrQW5pbWF0aW9uQ29uc3RhbnRzKG5hbWVkQmluZGluZ3MpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgZm9yIG5hbWVkIGltcG9ydHMgdGhhdCByZWZlciB0byB0aGUgZGVsZXRlZCBhbmltYXRpb24gY29uc3RhbnRzLlxuICAgKiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2NvbW1pdC85ZjNiZjI3NGM0ZjE1ZjBiMGZiZDhhYjdkYmYxYTQ1MzA3NmU2NmQ5XG4gICAqL1xuICBwcml2YXRlIF9jaGVja0FuaW1hdGlvbkNvbnN0YW50cyhuYW1lZEltcG9ydHM6IHRzLk5hbWVkSW1wb3J0cykge1xuICAgIG5hbWVkSW1wb3J0cy5lbGVtZW50cy5maWx0ZXIoZWxlbWVudCA9PiB0cy5pc0lkZW50aWZpZXIoZWxlbWVudC5uYW1lKSkuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgIGNvbnN0IGltcG9ydE5hbWUgPSBlbGVtZW50Lm5hbWUudGV4dDtcblxuICAgICAgaWYgKGltcG9ydE5hbWUgPT09ICdTSE9XX0FOSU1BVElPTicgfHwgaW1wb3J0TmFtZSA9PT0gJ0hJREVfQU5JTUFUSU9OJykge1xuICAgICAgICB0aGlzLmNyZWF0ZUZhaWx1cmVBdE5vZGUoXG4gICAgICAgICAgICBlbGVtZW50LCBgRm91bmQgZGVwcmVjYXRlZCBzeW1ib2wgXCIke2ltcG9ydE5hbWV9XCIgd2hpY2ggaGFzIGJlZW4gcmVtb3ZlZGApO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -5,15 +5,15 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- /// <amd-module name="@angular/material/schematics/ng-update/upgrade-rules/misc-checks/misc-property-names-rule" />
9
- import { MigrationRule } from '@angular/cdk/schematics';
8
+ /// <amd-module name="@angular/material/schematics/ng-update/migrations/misc-checks/misc-property-names" />
9
+ import { Migration } from '@angular/cdk/schematics';
10
10
  import * as ts from 'typescript';
11
11
  /**
12
- * Rule that walks through every property access expression and and reports a failure if
12
+ * Migration that walks through every property access expression and and reports a failure if
13
13
  * a given property name no longer exists but cannot be automatically migrated.
14
14
  */
15
- export declare class MiscPropertyNamesRule extends MigrationRule<null> {
16
- ruleEnabled: boolean;
15
+ export declare class MiscPropertyNamesMigration extends Migration<null> {
16
+ enabled: boolean;
17
17
  visitNode(node: ts.Node): void;
18
18
  private _visitPropertyAccessExpression;
19
19
  }
@@ -0,0 +1,56 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ (function (factory) {
9
+ if (typeof module === "object" && typeof module.exports === "object") {
10
+ var v = factory(require, exports);
11
+ if (v !== undefined) module.exports = v;
12
+ }
13
+ else if (typeof define === "function" && define.amd) {
14
+ define("@angular/material/schematics/ng-update/migrations/misc-checks/misc-property-names", ["require", "exports", "@angular/cdk/schematics", "typescript"], factory);
15
+ }
16
+ })(function (require, exports) {
17
+ "use strict";
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ const schematics_1 = require("@angular/cdk/schematics");
20
+ const ts = require("typescript");
21
+ /**
22
+ * Migration that walks through every property access expression and and reports a failure if
23
+ * a given property name no longer exists but cannot be automatically migrated.
24
+ */
25
+ class MiscPropertyNamesMigration extends schematics_1.Migration {
26
+ constructor() {
27
+ super(...arguments);
28
+ // Only enable this rule if the migration targets version 6. The rule
29
+ // currently only includes migrations for V6 deprecations.
30
+ this.enabled = this.targetVersion === schematics_1.TargetVersion.V6;
31
+ }
32
+ visitNode(node) {
33
+ if (ts.isPropertyAccessExpression(node)) {
34
+ this._visitPropertyAccessExpression(node);
35
+ }
36
+ }
37
+ _visitPropertyAccessExpression(node) {
38
+ const hostType = this.typeChecker.getTypeAtLocation(node.expression);
39
+ const typeName = hostType && hostType.symbol && hostType.symbol.getName();
40
+ // Migration for: https://github.com/angular/components/pull/10398 (v6)
41
+ if (typeName === 'MatListOption' && node.name.text === 'selectionChange') {
42
+ this.createFailureAtNode(node, `Found deprecated property "selectionChange" of ` +
43
+ `class "MatListOption". Use the "selectionChange" property on the ` +
44
+ `parent "MatSelectionList" instead.`);
45
+ }
46
+ // Migration for: https://github.com/angular/components/pull/10413 (v6)
47
+ if (typeName === 'MatDatepicker' && node.name.text === 'selectedChanged') {
48
+ this.createFailureAtNode(node, `Found deprecated property "selectedChanged" of ` +
49
+ `class "MatDatepicker". Use the "dateChange" or "dateInput" methods ` +
50
+ `on "MatDatepickerInput" instead.`);
51
+ }
52
+ }
53
+ }
54
+ exports.MiscPropertyNamesMigration = MiscPropertyNamesMigration;
55
+ });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzYy1wcm9wZXJ0eS1uYW1lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL21pc2MtY2hlY2tzL21pc2MtcHJvcGVydHktbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUFFSCx3REFBaUU7SUFDakUsaUNBQWlDO0lBRWpDOzs7T0FHRztJQUNILE1BQWEsMEJBQTJCLFNBQVEsc0JBQWU7UUFBL0Q7O1lBRUUscUVBQXFFO1lBQ3JFLDBEQUEwRDtZQUMxRCxZQUFPLEdBQUcsSUFBSSxDQUFDLGFBQWEsS0FBSywwQkFBYSxDQUFDLEVBQUUsQ0FBQztRQThCcEQsQ0FBQztRQTVCQyxTQUFTLENBQUMsSUFBYTtZQUNyQixJQUFJLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDdkMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzNDO1FBQ0gsQ0FBQztRQUVPLDhCQUE4QixDQUFDLElBQWlDO1lBQ3RFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3JFLE1BQU0sUUFBUSxHQUFHLFFBQVEsSUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFMUUsdUVBQXVFO1lBQ3ZFLElBQUksUUFBUSxLQUFLLGVBQWUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxpQkFBaUIsRUFBRTtnQkFDeEUsSUFBSSxDQUFDLG1CQUFtQixDQUNwQixJQUFJLEVBQ0osaURBQWlEO29CQUM3QyxtRUFBbUU7b0JBQ25FLG9DQUFvQyxDQUFDLENBQUM7YUFDL0M7WUFFRCx1RUFBdUU7WUFDdkUsSUFBSSxRQUFRLEtBQUssZUFBZSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLGlCQUFpQixFQUFFO2dCQUN4RSxJQUFJLENBQUMsbUJBQW1CLENBQ3BCLElBQUksRUFDSixpREFBaUQ7b0JBQzdDLHFFQUFxRTtvQkFDckUsa0NBQWtDLENBQUMsQ0FBQzthQUM3QztRQUNILENBQUM7S0FDRjtJQWxDRCxnRUFrQ0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtNaWdyYXRpb24sIFRhcmdldFZlcnNpb259IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY2hlbWF0aWNzJztcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG4vKipcbiAqIE1pZ3JhdGlvbiB0aGF0IHdhbGtzIHRocm91Z2ggZXZlcnkgcHJvcGVydHkgYWNjZXNzIGV4cHJlc3Npb24gYW5kIGFuZCByZXBvcnRzIGEgZmFpbHVyZSBpZlxuICogYSBnaXZlbiBwcm9wZXJ0eSBuYW1lIG5vIGxvbmdlciBleGlzdHMgYnV0IGNhbm5vdCBiZSBhdXRvbWF0aWNhbGx5IG1pZ3JhdGVkLlxuICovXG5leHBvcnQgY2xhc3MgTWlzY1Byb3BlcnR5TmFtZXNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248bnVsbD4ge1xuXG4gIC8vIE9ubHkgZW5hYmxlIHRoaXMgcnVsZSBpZiB0aGUgbWlncmF0aW9uIHRhcmdldHMgdmVyc2lvbiA2LiBUaGUgcnVsZVxuICAvLyBjdXJyZW50bHkgb25seSBpbmNsdWRlcyBtaWdyYXRpb25zIGZvciBWNiBkZXByZWNhdGlvbnMuXG4gIGVuYWJsZWQgPSB0aGlzLnRhcmdldFZlcnNpb24gPT09IFRhcmdldFZlcnNpb24uVjY7XG5cbiAgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24obm9kZSkpIHtcbiAgICAgIHRoaXMuX3Zpc2l0UHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Zpc2l0UHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uKG5vZGU6IHRzLlByb3BlcnR5QWNjZXNzRXhwcmVzc2lvbikge1xuICAgIGNvbnN0IGhvc3RUeXBlID0gdGhpcy50eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihub2RlLmV4cHJlc3Npb24pO1xuICAgIGNvbnN0IHR5cGVOYW1lID0gaG9zdFR5cGUgJiYgaG9zdFR5cGUuc3ltYm9sICYmIGhvc3RUeXBlLnN5bWJvbC5nZXROYW1lKCk7XG5cbiAgICAvLyBNaWdyYXRpb24gZm9yOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL3B1bGwvMTAzOTggKHY2KVxuICAgIGlmICh0eXBlTmFtZSA9PT0gJ01hdExpc3RPcHRpb24nICYmIG5vZGUubmFtZS50ZXh0ID09PSAnc2VsZWN0aW9uQ2hhbmdlJykge1xuICAgICAgdGhpcy5jcmVhdGVGYWlsdXJlQXROb2RlKFxuICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgYEZvdW5kIGRlcHJlY2F0ZWQgcHJvcGVydHkgXCJzZWxlY3Rpb25DaGFuZ2VcIiBvZiBgICtcbiAgICAgICAgICAgICAgYGNsYXNzIFwiTWF0TGlzdE9wdGlvblwiLiBVc2UgdGhlIFwic2VsZWN0aW9uQ2hhbmdlXCIgcHJvcGVydHkgb24gdGhlIGAgK1xuICAgICAgICAgICAgICBgcGFyZW50IFwiTWF0U2VsZWN0aW9uTGlzdFwiIGluc3RlYWQuYCk7XG4gICAgfVxuXG4gICAgLy8gTWlncmF0aW9uIGZvcjogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9wdWxsLzEwNDEzICh2NilcbiAgICBpZiAodHlwZU5hbWUgPT09ICdNYXREYXRlcGlja2VyJyAmJiBub2RlLm5hbWUudGV4dCA9PT0gJ3NlbGVjdGVkQ2hhbmdlZCcpIHtcbiAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgICBub2RlLFxuICAgICAgICAgIGBGb3VuZCBkZXByZWNhdGVkIHByb3BlcnR5IFwic2VsZWN0ZWRDaGFuZ2VkXCIgb2YgYCArXG4gICAgICAgICAgICAgIGBjbGFzcyBcIk1hdERhdGVwaWNrZXJcIi4gVXNlIHRoZSBcImRhdGVDaGFuZ2VcIiBvciBcImRhdGVJbnB1dFwiIG1ldGhvZHMgYCArXG4gICAgICAgICAgICAgIGBvbiBcIk1hdERhdGVwaWNrZXJJbnB1dFwiIGluc3RlYWQuYCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ /// <amd-module name="@angular/material/schematics/ng-update/migrations/misc-checks/misc-template" />
9
+ import { Migration, ResolvedResource } from '@angular/cdk/schematics';
10
+ /**
11
+ * Migration that walks through every inline or external template and reports if there
12
+ * are outdated usages of the Angular Material API that needs to be updated manually.
13
+ */
14
+ export declare class MiscTemplateMigration extends Migration<null> {
15
+ enabled: boolean;
16
+ visitTemplate(template: ResolvedResource): void;
17
+ }
@@ -0,0 +1,69 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ (function (factory) {
9
+ if (typeof module === "object" && typeof module.exports === "object") {
10
+ var v = factory(require, exports);
11
+ if (v !== undefined) module.exports = v;
12
+ }
13
+ else if (typeof define === "function" && define.amd) {
14
+ define("@angular/material/schematics/ng-update/migrations/misc-checks/misc-template", ["require", "exports", "@angular/cdk/schematics"], factory);
15
+ }
16
+ })(function (require, exports) {
17
+ "use strict";
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ const schematics_1 = require("@angular/cdk/schematics");
20
+ /**
21
+ * Migration that walks through every inline or external template and reports if there
22
+ * are outdated usages of the Angular Material API that needs to be updated manually.
23
+ */
24
+ class MiscTemplateMigration extends schematics_1.Migration {
25
+ constructor() {
26
+ super(...arguments);
27
+ // Only enable this rule if the migration targets version 6. The rule
28
+ // currently only includes migrations for V6 deprecations.
29
+ this.enabled = this.targetVersion === schematics_1.TargetVersion.V6;
30
+ }
31
+ visitTemplate(template) {
32
+ // Migration for: https://github.com/angular/components/pull/10398 (v6)
33
+ schematics_1.findOutputsOnElementWithTag(template.content, 'selectionChange', [
34
+ 'mat-list-option'
35
+ ]).forEach(offset => {
36
+ this.failures.push({
37
+ filePath: template.filePath,
38
+ position: template.getCharacterAndLineOfPosition(template.start + offset),
39
+ message: `Found deprecated "selectionChange" output binding on "mat-list-option". ` +
40
+ `Use "selectionChange" on "mat-selection-list" instead.`
41
+ });
42
+ });
43
+ // Migration for: https://github.com/angular/components/pull/10413 (v6)
44
+ schematics_1.findOutputsOnElementWithTag(template.content, 'selectedChanged', [
45
+ 'mat-datepicker'
46
+ ]).forEach(offset => {
47
+ this.failures.push({
48
+ filePath: template.filePath,
49
+ position: template.getCharacterAndLineOfPosition(template.start + offset),
50
+ message: `Found deprecated "selectedChanged" output binding on "mat-datepicker". ` +
51
+ `Use "dateChange" or "dateInput" on "<input [matDatepicker]>" instead.`
52
+ });
53
+ });
54
+ // Migration for: https://github.com/angular/components/commit/f0bf6e7 (v6)
55
+ schematics_1.findInputsOnElementWithTag(template.content, 'selected', [
56
+ 'mat-button-toggle-group'
57
+ ]).forEach(offset => {
58
+ this.failures.push({
59
+ filePath: template.filePath,
60
+ position: template.getCharacterAndLineOfPosition(template.start + offset),
61
+ message: `Found deprecated "selected" input binding on "mat-radio-button-group". ` +
62
+ `Use "value" instead.`
63
+ });
64
+ });
65
+ }
66
+ }
67
+ exports.MiscTemplateMigration = MiscTemplateMigration;
68
+ });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzYy10ZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL21pc2MtY2hlY2tzL21pc2MtdGVtcGxhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUFFSCx3REFNaUM7SUFFakM7OztPQUdHO0lBQ0gsTUFBYSxxQkFBc0IsU0FBUSxzQkFBZTtRQUExRDs7WUFFRSxxRUFBcUU7WUFDckUsMERBQTBEO1lBQzFELFlBQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxLQUFLLDBCQUFhLENBQUMsRUFBRSxDQUFDO1FBd0NwRCxDQUFDO1FBdENDLGFBQWEsQ0FBQyxRQUEwQjtZQUV0Qyx1RUFBdUU7WUFDdkUsd0NBQTJCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRTtnQkFDL0QsaUJBQWlCO2FBQ2xCLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO29CQUNqQixRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7b0JBQzNCLFFBQVEsRUFBRSxRQUFRLENBQUMsNkJBQTZCLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7b0JBQ3pFLE9BQU8sRUFBRSwwRUFBMEU7d0JBQy9FLHdEQUF3RDtpQkFDN0QsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7WUFFSCx1RUFBdUU7WUFDdkUsd0NBQTJCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRTtnQkFDL0QsZ0JBQWdCO2FBQ2pCLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO29CQUNqQixRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7b0JBQzNCLFFBQVEsRUFBRSxRQUFRLENBQUMsNkJBQTZCLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7b0JBQ3pFLE9BQU8sRUFBRSx5RUFBeUU7d0JBQzlFLHVFQUF1RTtpQkFDNUUsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7WUFFSCwyRUFBMkU7WUFDM0UsdUNBQTBCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUU7Z0JBQ3ZELHlCQUF5QjthQUMxQixDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztvQkFDakIsUUFBUSxFQUFFLFFBQVEsQ0FBQyxRQUFRO29CQUMzQixRQUFRLEVBQUUsUUFBUSxDQUFDLDZCQUE2QixDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO29CQUN6RSxPQUFPLEVBQUUseUVBQXlFO3dCQUM5RSxzQkFBc0I7aUJBQzNCLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztLQUNGO0lBNUNELHNEQTRDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1xuICBmaW5kSW5wdXRzT25FbGVtZW50V2l0aFRhZyxcbiAgZmluZE91dHB1dHNPbkVsZW1lbnRXaXRoVGFnLFxuICBNaWdyYXRpb24sXG4gIFJlc29sdmVkUmVzb3VyY2UsXG4gIFRhcmdldFZlcnNpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY2hlbWF0aWNzJztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB3YWxrcyB0aHJvdWdoIGV2ZXJ5IGlubGluZSBvciBleHRlcm5hbCB0ZW1wbGF0ZSBhbmQgcmVwb3J0cyBpZiB0aGVyZVxuICogYXJlIG91dGRhdGVkIHVzYWdlcyBvZiB0aGUgQW5ndWxhciBNYXRlcmlhbCBBUEkgdGhhdCBuZWVkcyB0byBiZSB1cGRhdGVkIG1hbnVhbGx5LlxuICovXG5leHBvcnQgY2xhc3MgTWlzY1RlbXBsYXRlTWlncmF0aW9uIGV4dGVuZHMgTWlncmF0aW9uPG51bGw+IHtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGlzIHJ1bGUgaWYgdGhlIG1pZ3JhdGlvbiB0YXJnZXRzIHZlcnNpb24gNi4gVGhlIHJ1bGVcbiAgLy8gY3VycmVudGx5IG9ubHkgaW5jbHVkZXMgbWlncmF0aW9ucyBmb3IgVjYgZGVwcmVjYXRpb25zLlxuICBlbmFibGVkID0gdGhpcy50YXJnZXRWZXJzaW9uID09PSBUYXJnZXRWZXJzaW9uLlY2O1xuXG4gIHZpc2l0VGVtcGxhdGUodGVtcGxhdGU6IFJlc29sdmVkUmVzb3VyY2UpOiB2b2lkIHtcblxuICAgIC8vIE1pZ3JhdGlvbiBmb3I6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvcHVsbC8xMDM5OCAodjYpXG4gICAgZmluZE91dHB1dHNPbkVsZW1lbnRXaXRoVGFnKHRlbXBsYXRlLmNvbnRlbnQsICdzZWxlY3Rpb25DaGFuZ2UnLCBbXG4gICAgICAnbWF0LWxpc3Qtb3B0aW9uJ1xuICAgIF0pLmZvckVhY2gob2Zmc2V0ID0+IHtcbiAgICAgIHRoaXMuZmFpbHVyZXMucHVzaCh7XG4gICAgICAgIGZpbGVQYXRoOiB0ZW1wbGF0ZS5maWxlUGF0aCxcbiAgICAgICAgcG9zaXRpb246IHRlbXBsYXRlLmdldENoYXJhY3RlckFuZExpbmVPZlBvc2l0aW9uKHRlbXBsYXRlLnN0YXJ0ICsgb2Zmc2V0KSxcbiAgICAgICAgbWVzc2FnZTogYEZvdW5kIGRlcHJlY2F0ZWQgXCJzZWxlY3Rpb25DaGFuZ2VcIiBvdXRwdXQgYmluZGluZyBvbiBcIm1hdC1saXN0LW9wdGlvblwiLiBgICtcbiAgICAgICAgICAgIGBVc2UgXCJzZWxlY3Rpb25DaGFuZ2VcIiBvbiBcIm1hdC1zZWxlY3Rpb24tbGlzdFwiIGluc3RlYWQuYFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBNaWdyYXRpb24gZm9yOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL3B1bGwvMTA0MTMgKHY2KVxuICAgIGZpbmRPdXRwdXRzT25FbGVtZW50V2l0aFRhZyh0ZW1wbGF0ZS5jb250ZW50LCAnc2VsZWN0ZWRDaGFuZ2VkJywgW1xuICAgICAgJ21hdC1kYXRlcGlja2VyJ1xuICAgIF0pLmZvckVhY2gob2Zmc2V0ID0+IHtcbiAgICAgIHRoaXMuZmFpbHVyZXMucHVzaCh7XG4gICAgICAgIGZpbGVQYXRoOiB0ZW1wbGF0ZS5maWxlUGF0aCxcbiAgICAgICAgcG9zaXRpb246IHRlbXBsYXRlLmdldENoYXJhY3RlckFuZExpbmVPZlBvc2l0aW9uKHRlbXBsYXRlLnN0YXJ0ICsgb2Zmc2V0KSxcbiAgICAgICAgbWVzc2FnZTogYEZvdW5kIGRlcHJlY2F0ZWQgXCJzZWxlY3RlZENoYW5nZWRcIiBvdXRwdXQgYmluZGluZyBvbiBcIm1hdC1kYXRlcGlja2VyXCIuIGAgK1xuICAgICAgICAgICAgYFVzZSBcImRhdGVDaGFuZ2VcIiBvciBcImRhdGVJbnB1dFwiIG9uIFwiPGlucHV0IFttYXREYXRlcGlja2VyXT5cIiBpbnN0ZWFkLmBcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgLy8gTWlncmF0aW9uIGZvcjogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9jb21taXQvZjBiZjZlNyAodjYpXG4gICAgZmluZElucHV0c09uRWxlbWVudFdpdGhUYWcodGVtcGxhdGUuY29udGVudCwgJ3NlbGVjdGVkJywgW1xuICAgICAgJ21hdC1idXR0b24tdG9nZ2xlLWdyb3VwJ1xuICAgIF0pLmZvckVhY2gob2Zmc2V0ID0+IHtcbiAgICAgIHRoaXMuZmFpbHVyZXMucHVzaCh7XG4gICAgICAgIGZpbGVQYXRoOiB0ZW1wbGF0ZS5maWxlUGF0aCxcbiAgICAgICAgcG9zaXRpb246IHRlbXBsYXRlLmdldENoYXJhY3RlckFuZExpbmVPZlBvc2l0aW9uKHRlbXBsYXRlLnN0YXJ0ICsgb2Zmc2V0KSxcbiAgICAgICAgbWVzc2FnZTogYEZvdW5kIGRlcHJlY2F0ZWQgXCJzZWxlY3RlZFwiIGlucHV0IGJpbmRpbmcgb24gXCJtYXQtcmFkaW8tYnV0dG9uLWdyb3VwXCIuIGAgK1xuICAgICAgICAgICAgYFVzZSBcInZhbHVlXCIgaW5zdGVhZC5gXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -5,16 +5,16 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- /// <amd-module name="@angular/material/schematics/ng-update/upgrade-rules/misc-ripples-v7/ripple-speed-factor-rule" />
9
- import { MigrationRule, ResolvedResource } from '@angular/cdk/schematics';
8
+ /// <amd-module name="@angular/material/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor-migration" />
9
+ import { Migration, ResolvedResource } from '@angular/cdk/schematics';
10
10
  import * as ts from 'typescript';
11
11
  /**
12
- * Rule that walks through every property assignment and switches the global `baseSpeedFactor`
12
+ * Migration that walks through every property assignment and switches the global `baseSpeedFactor`
13
13
  * ripple option to the new global animation config. Also updates every class member assignment
14
14
  * that refers to MatRipple#speedFactor.
15
15
  */
16
- export declare class RippleSpeedFactorRule extends MigrationRule<null> {
17
- ruleEnabled: boolean;
16
+ export declare class RippleSpeedFactorMigration extends Migration<null> {
17
+ enabled: boolean;
18
18
  visitNode(node: ts.Node): void;
19
19
  visitTemplate(template: ResolvedResource): void;
20
20
  /** Switches binary expressions (e.g. myRipple.speedFactor = 0.5) to the new animation config. */