@angular/cdk 8.0.2 → 8.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (307) hide show
  1. package/a11y/typings/aria-describer/aria-describer.d.ts +4 -3
  2. package/a11y/typings/index.metadata.json +1 -1
  3. package/bundles/cdk-a11y.umd.js +42 -10
  4. package/bundles/cdk-a11y.umd.js.map +1 -1
  5. package/bundles/cdk-a11y.umd.min.js +1 -1
  6. package/bundles/cdk-a11y.umd.min.js.map +1 -1
  7. package/bundles/cdk-drag-drop.umd.js +511 -81
  8. package/bundles/cdk-drag-drop.umd.js.map +1 -1
  9. package/bundles/cdk-drag-drop.umd.min.js +2 -2
  10. package/bundles/cdk-drag-drop.umd.min.js.map +1 -1
  11. package/bundles/cdk-overlay.umd.js +15 -13
  12. package/bundles/cdk-overlay.umd.js.map +1 -1
  13. package/bundles/cdk-overlay.umd.min.js +2 -2
  14. package/bundles/cdk-overlay.umd.min.js.map +1 -1
  15. package/bundles/cdk-tree.umd.js +8 -6
  16. package/bundles/cdk-tree.umd.js.map +1 -1
  17. package/bundles/cdk-tree.umd.min.js +1 -1
  18. package/bundles/cdk-tree.umd.min.js.map +1 -1
  19. package/bundles/cdk.umd.js +1 -1
  20. package/bundles/cdk.umd.js.map +1 -1
  21. package/bundles/cdk.umd.min.js +1 -1
  22. package/bundles/cdk.umd.min.js.map +1 -1
  23. package/drag-drop/typings/directives/drag.d.ts +1 -1
  24. package/drag-drop/typings/directives/drop-list.d.ts +2 -0
  25. package/drag-drop/typings/drag-drop-registry.d.ts +2 -0
  26. package/drag-drop/typings/drag-ref.d.ts +10 -1
  27. package/drag-drop/typings/drop-list-ref.d.ts +59 -3
  28. package/drag-drop/typings/index.metadata.json +1 -1
  29. package/esm2015/a11y.js +35 -10
  30. package/esm2015/a11y.js.map +1 -1
  31. package/esm2015/cdk.js +1 -1
  32. package/esm2015/cdk.js.map +1 -1
  33. package/esm2015/drag-drop.js +446 -79
  34. package/esm2015/drag-drop.js.map +1 -1
  35. package/esm2015/overlay.js +14 -12
  36. package/esm2015/overlay.js.map +1 -1
  37. package/esm2015/tree.js +7 -6
  38. package/esm2015/tree.js.map +1 -1
  39. package/esm5/a11y.es5.js +42 -10
  40. package/esm5/a11y.es5.js.map +1 -1
  41. package/esm5/cdk.es5.js +1 -1
  42. package/esm5/cdk.es5.js.map +1 -1
  43. package/esm5/drag-drop.es5.js +509 -79
  44. package/esm5/drag-drop.es5.js.map +1 -1
  45. package/esm5/overlay.es5.js +15 -13
  46. package/esm5/overlay.es5.js.map +1 -1
  47. package/esm5/tree.es5.js +8 -6
  48. package/esm5/tree.es5.js.map +1 -1
  49. package/package.json +4 -4
  50. package/schematics/index.d.ts +1 -0
  51. package/schematics/index.js +1 -0
  52. package/schematics/index.js.map +1 -1
  53. package/schematics/ng-update/data/attribute-selectors.d.ts +1 -1
  54. package/schematics/ng-update/data/attribute-selectors.js +5 -13
  55. package/schematics/ng-update/data/attribute-selectors.js.map +1 -1
  56. package/schematics/ng-update/data/class-names.d.ts +1 -1
  57. package/schematics/ng-update/data/class-names.js +5 -21
  58. package/schematics/ng-update/data/class-names.js.map +1 -1
  59. package/schematics/ng-update/data/constructor-checks.d.ts +1 -1
  60. package/schematics/ng-update/data/constructor-checks.js +3 -5
  61. package/schematics/ng-update/data/constructor-checks.js.map +1 -1
  62. package/schematics/ng-update/data/css-selectors.d.ts +1 -1
  63. package/schematics/ng-update/data/css-selectors.js +1 -1
  64. package/schematics/ng-update/data/css-selectors.js.map +1 -1
  65. package/schematics/ng-update/data/element-selectors.d.ts +1 -1
  66. package/schematics/ng-update/data/element-selectors.js +1 -1
  67. package/schematics/ng-update/data/element-selectors.js.map +1 -1
  68. package/schematics/ng-update/data/input-names.d.ts +1 -1
  69. package/schematics/ng-update/data/input-names.js +13 -37
  70. package/schematics/ng-update/data/input-names.js.map +1 -1
  71. package/schematics/ng-update/data/method-call-checks.d.ts +1 -1
  72. package/schematics/ng-update/data/method-call-checks.js +6 -15
  73. package/schematics/ng-update/data/method-call-checks.js.map +1 -1
  74. package/schematics/ng-update/data/output-names.d.ts +1 -1
  75. package/schematics/ng-update/data/output-names.js +1 -1
  76. package/schematics/ng-update/data/output-names.js.map +1 -1
  77. package/schematics/ng-update/data/property-names.d.ts +1 -1
  78. package/schematics/ng-update/data/property-names.js +19 -59
  79. package/schematics/ng-update/data/property-names.js.map +1 -1
  80. package/schematics/ng-update/html-parsing/elements.js.map +1 -1
  81. package/schematics/ng-update/index.d.ts +0 -2
  82. package/schematics/ng-update/index.js +13 -24
  83. package/schematics/ng-update/index.js.map +1 -1
  84. package/schematics/ng-update/public-api.d.ts +0 -5
  85. package/schematics/ng-update/public-api.js +0 -5
  86. package/schematics/ng-update/public-api.js.map +1 -1
  87. package/schematics/ng-update/typescript/base-types.js.map +1 -1
  88. package/schematics/ng-update/typescript/module-specifiers.js.map +1 -1
  89. package/schematics/ng-update/upgrade-data.d.ts +5 -30
  90. package/schematics/ng-update/upgrade-data.js +4 -34
  91. package/schematics/ng-update/upgrade-data.js.map +1 -1
  92. package/schematics/ng-update/upgrade-rules/attribute-selectors-rule.d.ts +25 -0
  93. package/schematics/ng-update/upgrade-rules/attribute-selectors-rule.js +66 -0
  94. package/schematics/ng-update/upgrade-rules/attribute-selectors-rule.js.map +1 -0
  95. package/schematics/ng-update/upgrade-rules/class-inheritance-rule.d.ts +26 -0
  96. package/schematics/ng-update/upgrade-rules/{class-inheritance/classInheritanceCheckRule.js → class-inheritance-rule.js} +24 -20
  97. package/schematics/ng-update/upgrade-rules/class-inheritance-rule.js.map +1 -0
  98. package/{typings/schematics/ng-update/upgrade-rules/class-names/classNamesIdentifierRule.d.ts → schematics/ng-update/upgrade-rules/class-names-rule.d.ts} +7 -7
  99. package/schematics/ng-update/upgrade-rules/{class-names/classNamesIdentifierRule.js → class-names-rule.js} +19 -24
  100. package/schematics/ng-update/upgrade-rules/class-names-rule.js.map +1 -0
  101. package/schematics/ng-update/upgrade-rules/constructor-signature-rule.d.ts +29 -0
  102. package/schematics/ng-update/upgrade-rules/constructor-signature-rule.js +134 -0
  103. package/schematics/ng-update/upgrade-rules/constructor-signature-rule.js.map +1 -0
  104. package/schematics/ng-update/upgrade-rules/css-selectors-rule.d.ts +25 -0
  105. package/schematics/ng-update/upgrade-rules/css-selectors-rule.js +73 -0
  106. package/schematics/ng-update/upgrade-rules/css-selectors-rule.js.map +1 -0
  107. package/schematics/ng-update/upgrade-rules/element-selectors-rule.d.ts +25 -0
  108. package/schematics/ng-update/upgrade-rules/element-selectors-rule.js +64 -0
  109. package/schematics/ng-update/upgrade-rules/element-selectors-rule.js.map +1 -0
  110. package/schematics/ng-update/upgrade-rules/index.d.ts +13 -4
  111. package/schematics/ng-update/upgrade-rules/index.js +49 -29
  112. package/schematics/ng-update/upgrade-rules/index.js.map +1 -1
  113. package/schematics/ng-update/upgrade-rules/input-names-rule.d.ts +26 -0
  114. package/schematics/ng-update/upgrade-rules/input-names-rule.js +59 -0
  115. package/schematics/ng-update/upgrade-rules/input-names-rule.js.map +1 -0
  116. package/{typings/schematics/ng-update/upgrade-rules/signature-check/methodCallsCheckRule.d.ts → schematics/ng-update/upgrade-rules/method-call-arguments-rule.d.ts} +8 -9
  117. package/schematics/ng-update/upgrade-rules/method-call-arguments-rule.js +60 -0
  118. package/schematics/ng-update/upgrade-rules/method-call-arguments-rule.js.map +1 -0
  119. package/schematics/ng-update/upgrade-rules/misc-template-rule.d.ts +18 -0
  120. package/schematics/ng-update/upgrade-rules/misc-template-rule.js +37 -0
  121. package/schematics/ng-update/upgrade-rules/misc-template-rule.js.map +1 -0
  122. package/schematics/ng-update/upgrade-rules/output-names-rule.d.ts +22 -0
  123. package/schematics/ng-update/upgrade-rules/output-names-rule.js +46 -0
  124. package/schematics/ng-update/upgrade-rules/output-names-rule.js.map +1 -0
  125. package/schematics/ng-update/upgrade-rules/property-names-rule.d.ts +22 -0
  126. package/schematics/ng-update/upgrade-rules/property-names-rule.js +46 -0
  127. package/schematics/ng-update/upgrade-rules/property-names-rule.js.map +1 -0
  128. package/schematics/tsconfig.tsbuildinfo +2895 -3608
  129. package/schematics/update-tool/component-resource-collector.d.ts +41 -0
  130. package/schematics/update-tool/component-resource-collector.js +141 -0
  131. package/schematics/update-tool/component-resource-collector.js.map +1 -0
  132. package/schematics/update-tool/index.d.ts +13 -0
  133. package/schematics/update-tool/index.js +117 -0
  134. package/schematics/update-tool/index.js.map +1 -0
  135. package/schematics/update-tool/migration-rule.d.ts +45 -0
  136. package/schematics/update-tool/migration-rule.js +50 -0
  137. package/schematics/update-tool/migration-rule.js.map +1 -0
  138. package/schematics/update-tool/public-api.d.ts +12 -0
  139. package/schematics/update-tool/public-api.js +18 -0
  140. package/schematics/update-tool/public-api.js.map +1 -0
  141. package/schematics/{ng-update → update-tool}/target-version.d.ts +3 -3
  142. package/schematics/{ng-update → update-tool}/target-version.js +3 -3
  143. package/schematics/update-tool/target-version.js.map +1 -0
  144. package/schematics/update-tool/utils/decorators.d.ts +23 -0
  145. package/schematics/update-tool/utils/decorators.js +37 -0
  146. package/schematics/update-tool/utils/decorators.js.map +1 -0
  147. package/schematics/update-tool/utils/functions.d.ts +14 -0
  148. package/schematics/update-tool/utils/functions.js +20 -0
  149. package/schematics/update-tool/utils/functions.js.map +1 -0
  150. package/schematics/update-tool/utils/imports.d.ts +15 -0
  151. package/schematics/update-tool/utils/imports.js +35 -0
  152. package/schematics/update-tool/utils/imports.js.map +1 -0
  153. package/schematics/update-tool/utils/line-mappings.d.ts +21 -0
  154. package/schematics/update-tool/utils/line-mappings.js +75 -0
  155. package/schematics/update-tool/utils/line-mappings.js.map +1 -0
  156. package/schematics/update-tool/utils/parse-tsconfig.d.ts +9 -0
  157. package/schematics/update-tool/utils/parse-tsconfig.js +22 -0
  158. package/schematics/update-tool/utils/parse-tsconfig.js.map +1 -0
  159. package/schematics/update-tool/utils/property-name.d.ts +18 -0
  160. package/schematics/update-tool/utils/property-name.js +27 -0
  161. package/schematics/update-tool/utils/property-name.js.map +1 -0
  162. package/schematics/update-tool/version-changes.d.ts +32 -0
  163. package/schematics/update-tool/version-changes.js +41 -0
  164. package/schematics/update-tool/version-changes.js.map +1 -0
  165. package/schematics/{ng-update/upgrade-rules → utils}/project-tsconfig-paths.d.ts +4 -1
  166. package/schematics/{ng-update/upgrade-rules → utils}/project-tsconfig-paths.js +31 -20
  167. package/schematics/utils/project-tsconfig-paths.js.map +1 -0
  168. package/typings/a11y/aria-describer/aria-describer.d.ts +4 -3
  169. package/typings/a11y/index.metadata.json +1 -1
  170. package/typings/drag-drop/directives/drag.d.ts +1 -1
  171. package/typings/drag-drop/directives/drop-list.d.ts +2 -0
  172. package/typings/drag-drop/drag-drop-registry.d.ts +2 -0
  173. package/typings/drag-drop/drag-ref.d.ts +10 -1
  174. package/typings/drag-drop/drop-list-ref.d.ts +59 -3
  175. package/typings/drag-drop/index.metadata.json +1 -1
  176. package/typings/esm5/a11y/aria-describer/aria-describer.d.ts +4 -3
  177. package/typings/esm5/a11y/index.metadata.json +1 -1
  178. package/typings/esm5/drag-drop/directives/drag.d.ts +1 -1
  179. package/typings/esm5/drag-drop/directives/drop-list.d.ts +2 -0
  180. package/typings/esm5/drag-drop/drag-drop-registry.d.ts +2 -0
  181. package/typings/esm5/drag-drop/drag-ref.d.ts +10 -1
  182. package/typings/esm5/drag-drop/drop-list-ref.d.ts +59 -3
  183. package/typings/esm5/drag-drop/index.metadata.json +1 -1
  184. package/typings/esm5/index.metadata.json +1 -1
  185. package/typings/index.metadata.json +1 -1
  186. package/typings/schematics/index.d.ts +1 -0
  187. package/typings/schematics/ng-update/data/attribute-selectors.d.ts +1 -1
  188. package/typings/schematics/ng-update/data/class-names.d.ts +1 -1
  189. package/typings/schematics/ng-update/data/constructor-checks.d.ts +1 -1
  190. package/typings/schematics/ng-update/data/css-selectors.d.ts +1 -1
  191. package/typings/schematics/ng-update/data/element-selectors.d.ts +1 -1
  192. package/typings/schematics/ng-update/data/input-names.d.ts +1 -1
  193. package/typings/schematics/ng-update/data/method-call-checks.d.ts +1 -1
  194. package/typings/schematics/ng-update/data/output-names.d.ts +1 -1
  195. package/typings/schematics/ng-update/data/property-names.d.ts +1 -1
  196. package/typings/schematics/ng-update/index.d.ts +0 -2
  197. package/typings/schematics/ng-update/public-api.d.ts +0 -5
  198. package/typings/schematics/ng-update/upgrade-data.d.ts +5 -30
  199. package/typings/schematics/ng-update/upgrade-rules/attribute-selectors-rule.d.ts +25 -0
  200. package/typings/schematics/ng-update/upgrade-rules/class-inheritance-rule.d.ts +26 -0
  201. package/{schematics/ng-update/upgrade-rules/class-names/classNamesIdentifierRule.d.ts → typings/schematics/ng-update/upgrade-rules/class-names-rule.d.ts} +7 -7
  202. package/typings/schematics/ng-update/upgrade-rules/constructor-signature-rule.d.ts +29 -0
  203. package/typings/schematics/ng-update/upgrade-rules/css-selectors-rule.d.ts +25 -0
  204. package/typings/schematics/ng-update/upgrade-rules/element-selectors-rule.d.ts +25 -0
  205. package/typings/schematics/ng-update/upgrade-rules/index.d.ts +13 -4
  206. package/typings/schematics/ng-update/upgrade-rules/input-names-rule.d.ts +26 -0
  207. package/{schematics/ng-update/upgrade-rules/signature-check/methodCallsCheckRule.d.ts → typings/schematics/ng-update/upgrade-rules/method-call-arguments-rule.d.ts} +8 -9
  208. package/typings/schematics/ng-update/upgrade-rules/misc-template-rule.d.ts +18 -0
  209. package/typings/schematics/ng-update/upgrade-rules/output-names-rule.d.ts +22 -0
  210. package/typings/schematics/ng-update/upgrade-rules/property-names-rule.d.ts +22 -0
  211. package/typings/schematics/update-tool/component-resource-collector.d.ts +41 -0
  212. package/typings/schematics/update-tool/index.d.ts +13 -0
  213. package/typings/schematics/update-tool/migration-rule.d.ts +45 -0
  214. package/typings/schematics/update-tool/public-api.d.ts +12 -0
  215. package/typings/schematics/{ng-update → update-tool}/target-version.d.ts +3 -3
  216. package/typings/schematics/update-tool/utils/decorators.d.ts +23 -0
  217. package/typings/schematics/update-tool/utils/functions.d.ts +14 -0
  218. package/typings/schematics/update-tool/utils/imports.d.ts +15 -0
  219. package/typings/schematics/update-tool/utils/line-mappings.d.ts +21 -0
  220. package/typings/schematics/update-tool/utils/parse-tsconfig.d.ts +9 -0
  221. package/typings/schematics/update-tool/utils/property-name.d.ts +18 -0
  222. package/typings/schematics/update-tool/version-changes.d.ts +32 -0
  223. package/typings/schematics/{ng-update/upgrade-rules → utils}/project-tsconfig-paths.d.ts +4 -1
  224. package/schematics/ng-update/target-version.js.map +0 -1
  225. package/schematics/ng-update/tslint/component-file.d.ts +0 -14
  226. package/schematics/ng-update/tslint/component-file.js +0 -31
  227. package/schematics/ng-update/tslint/component-file.js.map +0 -1
  228. package/schematics/ng-update/tslint/component-walker.d.ts +0 -47
  229. package/schematics/ng-update/tslint/component-walker.js +0 -142
  230. package/schematics/ng-update/tslint/component-walker.js.map +0 -1
  231. package/schematics/ng-update/tslint/external-failure-walker.d.ts +0 -25
  232. package/schematics/ng-update/tslint/external-failure-walker.js +0 -38
  233. package/schematics/ng-update/tslint/external-failure-walker.js.map +0 -1
  234. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStringLiteralRule.d.ts +0 -16
  235. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStringLiteralRule.js +0 -49
  236. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStringLiteralRule.js.map +0 -1
  237. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStylesheetRule.d.ts +0 -31
  238. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStylesheetRule.js +0 -62
  239. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStylesheetRule.js.map +0 -1
  240. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsTemplateRule.d.ts +0 -30
  241. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsTemplateRule.js +0 -59
  242. package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsTemplateRule.js.map +0 -1
  243. package/schematics/ng-update/upgrade-rules/class-inheritance/classInheritanceCheckRule.d.ts +0 -26
  244. package/schematics/ng-update/upgrade-rules/class-inheritance/classInheritanceCheckRule.js.map +0 -1
  245. package/schematics/ng-update/upgrade-rules/class-names/classNamesIdentifierRule.js.map +0 -1
  246. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStringLiteralRule.d.ts +0 -24
  247. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStringLiteralRule.js +0 -53
  248. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStringLiteralRule.js.map +0 -1
  249. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStylesheetRule.d.ts +0 -31
  250. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStylesheetRule.js +0 -63
  251. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStylesheetRule.js.map +0 -1
  252. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsTemplateRule.d.ts +0 -30
  253. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsTemplateRule.js +0 -62
  254. package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsTemplateRule.js.map +0 -1
  255. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStringLiteralRule.d.ts +0 -24
  256. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStringLiteralRule.js +0 -50
  257. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStringLiteralRule.js.map +0 -1
  258. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStylesheetRule.d.ts +0 -31
  259. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStylesheetRule.js +0 -60
  260. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStylesheetRule.js.map +0 -1
  261. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsTemplateRule.d.ts +0 -30
  262. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsTemplateRule.js +0 -59
  263. package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsTemplateRule.js.map +0 -1
  264. package/schematics/ng-update/upgrade-rules/input-names/inputNamesStylesheetRule.d.ts +0 -36
  265. package/schematics/ng-update/upgrade-rules/input-names/inputNamesStylesheetRule.js +0 -67
  266. package/schematics/ng-update/upgrade-rules/input-names/inputNamesStylesheetRule.js.map +0 -1
  267. package/schematics/ng-update/upgrade-rules/input-names/inputNamesTemplateRule.d.ts +0 -30
  268. package/schematics/ng-update/upgrade-rules/input-names/inputNamesTemplateRule.js +0 -67
  269. package/schematics/ng-update/upgrade-rules/input-names/inputNamesTemplateRule.js.map +0 -1
  270. package/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.d.ts +0 -23
  271. package/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.js +0 -49
  272. package/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.js.map +0 -1
  273. package/schematics/ng-update/upgrade-rules/output-names/outputNamesTemplateRule.d.ts +0 -30
  274. package/schematics/ng-update/upgrade-rules/output-names/outputNamesTemplateRule.js +0 -67
  275. package/schematics/ng-update/upgrade-rules/output-names/outputNamesTemplateRule.js.map +0 -1
  276. package/schematics/ng-update/upgrade-rules/project-tsconfig-paths.js.map +0 -1
  277. package/schematics/ng-update/upgrade-rules/property-names/propertyNamesAccessRule.d.ts +0 -22
  278. package/schematics/ng-update/upgrade-rules/property-names/propertyNamesAccessRule.js +0 -46
  279. package/schematics/ng-update/upgrade-rules/property-names/propertyNamesAccessRule.js.map +0 -1
  280. package/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.d.ts +0 -16
  281. package/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.js +0 -132
  282. package/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.js.map +0 -1
  283. package/schematics/ng-update/upgrade-rules/signature-check/methodCallsCheckRule.js +0 -58
  284. package/schematics/ng-update/upgrade-rules/signature-check/methodCallsCheckRule.js.map +0 -1
  285. package/schematics/ng-update/upgrade-rules/tslint-config.d.ts +0 -32
  286. package/schematics/ng-update/upgrade-rules/tslint-config.js +0 -87
  287. package/schematics/ng-update/upgrade-rules/tslint-config.js.map +0 -1
  288. package/typings/schematics/ng-update/tslint/component-file.d.ts +0 -14
  289. package/typings/schematics/ng-update/tslint/component-walker.d.ts +0 -47
  290. package/typings/schematics/ng-update/tslint/external-failure-walker.d.ts +0 -25
  291. package/typings/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStringLiteralRule.d.ts +0 -16
  292. package/typings/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStylesheetRule.d.ts +0 -31
  293. package/typings/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsTemplateRule.d.ts +0 -30
  294. package/typings/schematics/ng-update/upgrade-rules/class-inheritance/classInheritanceCheckRule.d.ts +0 -26
  295. package/typings/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStringLiteralRule.d.ts +0 -24
  296. package/typings/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStylesheetRule.d.ts +0 -31
  297. package/typings/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsTemplateRule.d.ts +0 -30
  298. package/typings/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStringLiteralRule.d.ts +0 -24
  299. package/typings/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStylesheetRule.d.ts +0 -31
  300. package/typings/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsTemplateRule.d.ts +0 -30
  301. package/typings/schematics/ng-update/upgrade-rules/input-names/inputNamesStylesheetRule.d.ts +0 -36
  302. package/typings/schematics/ng-update/upgrade-rules/input-names/inputNamesTemplateRule.d.ts +0 -30
  303. package/typings/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.d.ts +0 -23
  304. package/typings/schematics/ng-update/upgrade-rules/output-names/outputNamesTemplateRule.d.ts +0 -30
  305. package/typings/schematics/ng-update/upgrade-rules/property-names/propertyNamesAccessRule.d.ts +0 -22
  306. package/typings/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.d.ts +0 -16
  307. package/typings/schematics/ng-update/upgrade-rules/tslint-config.d.ts +0 -32
