@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
@@ -0,0 +1,73 @@
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
+ * Rule that walks through every string literal, template and stylesheet in
16
+ * order to migrate outdated CSS selectors to the new selector.
17
+ */
18
+ class CssSelectorsRule extends migration_rule_1.MigrationRule {
19
+ constructor() {
20
+ super(...arguments);
21
+ /** Change data that upgrades to the specified target version. */
22
+ this.data = upgrade_data_1.getVersionUpgradeData(this, 'cssSelectors');
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(data => {
33
+ if (data.whitelist && !data.whitelist.html) {
34
+ return;
35
+ }
36
+ literal_1.findAllSubstringIndices(template.content, data.replace)
37
+ .map(offset => template.start + offset)
38
+ .forEach(start => this._replaceSelector(template.filePath, start, data));
39
+ });
40
+ }
41
+ visitStylesheet(stylesheet) {
42
+ this.data.forEach(data => {
43
+ if (data.whitelist && !data.whitelist.stylesheet) {
44
+ return;
45
+ }
46
+ literal_1.findAllSubstringIndices(stylesheet.content, data.replace)
47
+ .map(offset => stylesheet.start + offset)
48
+ .forEach(start => this._replaceSelector(stylesheet.filePath, start, data));
49
+ });
50
+ }
51
+ _visitStringLiteralLike(node) {
52
+ if (node.parent && node.parent.kind !== ts.SyntaxKind.CallExpression) {
53
+ return;
54
+ }
55
+ const textContent = node.getText();
56
+ const filePath = node.getSourceFile().fileName;
57
+ this.data.forEach(data => {
58
+ if (data.whitelist && !data.whitelist.strings) {
59
+ return;
60
+ }
61
+ literal_1.findAllSubstringIndices(textContent, data.replace)
62
+ .map(offset => node.getStart() + offset)
63
+ .forEach(start => this._replaceSelector(filePath, start, data));
64
+ });
65
+ }
66
+ _replaceSelector(filePath, start, data) {
67
+ const updateRecorder = this.getUpdateRecorder(filePath);
68
+ updateRecorder.remove(start, data.replace.length);
69
+ updateRecorder.insertRight(start, data.replaceWith);
70
+ }
71
+ }
72
+ exports.CssSelectorsRule = CssSelectorsRule;
73
+ //# sourceMappingURL=css-selectors-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-selectors-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/css-selectors-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,iCAAiC;AAEjC,qEAA+D;AAE/D,mDAA8D;AAC9D,kDAAuE;AAEvE;;;GAGG;AACH,MAAa,gBAAiB,SAAQ,8BAA8B;IAApE;;QACE,iEAAiE;QACjE,SAAI,GAAG,oCAAqB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAEnD,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IAwDvC,CAAC;IAtDC,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,IAAI,CAAC,EAAE;YACvB,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;gBAC1C,OAAO;aACR;YAED,iCAAuB,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;iBAClD,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,IAAI,CAAC,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe,CAAC,UAA4B;QAC1C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;gBAChD,OAAO;aACR;YAED,iCAAuB,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;iBACpD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC;iBACxC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,IAA0B;QACxD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE;YACpE,OAAO;SACR;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC;QAE/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;gBAC7C,OAAO;aACR;YAED,iCAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC;iBAC7C,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC;iBACvC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,QAAgB,EAAE,KAAa,EAAE,IAA4B;QACpF,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;AA7DD,4CA6DC"}
@@ -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 order
14
+ * to migrate outdated element selectors to the new one.
15
+ */
16
+ export declare class ElementSelectorsRule 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
+ }
@@ -0,0 +1,64 @@
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
+ * Rule that walks through every string literal, template and stylesheet in order
16
+ * to migrate outdated element selectors to the new one.
17
+ */
18
+ class ElementSelectorsRule extends migration_rule_1.MigrationRule {
19
+ constructor() {
20
+ super(...arguments);
21
+ /** Change data that upgrades to the specified target version. */
22
+ this.data = upgrade_data_1.getVersionUpgradeData(this, 'elementSelectors');
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
+ literal_1.findAllSubstringIndices(stylesheet.content, selector.replace)
41
+ .map(offset => stylesheet.start + offset)
42
+ .forEach(start => this._replaceSelector(stylesheet.filePath, start, selector));
43
+ });
44
+ }
45
+ _visitStringLiteralLike(node) {
46
+ if (node.parent && node.parent.kind !== ts.SyntaxKind.CallExpression) {
47
+ return;
48
+ }
49
+ const textContent = node.getText();
50
+ const filePath = node.getSourceFile().fileName;
51
+ this.data.forEach(selector => {
52
+ literal_1.findAllSubstringIndices(textContent, selector.replace)
53
+ .map(offset => node.getStart() + offset)
54
+ .forEach(start => this._replaceSelector(filePath, start, selector));
55
+ });
56
+ }
57
+ _replaceSelector(filePath, start, data) {
58
+ const updateRecorder = this.getUpdateRecorder(filePath);
59
+ updateRecorder.remove(start, data.replace.length);
60
+ updateRecorder.insertRight(start, data.replaceWith);
61
+ }
62
+ }
63
+ exports.ElementSelectorsRule = ElementSelectorsRule;
64
+ //# sourceMappingURL=element-selectors-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-selectors-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/element-selectors-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,iCAAiC;AAEjC,qEAA+D;AAE/D,mDAA8D;AAC9D,kDAAuE;AAEvE;;;GAGG;AACH,MAAa,oBAAqB,SAAQ,8BAA8B;IAAxE;;QACE,iEAAiE;QACjE,SAAI,GAAG,oCAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAEvD,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IA4CvC,CAAC;IA1CC,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,iCAAuB,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;iBACxD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC;iBACxC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,IAA0B;QACxD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE;YACpE,OAAO;SACR;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC;QAE/C,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,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC;iBACvC,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,IAAgC;QACxF,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;AAjDD,oDAiDC"}
@@ -6,7 +6,16 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  import { Rule } from '@angular-devkit/schematics';
9
- import { TargetVersion } from '../target-version';
10
- import { UpgradeTSLintConfig } from './tslint-config';
11
- /** Creates a Angular schematic rule that runs the upgrade for the specified target version. */
12
- export declare function createUpgradeRule(targetVersion: TargetVersion, upgradeConfig: UpgradeTSLintConfig): Rule;
9
+ import { Constructor } from '../../update-tool';
10
+ import { MigrationRule } from '../../update-tool/migration-rule';
11
+ import { TargetVersion } from '../../update-tool/target-version';
12
+ import { RuleUpgradeData } from '../upgrade-data';
13
+ /** List of migration rules which run for the CDK update. */
14
+ export declare const cdkMigrationRules: Constructor<MigrationRule<RuleUpgradeData>>[];
15
+ declare type NullableMigrationRule = Constructor<MigrationRule<RuleUpgradeData | null>>;
16
+ /**
17
+ * Creates a Angular schematic rule that runs the upgrade for the
18
+ * specified target version.
19
+ */
20
+ export declare function createUpgradeRule(targetVersion: TargetVersion, extraRules: NullableMigrationRule[], upgradeData: RuleUpgradeData, onMigrationCompleteFn?: (targetVersion: TargetVersion, hasFailures: boolean) => void): Rule;
21
+ export {};
@@ -7,38 +7,58 @@
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");
11
- const tasks_1 = require("@angular-devkit/schematics/tasks");
12
- const glob_1 = require("glob");
13
- const project_tsconfig_paths_1 = require("./project-tsconfig-paths");
14
- const tslint_config_1 = require("./tslint-config");
15
- /** Creates a Angular schematic rule that runs the upgrade for the specified target version. */
16
- function createUpgradeRule(targetVersion, upgradeConfig) {
10
+ const update_tool_1 = require("../../update-tool");
11
+ const project_tsconfig_paths_1 = require("../../utils/project-tsconfig-paths");
12
+ const attribute_selectors_rule_1 = require("./attribute-selectors-rule");
13
+ const class_inheritance_rule_1 = require("./class-inheritance-rule");
14
+ const class_names_rule_1 = require("./class-names-rule");
15
+ const constructor_signature_rule_1 = require("./constructor-signature-rule");
16
+ const css_selectors_rule_1 = require("./css-selectors-rule");
17
+ const element_selectors_rule_1 = require("./element-selectors-rule");
18
+ const input_names_rule_1 = require("./input-names-rule");
19
+ const method_call_arguments_rule_1 = require("./method-call-arguments-rule");
20
+ const misc_template_rule_1 = require("./misc-template-rule");
21
+ const output_names_rule_1 = require("./output-names-rule");
22
+ const property_names_rule_1 = require("./property-names-rule");
23
+ /** List of migration rules which run for the CDK update. */
24
+ exports.cdkMigrationRules = [
25
+ attribute_selectors_rule_1.AttributeSelectorsRule,
26
+ class_inheritance_rule_1.ClassInheritanceRule,
27
+ class_names_rule_1.ClassNamesRule,
28
+ constructor_signature_rule_1.ConstructorSignatureRule,
29
+ css_selectors_rule_1.CssSelectorsRule,
30
+ element_selectors_rule_1.ElementSelectorsRule,
31
+ input_names_rule_1.InputNamesRule,
32
+ method_call_arguments_rule_1.MethodCallArgumentsRule,
33
+ misc_template_rule_1.MiscTemplateRule,
34
+ output_names_rule_1.OutputNamesRule,
35
+ property_names_rule_1.PropertyNamesRule,
36
+ ];
37
+ /**
38
+ * Creates a Angular schematic rule that runs the upgrade for the
39
+ * specified target version.
40
+ */
41
+ function createUpgradeRule(targetVersion, extraRules, upgradeData, onMigrationCompleteFn) {
17
42
  return (tree, context) => {
18
- const projectTsConfigPaths = project_tsconfig_paths_1.getProjectTsConfigPaths(tree);
19
- const tslintFixTasks = [];
20
- if (!projectTsConfigPaths.length) {
21
- throw new schematics_1.SchematicsException('Could not find any tsconfig file. Please submit an issue ' +
22
- 'on the Angular Material repository that includes the path to your "tsconfig" file.');
43
+ const logger = context.logger;
44
+ const { buildPaths, testPaths } = project_tsconfig_paths_1.getProjectTsConfigPaths(tree);
45
+ if (!buildPaths.length && !testPaths.length) {
46
+ // We don't want to throw here because it would mean that other migrations in the
47
+ // pipeline don't run either. Rather print an error message.
48
+ logger.error('Could not find any TypeScript project in the CLI workspace configuration.');
49
+ return;
50
+ }
51
+ // Keep track of all project source files which have been checked/migrated. This is
52
+ // necessary because multiple TypeScript projects can contain the same source file and
53
+ // we don't want to check these again, as this would result in duplicated failure messages.
54
+ const analyzedFiles = new Set();
55
+ let hasRuleFailures = false;
56
+ for (const tsconfigPath of [...buildPaths, ...testPaths]) {
57
+ hasRuleFailures = hasRuleFailures || update_tool_1.runMigrationRules(tree, context.logger, tsconfigPath, targetVersion, [...exports.cdkMigrationRules, ...extraRules], upgradeData, analyzedFiles);
23
58
  }
24
- // In some applications, developers will have global stylesheets which are not specified in any
25
- // Angular component. Therefore we glob up all CSS and SCSS files outside of node_modules and
26
- // dist. The files will be read by the individual stylesheet rules and checked.
27
- const extraStyleFiles = glob_1.sync('!(node_modules|dist)/**/*.+(css|scss)', { absolute: true });
28
- const tslintConfig = tslint_config_1.createTslintConfig(targetVersion, Object.assign({
29
- // Default options that can be overwritten if specified explicitly. e.g. if the
30
- // Material update schematic wants to specify a different upgrade data.
31
- extraStyleFiles: extraStyleFiles }, upgradeConfig));
32
- for (const tsconfig of projectTsConfigPaths) {
33
- // Run the update tslint rules.
34
- tslintFixTasks.push(context.addTask(new tasks_1.TslintFixTask(tslintConfig, {
35
- silent: false,
36
- ignoreErrors: true,
37
- tsConfigPath: tsconfig,
38
- })));
59
+ if (onMigrationCompleteFn) {
60
+ onMigrationCompleteFn(targetVersion, hasRuleFailures);
39
61
  }
40
- // Delete the temporary schematics directory.
41
- context.addTask(new tasks_1.RunSchematicTask('ng-post-update', {}), tslintFixTasks);
42
62
  };
43
63
  }
44
64
  exports.createUpgradeRule = createUpgradeRule;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,2DAMoC;AACpC,4DAAiF;AACjF,+BAAsC;AACtC,qEAAiE;AAEjE,mDAAwE;AAExE,+FAA+F;AAC/F,SAAgB,iBAAiB,CAAC,aAA4B,EAC5B,aAAkC;IAClE,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAE/C,MAAM,oBAAoB,GAAG,gDAAuB,CAAC,IAAI,CAAC,CAAC;QAC3D,MAAM,cAAc,GAAa,EAAE,CAAC;QAEpC,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE;YAChC,MAAM,IAAI,gCAAmB,CAAC,2DAA2D;gBACvF,oFAAoF,CAAC,CAAC;SACzF;QACD,+FAA+F;QAC/F,6FAA6F;QAC7F,+EAA+E;QAC/E,MAAM,eAAe,GAAG,WAAQ,CAAC,uCAAuC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QAC5F,MAAM,YAAY,GAAG,kCAAkB,CAAC,aAAa;YACnD,+EAA+E;YAC/E,uEAAuE;YACvE,eAAe,EAAE,eAAe,IAE7B,aAAa,EAChB,CAAC;QAEH,KAAK,MAAM,QAAQ,IAAI,oBAAoB,EAAE;YAC3C,+BAA+B;YAC/B,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,qBAAa,CAAC,YAAY,EAAE;gBAClE,MAAM,EAAE,KAAK;gBACb,YAAY,EAAE,IAAI;gBAClB,YAAY,EAAE,QAAQ;aACvB,CAAC,CAAC,CAAC,CAAC;SACN;QAED,6CAA6C;QAC7C,OAAO,CAAC,OAAO,CAAC,IAAI,wBAAgB,CAAC,gBAAgB,EAAE,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;IAC9E,CAAC,CAAC;AACJ,CAAC;AAnCD,8CAmCC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAIH,mDAAiE;AAGjE,+EAA2E;AAG3E,yEAAkE;AAClE,qEAA8D;AAC9D,yDAAkD;AAClD,6EAAsE;AACtE,6DAAsD;AACtD,qEAA8D;AAC9D,yDAAkD;AAClD,6EAAqE;AACrE,6DAAsD;AACtD,2DAAoD;AACpD,+DAAwD;AAGxD,4DAA4D;AAC/C,QAAA,iBAAiB,GAAkD;IAC9E,iDAAsB;IACtB,6CAAoB;IACpB,iCAAc;IACd,qDAAwB;IACxB,qCAAgB;IAChB,6CAAoB;IACpB,iCAAc;IACd,oDAAuB;IACvB,qCAAgB;IAChB,mCAAe;IACf,uCAAiB;CAClB,CAAC;AAIF;;;GAGG;AACH,SAAgB,iBAAiB,CAC7B,aAA4B,EAAE,UAAmC,EAAE,WAA4B,EAC/F,qBAAoF;IACtF,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,EAAC,UAAU,EAAE,SAAS,EAAC,GAAG,gDAAuB,CAAC,IAAI,CAAC,CAAC;QAE9D,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YAC3C,iFAAiF;YACjF,4DAA4D;YAC5D,MAAM,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;YAC1F,OAAO;SACR;QAED,mFAAmF;QACnF,sFAAsF;QACtF,2FAA2F;QAC3F,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QACxC,IAAI,eAAe,GAAG,KAAK,CAAC;QAE5B,KAAK,MAAM,YAAY,IAAI,CAAC,GAAG,UAAU,EAAE,GAAG,SAAS,CAAC,EAAE;YACxD,eAAe,GAAG,eAAe,IAAI,+BAAiB,CAClD,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,GAAG,yBAAiB,EAAE,GAAG,UAAU,CAAC,EACxF,WAAW,EAAE,aAAa,CAAC,CAAC;SACjC;QAED,IAAI,qBAAqB,EAAE;YACzB,qBAAqB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;SACvD;IACH,CAAC,CAAC;AACJ,CAAC;AA9BD,8CA8BC"}
@@ -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 { ResolvedResource } from '../../update-tool/component-resource-collector';
9
+ import { MigrationRule } from '../../update-tool/migration-rule';
10
+ import { InputNameUpgradeData } from '../data';
11
+ import { RuleUpgradeData } from '../upgrade-data';
12
+ /**
13
+ * Rule that walks through every template or stylesheet and replaces outdated input
14
+ * names to the new input name. Selectors in stylesheets could also target input
15
+ * bindings declared as static attribute. See for example:
16
+ *
17
+ * e.g. `<my-component color="primary">` becomes `my-component[color]`
18
+ */
19
+ export declare class InputNamesRule extends MigrationRule<RuleUpgradeData> {
20
+ /** Change data that upgrades to the specified target version. */
21
+ data: InputNameUpgradeData[];
22
+ ruleEnabled: boolean;
23
+ visitStylesheet(stylesheet: ResolvedResource): void;
24
+ visitTemplate(template: ResolvedResource): void;
25
+ private _replaceInputName;
26
+ }
@@ -0,0 +1,59 @@
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 __1 = require("../..");
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
+ * Rule that walks through every template or stylesheet and replaces outdated input
16
+ * names to the new input name. Selectors in stylesheets could also target input
17
+ * bindings declared as static attribute. See for example:
18
+ *
19
+ * e.g. `<my-component color="primary">` becomes `my-component[color]`
20
+ */
21
+ class InputNamesRule extends migration_rule_1.MigrationRule {
22
+ constructor() {
23
+ super(...arguments);
24
+ /** Change data that upgrades to the specified target version. */
25
+ this.data = upgrade_data_1.getVersionUpgradeData(this, 'inputNames');
26
+ // Only enable the migration rule if there is upgrade data.
27
+ this.ruleEnabled = this.data.length !== 0;
28
+ }
29
+ visitStylesheet(stylesheet) {
30
+ this.data.forEach(name => {
31
+ const currentSelector = `[${name.replace}]`;
32
+ const updatedSelector = `[${name.replaceWith}]`;
33
+ literal_1.findAllSubstringIndices(stylesheet.content, currentSelector)
34
+ .map(offset => stylesheet.start + offset)
35
+ .forEach(start => this._replaceInputName(stylesheet.filePath, start, currentSelector.length, updatedSelector));
36
+ });
37
+ }
38
+ visitTemplate(template) {
39
+ this.data.forEach(name => {
40
+ const whitelist = name.whitelist;
41
+ const relativeOffsets = [];
42
+ if (whitelist.attributes) {
43
+ relativeOffsets.push(...__1.findInputsOnElementWithAttr(template.content, name.replace, whitelist.attributes));
44
+ }
45
+ if (whitelist.elements) {
46
+ relativeOffsets.push(...__1.findInputsOnElementWithTag(template.content, name.replace, whitelist.elements));
47
+ }
48
+ relativeOffsets.map(offset => template.start + offset)
49
+ .forEach(start => this._replaceInputName(template.filePath, start, name.replace.length, name.replaceWith));
50
+ });
51
+ }
52
+ _replaceInputName(filePath, start, width, newName) {
53
+ const updateRecorder = this.getUpdateRecorder(filePath);
54
+ updateRecorder.remove(start, width);
55
+ updateRecorder.insertRight(start, newName);
56
+ }
57
+ }
58
+ exports.InputNamesRule = InputNamesRule;
59
+ //# sourceMappingURL=input-names-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-names-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/input-names-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,6BAA8E;AAE9E,qEAA+D;AAG/D,mDAA8D;AAC9D,kDAAuE;AAEvE;;;;;;GAMG;AACH,MAAa,cAAe,SAAQ,8BAA8B;IAAlE;;QACE,iEAAiE;QACjE,SAAI,GAA2B,oCAAqB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAEzE,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IA0CvC,CAAC;IAxCC,eAAe,CAAC,UAA4B;QAC1C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,MAAM,eAAe,GAAG,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC;YAC5C,MAAM,eAAe,GAAG,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC;YAEhD,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,iBAAiB,CAC3B,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CAAC,QAA0B;QACtC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,MAAM,eAAe,GAAa,EAAE,CAAC;YAErC,IAAI,SAAS,CAAC,UAAU,EAAE;gBACxB,eAAe,CAAC,IAAI,CAChB,GAAG,+BAA2B,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;aAC3F;YAED,IAAI,SAAS,CAAC,QAAQ,EAAE;gBACtB,eAAe,CAAC,IAAI,CAChB,GAAG,8BAA0B,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;aACxF;YAED,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC;iBACjD,OAAO,CACJ,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAC3B,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,QAAgB,EAAE,KAAa,EAAE,KAAa,EAAE,OAAe;QACvF,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACxD,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACpC,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;CACF;AA/CD,wCA+CC"}
@@ -5,19 +5,18 @@
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 { ProgramAwareRuleWalker, RuleFailure, Rules } from 'tslint';
9
8
  import * as ts from 'typescript';
10
- import { MethodCallUpgradeData } from '../../data';
9
+ import { MigrationRule } from '../../update-tool/migration-rule';
10
+ import { MethodCallUpgradeData } from '../data';
11
+ import { RuleUpgradeData } from '../upgrade-data';
11
12
  /**
12
- * Rule that visits every TypeScript method call expression and checks if the argument count
13
- * is invalid and needs to be *manually* updated.
13
+ * Rule that visits every TypeScript method call expression and checks if the
14
+ * argument count is invalid and needs to be *manually* updated.
14
15
  */
15
- export declare class Rule extends Rules.TypedRule {
16
- applyWithProgram(sourceFile: ts.SourceFile, program: ts.Program): RuleFailure[];
17
- }
18
- export declare class Walker extends ProgramAwareRuleWalker {
16
+ export declare class MethodCallArgumentsRule extends MigrationRule<RuleUpgradeData> {
19
17
  /** Change data that upgrades to the specified target version. */
20
18
  data: MethodCallUpgradeData[];
21
- visitCallExpression(node: ts.CallExpression): void;
19
+ ruleEnabled: boolean;
20
+ visitNode(node: ts.Node): void;
22
21
  private _checkPropertyAccessMethodCall;
23
22
  }
@@ -0,0 +1,60 @@
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 upgrade_data_1 = require("../upgrade-data");
13
+ /**
14
+ * Rule that visits every TypeScript method call expression and checks if the
15
+ * argument count is invalid and needs to be *manually* updated.
16
+ */
17
+ class MethodCallArgumentsRule extends migration_rule_1.MigrationRule {
18
+ constructor() {
19
+ super(...arguments);
20
+ /** Change data that upgrades to the specified target version. */
21
+ this.data = upgrade_data_1.getVersionUpgradeData(this, 'methodCallChecks');
22
+ // Only enable the migration rule if there is upgrade data.
23
+ this.ruleEnabled = this.data.length !== 0;
24
+ }
25
+ visitNode(node) {
26
+ if (ts.isCallExpression(node) && ts.isPropertyAccessExpression(node.expression)) {
27
+ this._checkPropertyAccessMethodCall(node);
28
+ }
29
+ }
30
+ _checkPropertyAccessMethodCall(node) {
31
+ const propertyAccess = node.expression;
32
+ if (!ts.isIdentifier(propertyAccess.name)) {
33
+ return;
34
+ }
35
+ const hostType = this.typeChecker.getTypeAtLocation(propertyAccess.expression);
36
+ const hostTypeName = hostType.symbol && hostType.symbol.name;
37
+ const methodName = propertyAccess.name.text;
38
+ if (!hostTypeName) {
39
+ return;
40
+ }
41
+ // TODO(devversion): Revisit the implementation of this upgrade rule. It seems difficult
42
+ // and ambiguous to maintain the data for this rule. e.g. consider a method which has the
43
+ // same amount of arguments but just had a type change. In that case we could still add
44
+ // new entries to the upgrade data that match the current argument length to just show
45
+ // a failure message, but adding that data becomes painful if the method has optional
46
+ // parameters and it would mean that the error message would always show up, even if the
47
+ // argument is in some cases still assignable to the new parameter type. We could re-use
48
+ // the logic we have in the constructor-signature checks to check for assignability and
49
+ // to make the upgrade data less verbose.
50
+ const failure = this.data.filter(data => data.method === methodName && data.className === hostTypeName)
51
+ .map(data => data.invalidArgCounts.find(f => f.count === node.arguments.length))[0];
52
+ if (!failure) {
53
+ return;
54
+ }
55
+ this.createFailureAtNode(node, `Found call to "${hostTypeName + '.' + methodName}" ` +
56
+ `with ${failure.count} arguments. Message: ${failure.message}`);
57
+ }
58
+ }
59
+ exports.MethodCallArgumentsRule = MethodCallArgumentsRule;
60
+ //# sourceMappingURL=method-call-arguments-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-call-arguments-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/method-call-arguments-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,iCAAiC;AACjC,qEAA+D;AAG/D,kDAAuE;AAEvE;;;GAGG;AACH,MAAa,uBAAwB,SAAQ,8BAA8B;IAA3E;;QACE,iEAAiE;QACjE,SAAI,GAA4B,oCAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAEhF,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IA6CvC,CAAC;IA3CC,SAAS,CAAC,IAAa;QACrB,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAC/E,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;SAC3C;IACH,CAAC;IAEO,8BAA8B,CAAC,IAAuB;QAC5D,MAAM,cAAc,GAAG,IAAI,CAAC,UAAyC,CAAC;QAEtE,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;YACzC,OAAO;SACR;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC/E,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;QAC7D,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QAE5C,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO;SACR;QAED,wFAAwF;QACxF,yFAAyF;QACzF,uFAAuF;QACvF,sFAAsF;QACtF,qFAAqF;QACrF,wFAAwF;QACxF,wFAAwF;QACxF,uFAAuF;QACvF,yCAAyC;QACzC,MAAM,OAAO,GACT,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,SAAS,KAAK,YAAY,CAAC;aAClF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5F,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;SACR;QAED,IAAI,CAAC,mBAAmB,CACpB,IAAI,EACJ,kBAAkB,YAAY,GAAG,GAAG,GAAG,UAAU,IAAI;YACjD,QAAQ,OAAO,CAAC,KAAK,wBAAwB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;CACF;AAlDD,0DAkDC"}
@@ -0,0 +1,18 @@
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 { ResolvedResource } from '../../update-tool/component-resource-collector';
9
+ import { MigrationRule } from '../../update-tool/migration-rule';
10
+ import { RuleUpgradeData } from '../upgrade-data';
11
+ /**
12
+ * Rule that walks through every template and reports if there are
13
+ * instances of outdated Angular CDK API that can't be migrated automatically.
14
+ */
15
+ export declare class MiscTemplateRule extends MigrationRule<RuleUpgradeData> {
16
+ ruleEnabled: boolean;
17
+ visitTemplate(template: ResolvedResource): void;
18
+ }
@@ -0,0 +1,37 @@
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 __1 = require("../..");
11
+ const migration_rule_1 = require("../../update-tool/migration-rule");
12
+ const literal_1 = require("../typescript/literal");
13
+ /**
14
+ * Rule that walks through every template and reports if there are
15
+ * instances of outdated Angular CDK API that can't be migrated automatically.
16
+ */
17
+ class MiscTemplateRule extends migration_rule_1.MigrationRule {
18
+ constructor() {
19
+ super(...arguments);
20
+ // Only enable this rule if the migration targets version 6. The rule
21
+ // currently only includes migrations for V6 deprecations.
22
+ this.ruleEnabled = this.targetVersion === __1.TargetVersion.V6;
23
+ }
24
+ visitTemplate(template) {
25
+ // Migration for https://github.com/angular/components/pull/10325 (v6)
26
+ literal_1.findAllSubstringIndices(template.content, 'cdk-focus-trap').forEach(offset => {
27
+ this.failures.push({
28
+ filePath: template.filePath,
29
+ position: template.getCharacterAndLineOfPosition(template.start + offset),
30
+ message: `Found deprecated element selector "cdk-focus-trap" which has been ` +
31
+ `changed to an attribute selector "[cdkTrapFocus]".`
32
+ });
33
+ });
34
+ }
35
+ }
36
+ exports.MiscTemplateRule = MiscTemplateRule;
37
+ //# sourceMappingURL=misc-template-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc-template-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/misc-template-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,6BAAoC;AAEpC,qEAA+D;AAC/D,mDAA8D;AAG9D;;;GAGG;AACH,MAAa,gBAAiB,SAAQ,8BAA8B;IAApE;;QAEE,qEAAqE;QACrE,0DAA0D;QAC1D,gBAAW,GAAG,IAAI,CAAC,aAAa,KAAK,iBAAa,CAAC,EAAE,CAAC;IAaxD,CAAC;IAXC,aAAa,CAAC,QAA0B;QACtC,sEAAsE;QACtE,iCAAuB,CAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC3E,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,QAAQ,EAAE,QAAQ,CAAC,6BAA6B,CAAC,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC;gBACzE,OAAO,EAAE,oEAAoE;oBACzE,oDAAoD;aACzD,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAjBD,4CAiBC"}
@@ -0,0 +1,22 @@
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 { ResolvedResource } from '../../update-tool/component-resource-collector';
9
+ import { MigrationRule } from '../../update-tool/migration-rule';
10
+ import { OutputNameUpgradeData } from '../data';
11
+ import { RuleUpgradeData } from '../upgrade-data';
12
+ /**
13
+ * Rule that walks through every inline or external HTML template and switches
14
+ * changed output binding names to the proper new output name.
15
+ */
16
+ export declare class OutputNamesRule extends MigrationRule<RuleUpgradeData> {
17
+ /** Change data that upgrades to the specified target version. */
18
+ data: OutputNameUpgradeData[];
19
+ ruleEnabled: boolean;
20
+ visitTemplate(template: ResolvedResource): void;
21
+ private _replaceOutputName;
22
+ }
@@ -0,0 +1,46 @@
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 migration_rule_1 = require("../../update-tool/migration-rule");
11
+ const angular_1 = require("../html-parsing/angular");
12
+ const upgrade_data_1 = require("../upgrade-data");
13
+ /**
14
+ * Rule that walks through every inline or external HTML template and switches
15
+ * changed output binding names to the proper new output name.
16
+ */
17
+ class OutputNamesRule extends migration_rule_1.MigrationRule {
18
+ constructor() {
19
+ super(...arguments);
20
+ /** Change data that upgrades to the specified target version. */
21
+ this.data = upgrade_data_1.getVersionUpgradeData(this, 'outputNames');
22
+ // Only enable the migration rule if there is upgrade data.
23
+ this.ruleEnabled = this.data.length !== 0;
24
+ }
25
+ visitTemplate(template) {
26
+ this.data.forEach(name => {
27
+ const whitelist = name.whitelist;
28
+ const relativeOffsets = [];
29
+ if (whitelist.attributes) {
30
+ relativeOffsets.push(...angular_1.findOutputsOnElementWithAttr(template.content, name.replace, whitelist.attributes));
31
+ }
32
+ if (whitelist.elements) {
33
+ relativeOffsets.push(...angular_1.findOutputsOnElementWithTag(template.content, name.replace, whitelist.elements));
34
+ }
35
+ relativeOffsets.map(offset => template.start + offset)
36
+ .forEach(start => this._replaceOutputName(template.filePath, start, name.replace.length, name.replaceWith));
37
+ });
38
+ }
39
+ _replaceOutputName(filePath, start, width, newName) {
40
+ const updateRecorder = this.getUpdateRecorder(filePath);
41
+ updateRecorder.remove(start, width);
42
+ updateRecorder.insertRight(start, newName);
43
+ }
44
+ }
45
+ exports.OutputNamesRule = OutputNamesRule;
46
+ //# sourceMappingURL=output-names-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output-names-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/output-names-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAGH,qEAA+D;AAG/D,qDAGiC;AACjC,kDAAuE;AAEvE;;;GAGG;AACH,MAAa,eAAgB,SAAQ,8BAA8B;IAAnE;;QACE,iEAAiE;QACjE,SAAI,GAA4B,oCAAqB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAE3E,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IA6BvC,CAAC;IA3BC,aAAa,CAAC,QAA0B;QACtC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,MAAM,eAAe,GAAa,EAAE,CAAC;YAErC,IAAI,SAAS,CAAC,UAAU,EAAE;gBACxB,eAAe,CAAC,IAAI,CAChB,GAAG,sCAA4B,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;aAC5F;YAED,IAAI,SAAS,CAAC,QAAQ,EAAE;gBACtB,eAAe,CAAC,IAAI,CAChB,GAAG,qCAA2B,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;aACzF;YAED,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC;iBACjD,OAAO,CACJ,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAC5B,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,kBAAkB,CAAC,QAAgB,EAAE,KAAa,EAAE,KAAa,EAAE,OAAe;QACxF,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACxD,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACpC,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;CACF;AAlCD,0CAkCC"}