jqwidgets-ng 23.0.7 → 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 (458) hide show
  1. package/package.json +1 -1
  2. package/schematics/cdk/schematics/index.d.ts +1 -1
  3. package/schematics/cdk/schematics/index.js +2 -2
  4. package/schematics/cdk/schematics/index.js.map +1 -0
  5. package/schematics/cdk/schematics/migration.json +4 -4
  6. package/schematics/cdk/schematics/ng-add/index.d.ts +1 -1
  7. package/schematics/cdk/schematics/ng-add/index.js +13 -21
  8. package/schematics/cdk/schematics/ng-add/index.js.map +1 -0
  9. package/schematics/cdk/schematics/ng-add/schema.d.ts +1 -1
  10. package/schematics/cdk/schematics/ng-add/schema.js +2 -2
  11. package/schematics/cdk/schematics/ng-add/schema.js.map +1 -0
  12. package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +6 -2
  13. package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +1 -1
  14. package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +5 -5
  15. package/schematics/cdk/schematics/ng-generate/drag-drop/index.d.ts +1 -1
  16. package/schematics/cdk/schematics/ng-generate/drag-drop/index.js +17 -8
  17. package/schematics/cdk/schematics/ng-generate/drag-drop/index.js.map +1 -0
  18. package/schematics/cdk/schematics/ng-generate/drag-drop/schema.d.ts +1 -1
  19. package/schematics/cdk/schematics/ng-generate/drag-drop/schema.js +2 -2
  20. package/schematics/cdk/schematics/ng-generate/drag-drop/schema.js.map +1 -0
  21. package/schematics/cdk/schematics/ng-update/data/attribute-selectors.d.ts +1 -1
  22. package/schematics/cdk/schematics/ng-update/data/attribute-selectors.js +2 -2
  23. package/schematics/cdk/schematics/ng-update/data/attribute-selectors.js.map +1 -0
  24. package/schematics/cdk/schematics/ng-update/data/class-names.d.ts +1 -1
  25. package/schematics/cdk/schematics/ng-update/data/class-names.js +2 -2
  26. package/schematics/cdk/schematics/ng-update/data/class-names.js.map +1 -0
  27. package/schematics/cdk/schematics/ng-update/data/constructor-checks.d.ts +1 -1
  28. package/schematics/cdk/schematics/ng-update/data/constructor-checks.js +2 -2
  29. package/schematics/cdk/schematics/ng-update/data/constructor-checks.js.map +1 -0
  30. package/schematics/cdk/schematics/ng-update/data/css-selectors.d.ts +1 -1
  31. package/schematics/cdk/schematics/ng-update/data/css-selectors.js +2 -2
  32. package/schematics/cdk/schematics/ng-update/data/css-selectors.js.map +1 -0
  33. package/schematics/cdk/schematics/ng-update/data/css-tokens.d.ts +27 -0
  34. package/schematics/cdk/schematics/ng-update/data/css-tokens.js +12 -0
  35. package/schematics/cdk/schematics/ng-update/data/css-tokens.js.map +1 -0
  36. package/schematics/cdk/schematics/ng-update/data/element-selectors.d.ts +1 -1
  37. package/schematics/cdk/schematics/ng-update/data/element-selectors.js +2 -2
  38. package/schematics/cdk/schematics/ng-update/data/element-selectors.js.map +1 -0
  39. package/schematics/cdk/schematics/ng-update/data/index.d.ts +2 -1
  40. package/schematics/cdk/schematics/ng-update/data/index.js +3 -2
  41. package/schematics/cdk/schematics/ng-update/data/index.js.map +1 -0
  42. package/schematics/cdk/schematics/ng-update/data/input-names.d.ts +1 -1
  43. package/schematics/cdk/schematics/ng-update/data/input-names.js +2 -2
  44. package/schematics/cdk/schematics/ng-update/data/input-names.js.map +1 -0
  45. package/schematics/cdk/schematics/ng-update/data/method-call-checks.d.ts +1 -1
  46. package/schematics/cdk/schematics/ng-update/data/method-call-checks.js +2 -2
  47. package/schematics/cdk/schematics/ng-update/data/method-call-checks.js.map +1 -0
  48. package/schematics/cdk/schematics/ng-update/data/output-names.d.ts +1 -1
  49. package/schematics/cdk/schematics/ng-update/data/output-names.js +2 -2
  50. package/schematics/cdk/schematics/ng-update/data/output-names.js.map +1 -0
  51. package/schematics/cdk/schematics/ng-update/data/property-names.d.ts +1 -1
  52. package/schematics/cdk/schematics/ng-update/data/property-names.js +2 -2
  53. package/schematics/cdk/schematics/ng-update/data/property-names.js.map +1 -0
  54. package/schematics/cdk/schematics/ng-update/data/symbol-removal.d.ts +1 -1
  55. package/schematics/cdk/schematics/ng-update/data/symbol-removal.js +2 -2
  56. package/schematics/cdk/schematics/ng-update/data/symbol-removal.js.map +1 -0
  57. package/schematics/cdk/schematics/ng-update/devkit-file-system.d.ts +1 -1
  58. package/schematics/cdk/schematics/ng-update/devkit-file-system.js +3 -4
  59. package/schematics/cdk/schematics/ng-update/devkit-file-system.js.map +1 -0
  60. package/schematics/cdk/schematics/ng-update/devkit-migration-rule.d.ts +1 -1
  61. package/schematics/cdk/schematics/ng-update/devkit-migration-rule.js +19 -8
  62. package/schematics/cdk/schematics/ng-update/devkit-migration-rule.js.map +1 -0
  63. package/schematics/cdk/schematics/ng-update/devkit-migration.d.ts +3 -3
  64. package/schematics/cdk/schematics/ng-update/devkit-migration.js +2 -2
  65. package/schematics/cdk/schematics/ng-update/devkit-migration.js.map +1 -0
  66. package/schematics/cdk/schematics/ng-update/find-stylesheets.d.ts +1 -1
  67. package/schematics/cdk/schematics/ng-update/find-stylesheets.js +3 -4
  68. package/schematics/cdk/schematics/ng-update/find-stylesheets.js.map +1 -0
  69. package/schematics/cdk/schematics/ng-update/html-parsing/angular.d.ts +1 -1
  70. package/schematics/cdk/schematics/ng-update/html-parsing/angular.js +7 -8
  71. package/schematics/cdk/schematics/ng-update/html-parsing/angular.js.map +1 -0
  72. package/schematics/cdk/schematics/ng-update/html-parsing/elements.d.ts +1 -1
  73. package/schematics/cdk/schematics/ng-update/html-parsing/elements.js +8 -8
  74. package/schematics/cdk/schematics/ng-update/html-parsing/elements.js.map +1 -0
  75. package/schematics/cdk/schematics/ng-update/index.d.ts +3 -3
  76. package/schematics/cdk/schematics/ng-update/index.js +6 -7
  77. package/schematics/cdk/schematics/ng-update/index.js.map +1 -0
  78. package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.d.ts +1 -1
  79. package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.js +9 -6
  80. package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.js.map +1 -0
  81. package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.d.ts +1 -1
  82. package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.js +12 -9
  83. package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.js.map +1 -0
  84. package/schematics/cdk/schematics/ng-update/migrations/class-names.d.ts +1 -1
  85. package/schematics/cdk/schematics/ng-update/migrations/class-names.js +16 -13
  86. package/schematics/cdk/schematics/ng-update/migrations/class-names.js.map +1 -0
  87. package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.d.ts +1 -1
  88. package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.js +11 -8
  89. package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.js.map +1 -0
  90. package/schematics/cdk/schematics/ng-update/migrations/css-selectors.d.ts +1 -1
  91. package/schematics/cdk/schematics/ng-update/migrations/css-selectors.js +9 -6
  92. package/schematics/cdk/schematics/ng-update/migrations/css-selectors.js.map +1 -0
  93. package/schematics/cdk/schematics/ng-update/migrations/css-tokens.d.ts +26 -0
  94. package/schematics/cdk/schematics/ng-update/migrations/css-tokens.js +83 -0
  95. package/schematics/cdk/schematics/ng-update/migrations/css-tokens.js.map +1 -0
  96. package/schematics/cdk/schematics/ng-update/migrations/element-selectors.d.ts +1 -1
  97. package/schematics/cdk/schematics/ng-update/migrations/element-selectors.js +9 -6
  98. package/schematics/cdk/schematics/ng-update/migrations/element-selectors.js.map +1 -0
  99. package/schematics/cdk/schematics/ng-update/migrations/input-names.d.ts +1 -1
  100. package/schematics/cdk/schematics/ng-update/migrations/input-names.js +9 -6
  101. package/schematics/cdk/schematics/ng-update/migrations/input-names.js.map +1 -0
  102. package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.d.ts +1 -1
  103. package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.js +9 -6
  104. package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.js.map +1 -0
  105. package/schematics/cdk/schematics/ng-update/migrations/misc-template.d.ts +1 -1
  106. package/schematics/cdk/schematics/ng-update/migrations/misc-template.js +7 -4
  107. package/schematics/cdk/schematics/ng-update/migrations/misc-template.js.map +1 -0
  108. package/schematics/cdk/schematics/ng-update/migrations/output-names.d.ts +1 -1
  109. package/schematics/cdk/schematics/ng-update/migrations/output-names.js +9 -6
  110. package/schematics/cdk/schematics/ng-update/migrations/output-names.js.map +1 -0
  111. package/schematics/cdk/schematics/ng-update/migrations/property-names.d.ts +1 -1
  112. package/schematics/cdk/schematics/ng-update/migrations/property-names.js +9 -6
  113. package/schematics/cdk/schematics/ng-update/migrations/property-names.js.map +1 -0
  114. package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.d.ts +1 -1
  115. package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.js +11 -7
  116. package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.js.map +1 -0
  117. package/schematics/cdk/schematics/ng-update/public-api.d.ts +1 -1
  118. package/schematics/cdk/schematics/ng-update/public-api.js +2 -2
  119. package/schematics/cdk/schematics/ng-update/public-api.js.map +1 -0
  120. package/schematics/cdk/schematics/ng-update/typescript/base-types.d.ts +1 -1
  121. package/schematics/cdk/schematics/ng-update/typescript/base-types.js +3 -4
  122. package/schematics/cdk/schematics/ng-update/typescript/base-types.js.map +1 -0
  123. package/schematics/cdk/schematics/ng-update/typescript/imports.d.ts +1 -1
  124. package/schematics/cdk/schematics/ng-update/typescript/imports.js +7 -8
  125. package/schematics/cdk/schematics/ng-update/typescript/imports.js.map +1 -0
  126. package/schematics/cdk/schematics/ng-update/typescript/literal.d.ts +1 -1
  127. package/schematics/cdk/schematics/ng-update/typescript/literal.js +4 -5
  128. package/schematics/cdk/schematics/ng-update/typescript/literal.js.map +1 -0
  129. package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.d.ts +1 -1
  130. package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.js +5 -5
  131. package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.js.map +1 -0
  132. package/schematics/cdk/schematics/ng-update/upgrade-data.d.ts +3 -2
  133. package/schematics/cdk/schematics/ng-update/upgrade-data.js +5 -4
  134. package/schematics/cdk/schematics/ng-update/upgrade-data.js.map +1 -0
  135. package/schematics/cdk/schematics/paths.d.ts +1 -1
  136. package/schematics/cdk/schematics/paths.js +2 -2
  137. package/schematics/cdk/schematics/paths.js.map +1 -0
  138. package/schematics/cdk/schematics/update-tool/component-resource-collector.d.ts +1 -1
  139. package/schematics/cdk/schematics/update-tool/component-resource-collector.js +4 -6
  140. package/schematics/cdk/schematics/update-tool/component-resource-collector.js.map +1 -0
  141. package/schematics/cdk/schematics/update-tool/file-system.d.ts +1 -1
  142. package/schematics/cdk/schematics/update-tool/file-system.js +2 -2
  143. package/schematics/cdk/schematics/update-tool/file-system.js.map +1 -0
  144. package/schematics/cdk/schematics/update-tool/index.d.ts +2 -2
  145. package/schematics/cdk/schematics/update-tool/index.js +4 -10
  146. package/schematics/cdk/schematics/update-tool/index.js.map +1 -0
  147. package/schematics/cdk/schematics/update-tool/logger.d.ts +1 -1
  148. package/schematics/cdk/schematics/update-tool/logger.js +2 -2
  149. package/schematics/cdk/schematics/update-tool/logger.js.map +1 -0
  150. package/schematics/cdk/schematics/update-tool/migration.d.ts +1 -1
  151. package/schematics/cdk/schematics/update-tool/migration.js +4 -11
  152. package/schematics/cdk/schematics/update-tool/migration.js.map +1 -0
  153. package/schematics/cdk/schematics/update-tool/public-api.d.ts +1 -1
  154. package/schematics/cdk/schematics/update-tool/public-api.js +2 -2
  155. package/schematics/cdk/schematics/update-tool/public-api.js.map +1 -0
  156. package/schematics/cdk/schematics/update-tool/target-version.d.ts +2 -2
  157. package/schematics/cdk/schematics/update-tool/target-version.js +5 -6
  158. package/schematics/cdk/schematics/update-tool/target-version.js.map +1 -0
  159. package/schematics/cdk/schematics/update-tool/update-recorder.d.ts +1 -1
  160. package/schematics/cdk/schematics/update-tool/update-recorder.js +2 -2
  161. package/schematics/cdk/schematics/update-tool/update-recorder.js.map +1 -0
  162. package/schematics/cdk/schematics/update-tool/utils/decorators.d.ts +1 -1
  163. package/schematics/cdk/schematics/update-tool/utils/decorators.js +4 -5
  164. package/schematics/cdk/schematics/update-tool/utils/decorators.js.map +1 -0
  165. package/schematics/cdk/schematics/update-tool/utils/diagnostics.d.ts +1 -1
  166. package/schematics/cdk/schematics/update-tool/utils/diagnostics.js +3 -4
  167. package/schematics/cdk/schematics/update-tool/utils/diagnostics.js.map +1 -0
  168. package/schematics/cdk/schematics/update-tool/utils/functions.d.ts +1 -1
  169. package/schematics/cdk/schematics/update-tool/utils/functions.js +3 -4
  170. package/schematics/cdk/schematics/update-tool/utils/functions.js.map +1 -0
  171. package/schematics/cdk/schematics/update-tool/utils/imports.d.ts +1 -1
  172. package/schematics/cdk/schematics/update-tool/utils/imports.js +3 -4
  173. package/schematics/cdk/schematics/update-tool/utils/imports.js.map +1 -0
  174. package/schematics/cdk/schematics/update-tool/utils/line-mappings.d.ts +1 -1
  175. package/schematics/cdk/schematics/update-tool/utils/line-mappings.js +4 -5
  176. package/schematics/cdk/schematics/update-tool/utils/line-mappings.js.map +1 -0
  177. package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.d.ts +1 -1
  178. package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.js +4 -4
  179. package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.js.map +1 -0
  180. package/schematics/cdk/schematics/update-tool/utils/property-name.d.ts +1 -1
  181. package/schematics/cdk/schematics/update-tool/utils/property-name.js +4 -5
  182. package/schematics/cdk/schematics/update-tool/utils/property-name.js.map +1 -0
  183. package/schematics/cdk/schematics/update-tool/utils/virtual-host.d.ts +1 -1
  184. package/schematics/cdk/schematics/update-tool/utils/virtual-host.js +6 -7
  185. package/schematics/cdk/schematics/update-tool/utils/virtual-host.js.map +1 -0
  186. package/schematics/cdk/schematics/update-tool/version-changes.d.ts +1 -1
  187. package/schematics/cdk/schematics/update-tool/version-changes.js +4 -5
  188. package/schematics/cdk/schematics/update-tool/version-changes.js.map +1 -0
  189. package/schematics/cdk/schematics/utils/ast/ng-module-imports.d.ts +1 -1
  190. package/schematics/cdk/schematics/utils/ast/ng-module-imports.js +3 -4
  191. package/schematics/cdk/schematics/utils/ast/ng-module-imports.js.map +1 -0
  192. package/schematics/cdk/schematics/utils/ast.d.ts +3 -3
  193. package/schematics/cdk/schematics/utils/ast.js +28 -18
  194. package/schematics/cdk/schematics/utils/ast.js.map +1 -0
  195. package/schematics/cdk/schematics/utils/build-component.d.ts +1 -1
  196. package/schematics/cdk/schematics/utils/build-component.js +24 -20
  197. package/schematics/cdk/schematics/utils/build-component.js.map +1 -0
  198. package/schematics/cdk/schematics/utils/get-project.d.ts +3 -3
  199. package/schematics/cdk/schematics/utils/get-project.js +3 -4
  200. package/schematics/cdk/schematics/utils/get-project.js.map +1 -0
  201. package/schematics/cdk/schematics/utils/html-manipulation.d.ts +1 -1
  202. package/schematics/cdk/schematics/utils/html-manipulation.js +5 -6
  203. package/schematics/cdk/schematics/utils/html-manipulation.js.map +1 -0
  204. package/schematics/cdk/schematics/utils/index.d.ts +1 -1
  205. package/schematics/cdk/schematics/utils/index.js +2 -2
  206. package/schematics/cdk/schematics/utils/index.js.map +1 -0
  207. package/schematics/cdk/schematics/utils/parse5-element.d.ts +1 -1
  208. package/schematics/cdk/schematics/utils/parse5-element.js +3 -4
  209. package/schematics/cdk/schematics/utils/parse5-element.js.map +1 -0
  210. package/schematics/cdk/schematics/utils/project-index-file.d.ts +7 -4
  211. package/schematics/cdk/schematics/utils/project-index-file.js +32 -10
  212. package/schematics/cdk/schematics/utils/project-index-file.js.map +1 -0
  213. package/schematics/cdk/schematics/utils/project-main-file.d.ts +4 -3
  214. package/schematics/cdk/schematics/utils/project-main-file.js +3 -4
  215. package/schematics/cdk/schematics/utils/project-main-file.js.map +1 -0
  216. package/schematics/cdk/schematics/utils/project-style-file.d.ts +3 -3
  217. package/schematics/cdk/schematics/utils/project-style-file.js +3 -4
  218. package/schematics/cdk/schematics/utils/project-style-file.js.map +1 -0
  219. package/schematics/cdk/schematics/utils/project-targets.d.ts +6 -5
  220. package/schematics/cdk/schematics/utils/project-targets.js +19 -12
  221. package/schematics/cdk/schematics/utils/project-targets.js.map +1 -0
  222. package/schematics/cdk/schematics/utils/project-tsconfig-paths.d.ts +4 -4
  223. package/schematics/cdk/schematics/utils/project-tsconfig-paths.js +29 -18
  224. package/schematics/cdk/schematics/utils/project-tsconfig-paths.js.map +1 -0
  225. package/schematics/cdk/schematics/utils/schematic-options.d.ts +3 -3
  226. package/schematics/cdk/schematics/utils/schematic-options.js +30 -19
  227. package/schematics/cdk/schematics/utils/schematic-options.js.map +1 -0
  228. package/schematics/cdk2/schematics/collection.json +18 -0
  229. package/schematics/cdk2/schematics/index.d.ts +14 -0
  230. package/schematics/cdk2/schematics/index.mjs +37 -0
  231. package/schematics/cdk2/schematics/migration.json +15 -0
  232. package/schematics/cdk2/schematics/ng-add/index.d.ts +17 -0
  233. package/schematics/cdk2/schematics/ng-add/index.mjs +39 -0
  234. package/schematics/cdk2/schematics/ng-add/schema.d.ts +11 -0
  235. package/schematics/cdk2/schematics/ng-add/schema.json +16 -0
  236. package/schematics/cdk2/schematics/ng-add/schema.mjs +10 -0
  237. package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template +53 -0
  238. package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +17 -0
  239. package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +25 -0
  240. package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +45 -0
  241. package/schematics/cdk2/schematics/ng-generate/drag-drop/index.d.ts +11 -0
  242. package/schematics/cdk2/schematics/ng-generate/drag-drop/index.mjs +33 -0
  243. package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.d.ts +10 -0
  244. package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.json +100 -0
  245. package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.mjs +10 -0
  246. package/schematics/cdk2/schematics/ng-update/data/attribute-selectors.d.ts +15 -0
  247. package/schematics/cdk2/schematics/ng-update/data/attribute-selectors.mjs +12 -0
  248. package/schematics/cdk2/schematics/ng-update/data/class-names.d.ts +15 -0
  249. package/schematics/cdk2/schematics/ng-update/data/class-names.mjs +12 -0
  250. package/schematics/cdk2/schematics/ng-update/data/constructor-checks.d.ts +15 -0
  251. package/schematics/cdk2/schematics/ng-update/data/constructor-checks.mjs +17 -0
  252. package/schematics/cdk2/schematics/ng-update/data/css-selectors.d.ts +27 -0
  253. package/schematics/cdk2/schematics/ng-update/data/css-selectors.mjs +12 -0
  254. package/schematics/cdk2/schematics/ng-update/data/element-selectors.d.ts +15 -0
  255. package/schematics/cdk2/schematics/ng-update/data/element-selectors.mjs +12 -0
  256. package/schematics/cdk2/schematics/ng-update/data/index.d.ts +17 -0
  257. package/schematics/cdk2/schematics/ng-update/data/index.mjs +34 -0
  258. package/schematics/cdk2/schematics/ng-update/data/input-names.d.ts +22 -0
  259. package/schematics/cdk2/schematics/ng-update/data/input-names.mjs +12 -0
  260. package/schematics/cdk2/schematics/ng-update/data/method-call-checks.d.ts +17 -0
  261. package/schematics/cdk2/schematics/ng-update/data/method-call-checks.mjs +12 -0
  262. package/schematics/cdk2/schematics/ng-update/data/output-names.d.ts +22 -0
  263. package/schematics/cdk2/schematics/ng-update/data/output-names.mjs +12 -0
  264. package/schematics/cdk2/schematics/ng-update/data/property-names.d.ts +20 -0
  265. package/schematics/cdk2/schematics/ng-update/data/property-names.mjs +12 -0
  266. package/schematics/cdk2/schematics/ng-update/data/symbol-removal.d.ts +17 -0
  267. package/schematics/cdk2/schematics/ng-update/data/symbol-removal.mjs +12 -0
  268. package/schematics/cdk2/schematics/ng-update/devkit-file-system.d.ts +30 -0
  269. package/schematics/cdk2/schematics/ng-update/devkit-file-system.mjs +84 -0
  270. package/schematics/cdk2/schematics/ng-update/devkit-migration-rule.d.ts +24 -0
  271. package/schematics/cdk2/schematics/ng-update/devkit-migration-rule.mjs +131 -0
  272. package/schematics/cdk2/schematics/ng-update/devkit-migration.d.ts +35 -0
  273. package/schematics/cdk2/schematics/ng-update/devkit-migration.mjs +20 -0
  274. package/schematics/cdk2/schematics/ng-update/find-stylesheets.d.ts +16 -0
  275. package/schematics/cdk2/schematics/ng-update/find-stylesheets.mjs +42 -0
  276. package/schematics/cdk2/schematics/ng-update/html-parsing/angular.d.ts +15 -0
  277. package/schematics/cdk2/schematics/ng-update/html-parsing/angular.mjs +52 -0
  278. package/schematics/cdk2/schematics/ng-update/html-parsing/elements.d.ts +24 -0
  279. package/schematics/cdk2/schematics/ng-update/html-parsing/elements.mjs +63 -0
  280. package/schematics/cdk2/schematics/ng-update/index.d.ts +10 -0
  281. package/schematics/cdk2/schematics/ng-update/index.mjs +30 -0
  282. package/schematics/cdk2/schematics/ng-update/migrations/attribute-selectors.d.ts +26 -0
  283. package/schematics/cdk2/schematics/ng-update/migrations/attribute-selectors.mjs +68 -0
  284. package/schematics/cdk2/schematics/ng-update/migrations/class-inheritance.d.ts +26 -0
  285. package/schematics/cdk2/schematics/ng-update/migrations/class-inheritance.mjs +55 -0
  286. package/schematics/cdk2/schematics/ng-update/migrations/class-names.d.ts +32 -0
  287. package/schematics/cdk2/schematics/ng-update/migrations/class-names.mjs +88 -0
  288. package/schematics/cdk2/schematics/ng-update/migrations/constructor-signature.d.ts +29 -0
  289. package/schematics/cdk2/schematics/ng-update/migrations/constructor-signature.mjs +136 -0
  290. package/schematics/cdk2/schematics/ng-update/migrations/css-selectors.d.ts +26 -0
  291. package/schematics/cdk2/schematics/ng-update/migrations/css-selectors.mjs +72 -0
  292. package/schematics/cdk2/schematics/ng-update/migrations/element-selectors.d.ts +26 -0
  293. package/schematics/cdk2/schematics/ng-update/migrations/element-selectors.mjs +63 -0
  294. package/schematics/cdk2/schematics/ng-update/migrations/input-names.d.ts +26 -0
  295. package/schematics/cdk2/schematics/ng-update/migrations/input-names.mjs +56 -0
  296. package/schematics/cdk2/schematics/ng-update/migrations/method-call-arguments.d.ts +22 -0
  297. package/schematics/cdk2/schematics/ng-update/migrations/method-call-arguments.mjs +59 -0
  298. package/schematics/cdk2/schematics/ng-update/migrations/misc-template.d.ts +18 -0
  299. package/schematics/cdk2/schematics/ng-update/migrations/misc-template.mjs +22 -0
  300. package/schematics/cdk2/schematics/ng-update/migrations/output-names.d.ts +22 -0
  301. package/schematics/cdk2/schematics/ng-update/migrations/output-names.mjs +43 -0
  302. package/schematics/cdk2/schematics/ng-update/migrations/property-names.d.ts +22 -0
  303. package/schematics/cdk2/schematics/ng-update/migrations/property-names.mjs +57 -0
  304. package/schematics/cdk2/schematics/ng-update/migrations/symbol-removal.d.ts +18 -0
  305. package/schematics/cdk2/schematics/ng-update/migrations/symbol-removal.mjs +43 -0
  306. package/schematics/cdk2/schematics/ng-update/public-api.d.ts +19 -0
  307. package/schematics/cdk2/schematics/ng-update/public-api.mjs +36 -0
  308. package/schematics/cdk2/schematics/ng-update/typescript/base-types.d.ts +10 -0
  309. package/schematics/cdk2/schematics/ng-update/typescript/base-types.mjs +24 -0
  310. package/schematics/cdk2/schematics/ng-update/typescript/imports.d.ts +18 -0
  311. package/schematics/cdk2/schematics/ng-update/typescript/imports.mjs +54 -0
  312. package/schematics/cdk2/schematics/ng-update/typescript/literal.d.ts +18 -0
  313. package/schematics/cdk2/schematics/ng-update/typescript/literal.mjs +33 -0
  314. package/schematics/cdk2/schematics/ng-update/typescript/module-specifiers.d.ts +16 -0
  315. package/schematics/cdk2/schematics/ng-update/typescript/module-specifiers.mjs +35 -0
  316. package/schematics/cdk2/schematics/ng-update/upgrade-data.d.ts +34 -0
  317. package/schematics/cdk2/schematics/ng-update/upgrade-data.mjs +39 -0
  318. package/schematics/cdk2/schematics/package.json +3 -0
  319. package/schematics/cdk2/schematics/paths.d.ts +11 -0
  320. package/schematics/cdk2/schematics/paths.mjs +16 -0
  321. package/schematics/cdk2/schematics/update-tool/component-resource-collector.d.ts +44 -0
  322. package/schematics/cdk2/schematics/update-tool/component-resource-collector.mjs +166 -0
  323. package/schematics/cdk2/schematics/update-tool/file-system.d.ts +72 -0
  324. package/schematics/cdk2/schematics/update-tool/file-system.mjs +18 -0
  325. package/schematics/cdk2/schematics/update-tool/index.d.ts +74 -0
  326. package/schematics/cdk2/schematics/update-tool/index.mjs +178 -0
  327. package/schematics/cdk2/schematics/update-tool/logger.d.ts +15 -0
  328. package/schematics/cdk2/schematics/update-tool/logger.mjs +18 -0
  329. package/schematics/cdk2/schematics/update-tool/migration.d.ts +87 -0
  330. package/schematics/cdk2/schematics/update-tool/migration.mjs +77 -0
  331. package/schematics/cdk2/schematics/update-tool/public-api.d.ts +16 -0
  332. package/schematics/cdk2/schematics/update-tool/public-api.mjs +33 -0
  333. package/schematics/cdk2/schematics/update-tool/target-version.d.ts +16 -0
  334. package/schematics/cdk2/schematics/update-tool/target-version.mjs +28 -0
  335. package/schematics/cdk2/schematics/update-tool/update-recorder.d.ts +13 -0
  336. package/schematics/cdk2/schematics/update-tool/update-recorder.mjs +10 -0
  337. package/schematics/cdk2/schematics/update-tool/utils/decorators.d.ts +22 -0
  338. package/schematics/cdk2/schematics/update-tool/utils/decorators.mjs +42 -0
  339. package/schematics/cdk2/schematics/update-tool/utils/diagnostics.d.ts +11 -0
  340. package/schematics/cdk2/schematics/update-tool/utils/diagnostics.mjs +19 -0
  341. package/schematics/cdk2/schematics/update-tool/utils/functions.d.ts +14 -0
  342. package/schematics/cdk2/schematics/update-tool/utils/functions.mjs +21 -0
  343. package/schematics/cdk2/schematics/update-tool/utils/imports.d.ts +17 -0
  344. package/schematics/cdk2/schematics/update-tool/utils/imports.mjs +111 -0
  345. package/schematics/cdk2/schematics/update-tool/utils/line-mappings.d.ts +21 -0
  346. package/schematics/cdk2/schematics/update-tool/utils/line-mappings.mjs +76 -0
  347. package/schematics/cdk2/schematics/update-tool/utils/parse-tsconfig.d.ts +18 -0
  348. package/schematics/cdk2/schematics/update-tool/utils/parse-tsconfig.mjs +45 -0
  349. package/schematics/cdk2/schematics/update-tool/utils/property-name.d.ts +18 -0
  350. package/schematics/cdk2/schematics/update-tool/utils/property-name.mjs +28 -0
  351. package/schematics/cdk2/schematics/update-tool/utils/virtual-host.d.ts +36 -0
  352. package/schematics/cdk2/schematics/update-tool/utils/virtual-host.mjs +72 -0
  353. package/schematics/cdk2/schematics/update-tool/version-changes.d.ts +32 -0
  354. package/schematics/cdk2/schematics/update-tool/version-changes.mjs +39 -0
  355. package/schematics/cdk2/schematics/utils/ast/ng-module-imports.d.ts +12 -0
  356. package/schematics/cdk2/schematics/utils/ast/ng-module-imports.mjs +83 -0
  357. package/schematics/cdk2/schematics/utils/ast.d.ts +25 -0
  358. package/schematics/cdk2/schematics/utils/ast.mjs +69 -0
  359. package/schematics/cdk2/schematics/utils/build-component.d.ts +20 -0
  360. package/schematics/cdk2/schematics/utils/build-component.mjs +184 -0
  361. package/schematics/cdk2/schematics/utils/get-project.d.ts +13 -0
  362. package/schematics/cdk2/schematics/utils/get-project.mjs +29 -0
  363. package/schematics/cdk2/schematics/utils/html-manipulation.d.ts +15 -0
  364. package/schematics/cdk2/schematics/utils/html-manipulation.mjs +92 -0
  365. package/schematics/cdk2/schematics/utils/index.d.ts +19 -0
  366. package/schematics/cdk2/schematics/utils/index.mjs +36 -0
  367. package/schematics/cdk2/schematics/utils/parse5-element.d.ts +12 -0
  368. package/schematics/cdk2/schematics/utils/parse5-element.mjs +31 -0
  369. package/schematics/cdk2/schematics/utils/project-index-file.d.ts +10 -0
  370. package/schematics/cdk2/schematics/utils/project-index-file.mjs +21 -0
  371. package/schematics/cdk2/schematics/utils/project-main-file.d.ts +10 -0
  372. package/schematics/cdk2/schematics/utils/project-main-file.mjs +26 -0
  373. package/schematics/cdk2/schematics/utils/project-style-file.d.ts +13 -0
  374. package/schematics/cdk2/schematics/utils/project-style-file.mjs +43 -0
  375. package/schematics/cdk2/schematics/utils/project-targets.d.ts +14 -0
  376. package/schematics/cdk2/schematics/utils/project-targets.mjs +39 -0
  377. package/schematics/cdk2/schematics/utils/project-tsconfig-paths.d.ts +14 -0
  378. package/schematics/cdk2/schematics/utils/project-tsconfig-paths.mjs +35 -0
  379. package/schematics/cdk2/schematics/utils/schematic-options.d.ts +20 -0
  380. package/schematics/cdk2/schematics/utils/schematic-options.mjs +78 -0
  381. /package/schematics/{cdk/schematics/index.mjs → cdk2/schematics/index.js} +0 -0
  382. /package/schematics/{cdk/schematics/ng-add/index.mjs → cdk2/schematics/ng-add/index.js} +0 -0
  383. /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.d.ts +0 -0
  384. /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.js +0 -0
  385. /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.mjs +0 -0
  386. /package/schematics/{cdk/schematics/ng-add/schema.mjs → cdk2/schematics/ng-add/schema.js} +0 -0
  387. /package/schematics/{cdk/schematics/ng-generate/drag-drop/index.mjs → cdk2/schematics/ng-generate/drag-drop/index.js} +0 -0
  388. /package/schematics/{cdk/schematics/ng-generate/drag-drop/schema.mjs → cdk2/schematics/ng-generate/drag-drop/schema.js} +0 -0
  389. /package/schematics/{cdk/schematics/ng-update/data/attribute-selectors.mjs → cdk2/schematics/ng-update/data/attribute-selectors.js} +0 -0
  390. /package/schematics/{cdk/schematics/ng-update/data/class-names.mjs → cdk2/schematics/ng-update/data/class-names.js} +0 -0
  391. /package/schematics/{cdk/schematics/ng-update/data/constructor-checks.mjs → cdk2/schematics/ng-update/data/constructor-checks.js} +0 -0
  392. /package/schematics/{cdk/schematics/ng-update/data/css-selectors.mjs → cdk2/schematics/ng-update/data/css-selectors.js} +0 -0
  393. /package/schematics/{cdk/schematics/ng-update/data/element-selectors.mjs → cdk2/schematics/ng-update/data/element-selectors.js} +0 -0
  394. /package/schematics/{cdk/schematics/ng-update/data/index.mjs → cdk2/schematics/ng-update/data/index.js} +0 -0
  395. /package/schematics/{cdk/schematics/ng-update/data/input-names.mjs → cdk2/schematics/ng-update/data/input-names.js} +0 -0
  396. /package/schematics/{cdk/schematics/ng-update/data/method-call-checks.mjs → cdk2/schematics/ng-update/data/method-call-checks.js} +0 -0
  397. /package/schematics/{cdk/schematics/ng-update/data/output-names.mjs → cdk2/schematics/ng-update/data/output-names.js} +0 -0
  398. /package/schematics/{cdk/schematics/ng-update/data/property-names.mjs → cdk2/schematics/ng-update/data/property-names.js} +0 -0
  399. /package/schematics/{cdk/schematics/ng-update/data/symbol-removal.mjs → cdk2/schematics/ng-update/data/symbol-removal.js} +0 -0
  400. /package/schematics/{cdk/schematics/ng-update/devkit-file-system.mjs → cdk2/schematics/ng-update/devkit-file-system.js} +0 -0
  401. /package/schematics/{cdk/schematics/ng-update/devkit-migration-rule.mjs → cdk2/schematics/ng-update/devkit-migration-rule.js} +0 -0
  402. /package/schematics/{cdk/schematics/ng-update/devkit-migration.mjs → cdk2/schematics/ng-update/devkit-migration.js} +0 -0
  403. /package/schematics/{cdk/schematics/ng-update/find-stylesheets.mjs → cdk2/schematics/ng-update/find-stylesheets.js} +0 -0
  404. /package/schematics/{cdk/schematics/ng-update/html-parsing/angular.mjs → cdk2/schematics/ng-update/html-parsing/angular.js} +0 -0
  405. /package/schematics/{cdk/schematics/ng-update/html-parsing/elements.mjs → cdk2/schematics/ng-update/html-parsing/elements.js} +0 -0
  406. /package/schematics/{cdk/schematics/ng-update/index.mjs → cdk2/schematics/ng-update/index.js} +0 -0
  407. /package/schematics/{cdk/schematics/ng-update/migrations/attribute-selectors.mjs → cdk2/schematics/ng-update/migrations/attribute-selectors.js} +0 -0
  408. /package/schematics/{cdk/schematics/ng-update/migrations/class-inheritance.mjs → cdk2/schematics/ng-update/migrations/class-inheritance.js} +0 -0
  409. /package/schematics/{cdk/schematics/ng-update/migrations/class-names.mjs → cdk2/schematics/ng-update/migrations/class-names.js} +0 -0
  410. /package/schematics/{cdk/schematics/ng-update/migrations/constructor-signature.mjs → cdk2/schematics/ng-update/migrations/constructor-signature.js} +0 -0
  411. /package/schematics/{cdk/schematics/ng-update/migrations/css-selectors.mjs → cdk2/schematics/ng-update/migrations/css-selectors.js} +0 -0
  412. /package/schematics/{cdk/schematics/ng-update/migrations/element-selectors.mjs → cdk2/schematics/ng-update/migrations/element-selectors.js} +0 -0
  413. /package/schematics/{cdk/schematics/ng-update/migrations/input-names.mjs → cdk2/schematics/ng-update/migrations/input-names.js} +0 -0
  414. /package/schematics/{cdk/schematics/ng-update/migrations/method-call-arguments.mjs → cdk2/schematics/ng-update/migrations/method-call-arguments.js} +0 -0
  415. /package/schematics/{cdk/schematics/ng-update/migrations/misc-template.mjs → cdk2/schematics/ng-update/migrations/misc-template.js} +0 -0
  416. /package/schematics/{cdk/schematics/ng-update/migrations/output-names.mjs → cdk2/schematics/ng-update/migrations/output-names.js} +0 -0
  417. /package/schematics/{cdk/schematics/ng-update/migrations/property-names.mjs → cdk2/schematics/ng-update/migrations/property-names.js} +0 -0
  418. /package/schematics/{cdk/schematics/ng-update/migrations/symbol-removal.mjs → cdk2/schematics/ng-update/migrations/symbol-removal.js} +0 -0
  419. /package/schematics/{cdk/schematics/ng-update/public-api.mjs → cdk2/schematics/ng-update/public-api.js} +0 -0
  420. /package/schematics/{cdk/schematics/ng-update/typescript/base-types.mjs → cdk2/schematics/ng-update/typescript/base-types.js} +0 -0
  421. /package/schematics/{cdk/schematics/ng-update/typescript/imports.mjs → cdk2/schematics/ng-update/typescript/imports.js} +0 -0
  422. /package/schematics/{cdk/schematics/ng-update/typescript/literal.mjs → cdk2/schematics/ng-update/typescript/literal.js} +0 -0
  423. /package/schematics/{cdk/schematics/ng-update/typescript/module-specifiers.mjs → cdk2/schematics/ng-update/typescript/module-specifiers.js} +0 -0
  424. /package/schematics/{cdk/schematics/ng-update/upgrade-data.mjs → cdk2/schematics/ng-update/upgrade-data.js} +0 -0
  425. /package/schematics/{cdk/schematics/paths.mjs → cdk2/schematics/paths.js} +0 -0
  426. /package/schematics/{cdk → cdk2}/schematics/schematics.externs.js +0 -0
  427. /package/schematics/{cdk → cdk2}/schematics/tsconfig.json +0 -0
  428. /package/schematics/{cdk/schematics/update-tool/component-resource-collector.mjs → cdk2/schematics/update-tool/component-resource-collector.js} +0 -0
  429. /package/schematics/{cdk/schematics/update-tool/file-system.mjs → cdk2/schematics/update-tool/file-system.js} +0 -0
  430. /package/schematics/{cdk/schematics/update-tool/index.mjs → cdk2/schematics/update-tool/index.js} +0 -0
  431. /package/schematics/{cdk/schematics/update-tool/logger.mjs → cdk2/schematics/update-tool/logger.js} +0 -0
  432. /package/schematics/{cdk/schematics/update-tool/migration.mjs → cdk2/schematics/update-tool/migration.js} +0 -0
  433. /package/schematics/{cdk/schematics/update-tool/public-api.mjs → cdk2/schematics/update-tool/public-api.js} +0 -0
  434. /package/schematics/{cdk/schematics/update-tool/target-version.mjs → cdk2/schematics/update-tool/target-version.js} +0 -0
  435. /package/schematics/{cdk/schematics/update-tool/update-recorder.mjs → cdk2/schematics/update-tool/update-recorder.js} +0 -0
  436. /package/schematics/{cdk → cdk2}/schematics/update-tool/update-tool.externs.js +0 -0
  437. /package/schematics/{cdk/schematics/update-tool/utils/decorators.mjs → cdk2/schematics/update-tool/utils/decorators.js} +0 -0
  438. /package/schematics/{cdk/schematics/update-tool/utils/diagnostics.mjs → cdk2/schematics/update-tool/utils/diagnostics.js} +0 -0
  439. /package/schematics/{cdk/schematics/update-tool/utils/functions.mjs → cdk2/schematics/update-tool/utils/functions.js} +0 -0
  440. /package/schematics/{cdk/schematics/update-tool/utils/imports.mjs → cdk2/schematics/update-tool/utils/imports.js} +0 -0
  441. /package/schematics/{cdk/schematics/update-tool/utils/line-mappings.mjs → cdk2/schematics/update-tool/utils/line-mappings.js} +0 -0
  442. /package/schematics/{cdk/schematics/update-tool/utils/parse-tsconfig.mjs → cdk2/schematics/update-tool/utils/parse-tsconfig.js} +0 -0
  443. /package/schematics/{cdk/schematics/update-tool/utils/property-name.mjs → cdk2/schematics/update-tool/utils/property-name.js} +0 -0
  444. /package/schematics/{cdk/schematics/update-tool/utils/virtual-host.mjs → cdk2/schematics/update-tool/utils/virtual-host.js} +0 -0
  445. /package/schematics/{cdk/schematics/update-tool/version-changes.mjs → cdk2/schematics/update-tool/version-changes.js} +0 -0
  446. /package/schematics/{cdk/schematics/utils/ast/ng-module-imports.mjs → cdk2/schematics/utils/ast/ng-module-imports.js} +0 -0
  447. /package/schematics/{cdk/schematics/utils/ast.mjs → cdk2/schematics/utils/ast.js} +0 -0
  448. /package/schematics/{cdk/schematics/utils/build-component.mjs → cdk2/schematics/utils/build-component.js} +0 -0
  449. /package/schematics/{cdk/schematics/utils/get-project.mjs → cdk2/schematics/utils/get-project.js} +0 -0
  450. /package/schematics/{cdk/schematics/utils/html-manipulation.mjs → cdk2/schematics/utils/html-manipulation.js} +0 -0
  451. /package/schematics/{cdk/schematics/utils/index.mjs → cdk2/schematics/utils/index.js} +0 -0
  452. /package/schematics/{cdk/schematics/utils/parse5-element.mjs → cdk2/schematics/utils/parse5-element.js} +0 -0
  453. /package/schematics/{cdk/schematics/utils/project-index-file.mjs → cdk2/schematics/utils/project-index-file.js} +0 -0
  454. /package/schematics/{cdk/schematics/utils/project-main-file.mjs → cdk2/schematics/utils/project-main-file.js} +0 -0
  455. /package/schematics/{cdk/schematics/utils/project-style-file.mjs → cdk2/schematics/utils/project-style-file.js} +0 -0
  456. /package/schematics/{cdk/schematics/utils/project-targets.mjs → cdk2/schematics/utils/project-targets.js} +0 -0
  457. /package/schematics/{cdk/schematics/utils/project-tsconfig-paths.mjs → cdk2/schematics/utils/project-tsconfig-paths.js} +0 -0
  458. /package/schematics/{cdk/schematics/utils/schematic-options.mjs → cdk2/schematics/utils/schematic-options.js} +0 -0