@@ -7,9 +7,8 @@
7
7
  * found in the LICENSE file at https://angular.io/license
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- const schematics_1 = require("@angular-devkit/schematics");
10
+ const version_changes_1 = require("../update-tool/version-changes");
11
11
  const data_1 = require("./data");
12
- const target_version_1 = require("./target-version");
13
12
  /** Upgrade data for the Angular CDK. */
14
13
  exports.cdkUpgradeData = {
15
14
  attributeSelectors: data_1.attributeSelectors,
@@ -22,43 +21,14 @@ exports.cdkUpgradeData = {
22
21
  outputNames: data_1.outputNames,
23
22
  propertyNames: data_1.propertyNames,
24
23
  };
25
- /**
26
- * Gets the changes for a given target version from the specified version changes object.
27
- *
28
- * For readability and a good overview of breaking changes, the version change data always
29
- * includes the related Pull Request link. Since this data is not needed when performing the
30
- * upgrade, this unused data can be removed and the changes data can be flattened into an
31
- * easy iterable array.
32
- */
33
- function getChangesForTarget(target, data) {
34
- if (!data) {
35
- throw new schematics_1.SchematicsException(`No data could be found for target version: ${target_version_1.TargetVersion[target]}`);
36
- }
37
- if (!data[target]) {
38
- return [];
39
- }
40
- return data[target].reduce((result, prData) => result.concat(prData.changes), []);
41
- }
42
- exports.getChangesForTarget = getChangesForTarget;
43
- /**
44
- * Gets all changes from the specified version changes object. This is helpful in case a migration
45
- * rule does not distinguish data based on the target version, but for readability the
46
- * upgrade data is separated for each target version.
47
- */
48
- function getAllChanges(data) {
49
- return Object.keys(data)
50
- .map(targetVersion => getChangesForTarget(parseInt(targetVersion), data))
51
- .reduce((result, versionData) => result.concat(versionData), []);
52
- }
53
- exports.getAllChanges = getAllChanges;
54
24
  /**
55
25
  * Gets the reduced upgrade data for the specified data key from the rule walker options.
56
26
  *
57
27
  * The function reads out the target version and upgrade data object from the rule options and
58
28
  * resolves the specified data portion that is specifically tied to the target version.
59
29
  */
60
- function getUpgradeDataFromWalker(walker, dataName) {
61
- return getChangesForTarget(walker.getOptions()[0], walker.getOptions()[1][dataName]);
30
+ function getVersionUpgradeData(r, dataName) {
31
+ return version_changes_1.getChangesForTarget(r.targetVersion, r.upgradeData[dataName]);
62
32
  }
63
- exports.getUpgradeDataFromWalker = getUpgradeDataFromWalker;
33
+ exports.getVersionUpgradeData = getVersionUpgradeData;
64
34
  //# sourceMappingURL=upgrade-data.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade-data.js","sourceRoot":"","sources":["../../../../../src/cdk/schematics/ng-update/upgrade-data.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,2DAA+D;AAE/D,iCAmBgB;AAChB,qDAA+C;AA8B/C,wCAAwC;AAC3B,QAAA,cAAc,GAAoB;IAC7C,kBAAkB,EAAlB,yBAAkB;IAClB,UAAU,EAAV,iBAAU;IACV,iBAAiB,EAAjB,wBAAiB;IACjB,YAAY,EAAZ,mBAAY;IACZ,gBAAgB,EAAhB,uBAAgB;IAChB,UAAU,EAAV,iBAAU;IACV,gBAAgB,EAAhB,uBAAgB;IAChB,WAAW,EAAX,kBAAW;IACX,aAAa,EAAb,oBAAa;CACd,CAAC;AAGF;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CAAI,MAAqB,EAAE,IAAuB;IACnF,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,gCAAmB,CAC3B,8CAA8C,8BAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;KAC1E;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;QACjB,OAAO,EAAE,CAAC;KACX;IAED,OAAO,IAAI,CAAC,MAAM,CAAE,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAS,CAAC,CAAC;AAC5F,CAAC;AAXD,kDAWC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAI,IAAuB;IACtD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;SACrB,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,CAAC;SACxE,MAAM,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;AACrE,CAAC;AAJD,sCAIC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CACK,MAAkB,EAAE,QAAW;IAC1E,OAAO,mBAAmB,CAAI,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC1F,CAAC;AAHD,4DAGC"}
1
+ {"version":3,"file":"upgrade-data.js","sourceRoot":"","sources":["../../../../../src/cdk/schematics/ng-update/upgrade-data.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAGH,oEAAmG;AACnG,iCAmBgB;AAGhB,wCAAwC;AAC3B,QAAA,cAAc,GAAoB;IAC7C,kBAAkB,EAAlB,yBAAkB;IAClB,UAAU,EAAV,iBAAU;IACV,iBAAiB,EAAjB,wBAAiB;IACjB,YAAY,EAAZ,mBAAY;IACZ,gBAAgB,EAAhB,uBAAgB;IAChB,UAAU,EAAV,iBAAU;IACV,gBAAgB,EAAhB,uBAAgB;IAChB,WAAW,EAAX,kBAAW;IACX,aAAa,EAAb,oBAAa;CACd,CAAC;AAkBF;;;;;GAKG;AACH,SACA,qBAAqB,CACjB,CAAiC,EAAE,QAAW;IAChD,OAAO,qCAAmB,CAAI,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAsB,CAAC,CAAC;AAC/F,CAAC;AAJD,sDAIC"}
@@ -0,0 +1,25 @@
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
+ import * as ts from 'typescript';
9
+ import { ResolvedResource } from '../../update-tool/component-resource-collector';
10
+ import { MigrationRule } from '../../update-tool/migration-rule';
11
+ import { RuleUpgradeData } from '../upgrade-data';
12
+ /**
13
+ * Migration rule that walks through every string literal, template and stylesheet
14
+ * in order to switch deprecated attribute selectors to the updated selector.
15
+ */
16
+ export declare class AttributeSelectorsRule extends MigrationRule<RuleUpgradeData> {
17
+ /** Required upgrade changes for specified target version. */
18
+ data: any;
19
+ ruleEnabled: any;
20
+ visitNode(node: ts.Node): void;
21
+ visitTemplate(template: ResolvedResource): void;
22
+ visitStylesheet(stylesheet: ResolvedResource): void;
23
+ private _visitStringLiteralLike;
24
+ private _replaceSelector;
25
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.io/license
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ const ts = require("typescript");
11
+ const migration_rule_1 = require("../../update-tool/migration-rule");
12
+ const literal_1 = require("../typescript/literal");
13
+ const upgrade_data_1 = require("../upgrade-data");
14
+ /**
15
+ * Migration rule that walks through every string literal, template and stylesheet
16
+ * in order to switch deprecated attribute selectors to the updated selector.
17
+ */
18
+ class AttributeSelectorsRule extends migration_rule_1.MigrationRule {
19
+ constructor() {
20
+ super(...arguments);
21
+ /** Required upgrade changes for specified target version. */
22
+ this.data = upgrade_data_1.getVersionUpgradeData(this, 'attributeSelectors');
23
+ // Only enable the migration rule if there is upgrade data.
24
+ this.ruleEnabled = this.data.length !== 0;
25
+ }
26
+ visitNode(node) {
27
+ if (ts.isStringLiteralLike(node)) {
28
+ this._visitStringLiteralLike(node);
29
+ }
30
+ }
31
+ visitTemplate(template) {
32
+ this.data.forEach(selector => {
33
+ literal_1.findAllSubstringIndices(template.content, selector.replace)
34
+ .map(offset => template.start + offset)
35
+ .forEach(start => this._replaceSelector(template.filePath, start, selector));
36
+ });
37
+ }
38
+ visitStylesheet(stylesheet) {
39
+ this.data.forEach(selector => {
40
+ const currentSelector = `[${selector.replace}]`;
41
+ const updatedSelector = `[${selector.replaceWith}]`;
42
+ literal_1.findAllSubstringIndices(stylesheet.content, currentSelector)
43
+ .map(offset => stylesheet.start + offset)
44
+ .forEach(start => this._replaceSelector(stylesheet.filePath, start, { replace: currentSelector, replaceWith: updatedSelector }));
45
+ });
46
+ }
47
+ _visitStringLiteralLike(literal) {
48
+ if (literal.parent && literal.parent.kind !== ts.SyntaxKind.CallExpression) {
49
+ return;
50
+ }
51
+ const literalText = literal.getText();
52
+ const filePath = literal.getSourceFile().fileName;
53
+ this.data.forEach(selector => {
54
+ literal_1.findAllSubstringIndices(literalText, selector.replace)
55
+ .map(offset => literal.getStart() + offset)
56
+ .forEach(start => this._replaceSelector(filePath, start, selector));
57
+ });
58
+ }
59
+ _replaceSelector(filePath, start, data) {
60
+ const updateRecorder = this.getUpdateRecorder(filePath);
61
+ updateRecorder.remove(start, data.replace.length);
62
+ updateRecorder.insertRight(start, data.replaceWith);
63
+ }
64
+ }
65
+ exports.AttributeSelectorsRule = AttributeSelectorsRule;
66
+ //# sourceMappingURL=attribute-selectors-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attribute-selectors-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/attribute-selectors-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,iCAAiC;AAEjC,qEAA+D;AAE/D,mDAA8D;AAC9D,kDAAuE;AAEvE;;;GAGG;AACH,MAAa,sBAAuB,SAAQ,8BAA8B;IAA1E;;QACE,6DAA6D;QAC7D,SAAI,GAAG,oCAAqB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAEzD,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IAkDvC,CAAC;IAhDC,SAAS,CAAC,IAAa;QACrB,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE;YAChC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;SACpC;IACH,CAAC;IAED,aAAa,CAAC,QAA0B;QACtC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,iCAAuB,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;iBACtD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC;iBACtC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe,CAAC,UAA4B;QAC1C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC;YAChD,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAC,WAAW,GAAG,CAAC;YAEpD,iCAAuB,CAAC,UAAU,CAAC,OAAO,EAAE,eAAe,CAAC;iBACvD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC;iBACxC,OAAO,CACJ,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAC1B,UAAU,CAAC,QAAQ,EAAE,KAAK,EAC1B,EAAC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,OAA6B;QAC3D,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE;YAC1E,OAAO;SACR;QAED,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC;QAElD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,iCAAuB,CAAC,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC;iBACjD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC;iBAC1C,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,QAAgB,EAAE,KAAa,EAAE,IAAkC;QAC1F,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACxD,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClD,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;CACF;AAvDD,wDAuDC"}
@@ -0,0 +1,26 @@
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
+ import * as ts from 'typescript';
9
+ import { MigrationRule } from '../../update-tool/migration-rule';
10
+ import { PropertyNameUpgradeData } from '../data/property-names';
11
+ import { RuleUpgradeData } from '../upgrade-data';
12
+ /**
13
+ * Rule that identifies class declarations that extend CDK or Material classes
14
+ * which had a public property change.
15
+ */
16
+ export declare class ClassInheritanceRule extends MigrationRule<RuleUpgradeData> {
17
+ /**
18
+ * Map of classes that have been updated. Each class name maps to the according property
19
+ * change data.
20
+ */
21
+ propertyNames: Map<string, PropertyNameUpgradeData>;
22
+ ruleEnabled: boolean;
23
+ init(): void;
24
+ visitNode(node: ts.Node): void;
25
+ private _visitClassDeclaration;
26
+ }
@@ -8,32 +8,36 @@
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  const chalk_1 = require("chalk");
11
- const tslint_1 = require("tslint");
12
- const base_types_1 = require("../../typescript/base-types");
13
- const upgrade_data_1 = require("../../upgrade-data");
11
+ const ts = require("typescript");
12
+ const migration_rule_1 = require("../../update-tool/migration-rule");
13
+ const base_types_1 = require("../typescript/base-types");
14
+ const upgrade_data_1 = require("../upgrade-data");
14
15
  /**
15
- * Rule that identifies class declarations that extend CDK or Material classes and had
16
- * a public property change.
16
+ * Rule that identifies class declarations that extend CDK or Material classes
17
+ * which had a public property change.
17
18
  */
18
- class Rule extends tslint_1.Rules.TypedRule {
19
- applyWithProgram(sourceFile, program) {
20
- return this.applyWithWalker(new Walker(sourceFile, this.getOptions(), program));
21
- }
22
- }
23
- exports.Rule = Rule;
24
- class Walker extends tslint_1.ProgramAwareRuleWalker {
25
- constructor(sourceFile, options, program) {
26
- super(sourceFile, options, program);
19
+ class ClassInheritanceRule extends migration_rule_1.MigrationRule {
20
+ constructor() {
21
+ super(...arguments);
27
22
  /**
28
23
  * Map of classes that have been updated. Each class name maps to the according property
29
24
  * change data.
30
25
  */
31
26
  this.propertyNames = new Map();
32
- upgrade_data_1.getUpgradeDataFromWalker(this, 'propertyNames')
27
+ // Only enable the migration rule if there is upgrade data.
28
+ this.ruleEnabled = this.propertyNames.size !== 0;
29
+ }
30
+ init() {
31
+ upgrade_data_1.getVersionUpgradeData(this, 'propertyNames')
33
32
  .filter(data => data.whitelist && data.whitelist.classes)
34
33
  .forEach(data => data.whitelist.classes.forEach(name => this.propertyNames.set(name, data)));
35
34
  }
36
- visitClassDeclaration(node) {
35
+ visitNode(node) {
36
+ if (ts.isClassDeclaration(node)) {
37
+ this._visitClassDeclaration(node);
38
+ }
39
+ }
40
+ _visitClassDeclaration(node) {
37
41
  const baseTypes = base_types_1.determineBaseTypes(node);
38
42
  const className = node.name ? node.name.text : '{unknown-name}';
39
43
  if (!baseTypes) {
@@ -42,13 +46,13 @@ class Walker extends tslint_1.ProgramAwareRuleWalker {
42
46
  baseTypes.forEach(typeName => {
43
47
  const data = this.propertyNames.get(typeName);
44
48
  if (data) {
45
- this.addFailureAtNode(node, `Found class "${chalk_1.bold(className)}" which extends class ` +
49
+ this.createFailureAtNode(node, `Found class "${chalk_1.bold(className)}" which extends class ` +
46
50
  `"${chalk_1.bold(typeName)}". Please note that the base class property ` +
47
51
  `"${chalk_1.red(data.replace)}" has changed to "${chalk_1.green(data.replaceWith)}". ` +
48
- `You may need to update your class as well`);
52
+ `You may need to update your class as well.`);
49
53
  }
50
54
  });
51
55
  }
52
56
  }
53
- exports.Walker = Walker;
54
- //# sourceMappingURL=classInheritanceCheckRule.js.map
57
+ exports.ClassInheritanceRule = ClassInheritanceRule;
58
+ //# sourceMappingURL=class-inheritance-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-inheritance-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/class-inheritance-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,iCAAuC;AACvC,iCAAiC;AACjC,qEAA+D;AAE/D,yDAA4D;AAC5D,kDAAuE;AAEvE;;;GAGG;AACH,MAAa,oBAAqB,SAAQ,8BAA8B;IAAxE;;QACE;;;WAGG;QACH,kBAAa,GAAG,IAAI,GAAG,EAAmC,CAAC;QAE3D,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,CAAC;IAoC9C,CAAC;IAlCC,IAAI;QACF,oCAAqB,CAAC,IAAI,EAAE,eAAe,CAAC;aACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;aACxD,OAAO,CACJ,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,SAAS,CAAC,IAAa;QACrB,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;YAC/B,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;SACnC;IACH,CAAC;IAEO,sBAAsB,CAAC,IAAyB;QACtD,MAAM,SAAS,GAAG,+BAAkB,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAEhE,IAAI,CAAC,SAAS,EAAE;YACd,OAAO;SACR;QAED,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE9C,IAAI,IAAI,EAAE;gBACR,IAAI,CAAC,mBAAmB,CACpB,IAAI,EACJ,gBAAgB,YAAI,CAAC,SAAS,CAAC,wBAAwB;oBACnD,IAAI,YAAI,CAAC,QAAQ,CAAC,8CAA8C;oBAChE,IAAI,WAAG,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,aAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK;oBACtE,4CAA4C,CAAC,CAAC;aACvD;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA5CD,oDA4CC"}
@@ -5,17 +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
- import { RuleFailure, Rules, RuleWalker } from 'tslint';
9
8
  import * as ts from 'typescript';
10
- import { ClassNameUpgradeData } from '../../data';
9
+ import { MigrationRule } from '../../update-tool/migration-rule';
10
+ import { ClassNameUpgradeData } from '../data';
11
+ import { RuleUpgradeData } from '../upgrade-data';
11
12
  /**
12
13
  * Rule that walks through every identifier that is part of Angular Material or thr CDK
13
14
  * and replaces the outdated name with the new one if specified in the upgrade data.
14
15
  */
15
- export declare class Rule extends Rules.AbstractRule {
16
- apply(sourceFile: ts.SourceFile): RuleFailure[];
17
- }
18
- export declare class Walker extends RuleWalker {
16
+ export declare class ClassNamesRule extends MigrationRule<RuleUpgradeData> {
19
17
  /** Change data that upgrades to the specified target version. */
20
18
  data: ClassNameUpgradeData[];
21
19
  /**
@@ -25,8 +23,10 @@ export declare class Walker extends RuleWalker {
25
23
  trustedIdentifiers: Set<string>;
26
24
  /** List of namespaces that have been imported from `@angular/material` or `@angular/cdk`. */
27
25
  trustedNamespaces: Set<string>;
26
+ ruleEnabled: boolean;
27
+ visitNode(node: ts.Node): void;
28
28
  /** Method that is called for every identifier inside of the specified project. */
29
- visitIdentifier(identifier: ts.Identifier): void;
29
+ private _visitIdentifier;
30
30
  /** Creates a failure and replacement for the specified identifier. */
31
31
  private _createFailureWithReplacement;
32
32
  }
@@ -7,27 +7,20 @@
7
7
  * found in the LICENSE file at https://angular.io/license
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- const chalk_1 = require("chalk");
11
- const tslint_1 = require("tslint");
12
10
  const ts = require("typescript");
13
- const imports_1 = require("../../typescript/imports");
14
- const module_specifiers_1 = require("../../typescript/module-specifiers");
15
- const upgrade_data_1 = require("../../upgrade-data");
11
+ const migration_rule_1 = require("../../update-tool/migration-rule");
12
+ const imports_1 = require("../typescript/imports");
13
+ const module_specifiers_1 = require("../typescript/module-specifiers");
14
+ const upgrade_data_1 = require("../upgrade-data");
16
15
  /**
17
16
  * Rule that walks through every identifier that is part of Angular Material or thr CDK
18
17
  * and replaces the outdated name with the new one if specified in the upgrade data.
19
18
  */
20
- class Rule extends tslint_1.Rules.AbstractRule {
21
- apply(sourceFile) {
22
- return this.applyWithWalker(new Walker(sourceFile, this.getOptions()));
23
- }
24
- }
25
- exports.Rule = Rule;
26
- class Walker extends tslint_1.RuleWalker {
19
+ class ClassNamesRule extends migration_rule_1.MigrationRule {
27
20
  constructor() {
28
21
  super(...arguments);
29
22
  /** Change data that upgrades to the specified target version. */
30
- this.data = upgrade_data_1.getUpgradeDataFromWalker(this, 'classNames');
23
+ this.data = upgrade_data_1.getVersionUpgradeData(this, 'classNames');
31
24
  /**
32
25
  * List of identifier names that have been imported from `@angular/material` or `@angular/cdk`
33
26
  * in the current source file and therefore can be considered trusted.
@@ -35,9 +28,16 @@ class Walker extends tslint_1.RuleWalker {
35
28
  this.trustedIdentifiers = new Set();
36
29
  /** List of namespaces that have been imported from `@angular/material` or `@angular/cdk`. */
37
30
  this.trustedNamespaces = new Set();
31
+ // Only enable the migration rule if there is upgrade data.
32
+ this.ruleEnabled = this.data.length !== 0;
33
+ }
34
+ visitNode(node) {
35
+ if (ts.isIdentifier(node)) {
36
+ this._visitIdentifier(node);
37
+ }
38
38
  }
39
39
  /** Method that is called for every identifier inside of the specified project. */
40
- visitIdentifier(identifier) {
40
+ _visitIdentifier(identifier) {
41
41
  // For identifiers that aren't listed in the className data, the whole check can be
42
42
  // skipped safely.
43
43
  if (!this.data.some(data => data.replace === identifier.text)) {
@@ -77,15 +77,10 @@ class Walker extends tslint_1.RuleWalker {
77
77
  /** Creates a failure and replacement for the specified identifier. */
78
78
  _createFailureWithReplacement(identifier) {
79
79
  const classData = this.data.find(data => data.replace === identifier.text);
80
- if (!classData) {
81
- console.error(`Could not find updated name for identifier "${identifier.text}" in ` +
82
- ` in file ${this.getSourceFile().fileName}.`);
83
- return;
84
- }
85
- const replacement = this.createReplacement(identifier.getStart(), identifier.getWidth(), classData.replaceWith);
86
- this.addFailureAtNode(identifier, `Found deprecated identifier "${chalk_1.red(classData.replace)}" which has been renamed to` +
87
- ` "${chalk_1.green(classData.replaceWith)}"`, replacement);
80
+ const updateRecorder = this.getUpdateRecorder(identifier.getSourceFile().fileName);
81
+ updateRecorder.remove(identifier.getStart(), identifier.getWidth());
82
+ updateRecorder.insertRight(identifier.getStart(), classData.replaceWith);
88
83
  }
89
84
  }
90
- exports.Walker = Walker;
91
- //# sourceMappingURL=classNamesIdentifierRule.js.map
85
+ exports.ClassNamesRule = ClassNamesRule;
86
+ //# sourceMappingURL=class-names-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-names-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/class-names-rule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
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
+ import * as ts from 'typescript';
9
+ import { MigrationRule } from '../../update-tool/migration-rule';
10
+ import { RuleUpgradeData } from '../upgrade-data';
11
+ /**
12
+ * Rule that visits every TypeScript new expression or super call and checks if
13
+ * the parameter type signature is invalid and needs to be updated manually.
14
+ */
15
+ export declare class ConstructorSignatureRule extends MigrationRule<RuleUpgradeData> {
16
+ data: string[];
17
+ ruleEnabled: boolean;
18
+ visitNode(node: ts.Node): void;
19
+ /**
20
+ * Method that will be called for each source file of the upgrade project. In order to
21
+ * properly determine invalid constructor signatures, we take advantage of the pre-emit
22
+ * diagnostics from TypeScript.
23
+ *
24
+ * By using the diagnostics, the migration can handle type assignability. Not using
25
+ * diagnostics would mean that we need to use simple type equality checking which is
26
+ * too strict. See related issue: https://github.com/Microsoft/TypeScript/issues/9879
27
+ */
28
+ private _visitSourceFile;
29
+ }
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.io/license
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ const ts = require("typescript");
11
+ const migration_rule_1 = require("../../update-tool/migration-rule");
12
+ const version_changes_1 = require("../../update-tool/version-changes");
13
+ /**
14
+ * List of diagnostic codes that refer to pre-emit diagnostics which indicate invalid
15
+ * new expression or super call signatures. See the list of diagnostics here:
16
+ *
17
+ * https://github.com/Microsoft/TypeScript/blob/master/src/compiler/diagnosticMessages.json
18
+ */
19
+ const signatureErrorDiagnostics = [
20
+ // Type not assignable error diagnostic.
21
+ 2345,
22
+ // Constructor argument length invalid diagnostics
23
+ 2554,
24
+ 2555,
25
+ 2556,
26
+ 2557,
27
+ ];
28
+ /**
29
+ * Rule that visits every TypeScript new expression or super call and checks if
30
+ * the parameter type signature is invalid and needs to be updated manually.
31
+ */
32
+ class ConstructorSignatureRule extends migration_rule_1.MigrationRule {
33
+ constructor() {
34
+ super(...arguments);
35
+ // Note that the data for this rule is not distinguished based on the target version because
36
+ // we don't keep track of the new signature and don't want to update incrementally.
37
+ // See: https://github.com/angular/components/pull/12970#issuecomment-418337566
38
+ this.data = version_changes_1.getAllChanges(this.upgradeData.constructorChecks);
39
+ // Only enable the migration rule if there is upgrade data.
40
+ this.ruleEnabled = this.data.length !== 0;
41
+ }
42
+ visitNode(node) {
43
+ if (ts.isSourceFile(node)) {
44
+ this._visitSourceFile(node);
45
+ }
46
+ }
47
+ /**
48
+ * Method that will be called for each source file of the upgrade project. In order to
49
+ * properly determine invalid constructor signatures, we take advantage of the pre-emit
50
+ * diagnostics from TypeScript.
51
+ *
52
+ * By using the diagnostics, the migration can handle type assignability. Not using
53
+ * diagnostics would mean that we need to use simple type equality checking which is
54
+ * too strict. See related issue: https://github.com/Microsoft/TypeScript/issues/9879
55
+ */
56
+ _visitSourceFile(sourceFile) {
57
+ // List of classes of which the constructor signature has changed.
58
+ const diagnostics = ts.getPreEmitDiagnostics(this.program, sourceFile)
59
+ .filter(diagnostic => signatureErrorDiagnostics.includes(diagnostic.code))
60
+ .filter(diagnostic => diagnostic.start !== undefined);
61
+ for (const diagnostic of diagnostics) {
62
+ const node = findConstructorNode(diagnostic, sourceFile);
63
+ if (!node) {
64
+ continue;
65
+ }
66
+ const classType = this.typeChecker.getTypeAtLocation(node.expression);
67
+ const className = classType.symbol && classType.symbol.name;
68
+ const isNewExpression = ts.isNewExpression(node);
69
+ // Determine the class names of the actual construct signatures because we cannot assume that
70
+ // the diagnostic refers to a constructor of the actual expression. In case the constructor
71
+ // is inherited, we need to detect that the owner-class of the constructor is added to the
72
+ // constructor checks upgrade data. e.g. `class CustomCalendar extends MatCalendar {}`.
73
+ const signatureClassNames = classType.getConstructSignatures()
74
+ .map(signature => getClassDeclarationOfSignature(signature))
75
+ .map(declaration => declaration && declaration.name ? declaration.name.text : null)
76
+ .filter(Boolean);
77
+ // Besides checking the signature class names, we need to check the actual class name because
78
+ // there can be classes without an explicit constructor.
79
+ if (!this.data.includes(className) &&
80
+ !signatureClassNames.some(name => this.data.includes(name))) {
81
+ continue;
82
+ }
83
+ const classSignatures = classType.getConstructSignatures().map(signature => getParameterTypesFromSignature(signature, this.typeChecker));
84
+ const expressionName = isNewExpression ? `new ${className}` : 'super';
85
+ const signatures = classSignatures.map(signature => signature.map(t => this.typeChecker.typeToString(t)))
86
+ .map(signature => `${expressionName}(${signature.join(', ')})`)
87
+ .join(' or ');
88
+ this.createFailureAtNode(node, `Found "${className}" constructed with ` +
89
+ `an invalid signature. Please manually update the ${expressionName} expression to ` +
90
+ `match the new signature${classSignatures.length > 1 ? 's' : ''}: ${signatures}`);
91
+ }
92
+ }
93
+ }
94
+ exports.ConstructorSignatureRule = ConstructorSignatureRule;
95
+ /** Resolves the type for each parameter in the specified signature. */
96
+ function getParameterTypesFromSignature(signature, typeChecker) {
97
+ return signature.getParameters().map(param => typeChecker.getTypeAtLocation(param.declarations[0]));
98
+ }
99
+ /**
100
+ * Walks through each node of a source file in order to find a new-expression node or super-call
101
+ * expression node that is captured by the specified diagnostic.
102
+ */
103
+ function findConstructorNode(diagnostic, sourceFile) {
104
+ let resolvedNode = null;
105
+ const _visitNode = (node) => {
106
+ // Check whether the current node contains the diagnostic. If the node contains the diagnostic,
107
+ // walk deeper in order to find all constructor expression nodes.
108
+ if (node.getStart() <= diagnostic.start && node.getEnd() >= diagnostic.start) {
109
+ if (ts.isNewExpression(node) ||
110
+ (ts.isCallExpression(node) && node.expression.kind === ts.SyntaxKind.SuperKeyword)) {
111
+ resolvedNode = node;
112
+ }
113
+ ts.forEachChild(node, _visitNode);
114
+ }
115
+ };
116
+ ts.forEachChild(sourceFile, _visitNode);
117
+ return resolvedNode;
118
+ }
119
+ /** Determines the class declaration of the specified construct signature. */
120
+ function getClassDeclarationOfSignature(signature) {
121
+ let node = signature.getDeclaration();
122
+ // Handle signatures which don't have an actual declaration. This happens if a class
123
+ // does not have an explicitly written constructor.
124
+ if (!node) {
125
+ return null;
126
+ }
127
+ while (!ts.isSourceFile(node = node.parent)) {
128
+ if (ts.isClassDeclaration(node)) {
129
+ return node;
130
+ }
131
+ }
132
+ return null;
133
+ }
134
+ //# sourceMappingURL=constructor-signature-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constructor-signature-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/constructor-signature-rule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
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
+ import * as ts from 'typescript';
9
+ import { ResolvedResource } from '../../update-tool/component-resource-collector';
10
+ import { MigrationRule } from '../../update-tool/migration-rule';
11
+ import { RuleUpgradeData } from '../upgrade-data';
12
+ /**
13
+ * Rule that walks through every string literal, template and stylesheet in
14
+ * order to migrate outdated CSS selectors to the new selector.
15
+ */
16
+ export declare class CssSelectorsRule extends MigrationRule<RuleUpgradeData> {
17
+ /** Change data that upgrades to the specified target version. */
18
+ data: any;
19
+ ruleEnabled: any;
20
+ visitNode(node: ts.Node): void;
21
+ visitTemplate(template: ResolvedResource): void;
22
+ visitStylesheet(stylesheet: ResolvedResource): void;
23
+ private _visitStringLiteralLike;
24
+ private _replaceSelector;
25
+ }