jqwidgets-ng 23.0.6 → 23.0.8

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 (549) hide show
  1. package/jqwidgets/jqx-all.js +4 -28
  2. package/jqwidgets/jqxbarcode.js +0 -6
  3. package/jqwidgets/jqxchart.core.js +1 -1
  4. package/jqwidgets/jqxchart.js +1 -1
  5. package/jqwidgets/jqxcheckboxgroup.js +0 -6
  6. package/jqwidgets/jqxdatatable.js +1 -1
  7. package/jqwidgets/jqxgrid.js +1 -1
  8. package/jqwidgets/jqxqrcode.js +0 -6
  9. package/jqwidgets/jqxradiobuttongroup.js +0 -6
  10. package/jqwidgets/jqxscheduler.js +1 -1
  11. package/jqwidgets/jqxsplitlayout.js +2 -2455
  12. package/jqwidgets/modules/jqxbarcode.js +15 -135
  13. package/jqwidgets/modules/jqxbargauge.js +17 -137
  14. package/jqwidgets/modules/jqxbulletchart.js +19 -139
  15. package/jqwidgets/modules/jqxbuttongroup.js +17 -137
  16. package/jqwidgets/modules/jqxbuttons.js +15 -135
  17. package/jqwidgets/modules/jqxcalendar.js +21 -141
  18. package/jqwidgets/modules/jqxchart.js +29 -149
  19. package/jqwidgets/modules/jqxcheckbox.js +19 -139
  20. package/jqwidgets/modules/jqxcheckboxgroup.js +19 -139
  21. package/jqwidgets/modules/jqxcolorpicker.js +21 -141
  22. package/jqwidgets/modules/jqxcombobox.js +25 -145
  23. package/jqwidgets/modules/jqxcomplexinput.js +17 -137
  24. package/jqwidgets/modules/jqxdatatable.js +45 -165
  25. package/jqwidgets/modules/jqxdatetimeinput.js +39 -159
  26. package/jqwidgets/modules/jqxdocking.js +19 -139
  27. package/jqwidgets/modules/jqxdockinglayout.js +27 -147
  28. package/jqwidgets/modules/jqxdockpanel.js +17 -137
  29. package/jqwidgets/modules/jqxdragdrop.js +19 -139
  30. package/jqwidgets/modules/jqxdraw.js +15 -135
  31. package/jqwidgets/modules/jqxdropdownbutton.js +17 -137
  32. package/jqwidgets/modules/jqxdropdownlist.js +37 -157
  33. package/jqwidgets/modules/jqxeditor.js +49 -169
  34. package/jqwidgets/modules/jqxexpander.js +23 -143
  35. package/jqwidgets/modules/jqxfileupload.js +19 -139
  36. package/jqwidgets/modules/jqxform.js +48 -168
  37. package/jqwidgets/modules/jqxformattedinput.js +39 -159
  38. package/jqwidgets/modules/jqxgantt.js +17 -137
  39. package/jqwidgets/modules/jqxgauge.js +21 -141
  40. package/jqwidgets/modules/jqxgrid.js +94 -191
  41. package/jqwidgets/modules/jqxheatmap.js +17 -137
  42. package/jqwidgets/modules/jqxinput.js +19 -139
  43. package/jqwidgets/modules/jqxkanban.js +49 -169
  44. package/jqwidgets/modules/jqxknob.js +19 -139
  45. package/jqwidgets/modules/jqxlayout.js +27 -147
  46. package/jqwidgets/modules/jqxlineargauge.js +21 -141
  47. package/jqwidgets/modules/jqxlinkbutton.js +15 -135
  48. package/jqwidgets/modules/jqxlistbox.js +29 -149
  49. package/jqwidgets/modules/jqxlistmenu.js +45 -165
  50. package/jqwidgets/modules/jqxloader.js +15 -135
  51. package/jqwidgets/modules/jqxmaskedinput.js +15 -135
  52. package/jqwidgets/modules/jqxmenu.js +27 -147
  53. package/jqwidgets/modules/jqxnavbar.js +23 -143
  54. package/jqwidgets/modules/jqxnavigationbar.js +31 -151
  55. package/jqwidgets/modules/jqxnotification.js +23 -143
  56. package/jqwidgets/modules/jqxnumberinput.js +29 -149
  57. package/jqwidgets/modules/jqxpanel.js +21 -141
  58. package/jqwidgets/modules/jqxpasswordinput.js +23 -143
  59. package/jqwidgets/modules/jqxpivotdesigner.js +53 -173
  60. package/jqwidgets/modules/jqxpivotgrid.js +53 -173
  61. package/jqwidgets/modules/jqxpopover.js +17 -137
  62. package/jqwidgets/modules/jqxprogressbar.js +15 -135
  63. package/jqwidgets/modules/jqxqrcode.js +23 -143
  64. package/jqwidgets/modules/jqxradiobutongroup.js +19 -139
  65. package/jqwidgets/modules/jqxradiobutton.js +17 -137
  66. package/jqwidgets/modules/jqxrangeselector.js +19 -139
  67. package/jqwidgets/modules/jqxrating.js +17 -137
  68. package/jqwidgets/modules/jqxrepeatbutton.js +15 -135
  69. package/jqwidgets/modules/jqxresponsivepanel.js +17 -137
  70. package/jqwidgets/modules/jqxribbon.js +19 -139
  71. package/jqwidgets/modules/jqxscheduler.js +55 -175
  72. package/jqwidgets/modules/jqxscrollbar.js +17 -137
  73. package/jqwidgets/modules/jqxscrollview.js +17 -137
  74. package/jqwidgets/modules/jqxslider.js +17 -127
  75. package/jqwidgets/modules/jqxsortable.js +14104 -68
  76. package/jqwidgets/modules/jqxsplitlayout.js +11472 -71
  77. package/jqwidgets/modules/jqxsplitter.js +13453 -68
  78. package/jqwidgets/modules/jqxswitchbutton.js +21 -131
  79. package/jqwidgets/modules/jqxtabs.js +29 -139
  80. package/jqwidgets/modules/jqxtagcloud.js +23 -133
  81. package/jqwidgets/modules/jqxtextarea.js +23 -133
  82. package/jqwidgets/modules/jqxtimeline.js +15 -125
  83. package/jqwidgets/modules/jqxtimepicker.js +17 -127
  84. package/jqwidgets/modules/jqxtogglebutton.js +15 -125
  85. package/jqwidgets/modules/jqxtoolbar.js +47 -157
  86. package/jqwidgets/modules/jqxtooltip.js +15 -125
  87. package/jqwidgets/modules/jqxtree.js +27 -137
  88. package/jqwidgets/modules/jqxtreegrid.js +47 -157
  89. package/jqwidgets/modules/jqxtreemap.js +19 -129
  90. package/jqwidgets/modules/jqxvalidator.js +21 -131
  91. package/jqwidgets/modules/jqxwindow.js +17 -127
  92. package/package.json +1 -1
  93. package/schematics/cdk/schematics/index.d.ts +1 -1
  94. package/schematics/cdk/schematics/index.js +2 -2
  95. package/schematics/cdk/schematics/index.js.map +1 -0
  96. package/schematics/cdk/schematics/migration.json +4 -4
  97. package/schematics/cdk/schematics/ng-add/index.d.ts +1 -1
  98. package/schematics/cdk/schematics/ng-add/index.js +13 -21
  99. package/schematics/cdk/schematics/ng-add/index.js.map +1 -0
  100. package/schematics/cdk/schematics/ng-add/schema.d.ts +1 -1
  101. package/schematics/cdk/schematics/ng-add/schema.js +2 -2
  102. package/schematics/cdk/schematics/ng-add/schema.js.map +1 -0
  103. package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +6 -2
  104. package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +1 -1
  105. package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +5 -5
  106. package/schematics/cdk/schematics/ng-generate/drag-drop/index.d.ts +1 -1
  107. package/schematics/cdk/schematics/ng-generate/drag-drop/index.js +17 -8
  108. package/schematics/cdk/schematics/ng-generate/drag-drop/index.js.map +1 -0
  109. package/schematics/cdk/schematics/ng-generate/drag-drop/schema.d.ts +1 -1
  110. package/schematics/cdk/schematics/ng-generate/drag-drop/schema.js +2 -2
  111. package/schematics/cdk/schematics/ng-generate/drag-drop/schema.js.map +1 -0
  112. package/schematics/cdk/schematics/ng-update/data/attribute-selectors.d.ts +1 -1
  113. package/schematics/cdk/schematics/ng-update/data/attribute-selectors.js +2 -2
  114. package/schematics/cdk/schematics/ng-update/data/attribute-selectors.js.map +1 -0
  115. package/schematics/cdk/schematics/ng-update/data/class-names.d.ts +1 -1
  116. package/schematics/cdk/schematics/ng-update/data/class-names.js +2 -2
  117. package/schematics/cdk/schematics/ng-update/data/class-names.js.map +1 -0
  118. package/schematics/cdk/schematics/ng-update/data/constructor-checks.d.ts +1 -1
  119. package/schematics/cdk/schematics/ng-update/data/constructor-checks.js +2 -2
  120. package/schematics/cdk/schematics/ng-update/data/constructor-checks.js.map +1 -0
  121. package/schematics/cdk/schematics/ng-update/data/css-selectors.d.ts +1 -1
  122. package/schematics/cdk/schematics/ng-update/data/css-selectors.js +2 -2
  123. package/schematics/cdk/schematics/ng-update/data/css-selectors.js.map +1 -0
  124. package/schematics/cdk/schematics/ng-update/data/css-tokens.d.ts +27 -0
  125. package/schematics/cdk/schematics/ng-update/data/css-tokens.js +12 -0
  126. package/schematics/cdk/schematics/ng-update/data/css-tokens.js.map +1 -0
  127. package/schematics/cdk/schematics/ng-update/data/element-selectors.d.ts +1 -1
  128. package/schematics/cdk/schematics/ng-update/data/element-selectors.js +2 -2
  129. package/schematics/cdk/schematics/ng-update/data/element-selectors.js.map +1 -0
  130. package/schematics/cdk/schematics/ng-update/data/index.d.ts +2 -1
  131. package/schematics/cdk/schematics/ng-update/data/index.js +3 -2
  132. package/schematics/cdk/schematics/ng-update/data/index.js.map +1 -0
  133. package/schematics/cdk/schematics/ng-update/data/input-names.d.ts +1 -1
  134. package/schematics/cdk/schematics/ng-update/data/input-names.js +2 -2
  135. package/schematics/cdk/schematics/ng-update/data/input-names.js.map +1 -0
  136. package/schematics/cdk/schematics/ng-update/data/method-call-checks.d.ts +1 -1
  137. package/schematics/cdk/schematics/ng-update/data/method-call-checks.js +2 -2
  138. package/schematics/cdk/schematics/ng-update/data/method-call-checks.js.map +1 -0
  139. package/schematics/cdk/schematics/ng-update/data/output-names.d.ts +1 -1
  140. package/schematics/cdk/schematics/ng-update/data/output-names.js +2 -2
  141. package/schematics/cdk/schematics/ng-update/data/output-names.js.map +1 -0
  142. package/schematics/cdk/schematics/ng-update/data/property-names.d.ts +1 -1
  143. package/schematics/cdk/schematics/ng-update/data/property-names.js +2 -2
  144. package/schematics/cdk/schematics/ng-update/data/property-names.js.map +1 -0
  145. package/schematics/cdk/schematics/ng-update/data/symbol-removal.d.ts +1 -1
  146. package/schematics/cdk/schematics/ng-update/data/symbol-removal.js +2 -2
  147. package/schematics/cdk/schematics/ng-update/data/symbol-removal.js.map +1 -0
  148. package/schematics/cdk/schematics/ng-update/devkit-file-system.d.ts +1 -1
  149. package/schematics/cdk/schematics/ng-update/devkit-file-system.js +3 -4
  150. package/schematics/cdk/schematics/ng-update/devkit-file-system.js.map +1 -0
  151. package/schematics/cdk/schematics/ng-update/devkit-migration-rule.d.ts +1 -1
  152. package/schematics/cdk/schematics/ng-update/devkit-migration-rule.js +19 -8
  153. package/schematics/cdk/schematics/ng-update/devkit-migration-rule.js.map +1 -0
  154. package/schematics/cdk/schematics/ng-update/devkit-migration.d.ts +3 -3
  155. package/schematics/cdk/schematics/ng-update/devkit-migration.js +2 -2
  156. package/schematics/cdk/schematics/ng-update/devkit-migration.js.map +1 -0
  157. package/schematics/cdk/schematics/ng-update/find-stylesheets.d.ts +1 -1
  158. package/schematics/cdk/schematics/ng-update/find-stylesheets.js +3 -4
  159. package/schematics/cdk/schematics/ng-update/find-stylesheets.js.map +1 -0
  160. package/schematics/cdk/schematics/ng-update/html-parsing/angular.d.ts +1 -1
  161. package/schematics/cdk/schematics/ng-update/html-parsing/angular.js +7 -8
  162. package/schematics/cdk/schematics/ng-update/html-parsing/angular.js.map +1 -0
  163. package/schematics/cdk/schematics/ng-update/html-parsing/elements.d.ts +1 -1
  164. package/schematics/cdk/schematics/ng-update/html-parsing/elements.js +8 -8
  165. package/schematics/cdk/schematics/ng-update/html-parsing/elements.js.map +1 -0
  166. package/schematics/cdk/schematics/ng-update/index.d.ts +3 -3
  167. package/schematics/cdk/schematics/ng-update/index.js +6 -7
  168. package/schematics/cdk/schematics/ng-update/index.js.map +1 -0
  169. package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.d.ts +1 -1
  170. package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.js +9 -6
  171. package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.js.map +1 -0
  172. package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.d.ts +1 -1
  173. package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.js +12 -9
  174. package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.js.map +1 -0
  175. package/schematics/cdk/schematics/ng-update/migrations/class-names.d.ts +1 -1
  176. package/schematics/cdk/schematics/ng-update/migrations/class-names.js +16 -13
  177. package/schematics/cdk/schematics/ng-update/migrations/class-names.js.map +1 -0
  178. package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.d.ts +1 -1
  179. package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.js +11 -8
  180. package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.js.map +1 -0
  181. package/schematics/cdk/schematics/ng-update/migrations/css-selectors.d.ts +1 -1
  182. package/schematics/cdk/schematics/ng-update/migrations/css-selectors.js +9 -6
  183. package/schematics/cdk/schematics/ng-update/migrations/css-selectors.js.map +1 -0
  184. package/schematics/cdk/schematics/ng-update/migrations/css-tokens.d.ts +26 -0
  185. package/schematics/cdk/schematics/ng-update/migrations/css-tokens.js +83 -0
  186. package/schematics/cdk/schematics/ng-update/migrations/css-tokens.js.map +1 -0
  187. package/schematics/cdk/schematics/ng-update/migrations/element-selectors.d.ts +1 -1
  188. package/schematics/cdk/schematics/ng-update/migrations/element-selectors.js +9 -6
  189. package/schematics/cdk/schematics/ng-update/migrations/element-selectors.js.map +1 -0
  190. package/schematics/cdk/schematics/ng-update/migrations/input-names.d.ts +1 -1
  191. package/schematics/cdk/schematics/ng-update/migrations/input-names.js +9 -6
  192. package/schematics/cdk/schematics/ng-update/migrations/input-names.js.map +1 -0
  193. package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.d.ts +1 -1
  194. package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.js +9 -6
  195. package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.js.map +1 -0
  196. package/schematics/cdk/schematics/ng-update/migrations/misc-template.d.ts +1 -1
  197. package/schematics/cdk/schematics/ng-update/migrations/misc-template.js +7 -4
  198. package/schematics/cdk/schematics/ng-update/migrations/misc-template.js.map +1 -0
  199. package/schematics/cdk/schematics/ng-update/migrations/output-names.d.ts +1 -1
  200. package/schematics/cdk/schematics/ng-update/migrations/output-names.js +9 -6
  201. package/schematics/cdk/schematics/ng-update/migrations/output-names.js.map +1 -0
  202. package/schematics/cdk/schematics/ng-update/migrations/property-names.d.ts +1 -1
  203. package/schematics/cdk/schematics/ng-update/migrations/property-names.js +9 -6
  204. package/schematics/cdk/schematics/ng-update/migrations/property-names.js.map +1 -0
  205. package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.d.ts +1 -1
  206. package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.js +11 -7
  207. package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.js.map +1 -0
  208. package/schematics/cdk/schematics/ng-update/public-api.d.ts +1 -1
  209. package/schematics/cdk/schematics/ng-update/public-api.js +2 -2
  210. package/schematics/cdk/schematics/ng-update/public-api.js.map +1 -0
  211. package/schematics/cdk/schematics/ng-update/typescript/base-types.d.ts +1 -1
  212. package/schematics/cdk/schematics/ng-update/typescript/base-types.js +3 -4
  213. package/schematics/cdk/schematics/ng-update/typescript/base-types.js.map +1 -0
  214. package/schematics/cdk/schematics/ng-update/typescript/imports.d.ts +1 -1
  215. package/schematics/cdk/schematics/ng-update/typescript/imports.js +7 -8
  216. package/schematics/cdk/schematics/ng-update/typescript/imports.js.map +1 -0
  217. package/schematics/cdk/schematics/ng-update/typescript/literal.d.ts +1 -1
  218. package/schematics/cdk/schematics/ng-update/typescript/literal.js +4 -5
  219. package/schematics/cdk/schematics/ng-update/typescript/literal.js.map +1 -0
  220. package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.d.ts +1 -1
  221. package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.js +5 -5
  222. package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.js.map +1 -0
  223. package/schematics/cdk/schematics/ng-update/upgrade-data.d.ts +3 -2
  224. package/schematics/cdk/schematics/ng-update/upgrade-data.js +5 -4
  225. package/schematics/cdk/schematics/ng-update/upgrade-data.js.map +1 -0
  226. package/schematics/cdk/schematics/paths.d.ts +1 -1
  227. package/schematics/cdk/schematics/paths.js +2 -2
  228. package/schematics/cdk/schematics/paths.js.map +1 -0
  229. package/schematics/cdk/schematics/update-tool/component-resource-collector.d.ts +1 -1
  230. package/schematics/cdk/schematics/update-tool/component-resource-collector.js +4 -6
  231. package/schematics/cdk/schematics/update-tool/component-resource-collector.js.map +1 -0
  232. package/schematics/cdk/schematics/update-tool/file-system.d.ts +1 -1
  233. package/schematics/cdk/schematics/update-tool/file-system.js +2 -2
  234. package/schematics/cdk/schematics/update-tool/file-system.js.map +1 -0
  235. package/schematics/cdk/schematics/update-tool/index.d.ts +2 -2
  236. package/schematics/cdk/schematics/update-tool/index.js +4 -10
  237. package/schematics/cdk/schematics/update-tool/index.js.map +1 -0
  238. package/schematics/cdk/schematics/update-tool/logger.d.ts +1 -1
  239. package/schematics/cdk/schematics/update-tool/logger.js +2 -2
  240. package/schematics/cdk/schematics/update-tool/logger.js.map +1 -0
  241. package/schematics/cdk/schematics/update-tool/migration.d.ts +1 -1
  242. package/schematics/cdk/schematics/update-tool/migration.js +4 -11
  243. package/schematics/cdk/schematics/update-tool/migration.js.map +1 -0
  244. package/schematics/cdk/schematics/update-tool/public-api.d.ts +1 -1
  245. package/schematics/cdk/schematics/update-tool/public-api.js +2 -2
  246. package/schematics/cdk/schematics/update-tool/public-api.js.map +1 -0
  247. package/schematics/cdk/schematics/update-tool/target-version.d.ts +2 -2
  248. package/schematics/cdk/schematics/update-tool/target-version.js +5 -6
  249. package/schematics/cdk/schematics/update-tool/target-version.js.map +1 -0
  250. package/schematics/cdk/schematics/update-tool/update-recorder.d.ts +1 -1
  251. package/schematics/cdk/schematics/update-tool/update-recorder.js +2 -2
  252. package/schematics/cdk/schematics/update-tool/update-recorder.js.map +1 -0
  253. package/schematics/cdk/schematics/update-tool/utils/decorators.d.ts +1 -1
  254. package/schematics/cdk/schematics/update-tool/utils/decorators.js +4 -5
  255. package/schematics/cdk/schematics/update-tool/utils/decorators.js.map +1 -0
  256. package/schematics/cdk/schematics/update-tool/utils/diagnostics.d.ts +1 -1
  257. package/schematics/cdk/schematics/update-tool/utils/diagnostics.js +3 -4
  258. package/schematics/cdk/schematics/update-tool/utils/diagnostics.js.map +1 -0
  259. package/schematics/cdk/schematics/update-tool/utils/functions.d.ts +1 -1
  260. package/schematics/cdk/schematics/update-tool/utils/functions.js +3 -4
  261. package/schematics/cdk/schematics/update-tool/utils/functions.js.map +1 -0
  262. package/schematics/cdk/schematics/update-tool/utils/imports.d.ts +1 -1
  263. package/schematics/cdk/schematics/update-tool/utils/imports.js +3 -4
  264. package/schematics/cdk/schematics/update-tool/utils/imports.js.map +1 -0
  265. package/schematics/cdk/schematics/update-tool/utils/line-mappings.d.ts +1 -1
  266. package/schematics/cdk/schematics/update-tool/utils/line-mappings.js +4 -5
  267. package/schematics/cdk/schematics/update-tool/utils/line-mappings.js.map +1 -0
  268. package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.d.ts +1 -1
  269. package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.js +4 -4
  270. package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.js.map +1 -0
  271. package/schematics/cdk/schematics/update-tool/utils/property-name.d.ts +1 -1
  272. package/schematics/cdk/schematics/update-tool/utils/property-name.js +4 -5
  273. package/schematics/cdk/schematics/update-tool/utils/property-name.js.map +1 -0
  274. package/schematics/cdk/schematics/update-tool/utils/virtual-host.d.ts +1 -1
  275. package/schematics/cdk/schematics/update-tool/utils/virtual-host.js +6 -7
  276. package/schematics/cdk/schematics/update-tool/utils/virtual-host.js.map +1 -0
  277. package/schematics/cdk/schematics/update-tool/version-changes.d.ts +1 -1
  278. package/schematics/cdk/schematics/update-tool/version-changes.js +4 -5
  279. package/schematics/cdk/schematics/update-tool/version-changes.js.map +1 -0
  280. package/schematics/cdk/schematics/utils/ast/ng-module-imports.d.ts +1 -1
  281. package/schematics/cdk/schematics/utils/ast/ng-module-imports.js +3 -4
  282. package/schematics/cdk/schematics/utils/ast/ng-module-imports.js.map +1 -0
  283. package/schematics/cdk/schematics/utils/ast.d.ts +3 -3
  284. package/schematics/cdk/schematics/utils/ast.js +28 -18
  285. package/schematics/cdk/schematics/utils/ast.js.map +1 -0
  286. package/schematics/cdk/schematics/utils/build-component.d.ts +1 -1
  287. package/schematics/cdk/schematics/utils/build-component.js +24 -20
  288. package/schematics/cdk/schematics/utils/build-component.js.map +1 -0
  289. package/schematics/cdk/schematics/utils/get-project.d.ts +3 -3
  290. package/schematics/cdk/schematics/utils/get-project.js +3 -4
  291. package/schematics/cdk/schematics/utils/get-project.js.map +1 -0
  292. package/schematics/cdk/schematics/utils/html-manipulation.d.ts +1 -1
  293. package/schematics/cdk/schematics/utils/html-manipulation.js +5 -6
  294. package/schematics/cdk/schematics/utils/html-manipulation.js.map +1 -0
  295. package/schematics/cdk/schematics/utils/index.d.ts +1 -1
  296. package/schematics/cdk/schematics/utils/index.js +2 -2
  297. package/schematics/cdk/schematics/utils/index.js.map +1 -0
  298. package/schematics/cdk/schematics/utils/parse5-element.d.ts +1 -1
  299. package/schematics/cdk/schematics/utils/parse5-element.js +3 -4
  300. package/schematics/cdk/schematics/utils/parse5-element.js.map +1 -0
  301. package/schematics/cdk/schematics/utils/project-index-file.d.ts +7 -4
  302. package/schematics/cdk/schematics/utils/project-index-file.js +32 -10
  303. package/schematics/cdk/schematics/utils/project-index-file.js.map +1 -0
  304. package/schematics/cdk/schematics/utils/project-main-file.d.ts +4 -3
  305. package/schematics/cdk/schematics/utils/project-main-file.js +3 -4
  306. package/schematics/cdk/schematics/utils/project-main-file.js.map +1 -0
  307. package/schematics/cdk/schematics/utils/project-style-file.d.ts +3 -3
  308. package/schematics/cdk/schematics/utils/project-style-file.js +3 -4
  309. package/schematics/cdk/schematics/utils/project-style-file.js.map +1 -0
  310. package/schematics/cdk/schematics/utils/project-targets.d.ts +6 -5
  311. package/schematics/cdk/schematics/utils/project-targets.js +19 -12
  312. package/schematics/cdk/schematics/utils/project-targets.js.map +1 -0
  313. package/schematics/cdk/schematics/utils/project-tsconfig-paths.d.ts +4 -4
  314. package/schematics/cdk/schematics/utils/project-tsconfig-paths.js +29 -18
  315. package/schematics/cdk/schematics/utils/project-tsconfig-paths.js.map +1 -0
  316. package/schematics/cdk/schematics/utils/schematic-options.d.ts +3 -3
  317. package/schematics/cdk/schematics/utils/schematic-options.js +30 -19
  318. package/schematics/cdk/schematics/utils/schematic-options.js.map +1 -0
  319. package/schematics/cdk2/schematics/collection.json +18 -0
  320. package/schematics/cdk2/schematics/index.d.ts +14 -0
  321. package/schematics/cdk2/schematics/index.mjs +37 -0
  322. package/schematics/cdk2/schematics/migration.json +15 -0
  323. package/schematics/cdk2/schematics/ng-add/index.d.ts +17 -0
  324. package/schematics/cdk2/schematics/ng-add/index.mjs +39 -0
  325. package/schematics/cdk2/schematics/ng-add/schema.d.ts +11 -0
  326. package/schematics/cdk2/schematics/ng-add/schema.json +16 -0
  327. package/schematics/cdk2/schematics/ng-add/schema.mjs +10 -0
  328. package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template +53 -0
  329. package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +17 -0
  330. package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +25 -0
  331. package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +45 -0
  332. package/schematics/cdk2/schematics/ng-generate/drag-drop/index.d.ts +11 -0
  333. package/schematics/cdk2/schematics/ng-generate/drag-drop/index.mjs +33 -0
  334. package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.d.ts +10 -0
  335. package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.json +100 -0
  336. package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.mjs +10 -0
  337. package/schematics/cdk2/schematics/ng-update/data/attribute-selectors.d.ts +15 -0
  338. package/schematics/cdk2/schematics/ng-update/data/attribute-selectors.mjs +12 -0
  339. package/schematics/cdk2/schematics/ng-update/data/class-names.d.ts +15 -0
  340. package/schematics/cdk2/schematics/ng-update/data/class-names.mjs +12 -0
  341. package/schematics/cdk2/schematics/ng-update/data/constructor-checks.d.ts +15 -0
  342. package/schematics/cdk2/schematics/ng-update/data/constructor-checks.mjs +17 -0
  343. package/schematics/cdk2/schematics/ng-update/data/css-selectors.d.ts +27 -0
  344. package/schematics/cdk2/schematics/ng-update/data/css-selectors.mjs +12 -0
  345. package/schematics/cdk2/schematics/ng-update/data/element-selectors.d.ts +15 -0
  346. package/schematics/cdk2/schematics/ng-update/data/element-selectors.mjs +12 -0
  347. package/schematics/cdk2/schematics/ng-update/data/index.d.ts +17 -0
  348. package/schematics/cdk2/schematics/ng-update/data/index.mjs +34 -0
  349. package/schematics/cdk2/schematics/ng-update/data/input-names.d.ts +22 -0
  350. package/schematics/cdk2/schematics/ng-update/data/input-names.mjs +12 -0
  351. package/schematics/cdk2/schematics/ng-update/data/method-call-checks.d.ts +17 -0
  352. package/schematics/cdk2/schematics/ng-update/data/method-call-checks.mjs +12 -0
  353. package/schematics/cdk2/schematics/ng-update/data/output-names.d.ts +22 -0
  354. package/schematics/cdk2/schematics/ng-update/data/output-names.mjs +12 -0
  355. package/schematics/cdk2/schematics/ng-update/data/property-names.d.ts +20 -0
  356. package/schematics/cdk2/schematics/ng-update/data/property-names.mjs +12 -0
  357. package/schematics/cdk2/schematics/ng-update/data/symbol-removal.d.ts +17 -0
  358. package/schematics/cdk2/schematics/ng-update/data/symbol-removal.mjs +12 -0
  359. package/schematics/cdk2/schematics/ng-update/devkit-file-system.d.ts +30 -0
  360. package/schematics/cdk2/schematics/ng-update/devkit-file-system.mjs +84 -0
  361. package/schematics/cdk2/schematics/ng-update/devkit-migration-rule.d.ts +24 -0
  362. package/schematics/cdk2/schematics/ng-update/devkit-migration-rule.mjs +131 -0
  363. package/schematics/cdk2/schematics/ng-update/devkit-migration.d.ts +35 -0
  364. package/schematics/cdk2/schematics/ng-update/devkit-migration.mjs +20 -0
  365. package/schematics/cdk2/schematics/ng-update/find-stylesheets.d.ts +16 -0
  366. package/schematics/cdk2/schematics/ng-update/find-stylesheets.mjs +42 -0
  367. package/schematics/cdk2/schematics/ng-update/html-parsing/angular.d.ts +15 -0
  368. package/schematics/cdk2/schematics/ng-update/html-parsing/angular.mjs +52 -0
  369. package/schematics/cdk2/schematics/ng-update/html-parsing/elements.d.ts +24 -0
  370. package/schematics/cdk2/schematics/ng-update/html-parsing/elements.mjs +63 -0
  371. package/schematics/cdk2/schematics/ng-update/index.d.ts +10 -0
  372. package/schematics/cdk2/schematics/ng-update/index.mjs +30 -0
  373. package/schematics/cdk2/schematics/ng-update/migrations/attribute-selectors.d.ts +26 -0
  374. package/schematics/cdk2/schematics/ng-update/migrations/attribute-selectors.mjs +68 -0
  375. package/schematics/cdk2/schematics/ng-update/migrations/class-inheritance.d.ts +26 -0
  376. package/schematics/cdk2/schematics/ng-update/migrations/class-inheritance.mjs +55 -0
  377. package/schematics/cdk2/schematics/ng-update/migrations/class-names.d.ts +32 -0
  378. package/schematics/cdk2/schematics/ng-update/migrations/class-names.mjs +88 -0
  379. package/schematics/cdk2/schematics/ng-update/migrations/constructor-signature.d.ts +29 -0
  380. package/schematics/cdk2/schematics/ng-update/migrations/constructor-signature.mjs +136 -0
  381. package/schematics/cdk2/schematics/ng-update/migrations/css-selectors.d.ts +26 -0
  382. package/schematics/cdk2/schematics/ng-update/migrations/css-selectors.mjs +72 -0
  383. package/schematics/cdk2/schematics/ng-update/migrations/element-selectors.d.ts +26 -0
  384. package/schematics/cdk2/schematics/ng-update/migrations/element-selectors.mjs +63 -0
  385. package/schematics/cdk2/schematics/ng-update/migrations/input-names.d.ts +26 -0
  386. package/schematics/cdk2/schematics/ng-update/migrations/input-names.mjs +56 -0
  387. package/schematics/cdk2/schematics/ng-update/migrations/method-call-arguments.d.ts +22 -0
  388. package/schematics/cdk2/schematics/ng-update/migrations/method-call-arguments.mjs +59 -0
  389. package/schematics/cdk2/schematics/ng-update/migrations/misc-template.d.ts +18 -0
  390. package/schematics/cdk2/schematics/ng-update/migrations/misc-template.mjs +22 -0
  391. package/schematics/cdk2/schematics/ng-update/migrations/output-names.d.ts +22 -0
  392. package/schematics/cdk2/schematics/ng-update/migrations/output-names.mjs +43 -0
  393. package/schematics/cdk2/schematics/ng-update/migrations/property-names.d.ts +22 -0
  394. package/schematics/cdk2/schematics/ng-update/migrations/property-names.mjs +57 -0
  395. package/schematics/cdk2/schematics/ng-update/migrations/symbol-removal.d.ts +18 -0
  396. package/schematics/cdk2/schematics/ng-update/migrations/symbol-removal.mjs +43 -0
  397. package/schematics/cdk2/schematics/ng-update/public-api.d.ts +19 -0
  398. package/schematics/cdk2/schematics/ng-update/public-api.mjs +36 -0
  399. package/schematics/cdk2/schematics/ng-update/typescript/base-types.d.ts +10 -0
  400. package/schematics/cdk2/schematics/ng-update/typescript/base-types.mjs +24 -0
  401. package/schematics/cdk2/schematics/ng-update/typescript/imports.d.ts +18 -0
  402. package/schematics/cdk2/schematics/ng-update/typescript/imports.mjs +54 -0
  403. package/schematics/cdk2/schematics/ng-update/typescript/literal.d.ts +18 -0
  404. package/schematics/cdk2/schematics/ng-update/typescript/literal.mjs +33 -0
  405. package/schematics/cdk2/schematics/ng-update/typescript/module-specifiers.d.ts +16 -0
  406. package/schematics/cdk2/schematics/ng-update/typescript/module-specifiers.mjs +35 -0
  407. package/schematics/cdk2/schematics/ng-update/upgrade-data.d.ts +34 -0
  408. package/schematics/cdk2/schematics/ng-update/upgrade-data.mjs +39 -0
  409. package/schematics/cdk2/schematics/package.json +3 -0
  410. package/schematics/cdk2/schematics/paths.d.ts +11 -0
  411. package/schematics/cdk2/schematics/paths.mjs +16 -0
  412. package/schematics/cdk2/schematics/update-tool/component-resource-collector.d.ts +44 -0
  413. package/schematics/cdk2/schematics/update-tool/component-resource-collector.mjs +166 -0
  414. package/schematics/cdk2/schematics/update-tool/file-system.d.ts +72 -0
  415. package/schematics/cdk2/schematics/update-tool/file-system.mjs +18 -0
  416. package/schematics/cdk2/schematics/update-tool/index.d.ts +74 -0
  417. package/schematics/cdk2/schematics/update-tool/index.mjs +178 -0
  418. package/schematics/cdk2/schematics/update-tool/logger.d.ts +15 -0
  419. package/schematics/cdk2/schematics/update-tool/logger.mjs +18 -0
  420. package/schematics/cdk2/schematics/update-tool/migration.d.ts +87 -0
  421. package/schematics/cdk2/schematics/update-tool/migration.mjs +77 -0
  422. package/schematics/cdk2/schematics/update-tool/public-api.d.ts +16 -0
  423. package/schematics/cdk2/schematics/update-tool/public-api.mjs +33 -0
  424. package/schematics/cdk2/schematics/update-tool/target-version.d.ts +16 -0
  425. package/schematics/cdk2/schematics/update-tool/target-version.mjs +28 -0
  426. package/schematics/cdk2/schematics/update-tool/update-recorder.d.ts +13 -0
  427. package/schematics/cdk2/schematics/update-tool/update-recorder.mjs +10 -0
  428. package/schematics/cdk2/schematics/update-tool/utils/decorators.d.ts +22 -0
  429. package/schematics/cdk2/schematics/update-tool/utils/decorators.mjs +42 -0
  430. package/schematics/cdk2/schematics/update-tool/utils/diagnostics.d.ts +11 -0
  431. package/schematics/cdk2/schematics/update-tool/utils/diagnostics.mjs +19 -0
  432. package/schematics/cdk2/schematics/update-tool/utils/functions.d.ts +14 -0
  433. package/schematics/cdk2/schematics/update-tool/utils/functions.mjs +21 -0
  434. package/schematics/cdk2/schematics/update-tool/utils/imports.d.ts +17 -0
  435. package/schematics/cdk2/schematics/update-tool/utils/imports.mjs +111 -0
  436. package/schematics/cdk2/schematics/update-tool/utils/line-mappings.d.ts +21 -0
  437. package/schematics/cdk2/schematics/update-tool/utils/line-mappings.mjs +76 -0
  438. package/schematics/cdk2/schematics/update-tool/utils/parse-tsconfig.d.ts +18 -0
  439. package/schematics/cdk2/schematics/update-tool/utils/parse-tsconfig.mjs +45 -0
  440. package/schematics/cdk2/schematics/update-tool/utils/property-name.d.ts +18 -0
  441. package/schematics/cdk2/schematics/update-tool/utils/property-name.mjs +28 -0
  442. package/schematics/cdk2/schematics/update-tool/utils/virtual-host.d.ts +36 -0
  443. package/schematics/cdk2/schematics/update-tool/utils/virtual-host.mjs +72 -0
  444. package/schematics/cdk2/schematics/update-tool/version-changes.d.ts +32 -0
  445. package/schematics/cdk2/schematics/update-tool/version-changes.mjs +39 -0
  446. package/schematics/cdk2/schematics/utils/ast/ng-module-imports.d.ts +12 -0
  447. package/schematics/cdk2/schematics/utils/ast/ng-module-imports.mjs +83 -0
  448. package/schematics/cdk2/schematics/utils/ast.d.ts +25 -0
  449. package/schematics/cdk2/schematics/utils/ast.mjs +69 -0
  450. package/schematics/cdk2/schematics/utils/build-component.d.ts +20 -0
  451. package/schematics/cdk2/schematics/utils/build-component.mjs +184 -0
  452. package/schematics/cdk2/schematics/utils/get-project.d.ts +13 -0
  453. package/schematics/cdk2/schematics/utils/get-project.mjs +29 -0
  454. package/schematics/cdk2/schematics/utils/html-manipulation.d.ts +15 -0
  455. package/schematics/cdk2/schematics/utils/html-manipulation.mjs +92 -0
  456. package/schematics/cdk2/schematics/utils/index.d.ts +19 -0
  457. package/schematics/cdk2/schematics/utils/index.mjs +36 -0
  458. package/schematics/cdk2/schematics/utils/parse5-element.d.ts +12 -0
  459. package/schematics/cdk2/schematics/utils/parse5-element.mjs +31 -0
  460. package/schematics/cdk2/schematics/utils/project-index-file.d.ts +10 -0
  461. package/schematics/cdk2/schematics/utils/project-index-file.mjs +21 -0
  462. package/schematics/cdk2/schematics/utils/project-main-file.d.ts +10 -0
  463. package/schematics/cdk2/schematics/utils/project-main-file.mjs +26 -0
  464. package/schematics/cdk2/schematics/utils/project-style-file.d.ts +13 -0
  465. package/schematics/cdk2/schematics/utils/project-style-file.mjs +43 -0
  466. package/schematics/cdk2/schematics/utils/project-targets.d.ts +14 -0
  467. package/schematics/cdk2/schematics/utils/project-targets.mjs +39 -0
  468. package/schematics/cdk2/schematics/utils/project-tsconfig-paths.d.ts +14 -0
  469. package/schematics/cdk2/schematics/utils/project-tsconfig-paths.mjs +35 -0
  470. package/schematics/cdk2/schematics/utils/schematic-options.d.ts +20 -0
  471. package/schematics/cdk2/schematics/utils/schematic-options.mjs +78 -0
  472. /package/schematics/{cdk/schematics/index.mjs → cdk2/schematics/index.js} +0 -0
  473. /package/schematics/{cdk/schematics/ng-add/index.mjs → cdk2/schematics/ng-add/index.js} +0 -0
  474. /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.d.ts +0 -0
  475. /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.js +0 -0
  476. /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.mjs +0 -0
  477. /package/schematics/{cdk/schematics/ng-add/schema.mjs → cdk2/schematics/ng-add/schema.js} +0 -0
  478. /package/schematics/{cdk/schematics/ng-generate/drag-drop/index.mjs → cdk2/schematics/ng-generate/drag-drop/index.js} +0 -0
  479. /package/schematics/{cdk/schematics/ng-generate/drag-drop/schema.mjs → cdk2/schematics/ng-generate/drag-drop/schema.js} +0 -0
  480. /package/schematics/{cdk/schematics/ng-update/data/attribute-selectors.mjs → cdk2/schematics/ng-update/data/attribute-selectors.js} +0 -0
  481. /package/schematics/{cdk/schematics/ng-update/data/class-names.mjs → cdk2/schematics/ng-update/data/class-names.js} +0 -0
  482. /package/schematics/{cdk/schematics/ng-update/data/constructor-checks.mjs → cdk2/schematics/ng-update/data/constructor-checks.js} +0 -0
  483. /package/schematics/{cdk/schematics/ng-update/data/css-selectors.mjs → cdk2/schematics/ng-update/data/css-selectors.js} +0 -0
  484. /package/schematics/{cdk/schematics/ng-update/data/element-selectors.mjs → cdk2/schematics/ng-update/data/element-selectors.js} +0 -0
  485. /package/schematics/{cdk/schematics/ng-update/data/index.mjs → cdk2/schematics/ng-update/data/index.js} +0 -0
  486. /package/schematics/{cdk/schematics/ng-update/data/input-names.mjs → cdk2/schematics/ng-update/data/input-names.js} +0 -0
  487. /package/schematics/{cdk/schematics/ng-update/data/method-call-checks.mjs → cdk2/schematics/ng-update/data/method-call-checks.js} +0 -0
  488. /package/schematics/{cdk/schematics/ng-update/data/output-names.mjs → cdk2/schematics/ng-update/data/output-names.js} +0 -0
  489. /package/schematics/{cdk/schematics/ng-update/data/property-names.mjs → cdk2/schematics/ng-update/data/property-names.js} +0 -0
  490. /package/schematics/{cdk/schematics/ng-update/data/symbol-removal.mjs → cdk2/schematics/ng-update/data/symbol-removal.js} +0 -0
  491. /package/schematics/{cdk/schematics/ng-update/devkit-file-system.mjs → cdk2/schematics/ng-update/devkit-file-system.js} +0 -0
  492. /package/schematics/{cdk/schematics/ng-update/devkit-migration-rule.mjs → cdk2/schematics/ng-update/devkit-migration-rule.js} +0 -0
  493. /package/schematics/{cdk/schematics/ng-update/devkit-migration.mjs → cdk2/schematics/ng-update/devkit-migration.js} +0 -0
  494. /package/schematics/{cdk/schematics/ng-update/find-stylesheets.mjs → cdk2/schematics/ng-update/find-stylesheets.js} +0 -0
  495. /package/schematics/{cdk/schematics/ng-update/html-parsing/angular.mjs → cdk2/schematics/ng-update/html-parsing/angular.js} +0 -0
  496. /package/schematics/{cdk/schematics/ng-update/html-parsing/elements.mjs → cdk2/schematics/ng-update/html-parsing/elements.js} +0 -0
  497. /package/schematics/{cdk/schematics/ng-update/index.mjs → cdk2/schematics/ng-update/index.js} +0 -0
  498. /package/schematics/{cdk/schematics/ng-update/migrations/attribute-selectors.mjs → cdk2/schematics/ng-update/migrations/attribute-selectors.js} +0 -0
  499. /package/schematics/{cdk/schematics/ng-update/migrations/class-inheritance.mjs → cdk2/schematics/ng-update/migrations/class-inheritance.js} +0 -0
  500. /package/schematics/{cdk/schematics/ng-update/migrations/class-names.mjs → cdk2/schematics/ng-update/migrations/class-names.js} +0 -0
  501. /package/schematics/{cdk/schematics/ng-update/migrations/constructor-signature.mjs → cdk2/schematics/ng-update/migrations/constructor-signature.js} +0 -0
  502. /package/schematics/{cdk/schematics/ng-update/migrations/css-selectors.mjs → cdk2/schematics/ng-update/migrations/css-selectors.js} +0 -0
  503. /package/schematics/{cdk/schematics/ng-update/migrations/element-selectors.mjs → cdk2/schematics/ng-update/migrations/element-selectors.js} +0 -0
  504. /package/schematics/{cdk/schematics/ng-update/migrations/input-names.mjs → cdk2/schematics/ng-update/migrations/input-names.js} +0 -0
  505. /package/schematics/{cdk/schematics/ng-update/migrations/method-call-arguments.mjs → cdk2/schematics/ng-update/migrations/method-call-arguments.js} +0 -0
  506. /package/schematics/{cdk/schematics/ng-update/migrations/misc-template.mjs → cdk2/schematics/ng-update/migrations/misc-template.js} +0 -0
  507. /package/schematics/{cdk/schematics/ng-update/migrations/output-names.mjs → cdk2/schematics/ng-update/migrations/output-names.js} +0 -0
  508. /package/schematics/{cdk/schematics/ng-update/migrations/property-names.mjs → cdk2/schematics/ng-update/migrations/property-names.js} +0 -0
  509. /package/schematics/{cdk/schematics/ng-update/migrations/symbol-removal.mjs → cdk2/schematics/ng-update/migrations/symbol-removal.js} +0 -0
  510. /package/schematics/{cdk/schematics/ng-update/public-api.mjs → cdk2/schematics/ng-update/public-api.js} +0 -0
  511. /package/schematics/{cdk/schematics/ng-update/typescript/base-types.mjs → cdk2/schematics/ng-update/typescript/base-types.js} +0 -0
  512. /package/schematics/{cdk/schematics/ng-update/typescript/imports.mjs → cdk2/schematics/ng-update/typescript/imports.js} +0 -0
  513. /package/schematics/{cdk/schematics/ng-update/typescript/literal.mjs → cdk2/schematics/ng-update/typescript/literal.js} +0 -0
  514. /package/schematics/{cdk/schematics/ng-update/typescript/module-specifiers.mjs → cdk2/schematics/ng-update/typescript/module-specifiers.js} +0 -0
  515. /package/schematics/{cdk/schematics/ng-update/upgrade-data.mjs → cdk2/schematics/ng-update/upgrade-data.js} +0 -0
  516. /package/schematics/{cdk/schematics/paths.mjs → cdk2/schematics/paths.js} +0 -0
  517. /package/schematics/{cdk → cdk2}/schematics/schematics.externs.js +0 -0
  518. /package/schematics/{cdk → cdk2}/schematics/tsconfig.json +0 -0
  519. /package/schematics/{cdk/schematics/update-tool/component-resource-collector.mjs → cdk2/schematics/update-tool/component-resource-collector.js} +0 -0
  520. /package/schematics/{cdk/schematics/update-tool/file-system.mjs → cdk2/schematics/update-tool/file-system.js} +0 -0
  521. /package/schematics/{cdk/schematics/update-tool/index.mjs → cdk2/schematics/update-tool/index.js} +0 -0
  522. /package/schematics/{cdk/schematics/update-tool/logger.mjs → cdk2/schematics/update-tool/logger.js} +0 -0
  523. /package/schematics/{cdk/schematics/update-tool/migration.mjs → cdk2/schematics/update-tool/migration.js} +0 -0
  524. /package/schematics/{cdk/schematics/update-tool/public-api.mjs → cdk2/schematics/update-tool/public-api.js} +0 -0
  525. /package/schematics/{cdk/schematics/update-tool/target-version.mjs → cdk2/schematics/update-tool/target-version.js} +0 -0
  526. /package/schematics/{cdk/schematics/update-tool/update-recorder.mjs → cdk2/schematics/update-tool/update-recorder.js} +0 -0
  527. /package/schematics/{cdk → cdk2}/schematics/update-tool/update-tool.externs.js +0 -0
  528. /package/schematics/{cdk/schematics/update-tool/utils/decorators.mjs → cdk2/schematics/update-tool/utils/decorators.js} +0 -0
  529. /package/schematics/{cdk/schematics/update-tool/utils/diagnostics.mjs → cdk2/schematics/update-tool/utils/diagnostics.js} +0 -0
  530. /package/schematics/{cdk/schematics/update-tool/utils/functions.mjs → cdk2/schematics/update-tool/utils/functions.js} +0 -0
  531. /package/schematics/{cdk/schematics/update-tool/utils/imports.mjs → cdk2/schematics/update-tool/utils/imports.js} +0 -0
  532. /package/schematics/{cdk/schematics/update-tool/utils/line-mappings.mjs → cdk2/schematics/update-tool/utils/line-mappings.js} +0 -0
  533. /package/schematics/{cdk/schematics/update-tool/utils/parse-tsconfig.mjs → cdk2/schematics/update-tool/utils/parse-tsconfig.js} +0 -0
  534. /package/schematics/{cdk/schematics/update-tool/utils/property-name.mjs → cdk2/schematics/update-tool/utils/property-name.js} +0 -0
  535. /package/schematics/{cdk/schematics/update-tool/utils/virtual-host.mjs → cdk2/schematics/update-tool/utils/virtual-host.js} +0 -0
  536. /package/schematics/{cdk/schematics/update-tool/version-changes.mjs → cdk2/schematics/update-tool/version-changes.js} +0 -0
  537. /package/schematics/{cdk/schematics/utils/ast/ng-module-imports.mjs → cdk2/schematics/utils/ast/ng-module-imports.js} +0 -0
  538. /package/schematics/{cdk/schematics/utils/ast.mjs → cdk2/schematics/utils/ast.js} +0 -0
  539. /package/schematics/{cdk/schematics/utils/build-component.mjs → cdk2/schematics/utils/build-component.js} +0 -0
  540. /package/schematics/{cdk/schematics/utils/get-project.mjs → cdk2/schematics/utils/get-project.js} +0 -0
  541. /package/schematics/{cdk/schematics/utils/html-manipulation.mjs → cdk2/schematics/utils/html-manipulation.js} +0 -0
  542. /package/schematics/{cdk/schematics/utils/index.mjs → cdk2/schematics/utils/index.js} +0 -0
  543. /package/schematics/{cdk/schematics/utils/parse5-element.mjs → cdk2/schematics/utils/parse5-element.js} +0 -0
  544. /package/schematics/{cdk/schematics/utils/project-index-file.mjs → cdk2/schematics/utils/project-index-file.js} +0 -0
  545. /package/schematics/{cdk/schematics/utils/project-main-file.mjs → cdk2/schematics/utils/project-main-file.js} +0 -0
  546. /package/schematics/{cdk/schematics/utils/project-style-file.mjs → cdk2/schematics/utils/project-style-file.js} +0 -0
  547. /package/schematics/{cdk/schematics/utils/project-targets.mjs → cdk2/schematics/utils/project-targets.js} +0 -0
  548. /package/schematics/{cdk/schematics/utils/project-tsconfig-paths.mjs → cdk2/schematics/utils/project-tsconfig-paths.js} +0 -0
  549. /package/schematics/{cdk/schematics/utils/schematic-options.mjs → cdk2/schematics/utils/schematic-options.js} +0 -0