@@ -0,0 +1,87 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import * as ts from 'typescript';
9
+ import { ResolvedResource } from './component-resource-collector';
10
+ import { FileSystem, WorkspacePath } from './file-system';
11
+ import { UpdateLogger } from './logger';
12
+ import { TargetVersion } from './target-version';
13
+ import { LineAndCharacter } from './utils/line-mappings';
14
+ export interface MigrationFailure {
15
+ filePath: WorkspacePath;
16
+ message: string;
17
+ position?: LineAndCharacter;
18
+ }
19
+ export type PostMigrationAction = void | {
20
+ /** Whether the package manager should run upon migration completion. */
21
+ runPackageManager: boolean;
22
+ };
23
+ /** Creates a constructor type for the specified type. */
24
+ export type Constructor<T> = new (...args: any[]) => T;
25
+ /** Gets a constructor type for the passed migration data. */
26
+ export type MigrationCtor<Data, Context = any> = Constructor<Migration<Data, Context>>;
27
+ export declare abstract class Migration<Data, Context = any> {
28
+ /** TypeScript program for the migration. */
29
+ program: ts.Program;
30
+ /** TypeChecker instance for the analysis program. */
31
+ typeChecker: ts.TypeChecker;
32
+ /**
33
+ * Version for which the migration rule should run. Null if the migration
34
+ * is invoked manually.
35
+ */
36
+ targetVersion: TargetVersion | null;
37
+ /** Context data for the migration. */
38
+ context: Context;
39
+ /** Upgrade data passed to the migration. */
40
+ upgradeData: Data;
41
+ /** File system that can be used for modifying files. */
42
+ fileSystem: FileSystem;
43
+ /** Logger that can be used to print messages as part of the migration. */
44
+ logger: UpdateLogger;
45
+ /** List of migration failures that need to be reported. */
46
+ failures: MigrationFailure[];
47
+ /** Whether the migration is enabled or not. */
48
+ abstract enabled: boolean;
49
+ constructor(
50
+ /** TypeScript program for the migration. */
51
+ program: ts.Program,
52
+ /** TypeChecker instance for the analysis program. */
53
+ typeChecker: ts.TypeChecker,
54
+ /**
55
+ * Version for which the migration rule should run. Null if the migration
56
+ * is invoked manually.
57
+ */
58
+ targetVersion: TargetVersion | null,
59
+ /** Context data for the migration. */
60
+ context: Context,
61
+ /** Upgrade data passed to the migration. */
62
+ upgradeData: Data,
63
+ /** File system that can be used for modifying files. */
64
+ fileSystem: FileSystem,
65
+ /** Logger that can be used to print messages as part of the migration. */
66
+ logger: UpdateLogger);
67
+ /** Method can be used to perform global analysis of the program. */
68
+ init(): void;
69
+ /**
70
+ * Method that will be called once all nodes, templates and stylesheets
71
+ * have been visited.
72
+ */
73
+ postAnalysis(): void;
74
+ /**
75
+ * Method that will be called for each node in a given source file. Unlike tslint, this
76
+ * function will only retrieve TypeScript nodes that need to be casted manually. This
77
+ * allows us to only walk the program source files once per program and not per
78
+ * migration rule (significant performance boost).
79
+ */
80
+ visitNode(node: ts.Node): void;
81
+ /** Method that will be called for each Angular template in the program. */
82
+ visitTemplate(template: ResolvedResource): void;
83
+ /** Method that will be called for each stylesheet in the program. */
84
+ visitStylesheet(stylesheet: ResolvedResource): void;
85
+ /** Creates a failure with a specified message at the given node location. */
86
+ protected createFailureAtNode(node: ts.Node, message: string): void;
87
+ }
@@ -0,0 +1,77 @@
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.Migration = void 0;
11
+ const ts = require("typescript");
12
+ class Migration {
13
+ program;
14
+ typeChecker;
15
+ targetVersion;
16
+ context;
17
+ upgradeData;
18
+ fileSystem;
19
+ logger;
20
+ /** List of migration failures that need to be reported. */
21
+ failures = [];
22
+ constructor(
23
+ /** TypeScript program for the migration. */
24
+ program,
25
+ /** TypeChecker instance for the analysis program. */
26
+ typeChecker,
27
+ /**
28
+ * Version for which the migration rule should run. Null if the migration
29
+ * is invoked manually.
30
+ */
31
+ targetVersion,
32
+ /** Context data for the migration. */
33
+ context,
34
+ /** Upgrade data passed to the migration. */
35
+ upgradeData,
36
+ /** File system that can be used for modifying files. */
37
+ fileSystem,
38
+ /** Logger that can be used to print messages as part of the migration. */
39
+ logger) {
40
+ this.program = program;
41
+ this.typeChecker = typeChecker;
42
+ this.targetVersion = targetVersion;
43
+ this.context = context;
44
+ this.upgradeData = upgradeData;
45
+ this.fileSystem = fileSystem;
46
+ this.logger = logger;
47
+ }
48
+ /** Method can be used to perform global analysis of the program. */
49
+ init() { }
50
+ /**
51
+ * Method that will be called once all nodes, templates and stylesheets
52
+ * have been visited.
53
+ */
54
+ postAnalysis() { }
55
+ /**
56
+ * Method that will be called for each node in a given source file. Unlike tslint, this
57
+ * function will only retrieve TypeScript nodes that need to be casted manually. This
58
+ * allows us to only walk the program source files once per program and not per
59
+ * migration rule (significant performance boost).
60
+ */
61
+ visitNode(node) { }
62
+ /** Method that will be called for each Angular template in the program. */
63
+ visitTemplate(template) { }
64
+ /** Method that will be called for each stylesheet in the program. */
65
+ visitStylesheet(stylesheet) { }
66
+ /** Creates a failure with a specified message at the given node location. */
67
+ createFailureAtNode(node, message) {
68
+ const sourceFile = node.getSourceFile();
69
+ this.failures.push({
70
+ filePath: this.fileSystem.resolve(sourceFile.fileName),
71
+ position: ts.getLineAndCharacterOfPosition(sourceFile, node.getStart()),
72
+ message: message,
73
+ });
74
+ }
75
+ }
76
+ exports.Migration = Migration;
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3VwZGF0ZS10b29sL21pZ3JhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUF1QmpDLE1BQXNCLFNBQVM7SUFTcEI7SUFFQTtJQUtBO0lBRUE7SUFFQTtJQUVBO0lBRUE7SUF2QlQsMkRBQTJEO0lBQzNELFFBQVEsR0FBdUIsRUFBRSxDQUFDO0lBS2xDO0lBQ0UsNENBQTRDO0lBQ3JDLE9BQW1CO0lBQzFCLHFEQUFxRDtJQUM5QyxXQUEyQjtJQUNsQzs7O09BR0c7SUFDSSxhQUFtQztJQUMxQyxzQ0FBc0M7SUFDL0IsT0FBZ0I7SUFDdkIsNENBQTRDO0lBQ3JDLFdBQWlCO0lBQ3hCLHdEQUF3RDtJQUNqRCxVQUFzQjtJQUM3QiwwRUFBMEU7SUFDbkUsTUFBb0I7UUFmcEIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUVuQixnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFLM0Isa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBRW5DLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFFaEIsZ0JBQVcsR0FBWCxXQUFXLENBQU07UUFFakIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUV0QixXQUFNLEdBQU4sTUFBTSxDQUFjO0lBQzFCLENBQUM7SUFFSixvRUFBb0U7SUFDcEUsSUFBSSxLQUFVLENBQUM7SUFFZjs7O09BR0c7SUFDSCxZQUFZLEtBQVUsQ0FBQztJQUV2Qjs7Ozs7T0FLRztJQUNILFNBQVMsQ0FBQyxJQUFhLElBQVMsQ0FBQztJQUVqQywyRUFBMkU7SUFDM0UsYUFBYSxDQUFDLFFBQTBCLElBQVMsQ0FBQztJQUVsRCxxRUFBcUU7SUFDckUsZUFBZSxDQUFDLFVBQTRCLElBQVMsQ0FBQztJQUV0RCw2RUFBNkU7SUFDbkUsbUJBQW1CLENBQUMsSUFBYSxFQUFFLE9BQWU7UUFDMUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQ2pCLFFBQVEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3RELFFBQVEsRUFBRSxFQUFFLENBQUMsNkJBQTZCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN2RSxPQUFPLEVBQUUsT0FBTztTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUEzREQsOEJBMkRDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuL2NvbXBvbmVudC1yZXNvdXJjZS1jb2xsZWN0b3InO1xuaW1wb3J0IHtGaWxlU3lzdGVtLCBXb3Jrc3BhY2VQYXRofSBmcm9tICcuL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7VXBkYXRlTG9nZ2VyfSBmcm9tICcuL2xvZ2dlcic7XG5pbXBvcnQge1RhcmdldFZlcnNpb259IGZyb20gJy4vdGFyZ2V0LXZlcnNpb24nO1xuaW1wb3J0IHtMaW5lQW5kQ2hhcmFjdGVyfSBmcm9tICcuL3V0aWxzL2xpbmUtbWFwcGluZ3MnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1pZ3JhdGlvbkZhaWx1cmUge1xuICBmaWxlUGF0aDogV29ya3NwYWNlUGF0aDtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICBwb3NpdGlvbj86IExpbmVBbmRDaGFyYWN0ZXI7XG59XG5cbmV4cG9ydCB0eXBlIFBvc3RNaWdyYXRpb25BY3Rpb24gPSB2b2lkIHwge1xuICAvKiogV2hldGhlciB0aGUgcGFja2FnZSBtYW5hZ2VyIHNob3VsZCBydW4gdXBvbiBtaWdyYXRpb24gY29tcGxldGlvbi4gKi9cbiAgcnVuUGFja2FnZU1hbmFnZXI6IGJvb2xlYW47XG59O1xuXG4vKiogQ3JlYXRlcyBhIGNvbnN0cnVjdG9yIHR5cGUgZm9yIHRoZSBzcGVjaWZpZWQgdHlwZS4gKi9cbmV4cG9ydCB0eXBlIENvbnN0cnVjdG9yPFQ+ID0gbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gVDtcbi8qKiBHZXRzIGEgY29uc3RydWN0b3IgdHlwZSBmb3IgdGhlIHBhc3NlZCBtaWdyYXRpb24gZGF0YS4gKi9cbmV4cG9ydCB0eXBlIE1pZ3JhdGlvbkN0b3I8RGF0YSwgQ29udGV4dCA9IGFueT4gPSBDb25zdHJ1Y3RvcjxNaWdyYXRpb248RGF0YSwgQ29udGV4dD4+O1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTWlncmF0aW9uPERhdGEsIENvbnRleHQgPSBhbnk+IHtcbiAgLyoqIExpc3Qgb2YgbWlncmF0aW9uIGZhaWx1cmVzIHRoYXQgbmVlZCB0byBiZSByZXBvcnRlZC4gKi9cbiAgZmFpbHVyZXM6IE1pZ3JhdGlvbkZhaWx1cmVbXSA9IFtdO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBtaWdyYXRpb24gaXMgZW5hYmxlZCBvciBub3QuICovXG4gIGFic3RyYWN0IGVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgLyoqIFR5cGVTY3JpcHQgcHJvZ3JhbSBmb3IgdGhlIG1pZ3JhdGlvbi4gKi9cbiAgICBwdWJsaWMgcHJvZ3JhbTogdHMuUHJvZ3JhbSxcbiAgICAvKiogVHlwZUNoZWNrZXIgaW5zdGFuY2UgZm9yIHRoZSBhbmFseXNpcyBwcm9ncmFtLiAqL1xuICAgIHB1YmxpYyB0eXBlQ2hlY2tlcjogdHMuVHlwZUNoZWNrZXIsXG4gICAgLyoqXG4gICAgICogVmVyc2lvbiBmb3Igd2hpY2ggdGhlIG1pZ3JhdGlvbiBydWxlIHNob3VsZCBydW4uIE51bGwgaWYgdGhlIG1pZ3JhdGlvblxuICAgICAqIGlzIGludm9rZWQgbWFudWFsbHkuXG4gICAgICovXG4gICAgcHVibGljIHRhcmdldFZlcnNpb246IFRhcmdldFZlcnNpb24gfCBudWxsLFxuICAgIC8qKiBDb250ZXh0IGRhdGEgZm9yIHRoZSBtaWdyYXRpb24uICovXG4gICAgcHVibGljIGNvbnRleHQ6IENvbnRleHQsXG4gICAgLyoqIFVwZ3JhZGUgZGF0YSBwYXNzZWQgdG8gdGhlIG1pZ3JhdGlvbi4gKi9cbiAgICBwdWJsaWMgdXBncmFkZURhdGE6IERhdGEsXG4gICAgLyoqIEZpbGUgc3lzdGVtIHRoYXQgY2FuIGJlIHVzZWQgZm9yIG1vZGlmeWluZyBmaWxlcy4gKi9cbiAgICBwdWJsaWMgZmlsZVN5c3RlbTogRmlsZVN5c3RlbSxcbiAgICAvKiogTG9nZ2VyIHRoYXQgY2FuIGJlIHVzZWQgdG8gcHJpbnQgbWVzc2FnZXMgYXMgcGFydCBvZiB0aGUgbWlncmF0aW9uLiAqL1xuICAgIHB1YmxpYyBsb2dnZXI6IFVwZGF0ZUxvZ2dlcixcbiAgKSB7fVxuXG4gIC8qKiBNZXRob2QgY2FuIGJlIHVzZWQgdG8gcGVyZm9ybSBnbG9iYWwgYW5hbHlzaXMgb2YgdGhlIHByb2dyYW0uICovXG4gIGluaXQoKTogdm9pZCB7fVxuXG4gIC8qKlxuICAgKiBNZXRob2QgdGhhdCB3aWxsIGJlIGNhbGxlZCBvbmNlIGFsbCBub2RlcywgdGVtcGxhdGVzIGFuZCBzdHlsZXNoZWV0c1xuICAgKiBoYXZlIGJlZW4gdmlzaXRlZC5cbiAgICovXG4gIHBvc3RBbmFseXNpcygpOiB2b2lkIHt9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0aGF0IHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIG5vZGUgaW4gYSBnaXZlbiBzb3VyY2UgZmlsZS4gVW5saWtlIHRzbGludCwgdGhpc1xuICAgKiBmdW5jdGlvbiB3aWxsIG9ubHkgcmV0cmlldmUgVHlwZVNjcmlwdCBub2RlcyB0aGF0IG5lZWQgdG8gYmUgY2FzdGVkIG1hbnVhbGx5LiBUaGlzXG4gICAqIGFsbG93cyB1cyB0byBvbmx5IHdhbGsgdGhlIHByb2dyYW0gc291cmNlIGZpbGVzIG9uY2UgcGVyIHByb2dyYW0gYW5kIG5vdCBwZXJcbiAgICogbWlncmF0aW9uIHJ1bGUgKHNpZ25pZmljYW50IHBlcmZvcm1hbmNlIGJvb3N0KS5cbiAgICovXG4gIHZpc2l0Tm9kZShub2RlOiB0cy5Ob2RlKTogdm9pZCB7fVxuXG4gIC8qKiBNZXRob2QgdGhhdCB3aWxsIGJlIGNhbGxlZCBmb3IgZWFjaCBBbmd1bGFyIHRlbXBsYXRlIGluIHRoZSBwcm9ncmFtLiAqL1xuICB2aXNpdFRlbXBsYXRlKHRlbXBsYXRlOiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7fVxuXG4gIC8qKiBNZXRob2QgdGhhdCB3aWxsIGJlIGNhbGxlZCBmb3IgZWFjaCBzdHlsZXNoZWV0IGluIHRoZSBwcm9ncmFtLiAqL1xuICB2aXNpdFN0eWxlc2hlZXQoc3R5bGVzaGVldDogUmVzb2x2ZWRSZXNvdXJjZSk6IHZvaWQge31cblxuICAvKiogQ3JlYXRlcyBhIGZhaWx1cmUgd2l0aCBhIHNwZWNpZmllZCBtZXNzYWdlIGF0IHRoZSBnaXZlbiBub2RlIGxvY2F0aW9uLiAqL1xuICBwcm90ZWN0ZWQgY3JlYXRlRmFpbHVyZUF0Tm9kZShub2RlOiB0cy5Ob2RlLCBtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBzb3VyY2VGaWxlID0gbm9kZS5nZXRTb3VyY2VGaWxlKCk7XG4gICAgdGhpcy5mYWlsdXJlcy5wdXNoKHtcbiAgICAgIGZpbGVQYXRoOiB0aGlzLmZpbGVTeXN0ZW0ucmVzb2x2ZShzb3VyY2VGaWxlLmZpbGVOYW1lKSxcbiAgICAgIHBvc2l0aW9uOiB0cy5nZXRMaW5lQW5kQ2hhcmFjdGVyT2ZQb3NpdGlvbihzb3VyY2VGaWxlLCBub2RlLmdldFN0YXJ0KCkpLFxuICAgICAgbWVzc2FnZTogbWVzc2FnZSxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,16 @@
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
+ export * from './component-resource-collector';
9
+ export * from './file-system';
10
+ export * from './index';
11
+ export * from './migration';
12
+ export * from './target-version';
13
+ export * from './utils/decorators';
14
+ export * from './utils/imports';
15
+ export * from './utils/property-name';
16
+ export * from './version-changes';
@@ -0,0 +1,33 @@
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
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
16
+ }) : (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ o[k2] = m[k];
19
+ }));
20
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
21
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ __exportStar(require("./component-resource-collector"), exports);
25
+ __exportStar(require("./file-system"), exports);
26
+ __exportStar(require("./index"), exports);
27
+ __exportStar(require("./migration"), exports);
28
+ __exportStar(require("./target-version"), exports);
29
+ __exportStar(require("./utils/decorators"), exports);
30
+ __exportStar(require("./utils/imports"), exports);
31
+ __exportStar(require("./utils/property-name"), exports);
32
+ __exportStar(require("./version-changes"), exports);
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy91cGRhdGUtdG9vbC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCxpRUFBK0M7QUFDL0MsZ0RBQThCO0FBQzlCLDBDQUF3QjtBQUN4Qiw4Q0FBNEI7QUFDNUIsbURBQWlDO0FBQ2pDLHFEQUFtQztBQUNuQyxrREFBZ0M7QUFDaEMsd0RBQXNDO0FBQ3RDLG9EQUFrQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudC1yZXNvdXJjZS1jb2xsZWN0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9maWxlLXN5c3RlbSc7XG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vbWlncmF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vdGFyZ2V0LXZlcnNpb24nO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscy9kZWNvcmF0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvaW1wb3J0cyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL3Byb3BlcnR5LW5hbWUnO1xuZXhwb3J0ICogZnJvbSAnLi92ZXJzaW9uLWNoYW5nZXMnO1xuIl19
@@ -0,0 +1,16 @@
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
+ /** Possible versions that can be automatically migrated by `ng update`. */
9
+ export declare enum TargetVersion {
10
+ V17 = "version 17"
11
+ }
12
+ /**
13
+ * Returns all versions that are supported by "ng update". The versions are determined
14
+ * based on the "TargetVersion" enum.
15
+ */
16
+ export declare function getAllVersionNames(): string[];
@@ -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.getAllVersionNames = exports.TargetVersion = void 0;
11
+ /** Possible versions that can be automatically migrated by `ng update`. */
12
+ // Used in an `Object.keys` call below so it can't be `const enum`.
13
+ // tslint:disable-next-line:prefer-const-enum
14
+ var TargetVersion;
15
+ (function (TargetVersion) {
16
+ TargetVersion["V17"] = "version 17";
17
+ })(TargetVersion || (exports.TargetVersion = TargetVersion = {}));
18
+ /**
19
+ * Returns all versions that are supported by "ng update". The versions are determined
20
+ * based on the "TargetVersion" enum.
21
+ */
22
+ function getAllVersionNames() {
23
+ return Object.keys(TargetVersion).filter(enumValue => {
24
+ return typeof TargetVersion[enumValue] === 'string';
25
+ });
26
+ }
27
+ exports.getAllVersionNames = getAllVersionNames;
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFyZ2V0LXZlcnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvdXBkYXRlLXRvb2wvdGFyZ2V0LXZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsMkVBQTJFO0FBQzNFLG1FQUFtRTtBQUNuRSw2Q0FBNkM7QUFDN0MsSUFBWSxhQUVYO0FBRkQsV0FBWSxhQUFhO0lBQ3ZCLG1DQUFrQixDQUFBO0FBQ3BCLENBQUMsRUFGVyxhQUFhLDZCQUFiLGFBQWEsUUFFeEI7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixrQkFBa0I7SUFDaEMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRTtRQUNuRCxPQUFPLE9BQVEsYUFBb0QsQ0FBQyxTQUFTLENBQUMsS0FBSyxRQUFRLENBQUM7SUFDOUYsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBSkQsZ0RBSUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLyoqIFBvc3NpYmxlIHZlcnNpb25zIHRoYXQgY2FuIGJlIGF1dG9tYXRpY2FsbHkgbWlncmF0ZWQgYnkgYG5nIHVwZGF0ZWAuICovXG4vLyBVc2VkIGluIGFuIGBPYmplY3Qua2V5c2AgY2FsbCBiZWxvdyBzbyBpdCBjYW4ndCBiZSBgY29uc3QgZW51bWAuXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6cHJlZmVyLWNvbnN0LWVudW1cbmV4cG9ydCBlbnVtIFRhcmdldFZlcnNpb24ge1xuICBWMTcgPSAndmVyc2lvbiAxNycsXG59XG5cbi8qKlxuICogUmV0dXJucyBhbGwgdmVyc2lvbnMgdGhhdCBhcmUgc3VwcG9ydGVkIGJ5IFwibmcgdXBkYXRlXCIuIFRoZSB2ZXJzaW9ucyBhcmUgZGV0ZXJtaW5lZFxuICogYmFzZWQgb24gdGhlIFwiVGFyZ2V0VmVyc2lvblwiIGVudW0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBbGxWZXJzaW9uTmFtZXMoKTogc3RyaW5nW10ge1xuICByZXR1cm4gT2JqZWN0LmtleXMoVGFyZ2V0VmVyc2lvbikuZmlsdGVyKGVudW1WYWx1ZSA9PiB7XG4gICAgcmV0dXJuIHR5cGVvZiAoVGFyZ2V0VmVyc2lvbiBhcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCB1bmRlZmluZWQ+KVtlbnVtVmFsdWVdID09PSAnc3RyaW5nJztcbiAgfSk7XG59XG4iXX0=
@@ -0,0 +1,13 @@
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
+ /** Update recorder that can be used to apply changes to a source file. */
9
+ export interface UpdateRecorder {
10
+ insertLeft(index: number, content: string): UpdateRecorder;
11
+ insertRight(index: number, content: string): UpdateRecorder;
12
+ remove(index: number, length: number): UpdateRecorder;
13
+ }
@@ -0,0 +1,10 @@
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
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXJlY29yZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3VwZGF0ZS10b29sL3VwZGF0ZS1yZWNvcmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbi8qKiBVcGRhdGUgcmVjb3JkZXIgdGhhdCBjYW4gYmUgdXNlZCB0byBhcHBseSBjaGFuZ2VzIHRvIGEgc291cmNlIGZpbGUuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVJlY29yZGVyIHtcbiAgaW5zZXJ0TGVmdChpbmRleDogbnVtYmVyLCBjb250ZW50OiBzdHJpbmcpOiBVcGRhdGVSZWNvcmRlcjtcbiAgaW5zZXJ0UmlnaHQoaW5kZXg6IG51bWJlciwgY29udGVudDogc3RyaW5nKTogVXBkYXRlUmVjb3JkZXI7XG4gIHJlbW92ZShpbmRleDogbnVtYmVyLCBsZW5ndGg6IG51bWJlcik6IFVwZGF0ZVJlY29yZGVyO1xufVxuIl19
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import * as ts from 'typescript';
9
+ import { Import } from './imports';
10
+ export type CallExpressionDecorator = ts.Decorator & {
11
+ expression: ts.CallExpression;
12
+ };
13
+ export interface NgDecorator {
14
+ name: string;
15
+ node: CallExpressionDecorator;
16
+ }
17
+ /**
18
+ * Gets all decorators which are imported from an Angular package
19
+ * (e.g. "@angular/core") from a list of decorators.
20
+ */
21
+ export declare function getAngularDecorators(typeChecker: ts.TypeChecker, decorators: readonly ts.Decorator[]): readonly NgDecorator[];
22
+ export declare function getCallDecoratorImport(typeChecker: ts.TypeChecker, decorator: ts.Decorator): Import | null;
@@ -0,0 +1,42 @@
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.getCallDecoratorImport = exports.getAngularDecorators = void 0;
11
+ const ts = require("typescript");
12
+ const imports_1 = require("./imports");
13
+ /**
14
+ * Gets all decorators which are imported from an Angular package
15
+ * (e.g. "@angular/core") from a list of decorators.
16
+ */
17
+ function getAngularDecorators(typeChecker, decorators) {
18
+ return decorators
19
+ .map(node => ({ node, importData: getCallDecoratorImport(typeChecker, node) }))
20
+ .filter(({ importData }) => importData && importData.moduleName.startsWith('@angular/'))
21
+ .map(({ node, importData }) => ({
22
+ node: node,
23
+ name: importData.symbolName,
24
+ }));
25
+ }
26
+ exports.getAngularDecorators = getAngularDecorators;
27
+ function getCallDecoratorImport(typeChecker, decorator) {
28
+ if (!ts.isCallExpression(decorator.expression)) {
29
+ return null;
30
+ }
31
+ const valueExpr = decorator.expression.expression;
32
+ let identifier = null;
33
+ if (ts.isIdentifier(valueExpr)) {
34
+ identifier = valueExpr;
35
+ }
36
+ else if (ts.isPropertyAccessExpression(valueExpr) && ts.isIdentifier(valueExpr.name)) {
37
+ identifier = valueExpr.name;
38
+ }
39
+ return identifier ? (0, imports_1.getImportOfIdentifier)(identifier, typeChecker) : null;
40
+ }
41
+ exports.getCallDecoratorImport = getCallDecoratorImport;
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy91cGRhdGUtdG9vbC91dGlscy9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQUVqQyx1Q0FBd0Q7QUFXeEQ7OztHQUdHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQ2xDLFdBQTJCLEVBQzNCLFVBQW1DO0lBRW5DLE9BQU8sVUFBVTtTQUNkLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsRUFBQyxDQUFDLENBQUM7U0FDNUUsTUFBTSxDQUFDLENBQUMsRUFBQyxVQUFVLEVBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxJQUFJLFVBQVUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3JGLEdBQUcsQ0FBQyxDQUFDLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzVCLElBQUksRUFBRSxJQUErQjtRQUNyQyxJQUFJLEVBQUUsVUFBVyxDQUFDLFVBQVU7S0FDN0IsQ0FBQyxDQUFDLENBQUM7QUFDUixDQUFDO0FBWEQsb0RBV0M7QUFFRCxTQUFnQixzQkFBc0IsQ0FDcEMsV0FBMkIsRUFDM0IsU0FBdUI7SUFFdkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDOUMsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDO0lBQ2xELElBQUksVUFBVSxHQUF5QixJQUFJLENBQUM7SUFDNUMsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQzlCLFVBQVUsR0FBRyxTQUFTLENBQUM7S0FDeEI7U0FBTSxJQUFJLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0RixVQUFVLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQztLQUM3QjtJQUNELE9BQU8sVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFBLCtCQUFxQixFQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQzVFLENBQUM7QUFmRCx3REFlQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtnZXRJbXBvcnRPZklkZW50aWZpZXIsIEltcG9ydH0gZnJvbSAnLi9pbXBvcnRzJztcblxuZXhwb3J0IHR5cGUgQ2FsbEV4cHJlc3Npb25EZWNvcmF0b3IgPSB0cy5EZWNvcmF0b3IgJiB7XG4gIGV4cHJlc3Npb246IHRzLkNhbGxFeHByZXNzaW9uO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBOZ0RlY29yYXRvciB7XG4gIG5hbWU6IHN0cmluZztcbiAgbm9kZTogQ2FsbEV4cHJlc3Npb25EZWNvcmF0b3I7XG59XG5cbi8qKlxuICogR2V0cyBhbGwgZGVjb3JhdG9ycyB3aGljaCBhcmUgaW1wb3J0ZWQgZnJvbSBhbiBBbmd1bGFyIHBhY2thZ2VcbiAqIChlLmcuIFwiQGFuZ3VsYXIvY29yZVwiKSBmcm9tIGEgbGlzdCBvZiBkZWNvcmF0b3JzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QW5ndWxhckRlY29yYXRvcnMoXG4gIHR5cGVDaGVja2VyOiB0cy5UeXBlQ2hlY2tlcixcbiAgZGVjb3JhdG9yczogcmVhZG9ubHkgdHMuRGVjb3JhdG9yW10sXG4pOiByZWFkb25seSBOZ0RlY29yYXRvcltdIHtcbiAgcmV0dXJuIGRlY29yYXRvcnNcbiAgICAubWFwKG5vZGUgPT4gKHtub2RlLCBpbXBvcnREYXRhOiBnZXRDYWxsRGVjb3JhdG9ySW1wb3J0KHR5cGVDaGVja2VyLCBub2RlKX0pKVxuICAgIC5maWx0ZXIoKHtpbXBvcnREYXRhfSkgPT4gaW1wb3J0RGF0YSAmJiBpbXBvcnREYXRhLm1vZHVsZU5hbWUuc3RhcnRzV2l0aCgnQGFuZ3VsYXIvJykpXG4gICAgLm1hcCgoe25vZGUsIGltcG9ydERhdGF9KSA9PiAoe1xuICAgICAgbm9kZTogbm9kZSBhcyBDYWxsRXhwcmVzc2lvbkRlY29yYXRvcixcbiAgICAgIG5hbWU6IGltcG9ydERhdGEhLnN5bWJvbE5hbWUsXG4gICAgfSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FsbERlY29yYXRvckltcG9ydChcbiAgdHlwZUNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLFxuICBkZWNvcmF0b3I6IHRzLkRlY29yYXRvcixcbik6IEltcG9ydCB8IG51bGwge1xuICBpZiAoIXRzLmlzQ2FsbEV4cHJlc3Npb24oZGVjb3JhdG9yLmV4cHJlc3Npb24pKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgY29uc3QgdmFsdWVFeHByID0gZGVjb3JhdG9yLmV4cHJlc3Npb24uZXhwcmVzc2lvbjtcbiAgbGV0IGlkZW50aWZpZXI6IHRzLklkZW50aWZpZXIgfCBudWxsID0gbnVsbDtcbiAgaWYgKHRzLmlzSWRlbnRpZmllcih2YWx1ZUV4cHIpKSB7XG4gICAgaWRlbnRpZmllciA9IHZhbHVlRXhwcjtcbiAgfSBlbHNlIGlmICh0cy5pc1Byb3BlcnR5QWNjZXNzRXhwcmVzc2lvbih2YWx1ZUV4cHIpICYmIHRzLmlzSWRlbnRpZmllcih2YWx1ZUV4cHIubmFtZSkpIHtcbiAgICBpZGVudGlmaWVyID0gdmFsdWVFeHByLm5hbWU7XG4gIH1cbiAgcmV0dXJuIGlkZW50aWZpZXIgPyBnZXRJbXBvcnRPZklkZW50aWZpZXIoaWRlbnRpZmllciwgdHlwZUNoZWNrZXIpIDogbnVsbDtcbn1cbiJdfQ==
@@ -0,0 +1,11 @@
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
+ /** Formats the specified diagnostics with respect to the given file system. */
11
+ export declare function formatDiagnostics(diagnostics: ts.Diagnostic[], fileSystem: FileSystem): string;
@@ -0,0 +1,19 @@
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.formatDiagnostics = void 0;
11
+ const ts = require("typescript");
12
+ const virtual_host_1 = require("./virtual-host");
13
+ /** Formats the specified diagnostics with respect to the given file system. */
14
+ function formatDiagnostics(diagnostics, fileSystem) {
15
+ const formatHost = (0, virtual_host_1.createFormatDiagnosticHost)(fileSystem);
16
+ return ts.formatDiagnosticsWithColorAndContext(diagnostics, formatHost);
17
+ }
18
+ exports.formatDiagnostics = formatDiagnostics;
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ25vc3RpY3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvdXBkYXRlLXRvb2wvdXRpbHMvZGlhZ25vc3RpY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBRWpDLGlEQUEwRDtBQUUxRCwrRUFBK0U7QUFDL0UsU0FBZ0IsaUJBQWlCLENBQUMsV0FBNEIsRUFBRSxVQUFzQjtJQUNwRixNQUFNLFVBQVUsR0FBRyxJQUFBLHlDQUEwQixFQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFELE9BQU8sRUFBRSxDQUFDLG9DQUFvQyxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUMxRSxDQUFDO0FBSEQsOENBR0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQge0ZpbGVTeXN0ZW19IGZyb20gJy4uL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7Y3JlYXRlRm9ybWF0RGlhZ25vc3RpY0hvc3R9IGZyb20gJy4vdmlydHVhbC1ob3N0JztcblxuLyoqIEZvcm1hdHMgdGhlIHNwZWNpZmllZCBkaWFnbm9zdGljcyB3aXRoIHJlc3BlY3QgdG8gdGhlIGdpdmVuIGZpbGUgc3lzdGVtLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdERpYWdub3N0aWNzKGRpYWdub3N0aWNzOiB0cy5EaWFnbm9zdGljW10sIGZpbGVTeXN0ZW06IEZpbGVTeXN0ZW0pOiBzdHJpbmcge1xuICBjb25zdCBmb3JtYXRIb3N0ID0gY3JlYXRlRm9ybWF0RGlhZ25vc3RpY0hvc3QoZmlsZVN5c3RlbSk7XG4gIHJldHVybiB0cy5mb3JtYXREaWFnbm9zdGljc1dpdGhDb2xvckFuZENvbnRleHQoZGlhZ25vc3RpY3MsIGZvcm1hdEhvc3QpO1xufVxuIl19
@@ -0,0 +1,14 @@
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
+ /**
10
+ * Unwraps a given expression TypeScript node. Expressions can be wrapped within multiple
11
+ * parentheses. e.g. "(((({exp}))))()". The function should return the TypeScript node
12
+ * referring to the inner expression. e.g "exp".
13
+ */
14
+ export declare function unwrapExpression(node: ts.Expression | ts.ParenthesizedExpression): ts.Expression;
@@ -0,0 +1,21 @@
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.unwrapExpression = void 0;
11
+ const ts = require("typescript");
12
+ /**
13
+ * Unwraps a given expression TypeScript node. Expressions can be wrapped within multiple
14
+ * parentheses. e.g. "(((({exp}))))()". The function should return the TypeScript node
15
+ * referring to the inner expression. e.g "exp".
16
+ */
17
+ function unwrapExpression(node) {
18
+ return ts.isParenthesizedExpression(node) ? unwrapExpression(node.expression) : node;
19
+ }
20
+ exports.unwrapExpression = unwrapExpression;
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3VwZGF0ZS10b29sL3V0aWxzL2Z1bmN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUFFakM7Ozs7R0FJRztBQUNILFNBQWdCLGdCQUFnQixDQUFDLElBQWdEO0lBQy9FLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUN2RixDQUFDO0FBRkQsNENBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbi8qKlxuICogVW53cmFwcyBhIGdpdmVuIGV4cHJlc3Npb24gVHlwZVNjcmlwdCBub2RlLiBFeHByZXNzaW9ucyBjYW4gYmUgd3JhcHBlZCB3aXRoaW4gbXVsdGlwbGVcbiAqIHBhcmVudGhlc2VzLiBlLmcuIFwiKCgoKHtleHB9KSkpKSgpXCIuIFRoZSBmdW5jdGlvbiBzaG91bGQgcmV0dXJuIHRoZSBUeXBlU2NyaXB0IG5vZGVcbiAqIHJlZmVycmluZyB0byB0aGUgaW5uZXIgZXhwcmVzc2lvbi4gZS5nIFwiZXhwXCIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bndyYXBFeHByZXNzaW9uKG5vZGU6IHRzLkV4cHJlc3Npb24gfCB0cy5QYXJlbnRoZXNpemVkRXhwcmVzc2lvbik6IHRzLkV4cHJlc3Npb24ge1xuICByZXR1cm4gdHMuaXNQYXJlbnRoZXNpemVkRXhwcmVzc2lvbihub2RlKSA/IHVud3JhcEV4cHJlc3Npb24obm9kZS5leHByZXNzaW9uKSA6IG5vZGU7XG59XG4iXX0=
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import * as ts from 'typescript';
9
+ /** Interface describing a resolved import. */
10
+ export interface Import {
11
+ /** Name of the imported symbol. */
12
+ symbolName: string;
13
+ /** Module name from which the symbol has been imported. */
14
+ moduleName: string;
15
+ }
16
+ /** Resolves the import of the specified identifier. */
17
+ export declare function getImportOfIdentifier(node: ts.Identifier, typeChecker: ts.TypeChecker): Import | null;
@@ -0,0 +1,111 @@
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.getImportOfIdentifier = void 0;
11
+ const ts = require("typescript");
12
+ /** Resolves the import of the specified identifier. */
13
+ function getImportOfIdentifier(node, typeChecker) {
14
+ // Free standing identifiers which resolve to an import will be handled
15
+ // as direct imports. e.g. "@Component()" where "Component" is an identifier
16
+ // referring to an import specifier.
17
+ const directImport = getSpecificImportOfIdentifier(node, typeChecker);
18
+ if (directImport !== null) {
19
+ return directImport;
20
+ }
21
+ else if (ts.isQualifiedName(node.parent) && node.parent.right === node) {
22
+ // Determines the import of a qualified name. e.g. "let t: core.Component". In that
23
+ // case, the import of the most left identifier will be determined ("core").
24
+ const qualifierRoot = getQualifiedNameRoot(node.parent);
25
+ if (qualifierRoot) {
26
+ const moduleName = getImportOfNamespacedIdentifier(qualifierRoot, typeChecker);
27
+ if (moduleName) {
28
+ return { moduleName, symbolName: node.text };
29
+ }
30
+ }
31
+ }
32
+ else if (ts.isPropertyAccessExpression(node.parent) && node.parent.name === node) {
33
+ // Determines the import of a property expression. e.g. "@core.Component". In that
34
+ // case, the import of the most left identifier will be determined ("core").
35
+ const rootIdentifier = getPropertyAccessRoot(node.parent);
36
+ if (rootIdentifier) {
37
+ const moduleName = getImportOfNamespacedIdentifier(rootIdentifier, typeChecker);
38
+ if (moduleName) {
39
+ return { moduleName, symbolName: node.text };
40
+ }
41
+ }
42
+ }
43
+ return null;
44
+ }
45
+ exports.getImportOfIdentifier = getImportOfIdentifier;
46
+ /**
47
+ * Resolves the import of the specified identifier. Expects the identifier to resolve
48
+ * to a fine-grained import declaration with import specifiers.
49
+ */
50
+ function getSpecificImportOfIdentifier(node, typeChecker) {
51
+ const symbol = typeChecker.getSymbolAtLocation(node);
52
+ if (!symbol || !symbol.declarations || !symbol.declarations.length) {
53
+ return null;
54
+ }
55
+ const declaration = symbol.declarations[0];
56
+ if (!ts.isImportSpecifier(declaration)) {
57
+ return null;
58
+ }
59
+ // Since the declaration is an import specifier, we can walk up three times to get a reference
60
+ // to the import declaration node (NamedImports -> ImportClause -> ImportDeclaration).
61
+ const importDecl = declaration.parent.parent.parent;
62
+ if (!ts.isStringLiteral(importDecl.moduleSpecifier)) {
63
+ return null;
64
+ }
65
+ return {
66
+ moduleName: importDecl.moduleSpecifier.text,
67
+ symbolName: declaration.propertyName ? declaration.propertyName.text : declaration.name.text,
68
+ };
69
+ }
70
+ /**
71
+ * Resolves the import of the specified identifier. Expects the identifier to
72
+ * resolve to a namespaced import declaration. e.g. "import * as core from ...".
73
+ */
74
+ function getImportOfNamespacedIdentifier(node, typeChecker) {
75
+ const symbol = typeChecker.getSymbolAtLocation(node);
76
+ if (!symbol || !symbol.declarations || !symbol.declarations.length) {
77
+ return null;
78
+ }
79
+ const declaration = symbol.declarations[0];
80
+ if (!ts.isNamespaceImport(declaration)) {
81
+ return null;
82
+ }
83
+ // Since the declaration is a namespace import, we can walk up three times to get a reference
84
+ // to the import declaration node (NamespaceImport -> ImportClause -> ImportDeclaration).
85
+ const importDecl = declaration.parent.parent;
86
+ if (!ts.isStringLiteral(importDecl.moduleSpecifier)) {
87
+ return null;
88
+ }
89
+ return importDecl.moduleSpecifier.text;
90
+ }
91
+ /**
92
+ * Gets the root identifier of a qualified type chain. For example: "core.GestureConfig"
93
+ * will return the "core" identifier. Allowing us to find the import of "core".
94
+ */
95
+ function getQualifiedNameRoot(name) {
96
+ while (ts.isQualifiedName(name.left)) {
97
+ name = name.left;
98
+ }
99
+ return ts.isIdentifier(name.left) ? name.left : null;
100
+ }
101
+ /**
102
+ * Gets the root identifier of a property access chain. For example: "core.GestureConfig"
103
+ * will return the "core" identifier. Allowing us to find the import of "core".
104
+ */
105
+ function getPropertyAccessRoot(node) {
106
+ while (ts.isPropertyAccessExpression(node.expression)) {
107
+ node = node.expression;
108
+ }
109
+ return ts.isIdentifier(node.expression) ? node.expression : null;
110
+ }
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy91cGRhdGUtdG9vbC91dGlscy9pbXBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQVVqQyx1REFBdUQ7QUFDdkQsU0FBZ0IscUJBQXFCLENBQ25DLElBQW1CLEVBQ25CLFdBQTJCO0lBRTNCLHVFQUF1RTtJQUN2RSw0RUFBNEU7SUFDNUUsb0NBQW9DO0lBQ3BDLE1BQU0sWUFBWSxHQUFHLDZCQUE2QixDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN0RSxJQUFJLFlBQVksS0FBSyxJQUFJLEVBQUU7UUFDekIsT0FBTyxZQUFZLENBQUM7S0FDckI7U0FBTSxJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLElBQUksRUFBRTtRQUN4RSxtRkFBbUY7UUFDbkYsNEVBQTRFO1FBQzVFLE1BQU0sYUFBYSxHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4RCxJQUFJLGFBQWEsRUFBRTtZQUNqQixNQUFNLFVBQVUsR0FBRywrQkFBK0IsQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDL0UsSUFBSSxVQUFVLEVBQUU7Z0JBQ2QsT0FBTyxFQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBQyxDQUFDO2FBQzVDO1NBQ0Y7S0FDRjtTQUFNLElBQUksRUFBRSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUU7UUFDbEYsa0ZBQWtGO1FBQ2xGLDRFQUE0RTtRQUM1RSxNQUFNLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUQsSUFBSSxjQUFjLEVBQUU7WUFDbEIsTUFBTSxVQUFVLEdBQUcsK0JBQStCLENBQUMsY0FBYyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQ2hGLElBQUksVUFBVSxFQUFFO2dCQUNkLE9BQU8sRUFBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUMsQ0FBQzthQUM1QztTQUNGO0tBQ0Y7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFoQ0Qsc0RBZ0NDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyw2QkFBNkIsQ0FDcEMsSUFBbUIsRUFDbkIsV0FBMkI7SUFFM0IsTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JELElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7UUFDbEUsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0MsSUFBSSxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUN0QyxPQUFPLElBQUksQ0FBQztLQUNiO0lBQ0QsOEZBQThGO0lBQzlGLHNGQUFzRjtJQUN0RixNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDcEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxFQUFFO1FBQ25ELE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFDRCxPQUFPO1FBQ0wsVUFBVSxFQUFFLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSTtRQUMzQyxVQUFVLEVBQUUsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSTtLQUM3RixDQUFDO0FBQ0osQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQVMsK0JBQStCLENBQ3RDLElBQW1CLEVBQ25CLFdBQTJCO0lBRTNCLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyRCxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFO1FBQ2xFLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFDRCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNDLElBQUksQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLEVBQUU7UUFDdEMsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELDZGQUE2RjtJQUM3Rix5RkFBeUY7SUFDekYsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDN0MsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxFQUFFO1FBQ25ELE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxPQUFPLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO0FBQ3pDLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLG9CQUFvQixDQUFDLElBQXNCO0lBQ2xELE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDcEMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7S0FDbEI7SUFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDdkQsQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQVMscUJBQXFCLENBQUMsSUFBaUM7SUFDOUQsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1FBQ3JELElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO0tBQ3hCO0lBQ0QsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ25FLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbi8qKiBJbnRlcmZhY2UgZGVzY3JpYmluZyBhIHJlc29sdmVkIGltcG9ydC4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW1wb3J0IHtcbiAgLyoqIE5hbWUgb2YgdGhlIGltcG9ydGVkIHN5bWJvbC4gKi9cbiAgc3ltYm9sTmFtZTogc3RyaW5nO1xuICAvKiogTW9kdWxlIG5hbWUgZnJvbSB3aGljaCB0aGUgc3ltYm9sIGhhcyBiZWVuIGltcG9ydGVkLiAqL1xuICBtb2R1bGVOYW1lOiBzdHJpbmc7XG59XG5cbi8qKiBSZXNvbHZlcyB0aGUgaW1wb3J0IG9mIHRoZSBzcGVjaWZpZWQgaWRlbnRpZmllci4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRJbXBvcnRPZklkZW50aWZpZXIoXG4gIG5vZGU6IHRzLklkZW50aWZpZXIsXG4gIHR5cGVDaGVja2VyOiB0cy5UeXBlQ2hlY2tlcixcbik6IEltcG9ydCB8IG51bGwge1xuICAvLyBGcmVlIHN0YW5kaW5nIGlkZW50aWZpZXJzIHdoaWNoIHJlc29sdmUgdG8gYW4gaW1wb3J0IHdpbGwgYmUgaGFuZGxlZFxuICAvLyBhcyBkaXJlY3QgaW1wb3J0cy4gZS5nLiBcIkBDb21wb25lbnQoKVwiIHdoZXJlIFwiQ29tcG9uZW50XCIgaXMgYW4gaWRlbnRpZmllclxuICAvLyByZWZlcnJpbmcgdG8gYW4gaW1wb3J0IHNwZWNpZmllci5cbiAgY29uc3QgZGlyZWN0SW1wb3J0ID0gZ2V0U3BlY2lmaWNJbXBvcnRPZklkZW50aWZpZXIobm9kZSwgdHlwZUNoZWNrZXIpO1xuICBpZiAoZGlyZWN0SW1wb3J0ICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIGRpcmVjdEltcG9ydDtcbiAgfSBlbHNlIGlmICh0cy5pc1F1YWxpZmllZE5hbWUobm9kZS5wYXJlbnQpICYmIG5vZGUucGFyZW50LnJpZ2h0ID09PSBub2RlKSB7XG4gICAgLy8gRGV0ZXJtaW5lcyB0aGUgaW1wb3J0IG9mIGEgcXVhbGlmaWVkIG5hbWUuIGUuZy4gXCJsZXQgdDogY29yZS5Db21wb25lbnRcIi4gSW4gdGhhdFxuICAgIC8vIGNhc2UsIHRoZSBpbXBvcnQgb2YgdGhlIG1vc3QgbGVmdCBpZGVudGlmaWVyIHdpbGwgYmUgZGV0ZXJtaW5lZCAoXCJjb3JlXCIpLlxuICAgIGNvbnN0IHF1YWxpZmllclJvb3QgPSBnZXRRdWFsaWZpZWROYW1lUm9vdChub2RlLnBhcmVudCk7XG4gICAgaWYgKHF1YWxpZmllclJvb3QpIHtcbiAgICAgIGNvbnN0IG1vZHVsZU5hbWUgPSBnZXRJbXBvcnRPZk5hbWVzcGFjZWRJZGVudGlmaWVyKHF1YWxpZmllclJvb3QsIHR5cGVDaGVja2VyKTtcbiAgICAgIGlmIChtb2R1bGVOYW1lKSB7XG4gICAgICAgIHJldHVybiB7bW9kdWxlTmFtZSwgc3ltYm9sTmFtZTogbm9kZS50ZXh0fTtcbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSBpZiAodHMuaXNQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24obm9kZS5wYXJlbnQpICYmIG5vZGUucGFyZW50Lm5hbWUgPT09IG5vZGUpIHtcbiAgICAvLyBEZXRlcm1pbmVzIHRoZSBpbXBvcnQgb2YgYSBwcm9wZXJ0eSBleHByZXNzaW9uLiBlLmcuIFwiQGNvcmUuQ29tcG9uZW50XCIuIEluIHRoYXRcbiAgICAvLyBjYXNlLCB0aGUgaW1wb3J0IG9mIHRoZSBtb3N0IGxlZnQgaWRlbnRpZmllciB3aWxsIGJlIGRldGVybWluZWQgKFwiY29yZVwiKS5cbiAgICBjb25zdCByb290SWRlbnRpZmllciA9IGdldFByb3BlcnR5QWNjZXNzUm9vdChub2RlLnBhcmVudCk7XG4gICAgaWYgKHJvb3RJZGVudGlmaWVyKSB7XG4gICAgICBjb25zdCBtb2R1bGVOYW1lID0gZ2V0SW1wb3J0T2ZOYW1lc3BhY2VkSWRlbnRpZmllcihyb290SWRlbnRpZmllciwgdHlwZUNoZWNrZXIpO1xuICAgICAgaWYgKG1vZHVsZU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHttb2R1bGVOYW1lLCBzeW1ib2xOYW1lOiBub2RlLnRleHR9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgaW1wb3J0IG9mIHRoZSBzcGVjaWZpZWQgaWRlbnRpZmllci4gRXhwZWN0cyB0aGUgaWRlbnRpZmllciB0byByZXNvbHZlXG4gKiB0byBhIGZpbmUtZ3JhaW5lZCBpbXBvcnQgZGVjbGFyYXRpb24gd2l0aCBpbXBvcnQgc3BlY2lmaWVycy5cbiAqL1xuZnVuY3Rpb24gZ2V0U3BlY2lmaWNJbXBvcnRPZklkZW50aWZpZXIoXG4gIG5vZGU6IHRzLklkZW50aWZpZXIsXG4gIHR5cGVDaGVja2VyOiB0cy5UeXBlQ2hlY2tlcixcbik6IEltcG9ydCB8IG51bGwge1xuICBjb25zdCBzeW1ib2wgPSB0eXBlQ2hlY2tlci5nZXRTeW1ib2xBdExvY2F0aW9uKG5vZGUpO1xuICBpZiAoIXN5bWJvbCB8fCAhc3ltYm9sLmRlY2xhcmF0aW9ucyB8fCAhc3ltYm9sLmRlY2xhcmF0aW9ucy5sZW5ndGgpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBkZWNsYXJhdGlvbiA9IHN5bWJvbC5kZWNsYXJhdGlvbnNbMF07XG4gIGlmICghdHMuaXNJbXBvcnRTcGVjaWZpZXIoZGVjbGFyYXRpb24pKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gU2luY2UgdGhlIGRlY2xhcmF0aW9uIGlzIGFuIGltcG9ydCBzcGVjaWZpZXIsIHdlIGNhbiB3YWxrIHVwIHRocmVlIHRpbWVzIHRvIGdldCBhIHJlZmVyZW5jZVxuICAvLyB0byB0aGUgaW1wb3J0IGRlY2xhcmF0aW9uIG5vZGUgKE5hbWVkSW1wb3J0cyAtPiBJbXBvcnRDbGF1c2UgLT4gSW1wb3J0RGVjbGFyYXRpb24pLlxuICBjb25zdCBpbXBvcnREZWNsID0gZGVjbGFyYXRpb24ucGFyZW50LnBhcmVudC5wYXJlbnQ7XG4gIGlmICghdHMuaXNTdHJpbmdMaXRlcmFsKGltcG9ydERlY2wubW9kdWxlU3BlY2lmaWVyKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiB7XG4gICAgbW9kdWxlTmFtZTogaW1wb3J0RGVjbC5tb2R1bGVTcGVjaWZpZXIudGV4dCxcbiAgICBzeW1ib2xOYW1lOiBkZWNsYXJhdGlvbi5wcm9wZXJ0eU5hbWUgPyBkZWNsYXJhdGlvbi5wcm9wZXJ0eU5hbWUudGV4dCA6IGRlY2xhcmF0aW9uLm5hbWUudGV4dCxcbiAgfTtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgaW1wb3J0IG9mIHRoZSBzcGVjaWZpZWQgaWRlbnRpZmllci4gRXhwZWN0cyB0aGUgaWRlbnRpZmllciB0b1xuICogcmVzb2x2ZSB0byBhIG5hbWVzcGFjZWQgaW1wb3J0IGRlY2xhcmF0aW9uLiBlLmcuIFwiaW1wb3J0ICogYXMgY29yZSBmcm9tIC4uLlwiLlxuICovXG5mdW5jdGlvbiBnZXRJbXBvcnRPZk5hbWVzcGFjZWRJZGVudGlmaWVyKFxuICBub2RlOiB0cy5JZGVudGlmaWVyLFxuICB0eXBlQ2hlY2tlcjogdHMuVHlwZUNoZWNrZXIsXG4pOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3Qgc3ltYm9sID0gdHlwZUNoZWNrZXIuZ2V0U3ltYm9sQXRMb2NhdGlvbihub2RlKTtcbiAgaWYgKCFzeW1ib2wgfHwgIXN5bWJvbC5kZWNsYXJhdGlvbnMgfHwgIXN5bWJvbC5kZWNsYXJhdGlvbnMubGVuZ3RoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgY29uc3QgZGVjbGFyYXRpb24gPSBzeW1ib2wuZGVjbGFyYXRpb25zWzBdO1xuICBpZiAoIXRzLmlzTmFtZXNwYWNlSW1wb3J0KGRlY2xhcmF0aW9uKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIC8vIFNpbmNlIHRoZSBkZWNsYXJhdGlvbiBpcyBhIG5hbWVzcGFjZSBpbXBvcnQsIHdlIGNhbiB3YWxrIHVwIHRocmVlIHRpbWVzIHRvIGdldCBhIHJlZmVyZW5jZVxuICAvLyB0byB0aGUgaW1wb3J0IGRlY2xhcmF0aW9uIG5vZGUgKE5hbWVzcGFjZUltcG9ydCAtPiBJbXBvcnRDbGF1c2UgLT4gSW1wb3J0RGVjbGFyYXRpb24pLlxuICBjb25zdCBpbXBvcnREZWNsID0gZGVjbGFyYXRpb24ucGFyZW50LnBhcmVudDtcbiAgaWYgKCF0cy5pc1N0cmluZ0xpdGVyYWwoaW1wb3J0RGVjbC5tb2R1bGVTcGVjaWZpZXIpKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gaW1wb3J0RGVjbC5tb2R1bGVTcGVjaWZpZXIudGV4dDtcbn1cblxuLyoqXG4gKiBHZXRzIHRoZSByb290IGlkZW50aWZpZXIgb2YgYSBxdWFsaWZpZWQgdHlwZSBjaGFpbi4gRm9yIGV4YW1wbGU6IFwiY29yZS5HZXN0dXJlQ29uZmlnXCJcbiAqIHdpbGwgcmV0dXJuIHRoZSBcImNvcmVcIiBpZGVudGlmaWVyLiBBbGxvd2luZyB1cyB0byBmaW5kIHRoZSBpbXBvcnQgb2YgXCJjb3JlXCIuXG4gKi9cbmZ1bmN0aW9uIGdldFF1YWxpZmllZE5hbWVSb290KG5hbWU6IHRzLlF1YWxpZmllZE5hbWUpOiB0cy5JZGVudGlmaWVyIHwgbnVsbCB7XG4gIHdoaWxlICh0cy5pc1F1YWxpZmllZE5hbWUobmFtZS5sZWZ0KSkge1xuICAgIG5hbWUgPSBuYW1lLmxlZnQ7XG4gIH1cbiAgcmV0dXJuIHRzLmlzSWRlbnRpZmllcihuYW1lLmxlZnQpID8gbmFtZS5sZWZ0IDogbnVsbDtcbn1cblxuLyoqXG4gKiBHZXRzIHRoZSByb290IGlkZW50aWZpZXIgb2YgYSBwcm9wZXJ0eSBhY2Nlc3MgY2hhaW4uIEZvciBleGFtcGxlOiBcImNvcmUuR2VzdHVyZUNvbmZpZ1wiXG4gKiB3aWxsIHJldHVybiB0aGUgXCJjb3JlXCIgaWRlbnRpZmllci4gQWxsb3dpbmcgdXMgdG8gZmluZCB0aGUgaW1wb3J0IG9mIFwiY29yZVwiLlxuICovXG5mdW5jdGlvbiBnZXRQcm9wZXJ0eUFjY2Vzc1Jvb3Qobm9kZTogdHMuUHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uKTogdHMuSWRlbnRpZmllciB8IG51bGwge1xuICB3aGlsZSAodHMuaXNQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24obm9kZS5leHByZXNzaW9uKSkge1xuICAgIG5vZGUgPSBub2RlLmV4cHJlc3Npb247XG4gIH1cbiAgcmV0dXJuIHRzLmlzSWRlbnRpZmllcihub2RlLmV4cHJlc3Npb24pID8gbm9kZS5leHByZXNzaW9uIDogbnVsbDtcbn1cbiJdfQ==
@@ -0,0 +1,21 @@
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
+ export interface LineAndCharacter {
9
+ character: number;
10
+ line: number;
11
+ }
12
+ /** Gets the line and character for the given position from the line starts map. */
13
+ export declare function getLineAndCharacterFromPosition(lineStartsMap: number[], position: number): {
14
+ character: number;
15
+ line: number;
16
+ };
17
+ /**
18
+ * Computes the line start map of the given text. This can be used in order to
19
+ * retrieve the line and character of a given text position index.
20
+ */
21
+ export declare function computeLineStartsMap(text: string): number[];