@@ -0,0 +1,76 @@
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
+ exports.computeLineStartsMap = exports.getLineAndCharacterFromPosition = void 0;
11
+ /*
12
+ * Line mapping utilities which can be used to retrieve line and character based
13
+ * on an absolute character position in a given file. This functionality is similar
14
+ * to TypeScript's "ts.getLineAndCharacterFromPosition" utility, but we cannot leverage
15
+ * their logic for line mappings as it's internal and we need to generate line mappings
16
+ * for non-TypeScript files such as HTML templates or stylesheets.
17
+ *
18
+ * Line and character can be retrieved by splitting a given source text based on
19
+ * line breaks into line start entries. Later when a specific position is requested,
20
+ * the closest line-start position is determined based on the given position.
21
+ */
22
+ const LF_CHAR = 10;
23
+ const CR_CHAR = 13;
24
+ const LINE_SEP_CHAR = 8232;
25
+ const PARAGRAPH_CHAR = 8233;
26
+ /** Gets the line and character for the given position from the line starts map. */
27
+ function getLineAndCharacterFromPosition(lineStartsMap, position) {
28
+ const lineIndex = findClosestLineStartPosition(lineStartsMap, position);
29
+ return { character: position - lineStartsMap[lineIndex], line: lineIndex };
30
+ }
31
+ exports.getLineAndCharacterFromPosition = getLineAndCharacterFromPosition;
32
+ /**
33
+ * Computes the line start map of the given text. This can be used in order to
34
+ * retrieve the line and character of a given text position index.
35
+ */
36
+ function computeLineStartsMap(text) {
37
+ const result = [0];
38
+ let pos = 0;
39
+ while (pos < text.length) {
40
+ const char = text.charCodeAt(pos++);
41
+ // Handles the "CRLF" line break. In that case we peek the character
42
+ // after the "CR" and check if it is a line feed.
43
+ if (char === CR_CHAR) {
44
+ if (text.charCodeAt(pos) === LF_CHAR) {
45
+ pos++;
46
+ }
47
+ result.push(pos);
48
+ }
49
+ else if (char === LF_CHAR || char === LINE_SEP_CHAR || char === PARAGRAPH_CHAR) {
50
+ result.push(pos);
51
+ }
52
+ }
53
+ result.push(pos);
54
+ return result;
55
+ }
56
+ exports.computeLineStartsMap = computeLineStartsMap;
57
+ /** Finds the closest line start for the given position. */
58
+ function findClosestLineStartPosition(linesMap, position, low = 0, high = linesMap.length - 1) {
59
+ while (low <= high) {
60
+ const pivotIndex = Math.floor((low + high) / 2);
61
+ const pivotEl = linesMap[pivotIndex];
62
+ if (pivotEl === position) {
63
+ return pivotIndex;
64
+ }
65
+ else if (position > pivotEl) {
66
+ low = pivotIndex + 1;
67
+ }
68
+ else {
69
+ high = pivotIndex - 1;
70
+ }
71
+ }
72
+ // In case there was no exact match, return the closest "lower" line index. We also
73
+ // subtract the index by one because want the index of the previous line start.
74
+ return low - 1;
75
+ }
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1tYXBwaW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy91cGRhdGUtdG9vbC91dGlscy9saW5lLW1hcHBpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVIOzs7Ozs7Ozs7O0dBVUc7QUFFSCxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7QUFDbkIsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO0FBQ25CLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQztBQUMzQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUM7QUFPNUIsbUZBQW1GO0FBQ25GLFNBQWdCLCtCQUErQixDQUFDLGFBQXVCLEVBQUUsUUFBZ0I7SUFDdkYsTUFBTSxTQUFTLEdBQUcsNEJBQTRCLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3hFLE9BQU8sRUFBQyxTQUFTLEVBQUUsUUFBUSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFDLENBQUM7QUFDM0UsQ0FBQztBQUhELDBFQUdDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsSUFBWTtJQUMvQyxNQUFNLE1BQU0sR0FBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdCLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztJQUNaLE9BQU8sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDeEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLG9FQUFvRTtRQUNwRSxpREFBaUQ7UUFDakQsSUFBSSxJQUFJLEtBQUssT0FBTyxFQUFFO1lBQ3BCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxPQUFPLEVBQUU7Z0JBQ3BDLEdBQUcsRUFBRSxDQUFDO2FBQ1A7WUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2xCO2FBQU0sSUFBSSxJQUFJLEtBQUssT0FBTyxJQUFJLElBQUksS0FBSyxhQUFhLElBQUksSUFBSSxLQUFLLGNBQWMsRUFBRTtZQUNoRixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2xCO0tBQ0Y7SUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFsQkQsb0RBa0JDO0FBRUQsMkRBQTJEO0FBQzNELFNBQVMsNEJBQTRCLENBQ25DLFFBQWEsRUFDYixRQUFXLEVBQ1gsR0FBRyxHQUFHLENBQUMsRUFDUCxJQUFJLEdBQUcsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDO0lBRTFCLE9BQU8sR0FBRyxJQUFJLElBQUksRUFBRTtRQUNsQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVyQyxJQUFJLE9BQU8sS0FBSyxRQUFRLEVBQUU7WUFDeEIsT0FBTyxVQUFVLENBQUM7U0FDbkI7YUFBTSxJQUFJLFFBQVEsR0FBRyxPQUFPLEVBQUU7WUFDN0IsR0FBRyxHQUFHLFVBQVUsR0FBRyxDQUFDLENBQUM7U0FDdEI7YUFBTTtZQUNMLElBQUksR0FBRyxVQUFVLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZCO0tBQ0Y7SUFFRCxtRkFBbUY7SUFDbkYsK0VBQStFO0lBQy9FLE9BQU8sR0FBRyxHQUFHLENBQUMsQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbi8qXG4gKiBMaW5lIG1hcHBpbmcgdXRpbGl0aWVzIHdoaWNoIGNhbiBiZSB1c2VkIHRvIHJldHJpZXZlIGxpbmUgYW5kIGNoYXJhY3RlciBiYXNlZFxuICogb24gYW4gYWJzb2x1dGUgY2hhcmFjdGVyIHBvc2l0aW9uIGluIGEgZ2l2ZW4gZmlsZS4gVGhpcyBmdW5jdGlvbmFsaXR5IGlzIHNpbWlsYXJcbiAqIHRvIFR5cGVTY3JpcHQncyBcInRzLmdldExpbmVBbmRDaGFyYWN0ZXJGcm9tUG9zaXRpb25cIiB1dGlsaXR5LCBidXQgd2UgY2Fubm90IGxldmVyYWdlXG4gKiB0aGVpciBsb2dpYyBmb3IgbGluZSBtYXBwaW5ncyBhcyBpdCdzIGludGVybmFsIGFuZCB3ZSBuZWVkIHRvIGdlbmVyYXRlIGxpbmUgbWFwcGluZ3NcbiAqIGZvciBub24tVHlwZVNjcmlwdCBmaWxlcyBzdWNoIGFzIEhUTUwgdGVtcGxhdGVzIG9yIHN0eWxlc2hlZXRzLlxuICpcbiAqIExpbmUgYW5kIGNoYXJhY3RlciBjYW4gYmUgcmV0cmlldmVkIGJ5IHNwbGl0dGluZyBhIGdpdmVuIHNvdXJjZSB0ZXh0IGJhc2VkIG9uXG4gKiBsaW5lIGJyZWFrcyBpbnRvIGxpbmUgc3RhcnQgZW50cmllcy4gTGF0ZXIgd2hlbiBhIHNwZWNpZmljIHBvc2l0aW9uIGlzIHJlcXVlc3RlZCxcbiAqIHRoZSBjbG9zZXN0IGxpbmUtc3RhcnQgcG9zaXRpb24gaXMgZGV0ZXJtaW5lZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gcG9zaXRpb24uXG4gKi9cblxuY29uc3QgTEZfQ0hBUiA9IDEwO1xuY29uc3QgQ1JfQ0hBUiA9IDEzO1xuY29uc3QgTElORV9TRVBfQ0hBUiA9IDgyMzI7XG5jb25zdCBQQVJBR1JBUEhfQ0hBUiA9IDgyMzM7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGluZUFuZENoYXJhY3RlciB7XG4gIGNoYXJhY3RlcjogbnVtYmVyO1xuICBsaW5lOiBudW1iZXI7XG59XG5cbi8qKiBHZXRzIHRoZSBsaW5lIGFuZCBjaGFyYWN0ZXIgZm9yIHRoZSBnaXZlbiBwb3NpdGlvbiBmcm9tIHRoZSBsaW5lIHN0YXJ0cyBtYXAuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGluZUFuZENoYXJhY3RlckZyb21Qb3NpdGlvbihsaW5lU3RhcnRzTWFwOiBudW1iZXJbXSwgcG9zaXRpb246IG51bWJlcikge1xuICBjb25zdCBsaW5lSW5kZXggPSBmaW5kQ2xvc2VzdExpbmVTdGFydFBvc2l0aW9uKGxpbmVTdGFydHNNYXAsIHBvc2l0aW9uKTtcbiAgcmV0dXJuIHtjaGFyYWN0ZXI6IHBvc2l0aW9uIC0gbGluZVN0YXJ0c01hcFtsaW5lSW5kZXhdLCBsaW5lOiBsaW5lSW5kZXh9O1xufVxuXG4vKipcbiAqIENvbXB1dGVzIHRoZSBsaW5lIHN0YXJ0IG1hcCBvZiB0aGUgZ2l2ZW4gdGV4dC4gVGhpcyBjYW4gYmUgdXNlZCBpbiBvcmRlciB0b1xuICogcmV0cmlldmUgdGhlIGxpbmUgYW5kIGNoYXJhY3RlciBvZiBhIGdpdmVuIHRleHQgcG9zaXRpb24gaW5kZXguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlTGluZVN0YXJ0c01hcCh0ZXh0OiBzdHJpbmcpOiBudW1iZXJbXSB7XG4gIGNvbnN0IHJlc3VsdDogbnVtYmVyW10gPSBbMF07XG4gIGxldCBwb3MgPSAwO1xuICB3aGlsZSAocG9zIDwgdGV4dC5sZW5ndGgpIHtcbiAgICBjb25zdCBjaGFyID0gdGV4dC5jaGFyQ29kZUF0KHBvcysrKTtcbiAgICAvLyBIYW5kbGVzIHRoZSBcIkNSTEZcIiBsaW5lIGJyZWFrLiBJbiB0aGF0IGNhc2Ugd2UgcGVlayB0aGUgY2hhcmFjdGVyXG4gICAgLy8gYWZ0ZXIgdGhlIFwiQ1JcIiBhbmQgY2hlY2sgaWYgaXQgaXMgYSBsaW5lIGZlZWQuXG4gICAgaWYgKGNoYXIgPT09IENSX0NIQVIpIHtcbiAgICAgIGlmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gTEZfQ0hBUikge1xuICAgICAgICBwb3MrKztcbiAgICAgIH1cbiAgICAgIHJlc3VsdC5wdXNoKHBvcyk7XG4gICAgfSBlbHNlIGlmIChjaGFyID09PSBMRl9DSEFSIHx8IGNoYXIgPT09IExJTkVfU0VQX0NIQVIgfHwgY2hhciA9PT0gUEFSQUdSQVBIX0NIQVIpIHtcbiAgICAgIHJlc3VsdC5wdXNoKHBvcyk7XG4gICAgfVxuICB9XG4gIHJlc3VsdC5wdXNoKHBvcyk7XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbi8qKiBGaW5kcyB0aGUgY2xvc2VzdCBsaW5lIHN0YXJ0IGZvciB0aGUgZ2l2ZW4gcG9zaXRpb24uICovXG5mdW5jdGlvbiBmaW5kQ2xvc2VzdExpbmVTdGFydFBvc2l0aW9uPFQ+KFxuICBsaW5lc01hcDogVFtdLFxuICBwb3NpdGlvbjogVCxcbiAgbG93ID0gMCxcbiAgaGlnaCA9IGxpbmVzTWFwLmxlbmd0aCAtIDEsXG4pIHtcbiAgd2hpbGUgKGxvdyA8PSBoaWdoKSB7XG4gICAgY29uc3QgcGl2b3RJbmRleCA9IE1hdGguZmxvb3IoKGxvdyArIGhpZ2gpIC8gMik7XG4gICAgY29uc3QgcGl2b3RFbCA9IGxpbmVzTWFwW3Bpdm90SW5kZXhdO1xuXG4gICAgaWYgKHBpdm90RWwgPT09IHBvc2l0aW9uKSB7XG4gICAgICByZXR1cm4gcGl2b3RJbmRleDtcbiAgICB9IGVsc2UgaWYgKHBvc2l0aW9uID4gcGl2b3RFbCkge1xuICAgICAgbG93ID0gcGl2b3RJbmRleCArIDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIGhpZ2ggPSBwaXZvdEluZGV4IC0gMTtcbiAgICB9XG4gIH1cblxuICAvLyBJbiBjYXNlIHRoZXJlIHdhcyBubyBleGFjdCBtYXRjaCwgcmV0dXJuIHRoZSBjbG9zZXN0IFwibG93ZXJcIiBsaW5lIGluZGV4LiBXZSBhbHNvXG4gIC8vIHN1YnRyYWN0IHRoZSBpbmRleCBieSBvbmUgYmVjYXVzZSB3YW50IHRoZSBpbmRleCBvZiB0aGUgcHJldmlvdXMgbGluZSBzdGFydC5cbiAgcmV0dXJuIGxvdyAtIDE7XG59XG4iXX0=
@@ -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 * as ts from 'typescript';
9
+ import { FileSystem, WorkspacePath } from '../file-system';
10
+ /** Class capturing a tsconfig parse error. */
11
+ export declare class TsconfigParseError extends Error {
12
+ }
13
+ /**
14
+ * Attempts to parse the specified tsconfig file.
15
+ *
16
+ * @throws {TsconfigParseError} If the tsconfig could not be read or parsed.
17
+ */
18
+ export declare function parseTsconfigFile(tsconfigPath: WorkspacePath, fileSystem: FileSystem): ts.ParsedCommandLine;
@@ -0,0 +1,45 @@
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
+ exports.parseTsconfigFile = exports.TsconfigParseError = void 0;
11
+ const ts = require("typescript");
12
+ const virtual_host_1 = require("./virtual-host");
13
+ const path_1 = require("path");
14
+ const diagnostics_1 = require("./diagnostics");
15
+ /** Code of the error raised by TypeScript when a tsconfig doesn't match any files. */
16
+ const NO_INPUTS_ERROR_CODE = 18003;
17
+ /** Class capturing a tsconfig parse error. */
18
+ class TsconfigParseError extends Error {
19
+ }
20
+ exports.TsconfigParseError = TsconfigParseError;
21
+ /**
22
+ * Attempts to parse the specified tsconfig file.
23
+ *
24
+ * @throws {TsconfigParseError} If the tsconfig could not be read or parsed.
25
+ */
26
+ function parseTsconfigFile(tsconfigPath, fileSystem) {
27
+ if (!fileSystem.fileExists(tsconfigPath)) {
28
+ throw new TsconfigParseError(`Tsconfig cannot not be read: ${tsconfigPath}`);
29
+ }
30
+ const { config, error } = ts.readConfigFile(tsconfigPath, p => fileSystem.read(fileSystem.resolve(p)));
31
+ // If there is a config reading error, we never attempt to parse the config.
32
+ if (error) {
33
+ throw new TsconfigParseError((0, diagnostics_1.formatDiagnostics)([error], fileSystem));
34
+ }
35
+ const parsed = ts.parseJsonConfigFileContent(config, new virtual_host_1.FileSystemHost(fileSystem), (0, path_1.dirname)(tsconfigPath), {});
36
+ // Skip the "No inputs found..." error since we don't want to interrupt the migration if a
37
+ // tsconfig doesn't match a file. This will result in an empty `Program` which is still valid.
38
+ const errors = parsed.errors.filter(diag => diag.code !== NO_INPUTS_ERROR_CODE);
39
+ if (errors.length) {
40
+ throw new TsconfigParseError((0, diagnostics_1.formatDiagnostics)(errors, fileSystem));
41
+ }
42
+ return parsed;
43
+ }
44
+ exports.parseTsconfigFile = parseTsconfigFile;
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtdHNjb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvdXBkYXRlLXRvb2wvdXRpbHMvcGFyc2UtdHNjb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBRWpDLGlEQUE4QztBQUM5QywrQkFBNkI7QUFDN0IsK0NBQWdEO0FBRWhELHNGQUFzRjtBQUN0RixNQUFNLG9CQUFvQixHQUFHLEtBQUssQ0FBQztBQUVuQyw4Q0FBOEM7QUFDOUMsTUFBYSxrQkFBbUIsU0FBUSxLQUFLO0NBQUc7QUFBaEQsZ0RBQWdEO0FBRWhEOzs7O0dBSUc7QUFDSCxTQUFnQixpQkFBaUIsQ0FDL0IsWUFBMkIsRUFDM0IsVUFBc0I7SUFFdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLEVBQUU7UUFDeEMsTUFBTSxJQUFJLGtCQUFrQixDQUFDLGdDQUFnQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0tBQzlFO0lBRUQsTUFBTSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUN2QyxZQUFZLEVBQ1osQ0FBQyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUUsQ0FDN0MsQ0FBQztJQUVGLDRFQUE0RTtJQUM1RSxJQUFJLEtBQUssRUFBRTtRQUNULE1BQU0sSUFBSSxrQkFBa0IsQ0FBQyxJQUFBLCtCQUFpQixFQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztLQUN0RTtJQUVELE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FDMUMsTUFBTSxFQUNOLElBQUksNkJBQWMsQ0FBQyxVQUFVLENBQUMsRUFDOUIsSUFBQSxjQUFPLEVBQUMsWUFBWSxDQUFDLEVBQ3JCLEVBQUUsQ0FDSCxDQUFDO0lBRUYsMEZBQTBGO0lBQzFGLDhGQUE4RjtJQUM5RixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssb0JBQW9CLENBQUMsQ0FBQztJQUVoRixJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDakIsTUFBTSxJQUFJLGtCQUFrQixDQUFDLElBQUEsK0JBQWlCLEVBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7S0FDckU7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBbENELDhDQWtDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7RmlsZVN5c3RlbSwgV29ya3NwYWNlUGF0aH0gZnJvbSAnLi4vZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtGaWxlU3lzdGVtSG9zdH0gZnJvbSAnLi92aXJ0dWFsLWhvc3QnO1xuaW1wb3J0IHtkaXJuYW1lfSBmcm9tICdwYXRoJztcbmltcG9ydCB7Zm9ybWF0RGlhZ25vc3RpY3N9IGZyb20gJy4vZGlhZ25vc3RpY3MnO1xuXG4vKiogQ29kZSBvZiB0aGUgZXJyb3IgcmFpc2VkIGJ5IFR5cGVTY3JpcHQgd2hlbiBhIHRzY29uZmlnIGRvZXNuJ3QgbWF0Y2ggYW55IGZpbGVzLiAqL1xuY29uc3QgTk9fSU5QVVRTX0VSUk9SX0NPREUgPSAxODAwMztcblxuLyoqIENsYXNzIGNhcHR1cmluZyBhIHRzY29uZmlnIHBhcnNlIGVycm9yLiAqL1xuZXhwb3J0IGNsYXNzIFRzY29uZmlnUGFyc2VFcnJvciBleHRlbmRzIEVycm9yIHt9XG5cbi8qKlxuICogQXR0ZW1wdHMgdG8gcGFyc2UgdGhlIHNwZWNpZmllZCB0c2NvbmZpZyBmaWxlLlxuICpcbiAqIEB0aHJvd3Mge1RzY29uZmlnUGFyc2VFcnJvcn0gSWYgdGhlIHRzY29uZmlnIGNvdWxkIG5vdCBiZSByZWFkIG9yIHBhcnNlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlVHNjb25maWdGaWxlKFxuICB0c2NvbmZpZ1BhdGg6IFdvcmtzcGFjZVBhdGgsXG4gIGZpbGVTeXN0ZW06IEZpbGVTeXN0ZW0sXG4pOiB0cy5QYXJzZWRDb21tYW5kTGluZSB7XG4gIGlmICghZmlsZVN5c3RlbS5maWxlRXhpc3RzKHRzY29uZmlnUGF0aCkpIHtcbiAgICB0aHJvdyBuZXcgVHNjb25maWdQYXJzZUVycm9yKGBUc2NvbmZpZyBjYW5ub3Qgbm90IGJlIHJlYWQ6ICR7dHNjb25maWdQYXRofWApO1xuICB9XG5cbiAgY29uc3Qge2NvbmZpZywgZXJyb3J9ID0gdHMucmVhZENvbmZpZ0ZpbGUoXG4gICAgdHNjb25maWdQYXRoLFxuICAgIHAgPT4gZmlsZVN5c3RlbS5yZWFkKGZpbGVTeXN0ZW0ucmVzb2x2ZShwKSkhLFxuICApO1xuXG4gIC8vIElmIHRoZXJlIGlzIGEgY29uZmlnIHJlYWRpbmcgZXJyb3IsIHdlIG5ldmVyIGF0dGVtcHQgdG8gcGFyc2UgdGhlIGNvbmZpZy5cbiAgaWYgKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IFRzY29uZmlnUGFyc2VFcnJvcihmb3JtYXREaWFnbm9zdGljcyhbZXJyb3JdLCBmaWxlU3lzdGVtKSk7XG4gIH1cblxuICBjb25zdCBwYXJzZWQgPSB0cy5wYXJzZUpzb25Db25maWdGaWxlQ29udGVudChcbiAgICBjb25maWcsXG4gICAgbmV3IEZpbGVTeXN0ZW1Ib3N0KGZpbGVTeXN0ZW0pLFxuICAgIGRpcm5hbWUodHNjb25maWdQYXRoKSxcbiAgICB7fSxcbiAgKTtcblxuICAvLyBTa2lwIHRoZSBcIk5vIGlucHV0cyBmb3VuZC4uLlwiIGVycm9yIHNpbmNlIHdlIGRvbid0IHdhbnQgdG8gaW50ZXJydXB0IHRoZSBtaWdyYXRpb24gaWYgYVxuICAvLyB0c2NvbmZpZyBkb2Vzbid0IG1hdGNoIGEgZmlsZS4gVGhpcyB3aWxsIHJlc3VsdCBpbiBhbiBlbXB0eSBgUHJvZ3JhbWAgd2hpY2ggaXMgc3RpbGwgdmFsaWQuXG4gIGNvbnN0IGVycm9ycyA9IHBhcnNlZC5lcnJvcnMuZmlsdGVyKGRpYWcgPT4gZGlhZy5jb2RlICE9PSBOT19JTlBVVFNfRVJST1JfQ09ERSk7XG5cbiAgaWYgKGVycm9ycy5sZW5ndGgpIHtcbiAgICB0aHJvdyBuZXcgVHNjb25maWdQYXJzZUVycm9yKGZvcm1hdERpYWdub3N0aWNzKGVycm9ycywgZmlsZVN5c3RlbSkpO1xuICB9XG5cbiAgcmV0dXJuIHBhcnNlZDtcbn1cbiJdfQ==
@@ -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 * as ts from 'typescript';
9
+ /** Type that describes a property name with an obtainable text. */
10
+ type PropertyNameWithText = Exclude<ts.PropertyName, ts.ComputedPropertyName>;
11
+ /**
12
+ * Gets the text of the given property name. Returns null if the property
13
+ * name couldn't be determined statically.
14
+ */
15
+ export declare function getPropertyNameText(node: ts.PropertyName): string | null;
16
+ /** Checks whether the given property name has a text. */
17
+ export declare function hasPropertyNameText(node: ts.PropertyName): node is PropertyNameWithText;
18
+ export {};
@@ -0,0 +1,28 @@
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
+ exports.hasPropertyNameText = exports.getPropertyNameText = void 0;
11
+ const ts = require("typescript");
12
+ /**
13
+ * Gets the text of the given property name. Returns null if the property
14
+ * name couldn't be determined statically.
15
+ */
16
+ function getPropertyNameText(node) {
17
+ if (ts.isIdentifier(node) || ts.isStringLiteralLike(node)) {
18
+ return node.text;
19
+ }
20
+ return null;
21
+ }
22
+ exports.getPropertyNameText = getPropertyNameText;
23
+ /** Checks whether the given property name has a text. */
24
+ function hasPropertyNameText(node) {
25
+ return ts.isStringLiteral(node) || ts.isNumericLiteral(node) || ts.isIdentifier(node);
26
+ }
27
+ exports.hasPropertyNameText = hasPropertyNameText;
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktbmFtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy91cGRhdGUtdG9vbC91dGlscy9wcm9wZXJ0eS1uYW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQUtqQzs7O0dBR0c7QUFDSCxTQUFnQixtQkFBbUIsQ0FBQyxJQUFxQjtJQUN2RCxJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3pELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztLQUNsQjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUxELGtEQUtDO0FBRUQseURBQXlEO0FBQ3pELFNBQWdCLG1CQUFtQixDQUFDLElBQXFCO0lBQ3ZELE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN4RixDQUFDO0FBRkQsa0RBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbi8qKiBUeXBlIHRoYXQgZGVzY3JpYmVzIGEgcHJvcGVydHkgbmFtZSB3aXRoIGFuIG9idGFpbmFibGUgdGV4dC4gKi9cbnR5cGUgUHJvcGVydHlOYW1lV2l0aFRleHQgPSBFeGNsdWRlPHRzLlByb3BlcnR5TmFtZSwgdHMuQ29tcHV0ZWRQcm9wZXJ0eU5hbWU+O1xuXG4vKipcbiAqIEdldHMgdGhlIHRleHQgb2YgdGhlIGdpdmVuIHByb3BlcnR5IG5hbWUuIFJldHVybnMgbnVsbCBpZiB0aGUgcHJvcGVydHlcbiAqIG5hbWUgY291bGRuJ3QgYmUgZGV0ZXJtaW5lZCBzdGF0aWNhbGx5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHJvcGVydHlOYW1lVGV4dChub2RlOiB0cy5Qcm9wZXJ0eU5hbWUpOiBzdHJpbmcgfCBudWxsIHtcbiAgaWYgKHRzLmlzSWRlbnRpZmllcihub2RlKSB8fCB0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKG5vZGUpKSB7XG4gICAgcmV0dXJuIG5vZGUudGV4dDtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBwcm9wZXJ0eSBuYW1lIGhhcyBhIHRleHQuICovXG5leHBvcnQgZnVuY3Rpb24gaGFzUHJvcGVydHlOYW1lVGV4dChub2RlOiB0cy5Qcm9wZXJ0eU5hbWUpOiBub2RlIGlzIFByb3BlcnR5TmFtZVdpdGhUZXh0IHtcbiAgcmV0dXJuIHRzLmlzU3RyaW5nTGl0ZXJhbChub2RlKSB8fCB0cy5pc051bWVyaWNMaXRlcmFsKG5vZGUpIHx8IHRzLmlzSWRlbnRpZmllcihub2RlKTtcbn1cbiJdfQ==
@@ -0,0 +1,36 @@
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 { FileSystem } from '../file-system';
10
+ declare module 'typescript' {
11
+ interface FileSystemEntries {
12
+ readonly files: readonly string[];
13
+ readonly directories: readonly string[];
14
+ }
15
+ const matchFiles: undefined | ((path: string, extensions: readonly string[] | undefined, excludes: readonly string[] | undefined, includes: readonly string[] | undefined, useCaseSensitiveFileNames: boolean, currentDirectory: string, depth: number | undefined, getFileSystemEntries: (path: string) => FileSystemEntries, realpath: (path: string) => string, directoryExists: (path: string) => boolean) => string[]);
16
+ }
17
+ /**
18
+ * Implementation of a TypeScript parse config host that relies fully on
19
+ * a given virtual file system.
20
+ */
21
+ export declare class FileSystemHost implements ts.ParseConfigHost {
22
+ private _fileSystem;
23
+ useCaseSensitiveFileNames: boolean;
24
+ constructor(_fileSystem: FileSystem);
25
+ fileExists(path: string): boolean;
26
+ readFile(path: string): string | undefined;
27
+ readDirectory(rootDir: string, extensions: string[], excludes: string[] | undefined, includes: string[], depth?: number): string[];
28
+ private _getFileSystemEntries;
29
+ }
30
+ /**
31
+ * Creates a TypeScript compiler host that fully relies fully on the given
32
+ * virtual file system. i.e. no interactions with the working directory.
33
+ */
34
+ export declare function createFileSystemCompilerHost(options: ts.CompilerOptions, fileSystem: FileSystem): ts.CompilerHost;
35
+ /** Creates a format diagnostic host that works with the given file system. */
36
+ export declare function createFormatDiagnosticHost(fileSystem: FileSystem): ts.FormatDiagnosticsHost;
@@ -0,0 +1,72 @@
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
+ exports.createFormatDiagnosticHost = exports.createFileSystemCompilerHost = exports.FileSystemHost = void 0;
11
+ const ts = require("typescript");
12
+ /**
13
+ * Implementation of a TypeScript parse config host that relies fully on
14
+ * a given virtual file system.
15
+ */
16
+ class FileSystemHost {
17
+ _fileSystem;
18
+ useCaseSensitiveFileNames = ts.sys.useCaseSensitiveFileNames;
19
+ constructor(_fileSystem) {
20
+ this._fileSystem = _fileSystem;
21
+ }
22
+ fileExists(path) {
23
+ return this._fileSystem.fileExists(this._fileSystem.resolve(path));
24
+ }
25
+ readFile(path) {
26
+ const content = this._fileSystem.read(this._fileSystem.resolve(path));
27
+ if (content === null) {
28
+ return undefined;
29
+ }
30
+ // Strip BOM as otherwise TSC methods (e.g. "getWidth") will return an offset which
31
+ // which breaks the CLI UpdateRecorder. https://github.com/angular/angular/pull/30719
32
+ return content.replace(/^\uFEFF/, '');
33
+ }
34
+ readDirectory(rootDir, extensions, excludes, includes, depth) {
35
+ if (ts.matchFiles === undefined) {
36
+ throw Error('Unable to read directory in virtual file system host. This means that ' +
37
+ 'TypeScript changed its file matching internals.\n\nPlease consider downgrading your ' +
38
+ 'TypeScript version, and report an issue in the Angular Components repository.');
39
+ }
40
+ return ts.matchFiles(rootDir, extensions, extensions, includes, this.useCaseSensitiveFileNames, '/', depth, p => this._getFileSystemEntries(p), p => this._fileSystem.resolve(p), p => this._fileSystem.directoryExists(this._fileSystem.resolve(p)));
41
+ }
42
+ _getFileSystemEntries(path) {
43
+ return this._fileSystem.readDirectory(this._fileSystem.resolve(path));
44
+ }
45
+ }
46
+ exports.FileSystemHost = FileSystemHost;
47
+ /**
48
+ * Creates a TypeScript compiler host that fully relies fully on the given
49
+ * virtual file system. i.e. no interactions with the working directory.
50
+ */
51
+ function createFileSystemCompilerHost(options, fileSystem) {
52
+ const host = ts.createCompilerHost(options, true);
53
+ const virtualHost = new FileSystemHost(fileSystem);
54
+ host.readFile = virtualHost.readFile.bind(virtualHost);
55
+ host.readDirectory = virtualHost.readDirectory.bind(virtualHost);
56
+ host.fileExists = virtualHost.fileExists.bind(virtualHost);
57
+ host.directoryExists = dirPath => fileSystem.directoryExists(fileSystem.resolve(dirPath));
58
+ host.getCurrentDirectory = () => '/';
59
+ host.getCanonicalFileName = p => fileSystem.resolve(p);
60
+ return host;
61
+ }
62
+ exports.createFileSystemCompilerHost = createFileSystemCompilerHost;
63
+ /** Creates a format diagnostic host that works with the given file system. */
64
+ function createFormatDiagnosticHost(fileSystem) {
65
+ return {
66
+ getCanonicalFileName: p => fileSystem.resolve(p),
67
+ getCurrentDirectory: () => '/',
68
+ getNewLine: () => '\n',
69
+ };
70
+ }
71
+ exports.createFormatDiagnosticHost = createFormatDiagnosticHost;
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlydHVhbC1ob3N0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3VwZGF0ZS10b29sL3V0aWxzL3ZpcnR1YWwtaG9zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUFnQ2pDOzs7R0FHRztBQUNILE1BQWEsY0FBYztJQUdMO0lBRnBCLHlCQUF5QixHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUM7SUFFN0QsWUFBb0IsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7SUFBRyxDQUFDO0lBRS9DLFVBQVUsQ0FBQyxJQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVk7UUFDbkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN0RSxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7WUFDcEIsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxtRkFBbUY7UUFDbkYscUZBQXFGO1FBQ3JGLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELGFBQWEsQ0FDWCxPQUFlLEVBQ2YsVUFBb0IsRUFDcEIsUUFBOEIsRUFDOUIsUUFBa0IsRUFDbEIsS0FBYztRQUVkLElBQUksRUFBRSxDQUFDLFVBQVUsS0FBSyxTQUFTLEVBQUU7WUFDL0IsTUFBTSxLQUFLLENBQ1Qsd0VBQXdFO2dCQUN0RSxzRkFBc0Y7Z0JBQ3RGLCtFQUErRSxDQUNsRixDQUFDO1NBQ0g7UUFDRCxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQ2xCLE9BQU8sRUFDUCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFFBQVEsRUFDUixJQUFJLENBQUMseUJBQXlCLEVBQzlCLEdBQUcsRUFDSCxLQUFLLEVBQ0wsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLEVBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQ2hDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDbkUsQ0FBQztJQUNKLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxJQUFZO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDO0NBQ0Y7QUFsREQsd0NBa0RDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsNEJBQTRCLENBQzFDLE9BQTJCLEVBQzNCLFVBQXNCO0lBRXRCLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFbkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN2RCxJQUFJLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2pFLElBQUksQ0FBQyxVQUFVLEdBQUcsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDM0QsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzFGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUM7SUFDckMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUV2RCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFmRCxvRUFlQztBQUVELDhFQUE4RTtBQUM5RSxTQUFnQiwwQkFBMEIsQ0FBQyxVQUFzQjtJQUMvRCxPQUFPO1FBQ0wsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNoRCxtQkFBbUIsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHO1FBQzlCLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJO0tBQ3ZCLENBQUM7QUFDSixDQUFDO0FBTkQsZ0VBTUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQge0ZpbGVTeXN0ZW19IGZyb20gJy4uL2ZpbGUtc3lzdGVtJztcblxuLy8gV2UgdXNlIFR5cGVTY3JpcHQncyBuYXRpdmUgYHRzLm1hdGNoRmlsZXNgIHV0aWxpdHkgZm9yIHRoZSB2aXJ0dWFsIGZpbGUgc3lzdGVtXG4vLyBob3N0cywgYXMgdGhhdCBmdW5jdGlvbiBpbXBsZW1lbnRzIGNvbXBsZXggbG9naWMgZm9yIG1hdGNoaW5nIGZpbGVzIHdpdGggcmVzcGVjdFxuLy8gdG8gcm9vdCBkaXJlY3RvcnksIGV4dGVuc2lvbnMsIGV4Y2x1ZGVzLCBpbmNsdWRlcyBldGMuIFRoZSBmdW5jdGlvbiBpcyBjdXJyZW50bHlcbi8vIGludGVybmFsIGJ1dCB3ZSBjYW4gdXNlIGl0IGFzIHRoZSBBUEkgbW9zdCBsaWtlbHkgd2lsbCBub3QgY2hhbmdlIGFueSB0aW1lIHNvb24sXG4vLyBub3IgZG9lcyBpdCBzZWVtIGxpa2UgdGhpcyBpcyBiZWluZyBtYWRlIHB1YmxpYyBhbnkgdGltZSBzb29uLlxuLy8gUmVsYXRlZCBpc3N1ZSBmb3IgdHJhY2tpbmc6IGh0dHBzOi8vZ2l0aHViLmNvbS9taWNyb3NvZnQvVHlwZVNjcmlwdC9pc3N1ZXMvMTM3OTMuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vbWljcm9zb2Z0L1R5cGVTY3JpcHQvYmxvYi9iMzk3ZDFmZDRhYmQwZWRlZjg1YWRmMGFmZDkxYzAzMGJiMGI0OTU1L3NyYy9jb21waWxlci91dGlsaXRpZXMudHMjTDYxOTJcbmRlY2xhcmUgbW9kdWxlICd0eXBlc2NyaXB0JyB7XG4gIGV4cG9ydCBpbnRlcmZhY2UgRmlsZVN5c3RlbUVudHJpZXMge1xuICAgIHJlYWRvbmx5IGZpbGVzOiByZWFkb25seSBzdHJpbmdbXTtcbiAgICByZWFkb25seSBkaXJlY3RvcmllczogcmVhZG9ubHkgc3RyaW5nW107XG4gIH1cblxuICBleHBvcnQgY29uc3QgbWF0Y2hGaWxlczpcbiAgICB8IHVuZGVmaW5lZFxuICAgIHwgKChcbiAgICAgICAgcGF0aDogc3RyaW5nLFxuICAgICAgICBleHRlbnNpb25zOiByZWFkb25seSBzdHJpbmdbXSB8IHVuZGVmaW5lZCxcbiAgICAgICAgZXhjbHVkZXM6IHJlYWRvbmx5IHN0cmluZ1tdIHwgdW5kZWZpbmVkLFxuICAgICAgICBpbmNsdWRlczogcmVhZG9ubHkgc3RyaW5nW10gfCB1bmRlZmluZWQsXG4gICAgICAgIHVzZUNhc2VTZW5zaXRpdmVGaWxlTmFtZXM6IGJvb2xlYW4sXG4gICAgICAgIGN1cnJlbnREaXJlY3Rvcnk6IHN0cmluZyxcbiAgICAgICAgZGVwdGg6IG51bWJlciB8IHVuZGVmaW5lZCxcbiAgICAgICAgZ2V0RmlsZVN5c3RlbUVudHJpZXM6IChwYXRoOiBzdHJpbmcpID0+IEZpbGVTeXN0ZW1FbnRyaWVzLFxuICAgICAgICByZWFscGF0aDogKHBhdGg6IHN0cmluZykgPT4gc3RyaW5nLFxuICAgICAgICBkaXJlY3RvcnlFeGlzdHM6IChwYXRoOiBzdHJpbmcpID0+IGJvb2xlYW4sXG4gICAgICApID0+IHN0cmluZ1tdKTtcbn1cblxuLyoqXG4gKiBJbXBsZW1lbnRhdGlvbiBvZiBhIFR5cGVTY3JpcHQgcGFyc2UgY29uZmlnIGhvc3QgdGhhdCByZWxpZXMgZnVsbHkgb25cbiAqIGEgZ2l2ZW4gdmlydHVhbCBmaWxlIHN5c3RlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIEZpbGVTeXN0ZW1Ib3N0IGltcGxlbWVudHMgdHMuUGFyc2VDb25maWdIb3N0IHtcbiAgdXNlQ2FzZVNlbnNpdGl2ZUZpbGVOYW1lcyA9IHRzLnN5cy51c2VDYXNlU2Vuc2l0aXZlRmlsZU5hbWVzO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2ZpbGVTeXN0ZW06IEZpbGVTeXN0ZW0pIHt9XG5cbiAgZmlsZUV4aXN0cyhwYXRoOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZmlsZVN5c3RlbS5maWxlRXhpc3RzKHRoaXMuX2ZpbGVTeXN0ZW0ucmVzb2x2ZShwYXRoKSk7XG4gIH1cblxuICByZWFkRmlsZShwYXRoOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9maWxlU3lzdGVtLnJlYWQodGhpcy5fZmlsZVN5c3RlbS5yZXNvbHZlKHBhdGgpKTtcbiAgICBpZiAoY29udGVudCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgLy8gU3RyaXAgQk9NIGFzIG90aGVyd2lzZSBUU0MgbWV0aG9kcyAoZS5nLiBcImdldFdpZHRoXCIpIHdpbGwgcmV0dXJuIGFuIG9mZnNldCB3aGljaFxuICAgIC8vIHdoaWNoIGJyZWFrcyB0aGUgQ0xJIFVwZGF0ZVJlY29yZGVyLiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL3B1bGwvMzA3MTlcbiAgICByZXR1cm4gY29udGVudC5yZXBsYWNlKC9eXFx1RkVGRi8sICcnKTtcbiAgfVxuXG4gIHJlYWREaXJlY3RvcnkoXG4gICAgcm9vdERpcjogc3RyaW5nLFxuICAgIGV4dGVuc2lvbnM6IHN0cmluZ1tdLFxuICAgIGV4Y2x1ZGVzOiBzdHJpbmdbXSB8IHVuZGVmaW5lZCxcbiAgICBpbmNsdWRlczogc3RyaW5nW10sXG4gICAgZGVwdGg/OiBudW1iZXIsXG4gICk6IHN0cmluZ1tdIHtcbiAgICBpZiAodHMubWF0Y2hGaWxlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBFcnJvcihcbiAgICAgICAgJ1VuYWJsZSB0byByZWFkIGRpcmVjdG9yeSBpbiB2aXJ0dWFsIGZpbGUgc3lzdGVtIGhvc3QuIFRoaXMgbWVhbnMgdGhhdCAnICtcbiAgICAgICAgICAnVHlwZVNjcmlwdCBjaGFuZ2VkIGl0cyBmaWxlIG1hdGNoaW5nIGludGVybmFscy5cXG5cXG5QbGVhc2UgY29uc2lkZXIgZG93bmdyYWRpbmcgeW91ciAnICtcbiAgICAgICAgICAnVHlwZVNjcmlwdCB2ZXJzaW9uLCBhbmQgcmVwb3J0IGFuIGlzc3VlIGluIHRoZSBBbmd1bGFyIENvbXBvbmVudHMgcmVwb3NpdG9yeS4nLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRzLm1hdGNoRmlsZXMoXG4gICAgICByb290RGlyLFxuICAgICAgZXh0ZW5zaW9ucyxcbiAgICAgIGV4dGVuc2lvbnMsXG4gICAgICBpbmNsdWRlcyxcbiAgICAgIHRoaXMudXNlQ2FzZVNlbnNpdGl2ZUZpbGVOYW1lcyxcbiAgICAgICcvJyxcbiAgICAgIGRlcHRoLFxuICAgICAgcCA9PiB0aGlzLl9nZXRGaWxlU3lzdGVtRW50cmllcyhwKSxcbiAgICAgIHAgPT4gdGhpcy5fZmlsZVN5c3RlbS5yZXNvbHZlKHApLFxuICAgICAgcCA9PiB0aGlzLl9maWxlU3lzdGVtLmRpcmVjdG9yeUV4aXN0cyh0aGlzLl9maWxlU3lzdGVtLnJlc29sdmUocCkpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRGaWxlU3lzdGVtRW50cmllcyhwYXRoOiBzdHJpbmcpOiB0cy5GaWxlU3lzdGVtRW50cmllcyB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbGVTeXN0ZW0ucmVhZERpcmVjdG9yeSh0aGlzLl9maWxlU3lzdGVtLnJlc29sdmUocGF0aCkpO1xuICB9XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIFR5cGVTY3JpcHQgY29tcGlsZXIgaG9zdCB0aGF0IGZ1bGx5IHJlbGllcyBmdWxseSBvbiB0aGUgZ2l2ZW5cbiAqIHZpcnR1YWwgZmlsZSBzeXN0ZW0uIGkuZS4gbm8gaW50ZXJhY3Rpb25zIHdpdGggdGhlIHdvcmtpbmcgZGlyZWN0b3J5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRmlsZVN5c3RlbUNvbXBpbGVySG9zdChcbiAgb3B0aW9uczogdHMuQ29tcGlsZXJPcHRpb25zLFxuICBmaWxlU3lzdGVtOiBGaWxlU3lzdGVtLFxuKTogdHMuQ29tcGlsZXJIb3N0IHtcbiAgY29uc3QgaG9zdCA9IHRzLmNyZWF0ZUNvbXBpbGVySG9zdChvcHRpb25zLCB0cnVlKTtcbiAgY29uc3QgdmlydHVhbEhvc3QgPSBuZXcgRmlsZVN5c3RlbUhvc3QoZmlsZVN5c3RlbSk7XG5cbiAgaG9zdC5yZWFkRmlsZSA9IHZpcnR1YWxIb3N0LnJlYWRGaWxlLmJpbmQodmlydHVhbEhvc3QpO1xuICBob3N0LnJlYWREaXJlY3RvcnkgPSB2aXJ0dWFsSG9zdC5yZWFkRGlyZWN0b3J5LmJpbmQodmlydHVhbEhvc3QpO1xuICBob3N0LmZpbGVFeGlzdHMgPSB2aXJ0dWFsSG9zdC5maWxlRXhpc3RzLmJpbmQodmlydHVhbEhvc3QpO1xuICBob3N0LmRpcmVjdG9yeUV4aXN0cyA9IGRpclBhdGggPT4gZmlsZVN5c3RlbS5kaXJlY3RvcnlFeGlzdHMoZmlsZVN5c3RlbS5yZXNvbHZlKGRpclBhdGgpKTtcbiAgaG9zdC5nZXRDdXJyZW50RGlyZWN0b3J5ID0gKCkgPT4gJy8nO1xuICBob3N0LmdldENhbm9uaWNhbEZpbGVOYW1lID0gcCA9PiBmaWxlU3lzdGVtLnJlc29sdmUocCk7XG5cbiAgcmV0dXJuIGhvc3Q7XG59XG5cbi8qKiBDcmVhdGVzIGEgZm9ybWF0IGRpYWdub3N0aWMgaG9zdCB0aGF0IHdvcmtzIHdpdGggdGhlIGdpdmVuIGZpbGUgc3lzdGVtLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZvcm1hdERpYWdub3N0aWNIb3N0KGZpbGVTeXN0ZW06IEZpbGVTeXN0ZW0pOiB0cy5Gb3JtYXREaWFnbm9zdGljc0hvc3Qge1xuICByZXR1cm4ge1xuICAgIGdldENhbm9uaWNhbEZpbGVOYW1lOiBwID0+IGZpbGVTeXN0ZW0ucmVzb2x2ZShwKSxcbiAgICBnZXRDdXJyZW50RGlyZWN0b3J5OiAoKSA9PiAnLycsXG4gICAgZ2V0TmV3TGluZTogKCkgPT4gJ1xcbicsXG4gIH07XG59XG4iXX0=
@@ -0,0 +1,32 @@
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 { TargetVersion } from './target-version';
9
+ export type VersionChanges<T> = {
10
+ [target in TargetVersion]?: ReadableChange<T>[];
11
+ };
12
+ export type ReadableChange<T> = {
13
+ pr: string;
14
+ changes: T[];
15
+ };
16
+ /** Conditional type that unwraps the value of a version changes type. */
17
+ export type ValueOfChanges<T> = T extends VersionChanges<infer X> ? X : null;
18
+ /**
19
+ * Gets the changes for a given target version from the specified version changes object.
20
+ *
21
+ * For readability and a good overview of breaking changes, the version change data always
22
+ * includes the related Pull Request link. Since this data is not needed when performing the
23
+ * upgrade, this unused data can be removed and the changes data can be flattened into an
24
+ * easy iterable array.
25
+ */
26
+ export declare function getChangesForTarget<T>(target: TargetVersion, data: VersionChanges<T>): T[];
27
+ /**
28
+ * Gets all changes from the specified version changes object. This is helpful in case a migration
29
+ * rule does not distinguish data based on the target version, but for readability the
30
+ * upgrade data is separated for each target version.
31
+ */
32
+ export declare function getAllChanges<T>(data: VersionChanges<T>): T[];
@@ -0,0 +1,39 @@
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
+ exports.getAllChanges = exports.getChangesForTarget = void 0;
11
+ const target_version_1 = require("./target-version");
12
+ /**
13
+ * Gets the changes for a given target version from the specified version changes object.
14
+ *
15
+ * For readability and a good overview of breaking changes, the version change data always
16
+ * includes the related Pull Request link. Since this data is not needed when performing the
17
+ * upgrade, this unused data can be removed and the changes data can be flattened into an
18
+ * easy iterable array.
19
+ */
20
+ function getChangesForTarget(target, data) {
21
+ if (!data) {
22
+ const version = target_version_1.TargetVersion[target];
23
+ throw new Error(`No data could be found for target version: ${version}`);
24
+ }
25
+ return (data[target] || []).reduce((result, prData) => result.concat(prData.changes), []);
26
+ }
27
+ exports.getChangesForTarget = getChangesForTarget;
28
+ /**
29
+ * Gets all changes from the specified version changes object. This is helpful in case a migration
30
+ * rule does not distinguish data based on the target version, but for readability the
31
+ * upgrade data is separated for each target version.
32
+ */
33
+ function getAllChanges(data) {
34
+ return Object.keys(data)
35
+ .map(targetVersion => getChangesForTarget(targetVersion, data))
36
+ .reduce((result, versionData) => result.concat(versionData), []);
37
+ }
38
+ exports.getAllChanges = getAllChanges;
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi1jaGFuZ2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3VwZGF0ZS10b29sL3ZlcnNpb24tY2hhbmdlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxxREFBK0M7QUFjL0M7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLG1CQUFtQixDQUFJLE1BQXFCLEVBQUUsSUFBdUI7SUFDbkYsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNULE1BQU0sT0FBTyxHQUFJLDhCQUF3QyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLE9BQU8sRUFBRSxDQUFDLENBQUM7S0FDMUU7SUFFRCxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQVMsQ0FBQyxDQUFDO0FBQ25HLENBQUM7QUFQRCxrREFPQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixhQUFhLENBQUksSUFBdUI7SUFDdEQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztTQUNyQixHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxhQUE4QixFQUFFLElBQUksQ0FBQyxDQUFDO1NBQy9FLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDckUsQ0FBQztBQUpELHNDQUlDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7VGFyZ2V0VmVyc2lvbn0gZnJvbSAnLi90YXJnZXQtdmVyc2lvbic7XG5cbmV4cG9ydCB0eXBlIFZlcnNpb25DaGFuZ2VzPFQ+ID0ge1xuICBbdGFyZ2V0IGluIFRhcmdldFZlcnNpb25dPzogUmVhZGFibGVDaGFuZ2U8VD5bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFJlYWRhYmxlQ2hhbmdlPFQ+ID0ge1xuICBwcjogc3RyaW5nO1xuICBjaGFuZ2VzOiBUW107XG59O1xuXG4vKiogQ29uZGl0aW9uYWwgdHlwZSB0aGF0IHVud3JhcHMgdGhlIHZhbHVlIG9mIGEgdmVyc2lvbiBjaGFuZ2VzIHR5cGUuICovXG5leHBvcnQgdHlwZSBWYWx1ZU9mQ2hhbmdlczxUPiA9IFQgZXh0ZW5kcyBWZXJzaW9uQ2hhbmdlczxpbmZlciBYPiA/IFggOiBudWxsO1xuXG4vKipcbiAqIEdldHMgdGhlIGNoYW5nZXMgZm9yIGEgZ2l2ZW4gdGFyZ2V0IHZlcnNpb24gZnJvbSB0aGUgc3BlY2lmaWVkIHZlcnNpb24gY2hhbmdlcyBvYmplY3QuXG4gKlxuICogRm9yIHJlYWRhYmlsaXR5IGFuZCBhIGdvb2Qgb3ZlcnZpZXcgb2YgYnJlYWtpbmcgY2hhbmdlcywgdGhlIHZlcnNpb24gY2hhbmdlIGRhdGEgYWx3YXlzXG4gKiBpbmNsdWRlcyB0aGUgcmVsYXRlZCBQdWxsIFJlcXVlc3QgbGluay4gU2luY2UgdGhpcyBkYXRhIGlzIG5vdCBuZWVkZWQgd2hlbiBwZXJmb3JtaW5nIHRoZVxuICogdXBncmFkZSwgdGhpcyB1bnVzZWQgZGF0YSBjYW4gYmUgcmVtb3ZlZCBhbmQgdGhlIGNoYW5nZXMgZGF0YSBjYW4gYmUgZmxhdHRlbmVkIGludG8gYW5cbiAqIGVhc3kgaXRlcmFibGUgYXJyYXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDaGFuZ2VzRm9yVGFyZ2V0PFQ+KHRhcmdldDogVGFyZ2V0VmVyc2lvbiwgZGF0YTogVmVyc2lvbkNoYW5nZXM8VD4pOiBUW10ge1xuICBpZiAoIWRhdGEpIHtcbiAgICBjb25zdCB2ZXJzaW9uID0gKFRhcmdldFZlcnNpb24gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPilbdGFyZ2V0XTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGRhdGEgY291bGQgYmUgZm91bmQgZm9yIHRhcmdldCB2ZXJzaW9uOiAke3ZlcnNpb259YCk7XG4gIH1cblxuICByZXR1cm4gKGRhdGFbdGFyZ2V0XSB8fCBbXSkucmVkdWNlKChyZXN1bHQsIHByRGF0YSkgPT4gcmVzdWx0LmNvbmNhdChwckRhdGEuY2hhbmdlcyksIFtdIGFzIFRbXSk7XG59XG5cbi8qKlxuICogR2V0cyBhbGwgY2hhbmdlcyBmcm9tIHRoZSBzcGVjaWZpZWQgdmVyc2lvbiBjaGFuZ2VzIG9iamVjdC4gVGhpcyBpcyBoZWxwZnVsIGluIGNhc2UgYSBtaWdyYXRpb25cbiAqIHJ1bGUgZG9lcyBub3QgZGlzdGluZ3Vpc2ggZGF0YSBiYXNlZCBvbiB0aGUgdGFyZ2V0IHZlcnNpb24sIGJ1dCBmb3IgcmVhZGFiaWxpdHkgdGhlXG4gKiB1cGdyYWRlIGRhdGEgaXMgc2VwYXJhdGVkIGZvciBlYWNoIHRhcmdldCB2ZXJzaW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWxsQ2hhbmdlczxUPihkYXRhOiBWZXJzaW9uQ2hhbmdlczxUPik6IFRbXSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhkYXRhKVxuICAgIC5tYXAodGFyZ2V0VmVyc2lvbiA9PiBnZXRDaGFuZ2VzRm9yVGFyZ2V0KHRhcmdldFZlcnNpb24gYXMgVGFyZ2V0VmVyc2lvbiwgZGF0YSkpXG4gICAgLnJlZHVjZSgocmVzdWx0LCB2ZXJzaW9uRGF0YSkgPT4gcmVzdWx0LmNvbmNhdCh2ZXJzaW9uRGF0YSksIFtdKTtcbn1cbiJdfQ==
@@ -0,0 +1,12 @@
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 { Tree } from '@angular-devkit/schematics';
9
+ /**
10
+ * Whether the Angular module in the given path imports the specified module class name.
11
+ */
12
+ export declare function hasNgModuleImport(tree: Tree, modulePath: string, className: string): boolean;
@@ -0,0 +1,83 @@
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
+ exports.hasNgModuleImport = void 0;
11
+ const schematics_1 = require("@angular-devkit/schematics");
12
+ const ts = require("typescript");
13
+ /**
14
+ * Whether the Angular module in the given path imports the specified module class name.
15
+ */
16
+ function hasNgModuleImport(tree, modulePath, className) {
17
+ const moduleFileContent = tree.read(modulePath);
18
+ if (!moduleFileContent) {
19
+ throw new schematics_1.SchematicsException(`Could not read Angular module file: ${modulePath}`);
20
+ }
21
+ const parsedFile = ts.createSourceFile(modulePath, moduleFileContent.toString(), ts.ScriptTarget.Latest, true);
22
+ const ngModuleMetadata = findNgModuleMetadata(parsedFile);
23
+ if (!ngModuleMetadata) {
24
+ throw new schematics_1.SchematicsException(`Could not find NgModule declaration inside: "${modulePath}"`);
25
+ }
26
+ for (let property of ngModuleMetadata.properties) {
27
+ if (!ts.isPropertyAssignment(property) ||
28
+ property.name.getText() !== 'imports' ||
29
+ !ts.isArrayLiteralExpression(property.initializer)) {
30
+ continue;
31
+ }
32
+ if (property.initializer.elements.some(element => element.getText() === className)) {
33
+ return true;
34
+ }
35
+ }
36
+ return false;
37
+ }
38
+ exports.hasNgModuleImport = hasNgModuleImport;
39
+ /**
40
+ * Resolves the last identifier that is part of the given expression. This helps resolving
41
+ * identifiers of nested property access expressions (e.g. myNamespace.core.NgModule).
42
+ */
43
+ function resolveIdentifierOfExpression(expression) {
44
+ if (ts.isIdentifier(expression)) {
45
+ return expression;
46
+ }
47
+ else if (ts.isPropertyAccessExpression(expression) && ts.isIdentifier(expression.name)) {
48
+ return expression.name;
49
+ }
50
+ return null;
51
+ }
52
+ /**
53
+ * Finds a NgModule declaration within the specified TypeScript node and returns the
54
+ * corresponding metadata for it. This function searches breadth first because
55
+ * NgModule's are usually not nested within other expressions or declarations.
56
+ */
57
+ function findNgModuleMetadata(rootNode) {
58
+ // Add immediate child nodes of the root node to the queue.
59
+ const nodeQueue = [...rootNode.getChildren()];
60
+ while (nodeQueue.length) {
61
+ const node = nodeQueue.shift();
62
+ if (ts.isDecorator(node) &&
63
+ ts.isCallExpression(node.expression) &&
64
+ isNgModuleCallExpression(node.expression)) {
65
+ return node.expression.arguments[0];
66
+ }
67
+ else {
68
+ nodeQueue.push(...node.getChildren());
69
+ }
70
+ }
71
+ return null;
72
+ }
73
+ /** Whether the specified call expression is referring to a NgModule definition. */
74
+ function isNgModuleCallExpression(callExpression) {
75
+ if (!callExpression.arguments.length ||
76
+ !ts.isObjectLiteralExpression(callExpression.arguments[0])) {
77
+ return false;
78
+ }
79
+ // The `NgModule` call expression name is never referring to a `PrivateIdentifier`.
80
+ const decoratorIdentifier = resolveIdentifierOfExpression(callExpression.expression);
81
+ return decoratorIdentifier ? decoratorIdentifier.text === 'NgModule' : false;
82
+ }
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctbW9kdWxlLWltcG9ydHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvdXRpbHMvYXN0L25nLW1vZHVsZS1pbXBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILDJEQUFxRTtBQUNyRSxpQ0FBaUM7QUFFakM7O0dBRUc7QUFDSCxTQUFnQixpQkFBaUIsQ0FBQyxJQUFVLEVBQUUsVUFBa0IsRUFBRSxTQUFpQjtJQUNqRixNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFaEQsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1FBQ3RCLE1BQU0sSUFBSSxnQ0FBbUIsQ0FBQyx1Q0FBdUMsVUFBVSxFQUFFLENBQUMsQ0FBQztLQUNwRjtJQUVELE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FDcEMsVUFBVSxFQUNWLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxFQUM1QixFQUFFLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFDdEIsSUFBSSxDQUNMLENBQUM7SUFDRixNQUFNLGdCQUFnQixHQUFHLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRTFELElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtRQUNyQixNQUFNLElBQUksZ0NBQW1CLENBQUMsZ0RBQWdELFVBQVUsR0FBRyxDQUFDLENBQUM7S0FDOUY7SUFFRCxLQUFLLElBQUksUUFBUSxJQUFJLGdCQUFpQixDQUFDLFVBQVUsRUFBRTtRQUNqRCxJQUNFLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQztZQUNsQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLFNBQVM7WUFDckMsQ0FBQyxFQUFFLENBQUMsd0JBQXdCLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUNsRDtZQUNBLFNBQVM7U0FDVjtRQUVELElBQUksUUFBUSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLFNBQVMsQ0FBQyxFQUFFO1lBQ2xGLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQWxDRCw4Q0FrQ0M7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLDZCQUE2QixDQUFDLFVBQXlCO0lBQzlELElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBRTtRQUMvQixPQUFPLFVBQVUsQ0FBQztLQUNuQjtTQUFNLElBQUksRUFBRSxDQUFDLDBCQUEwQixDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3hGLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQztLQUN4QjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFTLG9CQUFvQixDQUFDLFFBQWlCO0lBQzdDLDJEQUEyRDtJQUMzRCxNQUFNLFNBQVMsR0FBYyxDQUFDLEdBQUcsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFFekQsT0FBTyxTQUFTLENBQUMsTUFBTSxFQUFFO1FBQ3ZCLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUcsQ0FBQztRQUVoQyxJQUNFLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ3BCLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3BDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFDekM7WUFDQSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBK0IsQ0FBQztTQUNuRTthQUFNO1lBQ0wsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZDO0tBQ0Y7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxtRkFBbUY7QUFDbkYsU0FBUyx3QkFBd0IsQ0FBQyxjQUFpQztJQUNqRSxJQUNFLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxNQUFNO1FBQ2hDLENBQUMsRUFBRSxDQUFDLHlCQUF5QixDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDMUQ7UUFDQSxPQUFPLEtBQUssQ0FBQztLQUNkO0lBRUQsbUZBQW1GO0lBQ25GLE1BQU0sbUJBQW1CLEdBQUcsNkJBQTZCLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JGLE9BQU8sbUJBQW1CLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUMvRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7U2NoZW1hdGljc0V4Y2VwdGlvbiwgVHJlZX0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3MnO1xuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbi8qKlxuICogV2hldGhlciB0aGUgQW5ndWxhciBtb2R1bGUgaW4gdGhlIGdpdmVuIHBhdGggaW1wb3J0cyB0aGUgc3BlY2lmaWVkIG1vZHVsZSBjbGFzcyBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGFzTmdNb2R1bGVJbXBvcnQodHJlZTogVHJlZSwgbW9kdWxlUGF0aDogc3RyaW5nLCBjbGFzc05hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBjb25zdCBtb2R1bGVGaWxlQ29udGVudCA9IHRyZWUucmVhZChtb2R1bGVQYXRoKTtcblxuICBpZiAoIW1vZHVsZUZpbGVDb250ZW50KSB7XG4gICAgdGhyb3cgbmV3IFNjaGVtYXRpY3NFeGNlcHRpb24oYENvdWxkIG5vdCByZWFkIEFuZ3VsYXIgbW9kdWxlIGZpbGU6ICR7bW9kdWxlUGF0aH1gKTtcbiAgfVxuXG4gIGNvbnN0IHBhcnNlZEZpbGUgPSB0cy5jcmVhdGVTb3VyY2VGaWxlKFxuICAgIG1vZHVsZVBhdGgsXG4gICAgbW9kdWxlRmlsZUNvbnRlbnQudG9TdHJpbmcoKSxcbiAgICB0cy5TY3JpcHRUYXJnZXQuTGF0ZXN0LFxuICAgIHRydWUsXG4gICk7XG4gIGNvbnN0IG5nTW9kdWxlTWV0YWRhdGEgPSBmaW5kTmdNb2R1bGVNZXRhZGF0YShwYXJzZWRGaWxlKTtcblxuICBpZiAoIW5nTW9kdWxlTWV0YWRhdGEpIHtcbiAgICB0aHJvdyBuZXcgU2NoZW1hdGljc0V4Y2VwdGlvbihgQ291bGQgbm90IGZpbmQgTmdNb2R1bGUgZGVjbGFyYXRpb24gaW5zaWRlOiBcIiR7bW9kdWxlUGF0aH1cImApO1xuICB9XG5cbiAgZm9yIChsZXQgcHJvcGVydHkgb2YgbmdNb2R1bGVNZXRhZGF0YSEucHJvcGVydGllcykge1xuICAgIGlmIChcbiAgICAgICF0cy5pc1Byb3BlcnR5QXNzaWdubWVudChwcm9wZXJ0eSkgfHxcbiAgICAgIHByb3BlcnR5Lm5hbWUuZ2V0VGV4dCgpICE9PSAnaW1wb3J0cycgfHxcbiAgICAgICF0cy5pc0FycmF5TGl0ZXJhbEV4cHJlc3Npb24ocHJvcGVydHkuaW5pdGlhbGl6ZXIpXG4gICAgKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBpZiAocHJvcGVydHkuaW5pdGlhbGl6ZXIuZWxlbWVudHMuc29tZShlbGVtZW50ID0+IGVsZW1lbnQuZ2V0VGV4dCgpID09PSBjbGFzc05hbWUpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbi8qKlxuICogUmVzb2x2ZXMgdGhlIGxhc3QgaWRlbnRpZmllciB0aGF0IGlzIHBhcnQgb2YgdGhlIGdpdmVuIGV4cHJlc3Npb24uIFRoaXMgaGVscHMgcmVzb2x2aW5nXG4gKiBpZGVudGlmaWVycyBvZiBuZXN0ZWQgcHJvcGVydHkgYWNjZXNzIGV4cHJlc3Npb25zIChlLmcuIG15TmFtZXNwYWNlLmNvcmUuTmdNb2R1bGUpLlxuICovXG5mdW5jdGlvbiByZXNvbHZlSWRlbnRpZmllck9mRXhwcmVzc2lvbihleHByZXNzaW9uOiB0cy5FeHByZXNzaW9uKTogdHMuSWRlbnRpZmllciB8IG51bGwge1xuICBpZiAodHMuaXNJZGVudGlmaWVyKGV4cHJlc3Npb24pKSB7XG4gICAgcmV0dXJuIGV4cHJlc3Npb247XG4gIH0gZWxzZSBpZiAodHMuaXNQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24oZXhwcmVzc2lvbikgJiYgdHMuaXNJZGVudGlmaWVyKGV4cHJlc3Npb24ubmFtZSkpIHtcbiAgICByZXR1cm4gZXhwcmVzc2lvbi5uYW1lO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIEZpbmRzIGEgTmdNb2R1bGUgZGVjbGFyYXRpb24gd2l0aGluIHRoZSBzcGVjaWZpZWQgVHlwZVNjcmlwdCBub2RlIGFuZCByZXR1cm5zIHRoZVxuICogY29ycmVzcG9uZGluZyBtZXRhZGF0YSBmb3IgaXQuIFRoaXMgZnVuY3Rpb24gc2VhcmNoZXMgYnJlYWR0aCBmaXJzdCBiZWNhdXNlXG4gKiBOZ01vZHVsZSdzIGFyZSB1c3VhbGx5IG5vdCBuZXN0ZWQgd2l0aGluIG90aGVyIGV4cHJlc3Npb25zIG9yIGRlY2xhcmF0aW9ucy5cbiAqL1xuZnVuY3Rpb24gZmluZE5nTW9kdWxlTWV0YWRhdGEocm9vdE5vZGU6IHRzLk5vZGUpOiB0cy5PYmplY3RMaXRlcmFsRXhwcmVzc2lvbiB8IG51bGwge1xuICAvLyBBZGQgaW1tZWRpYXRlIGNoaWxkIG5vZGVzIG9mIHRoZSByb290IG5vZGUgdG8gdGhlIHF1ZXVlLlxuICBjb25zdCBub2RlUXVldWU6IHRzLk5vZGVbXSA9IFsuLi5yb290Tm9kZS5nZXRDaGlsZHJlbigpXTtcblxuICB3aGlsZSAobm9kZVF1ZXVlLmxlbmd0aCkge1xuICAgIGNvbnN0IG5vZGUgPSBub2RlUXVldWUuc2hpZnQoKSE7XG5cbiAgICBpZiAoXG4gICAgICB0cy5pc0RlY29yYXRvcihub2RlKSAmJlxuICAgICAgdHMuaXNDYWxsRXhwcmVzc2lvbihub2RlLmV4cHJlc3Npb24pICYmXG4gICAgICBpc05nTW9kdWxlQ2FsbEV4cHJlc3Npb24obm9kZS5leHByZXNzaW9uKVxuICAgICkge1xuICAgICAgcmV0dXJuIG5vZGUuZXhwcmVzc2lvbi5hcmd1bWVudHNbMF0gYXMgdHMuT2JqZWN0TGl0ZXJhbEV4cHJlc3Npb247XG4gICAgfSBlbHNlIHtcbiAgICAgIG5vZGVRdWV1ZS5wdXNoKC4uLm5vZGUuZ2V0Q2hpbGRyZW4oKSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbi8qKiBXaGV0aGVyIHRoZSBzcGVjaWZpZWQgY2FsbCBleHByZXNzaW9uIGlzIHJlZmVycmluZyB0byBhIE5nTW9kdWxlIGRlZmluaXRpb24uICovXG5mdW5jdGlvbiBpc05nTW9kdWxlQ2FsbEV4cHJlc3Npb24oY2FsbEV4cHJlc3Npb246IHRzLkNhbGxFeHByZXNzaW9uKTogYm9vbGVhbiB7XG4gIGlmIChcbiAgICAhY2FsbEV4cHJlc3Npb24uYXJndW1lbnRzLmxlbmd0aCB8fFxuICAgICF0cy5pc09iamVjdExpdGVyYWxFeHByZXNzaW9uKGNhbGxFeHByZXNzaW9uLmFyZ3VtZW50c1swXSlcbiAgKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gVGhlIGBOZ01vZHVsZWAgY2FsbCBleHByZXNzaW9uIG5hbWUgaXMgbmV2ZXIgcmVmZXJyaW5nIHRvIGEgYFByaXZhdGVJZGVudGlmaWVyYC5cbiAgY29uc3QgZGVjb3JhdG9ySWRlbnRpZmllciA9IHJlc29sdmVJZGVudGlmaWVyT2ZFeHByZXNzaW9uKGNhbGxFeHByZXNzaW9uLmV4cHJlc3Npb24pO1xuICByZXR1cm4gZGVjb3JhdG9ySWRlbnRpZmllciA/IGRlY29yYXRvcklkZW50aWZpZXIudGV4dCA9PT0gJ05nTW9kdWxlJyA6IGZhbHNlO1xufVxuIl19
@@ -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 { Tree } from '@angular-devkit/schematics';
9
+ import { Schema as ComponentOptions } from '@schematics/angular/component/schema';
10
+ import { workspaces } from '@angular-devkit/core';
11
+ import * as ts from 'typescript';
12
+ /** Reads file given path and returns TypeScript source file. */
13
+ export declare function parseSourceFile(host: Tree, path: string): ts.SourceFile;
14
+ /** Import and add module to root app module. */
15
+ export declare function addModuleImportToRootModule(host: Tree, moduleName: string, src: string, project: workspaces.ProjectDefinition): void;
16
+ /**
17
+ * Import and add module to specific module path.
18
+ * @param host the tree we are updating
19
+ * @param modulePath src location of the module to import
20
+ * @param moduleName name of module to import
21
+ * @param src src location to import
22
+ */
23
+ export declare function addModuleImportToModule(host: Tree, modulePath: string, moduleName: string, src: string): void;
24
+ /** Wraps the internal find module from options with undefined path handling */
25
+ export declare function findModuleFromOptions(host: Tree, options: ComponentOptions): Promise<string | undefined>;
@@ -0,0 +1,69 @@
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
+ exports.findModuleFromOptions = exports.addModuleImportToModule = exports.addModuleImportToRootModule = exports.parseSourceFile = void 0;
11
+ const schematics_1 = require("@angular-devkit/schematics");
12
+ const change_1 = require("@schematics/angular/utility/change");
13
+ const workspace_1 = require("@schematics/angular/utility/workspace");
14
+ const find_module_1 = require("@schematics/angular/utility/find-module");
15
+ const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
16
+ const ng_ast_utils_1 = require("@schematics/angular/utility/ng-ast-utils");
17
+ const ts = require("typescript");
18
+ const project_main_file_1 = require("./project-main-file");
19
+ /** Reads file given path and returns TypeScript source file. */
20
+ function parseSourceFile(host, path) {
21
+ const buffer = host.read(path);
22
+ if (!buffer) {
23
+ throw new schematics_1.SchematicsException(`Could not find file for path: ${path}`);
24
+ }
25
+ return ts.createSourceFile(path, buffer.toString(), ts.ScriptTarget.Latest, true);
26
+ }
27
+ exports.parseSourceFile = parseSourceFile;
28
+ /** Import and add module to root app module. */
29
+ function addModuleImportToRootModule(host, moduleName, src, project) {
30
+ const modulePath = (0, ng_ast_utils_1.getAppModulePath)(host, (0, project_main_file_1.getProjectMainFile)(project));
31
+ addModuleImportToModule(host, modulePath, moduleName, src);
32
+ }
33
+ exports.addModuleImportToRootModule = addModuleImportToRootModule;
34
+ /**
35
+ * Import and add module to specific module path.
36
+ * @param host the tree we are updating
37
+ * @param modulePath src location of the module to import
38
+ * @param moduleName name of module to import
39
+ * @param src src location to import
40
+ */
41
+ function addModuleImportToModule(host, modulePath, moduleName, src) {
42
+ const moduleSource = parseSourceFile(host, modulePath);
43
+ if (!moduleSource) {
44
+ throw new schematics_1.SchematicsException(`Module not found: ${modulePath}`);
45
+ }
46
+ const changes = (0, ast_utils_1.addImportToModule)(moduleSource, modulePath, moduleName, src);
47
+ const recorder = host.beginUpdate(modulePath);
48
+ changes.forEach(change => {
49
+ if (change instanceof change_1.InsertChange) {
50
+ recorder.insertLeft(change.pos, change.toAdd);
51
+ }
52
+ });
53
+ host.commitUpdate(recorder);
54
+ }
55
+ exports.addModuleImportToModule = addModuleImportToModule;
56
+ /** Wraps the internal find module from options with undefined path handling */
57
+ async function findModuleFromOptions(host, options) {
58
+ const workspace = await (0, workspace_1.getWorkspace)(host);
59
+ if (!options.project) {
60
+ options.project = Array.from(workspace.projects.keys())[0];
61
+ }
62
+ const project = workspace.projects.get(options.project);
63
+ if (options.path === undefined) {
64
+ options.path = `/${project.root}/src/app`;
65
+ }
66
+ return (0, find_module_1.findModuleFromOptions)(host, options);
67
+ }
68
+ exports.findModuleFromOptions = findModuleFromOptions;
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3V0aWxzL2FzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCwyREFBcUU7QUFFckUsK0RBQWdFO0FBQ2hFLHFFQUFtRTtBQUNuRSx5RUFBb0c7QUFDcEcscUVBQXdFO0FBQ3hFLDJFQUEwRTtBQUUxRSxpQ0FBaUM7QUFDakMsMkRBQXVEO0FBRXZELGdFQUFnRTtBQUNoRSxTQUFnQixlQUFlLENBQUMsSUFBVSxFQUFFLElBQVk7SUFDdEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsTUFBTSxJQUFJLGdDQUFtQixDQUFDLGlDQUFpQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBQ3hFO0lBQ0QsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNwRixDQUFDO0FBTkQsMENBTUM7QUFFRCxnREFBZ0Q7QUFDaEQsU0FBZ0IsMkJBQTJCLENBQ3pDLElBQVUsRUFDVixVQUFrQixFQUNsQixHQUFXLEVBQ1gsT0FBcUM7SUFFckMsTUFBTSxVQUFVLEdBQUcsSUFBQSwrQkFBZ0IsRUFBQyxJQUFJLEVBQUUsSUFBQSxzQ0FBa0IsRUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLHVCQUF1QixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzdELENBQUM7QUFSRCxrRUFRQztBQUVEOzs7Ozs7R0FNRztBQUNILFNBQWdCLHVCQUF1QixDQUNyQyxJQUFVLEVBQ1YsVUFBa0IsRUFDbEIsVUFBa0IsRUFDbEIsR0FBVztJQUVYLE1BQU0sWUFBWSxHQUFHLGVBQWUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFFdkQsSUFBSSxDQUFDLFlBQVksRUFBRTtRQUNqQixNQUFNLElBQUksZ0NBQW1CLENBQUMscUJBQXFCLFVBQVUsRUFBRSxDQUFDLENBQUM7S0FDbEU7SUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFBLDZCQUFpQixFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzdFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFOUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUN2QixJQUFJLE1BQU0sWUFBWSxxQkFBWSxFQUFFO1lBQ2xDLFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQXRCRCwwREFzQkM7QUFFRCxnRkFBZ0Y7QUFDekUsS0FBSyxVQUFVLHFCQUFxQixDQUN6QyxJQUFVLEVBQ1YsT0FBeUI7SUFFekIsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFBLHdCQUFZLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFFM0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUU7UUFDcEIsT0FBTyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUM1RDtJQUVELE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUUsQ0FBQztJQUV6RCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO1FBQzlCLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxVQUFVLENBQUM7S0FDM0M7SUFFRCxPQUFPLElBQUEsbUNBQWtCLEVBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzNDLENBQUM7QUFqQkQsc0RBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7U2NoZW1hdGljc0V4Y2VwdGlvbiwgVHJlZX0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3MnO1xuaW1wb3J0IHtTY2hlbWEgYXMgQ29tcG9uZW50T3B0aW9uc30gZnJvbSAnQHNjaGVtYXRpY3MvYW5ndWxhci9jb21wb25lbnQvc2NoZW1hJztcbmltcG9ydCB7SW5zZXJ0Q2hhbmdlfSBmcm9tICdAc2NoZW1hdGljcy9hbmd1bGFyL3V0aWxpdHkvY2hhbmdlJztcbmltcG9ydCB7Z2V0V29ya3NwYWNlfSBmcm9tICdAc2NoZW1hdGljcy9hbmd1bGFyL3V0aWxpdHkvd29ya3NwYWNlJztcbmltcG9ydCB7ZmluZE1vZHVsZUZyb21PcHRpb25zIGFzIGludGVybmFsRmluZE1vZHVsZX0gZnJvbSAnQHNjaGVtYXRpY3MvYW5ndWxhci91dGlsaXR5L2ZpbmQtbW9kdWxlJztcbmltcG9ydCB7YWRkSW1wb3J0VG9Nb2R1bGV9IGZyb20gJ0BzY2hlbWF0aWNzL2FuZ3VsYXIvdXRpbGl0eS9hc3QtdXRpbHMnO1xuaW1wb3J0IHtnZXRBcHBNb2R1bGVQYXRofSBmcm9tICdAc2NoZW1hdGljcy9hbmd1bGFyL3V0aWxpdHkvbmctYXN0LXV0aWxzJztcbmltcG9ydCB7d29ya3NwYWNlc30gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2NvcmUnO1xuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQge2dldFByb2plY3RNYWluRmlsZX0gZnJvbSAnLi9wcm9qZWN0LW1haW4tZmlsZSc7XG5cbi8qKiBSZWFkcyBmaWxlIGdpdmVuIHBhdGggYW5kIHJldHVybnMgVHlwZVNjcmlwdCBzb3VyY2UgZmlsZS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVNvdXJjZUZpbGUoaG9zdDogVHJlZSwgcGF0aDogc3RyaW5nKTogdHMuU291cmNlRmlsZSB7XG4gIGNvbnN0IGJ1ZmZlciA9IGhvc3QucmVhZChwYXRoKTtcbiAgaWYgKCFidWZmZXIpIHtcbiAgICB0aHJvdyBuZXcgU2NoZW1hdGljc0V4Y2VwdGlvbihgQ291bGQgbm90IGZpbmQgZmlsZSBmb3IgcGF0aDogJHtwYXRofWApO1xuICB9XG4gIHJldHVybiB0cy5jcmVhdGVTb3VyY2VGaWxlKHBhdGgsIGJ1ZmZlci50b1N0cmluZygpLCB0cy5TY3JpcHRUYXJnZXQuTGF0ZXN0LCB0cnVlKTtcbn1cblxuLyoqIEltcG9ydCBhbmQgYWRkIG1vZHVsZSB0byByb290IGFwcCBtb2R1bGUuICovXG5leHBvcnQgZnVuY3Rpb24gYWRkTW9kdWxlSW1wb3J0VG9Sb290TW9kdWxlKFxuICBob3N0OiBUcmVlLFxuICBtb2R1bGVOYW1lOiBzdHJpbmcsXG4gIHNyYzogc3RyaW5nLFxuICBwcm9qZWN0OiB3b3Jrc3BhY2VzLlByb2plY3REZWZpbml0aW9uLFxuKSB7XG4gIGNvbnN0IG1vZHVsZVBhdGggPSBnZXRBcHBNb2R1bGVQYXRoKGhvc3QsIGdldFByb2plY3RNYWluRmlsZShwcm9qZWN0KSk7XG4gIGFkZE1vZHVsZUltcG9ydFRvTW9kdWxlKGhvc3QsIG1vZHVsZVBhdGgsIG1vZHVsZU5hbWUsIHNyYyk7XG59XG5cbi8qKlxuICogSW1wb3J0IGFuZCBhZGQgbW9kdWxlIHRvIHNwZWNpZmljIG1vZHVsZSBwYXRoLlxuICogQHBhcmFtIGhvc3QgdGhlIHRyZWUgd2UgYXJlIHVwZGF0aW5nXG4gKiBAcGFyYW0gbW9kdWxlUGF0aCBzcmMgbG9jYXRpb24gb2YgdGhlIG1vZHVsZSB0byBpbXBvcnRcbiAqIEBwYXJhbSBtb2R1bGVOYW1lIG5hbWUgb2YgbW9kdWxlIHRvIGltcG9ydFxuICogQHBhcmFtIHNyYyBzcmMgbG9jYXRpb24gdG8gaW1wb3J0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZGRNb2R1bGVJbXBvcnRUb01vZHVsZShcbiAgaG9zdDogVHJlZSxcbiAgbW9kdWxlUGF0aDogc3RyaW5nLFxuICBtb2R1bGVOYW1lOiBzdHJpbmcsXG4gIHNyYzogc3RyaW5nLFxuKSB7XG4gIGNvbnN0IG1vZHVsZVNvdXJjZSA9IHBhcnNlU291cmNlRmlsZShob3N0LCBtb2R1bGVQYXRoKTtcblxuICBpZiAoIW1vZHVsZVNvdXJjZSkge1xuICAgIHRocm93IG5ldyBTY2hlbWF0aWNzRXhjZXB0aW9uKGBNb2R1bGUgbm90IGZvdW5kOiAke21vZHVsZVBhdGh9YCk7XG4gIH1cblxuICBjb25zdCBjaGFuZ2VzID0gYWRkSW1wb3J0VG9Nb2R1bGUobW9kdWxlU291cmNlLCBtb2R1bGVQYXRoLCBtb2R1bGVOYW1lLCBzcmMpO1xuICBjb25zdCByZWNvcmRlciA9IGhvc3QuYmVnaW5VcGRhdGUobW9kdWxlUGF0aCk7XG5cbiAgY2hhbmdlcy5mb3JFYWNoKGNoYW5nZSA9PiB7XG4gICAgaWYgKGNoYW5nZSBpbnN0YW5jZW9mIEluc2VydENoYW5nZSkge1xuICAgICAgcmVjb3JkZXIuaW5zZXJ0TGVmdChjaGFuZ2UucG9zLCBjaGFuZ2UudG9BZGQpO1xuICAgIH1cbiAgfSk7XG5cbiAgaG9zdC5jb21taXRVcGRhdGUocmVjb3JkZXIpO1xufVxuXG4vKiogV3JhcHMgdGhlIGludGVybmFsIGZpbmQgbW9kdWxlIGZyb20gb3B0aW9ucyB3aXRoIHVuZGVmaW5lZCBwYXRoIGhhbmRsaW5nICAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZpbmRNb2R1bGVGcm9tT3B0aW9ucyhcbiAgaG9zdDogVHJlZSxcbiAgb3B0aW9uczogQ29tcG9uZW50T3B0aW9ucyxcbik6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IHdvcmtzcGFjZSA9IGF3YWl0IGdldFdvcmtzcGFjZShob3N0KTtcblxuICBpZiAoIW9wdGlvbnMucHJvamVjdCkge1xuICAgIG9wdGlvbnMucHJvamVjdCA9IEFycmF5LmZyb20od29ya3NwYWNlLnByb2plY3RzLmtleXMoKSlbMF07XG4gIH1cblxuICBjb25zdCBwcm9qZWN0ID0gd29ya3NwYWNlLnByb2plY3RzLmdldChvcHRpb25zLnByb2plY3QpITtcblxuICBpZiAob3B0aW9ucy5wYXRoID09PSB1bmRlZmluZWQpIHtcbiAgICBvcHRpb25zLnBhdGggPSBgLyR7cHJvamVjdC5yb290fS9zcmMvYXBwYDtcbiAgfVxuXG4gIHJldHVybiBpbnRlcm5hbEZpbmRNb2R1bGUoaG9zdCwgb3B0aW9ucyk7XG59XG4iXX0=