@angular/cdk 20.0.0-next.2 → 20.0.0-next.4

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 (315) hide show
  1. package/dialog/index.d.ts +8 -3
  2. package/drag-drop/index.d.ts +2 -1
  3. package/fesm2022/{a11y-module-e6996d20.mjs → a11y-module-b228dc71.mjs} +29 -29
  4. package/fesm2022/{a11y-module-e6996d20.mjs.map → a11y-module-b228dc71.mjs.map} +1 -1
  5. package/fesm2022/a11y.mjs +20 -20
  6. package/fesm2022/accordion.mjs +12 -12
  7. package/fesm2022/{array-ee3b4bab.mjs → array-88e1bec3.mjs} +1 -1
  8. package/fesm2022/array-88e1bec3.mjs.map +1 -0
  9. package/fesm2022/{bidi-module-0726b65c.mjs → bidi-module-e73b8776.mjs} +9 -9
  10. package/fesm2022/{bidi-module-0726b65c.mjs.map → bidi-module-e73b8776.mjs.map} +1 -1
  11. package/fesm2022/bidi.mjs +2 -2
  12. package/fesm2022/{breakpoints-observer-d4584b66.mjs → breakpoints-observer-9432a91b.mjs} +9 -9
  13. package/fesm2022/{breakpoints-observer-d4584b66.mjs.map → breakpoints-observer-9432a91b.mjs.map} +1 -1
  14. package/fesm2022/cdk.mjs +1 -1
  15. package/fesm2022/cdk.mjs.map +1 -1
  16. package/fesm2022/clipboard.mjs +10 -10
  17. package/fesm2022/coercion.mjs +3 -3
  18. package/fesm2022/coercion.mjs.map +1 -1
  19. package/fesm2022/collections.mjs +1 -1
  20. package/fesm2022/{css-pixel-value-286c9a60.mjs → css-pixel-value-447bbfe8.mjs} +1 -1
  21. package/fesm2022/css-pixel-value-447bbfe8.mjs.map +1 -0
  22. package/fesm2022/dialog.mjs +32 -26
  23. package/fesm2022/dialog.mjs.map +1 -1
  24. package/fesm2022/{directionality-7ea26429.mjs → directionality-ea6ab987.mjs} +4 -4
  25. package/fesm2022/{directionality-7ea26429.mjs.map → directionality-ea6ab987.mjs.map} +1 -1
  26. package/fesm2022/drag-drop.mjs +40 -39
  27. package/fesm2022/drag-drop.mjs.map +1 -1
  28. package/fesm2022/{element-705567fe.mjs → element-08c51fcd.mjs} +1 -1
  29. package/fesm2022/element-08c51fcd.mjs.map +1 -0
  30. package/fesm2022/{focus-monitor-cebaa0d1.mjs → focus-monitor-69f9c0f9.mjs} +12 -12
  31. package/fesm2022/{focus-monitor-cebaa0d1.mjs.map → focus-monitor-69f9c0f9.mjs.map} +1 -1
  32. package/fesm2022/{id-generator-fba495fb.mjs → id-generator-ec45a122.mjs} +4 -4
  33. package/fesm2022/{id-generator-fba495fb.mjs.map → id-generator-ec45a122.mjs.map} +1 -1
  34. package/fesm2022/layout.mjs +7 -7
  35. package/fesm2022/listbox.mjs +14 -14
  36. package/fesm2022/menu.mjs +64 -62
  37. package/fesm2022/menu.mjs.map +1 -1
  38. package/fesm2022/{observe-content-d2a6b5a0.mjs → observe-content-459e1d12.mjs} +15 -15
  39. package/fesm2022/{observe-content-d2a6b5a0.mjs.map → observe-content-459e1d12.mjs.map} +1 -1
  40. package/fesm2022/observers/private.mjs +3 -3
  41. package/fesm2022/observers.mjs +2 -2
  42. package/fesm2022/{overlay-module-863b82c9.mjs → overlay-module-6e7b742f.mjs} +47 -45
  43. package/fesm2022/overlay-module-6e7b742f.mjs.map +1 -0
  44. package/fesm2022/overlay.mjs +15 -15
  45. package/fesm2022/{platform-1be098b0.mjs → platform-2be6a529.mjs} +4 -4
  46. package/fesm2022/{platform-1be098b0.mjs.map → platform-2be6a529.mjs.map} +1 -1
  47. package/fesm2022/platform.mjs +5 -5
  48. package/fesm2022/{portal-directives-c88fea11.mjs → portal-directives-9cd98881.mjs} +18 -18
  49. package/fesm2022/{portal-directives-c88fea11.mjs.map → portal-directives-9cd98881.mjs.map} +1 -1
  50. package/fesm2022/portal.mjs +1 -1
  51. package/fesm2022/private.mjs +2 -2
  52. package/fesm2022/{scrolling-module-aa9eeac5.mjs → scrolling-module-72941c9f.mjs} +41 -41
  53. package/fesm2022/{scrolling-module-aa9eeac5.mjs.map → scrolling-module-72941c9f.mjs.map} +1 -1
  54. package/fesm2022/scrolling.mjs +5 -5
  55. package/fesm2022/stepper.mjs +25 -25
  56. package/fesm2022/{style-loader-e14dc585.mjs → style-loader-9fc0a4d2.mjs} +4 -4
  57. package/fesm2022/{style-loader-e14dc585.mjs.map → style-loader-9fc0a4d2.mjs.map} +1 -1
  58. package/fesm2022/table.mjs +81 -81
  59. package/fesm2022/testing/selenium-webdriver.mjs +1 -1
  60. package/fesm2022/testing/selenium-webdriver.mjs.map +1 -1
  61. package/fesm2022/testing/testbed.mjs +1 -1
  62. package/fesm2022/testing/testbed.mjs.map +1 -1
  63. package/fesm2022/testing.mjs +1 -1
  64. package/fesm2022/text-field.mjs +19 -19
  65. package/fesm2022/{text-filtering-b60ba8a2.mjs → text-filtering-0c6de6d6.mjs} +1 -1
  66. package/fesm2022/text-filtering-0c6de6d6.mjs.map +1 -0
  67. package/fesm2022/tree.mjs +41 -28
  68. package/fesm2022/tree.mjs.map +1 -1
  69. package/fesm2022/{unique-selection-dispatcher-1d6f91d8.mjs → unique-selection-dispatcher-d0d5176e.mjs} +4 -4
  70. package/fesm2022/{unique-selection-dispatcher-1d6f91d8.mjs.map → unique-selection-dispatcher-d0d5176e.mjs.map} +1 -1
  71. package/fesm2022/{visually-hidden-83aea4a0.mjs → visually-hidden-a6df546a.mjs} +4 -4
  72. package/fesm2022/{visually-hidden-83aea4a0.mjs.map → visually-hidden-a6df546a.mjs.map} +1 -1
  73. package/menu/index.d.ts +3 -3
  74. package/overlay/index.d.ts +6 -6
  75. package/{overlay-module.d-5d06db8a.d.ts → overlay-module.d-46197115.d.ts} +4 -2
  76. package/package.json +2 -4
  77. package/portal/index.d.ts +2 -2
  78. package/{portal-directives.d-d345bd53.d.ts → portal-directives.d-fefec9d6.d.ts} +1 -1
  79. package/schematics/index.js +1 -1
  80. package/schematics/index.js.map +1 -0
  81. package/schematics/ng-add/index.js +2 -2
  82. package/schematics/ng-add/index.js.map +1 -0
  83. package/schematics/ng-add/package-config.js +1 -1
  84. package/schematics/ng-add/package-config.js.map +1 -0
  85. package/schematics/ng-add/schema.js +1 -1
  86. package/schematics/ng-add/schema.js.map +1 -0
  87. package/schematics/ng-generate/drag-drop/index.js +15 -6
  88. package/schematics/ng-generate/drag-drop/index.js.map +1 -0
  89. package/schematics/ng-generate/drag-drop/schema.js +1 -1
  90. package/schematics/ng-generate/drag-drop/schema.js.map +1 -0
  91. package/schematics/ng-update/data/attribute-selectors.js +1 -1
  92. package/schematics/ng-update/data/attribute-selectors.js.map +1 -0
  93. package/schematics/ng-update/data/class-names.js +1 -1
  94. package/schematics/ng-update/data/class-names.js.map +1 -0
  95. package/schematics/ng-update/data/constructor-checks.js +1 -1
  96. package/schematics/ng-update/data/constructor-checks.js.map +1 -0
  97. package/schematics/ng-update/data/css-selectors.js +1 -1
  98. package/schematics/ng-update/data/css-selectors.js.map +1 -0
  99. package/schematics/ng-update/data/css-tokens.js +1 -1
  100. package/schematics/ng-update/data/css-tokens.js.map +1 -0
  101. package/schematics/ng-update/data/element-selectors.js +1 -1
  102. package/schematics/ng-update/data/element-selectors.js.map +1 -0
  103. package/schematics/ng-update/data/index.js +1 -1
  104. package/schematics/ng-update/data/index.js.map +1 -0
  105. package/schematics/ng-update/data/input-names.js +1 -1
  106. package/schematics/ng-update/data/input-names.js.map +1 -0
  107. package/schematics/ng-update/data/method-call-checks.js +1 -1
  108. package/schematics/ng-update/data/method-call-checks.js.map +1 -0
  109. package/schematics/ng-update/data/output-names.js +1 -1
  110. package/schematics/ng-update/data/output-names.js.map +1 -0
  111. package/schematics/ng-update/data/property-names.js +1 -1
  112. package/schematics/ng-update/data/property-names.js.map +1 -0
  113. package/schematics/ng-update/data/symbol-removal.js +1 -1
  114. package/schematics/ng-update/data/symbol-removal.js.map +1 -0
  115. package/schematics/ng-update/devkit-file-system.js +2 -3
  116. package/schematics/ng-update/devkit-file-system.js.map +1 -0
  117. package/schematics/ng-update/devkit-migration-rule.js +13 -4
  118. package/schematics/ng-update/devkit-migration-rule.js.map +1 -0
  119. package/schematics/ng-update/devkit-migration.js +1 -1
  120. package/schematics/ng-update/devkit-migration.js.map +1 -0
  121. package/schematics/ng-update/find-stylesheets.js +1 -1
  122. package/schematics/ng-update/find-stylesheets.js.map +1 -0
  123. package/schematics/ng-update/html-parsing/angular.js +1 -1
  124. package/schematics/ng-update/html-parsing/angular.js.map +1 -0
  125. package/schematics/ng-update/html-parsing/elements.js +3 -2
  126. package/schematics/ng-update/html-parsing/elements.js.map +1 -0
  127. package/schematics/ng-update/index.js +1 -1
  128. package/schematics/ng-update/index.js.map +1 -0
  129. package/schematics/ng-update/migrations/attribute-selectors.js +8 -5
  130. package/schematics/ng-update/migrations/attribute-selectors.js.map +1 -0
  131. package/schematics/ng-update/migrations/class-inheritance.js +11 -8
  132. package/schematics/ng-update/migrations/class-inheritance.js.map +1 -0
  133. package/schematics/ng-update/migrations/class-names.js +15 -12
  134. package/schematics/ng-update/migrations/class-names.js.map +1 -0
  135. package/schematics/ng-update/migrations/constructor-signature.js +10 -7
  136. package/schematics/ng-update/migrations/constructor-signature.js.map +1 -0
  137. package/schematics/ng-update/migrations/css-selectors.js +8 -5
  138. package/schematics/ng-update/migrations/css-selectors.js.map +1 -0
  139. package/schematics/ng-update/migrations/css-tokens.js +8 -5
  140. package/schematics/ng-update/migrations/css-tokens.js.map +1 -0
  141. package/schematics/ng-update/migrations/element-selectors.js +8 -5
  142. package/schematics/ng-update/migrations/element-selectors.js.map +1 -0
  143. package/schematics/ng-update/migrations/input-names.js +8 -5
  144. package/schematics/ng-update/migrations/input-names.js.map +1 -0
  145. package/schematics/ng-update/migrations/method-call-arguments.js +8 -5
  146. package/schematics/ng-update/migrations/method-call-arguments.js.map +1 -0
  147. package/schematics/ng-update/migrations/misc-template.js +6 -3
  148. package/schematics/ng-update/migrations/misc-template.js.map +1 -0
  149. package/schematics/ng-update/migrations/output-names.js +8 -5
  150. package/schematics/ng-update/migrations/output-names.js.map +1 -0
  151. package/schematics/ng-update/migrations/property-names.js +8 -5
  152. package/schematics/ng-update/migrations/property-names.js.map +1 -0
  153. package/schematics/ng-update/migrations/symbol-removal.js +10 -6
  154. package/schematics/ng-update/migrations/symbol-removal.js.map +1 -0
  155. package/schematics/ng-update/public-api.js +1 -1
  156. package/schematics/ng-update/public-api.js.map +1 -0
  157. package/schematics/ng-update/typescript/base-types.js +1 -1
  158. package/schematics/ng-update/typescript/base-types.js.map +1 -0
  159. package/schematics/ng-update/typescript/imports.js +1 -1
  160. package/schematics/ng-update/typescript/imports.js.map +1 -0
  161. package/schematics/ng-update/typescript/literal.js +1 -1
  162. package/schematics/ng-update/typescript/literal.js.map +1 -0
  163. package/schematics/ng-update/typescript/module-specifiers.js +1 -1
  164. package/schematics/ng-update/typescript/module-specifiers.js.map +1 -0
  165. package/schematics/ng-update/upgrade-data.js +1 -1
  166. package/schematics/ng-update/upgrade-data.js.map +1 -0
  167. package/schematics/paths.js +1 -1
  168. package/schematics/paths.js.map +1 -0
  169. package/schematics/update-tool/component-resource-collector.js +3 -5
  170. package/schematics/update-tool/component-resource-collector.js.map +1 -0
  171. package/schematics/update-tool/file-system.js +1 -1
  172. package/schematics/update-tool/file-system.js.map +1 -0
  173. package/schematics/update-tool/index.js +2 -8
  174. package/schematics/update-tool/index.js.map +1 -0
  175. package/schematics/update-tool/logger.js +1 -1
  176. package/schematics/update-tool/logger.js.map +1 -0
  177. package/schematics/update-tool/migration.js +3 -10
  178. package/schematics/update-tool/migration.js.map +1 -0
  179. package/schematics/update-tool/public-api.js +1 -1
  180. package/schematics/update-tool/public-api.js.map +1 -0
  181. package/schematics/update-tool/target-version.js +1 -1
  182. package/schematics/update-tool/target-version.js.map +1 -0
  183. package/schematics/update-tool/update-recorder.js +1 -1
  184. package/schematics/update-tool/update-recorder.js.map +1 -0
  185. package/schematics/update-tool/utils/decorators.js +1 -1
  186. package/schematics/update-tool/utils/decorators.js.map +1 -0
  187. package/schematics/update-tool/utils/diagnostics.js +1 -1
  188. package/schematics/update-tool/utils/diagnostics.js.map +1 -0
  189. package/schematics/update-tool/utils/functions.js +1 -1
  190. package/schematics/update-tool/utils/functions.js.map +1 -0
  191. package/schematics/update-tool/utils/imports.js +1 -1
  192. package/schematics/update-tool/utils/imports.js.map +1 -0
  193. package/schematics/update-tool/utils/line-mappings.js +1 -1
  194. package/schematics/update-tool/utils/line-mappings.js.map +1 -0
  195. package/schematics/update-tool/utils/parse-tsconfig.js +1 -1
  196. package/schematics/update-tool/utils/parse-tsconfig.js.map +1 -0
  197. package/schematics/update-tool/utils/property-name.js +1 -1
  198. package/schematics/update-tool/utils/property-name.js.map +1 -0
  199. package/schematics/update-tool/utils/virtual-host.js +2 -3
  200. package/schematics/update-tool/utils/virtual-host.js.map +1 -0
  201. package/schematics/update-tool/version-changes.js +1 -1
  202. package/schematics/update-tool/version-changes.js.map +1 -0
  203. package/schematics/utils/ast/ng-module-imports.js +1 -1
  204. package/schematics/utils/ast/ng-module-imports.js.map +1 -0
  205. package/schematics/utils/ast.js +22 -11
  206. package/schematics/utils/ast.js.map +1 -0
  207. package/schematics/utils/build-component.js +16 -11
  208. package/schematics/utils/build-component.js.map +1 -0
  209. package/schematics/utils/get-project.js +1 -1
  210. package/schematics/utils/get-project.js.map +1 -0
  211. package/schematics/utils/html-manipulation.js +1 -1
  212. package/schematics/utils/html-manipulation.js.map +1 -0
  213. package/schematics/utils/index.js +1 -1
  214. package/schematics/utils/index.js.map +1 -0
  215. package/schematics/utils/parse5-element.js +1 -1
  216. package/schematics/utils/parse5-element.js.map +1 -0
  217. package/schematics/utils/project-index-file.js +2 -2
  218. package/schematics/utils/project-index-file.js.map +1 -0
  219. package/schematics/utils/project-main-file.js +1 -1
  220. package/schematics/utils/project-main-file.js.map +1 -0
  221. package/schematics/utils/project-style-file.js +1 -1
  222. package/schematics/utils/project-style-file.js.map +1 -0
  223. package/schematics/utils/project-targets.js +4 -3
  224. package/schematics/utils/project-targets.js.map +1 -0
  225. package/schematics/utils/project-tsconfig-paths.js +25 -13
  226. package/schematics/utils/project-tsconfig-paths.js.map +1 -0
  227. package/schematics/utils/schematic-options.js +26 -14
  228. package/schematics/utils/schematic-options.js.map +1 -0
  229. package/scrolling/index.d.ts +2 -2
  230. package/{scrolling-module.d-a08a462d.d.ts → scrolling-module.d-e4f8e471.d.ts} +1 -1
  231. package/table/index.d.ts +1 -1
  232. package/tree/index.d.ts +2 -0
  233. package/fesm2022/array-ee3b4bab.mjs.map +0 -1
  234. package/fesm2022/css-pixel-value-286c9a60.mjs.map +0 -1
  235. package/fesm2022/element-705567fe.mjs.map +0 -1
  236. package/fesm2022/overlay-module-863b82c9.mjs.map +0 -1
  237. package/fesm2022/text-filtering-b60ba8a2.mjs.map +0 -1
  238. package/schematics/index.mjs +0 -37
  239. package/schematics/ng-add/index.mjs +0 -39
  240. package/schematics/ng-add/package-config.mjs +0 -51
  241. package/schematics/ng-add/schema.mjs +0 -10
  242. package/schematics/ng-generate/drag-drop/index.mjs +0 -33
  243. package/schematics/ng-generate/drag-drop/schema.mjs +0 -10
  244. package/schematics/ng-update/data/attribute-selectors.mjs +0 -12
  245. package/schematics/ng-update/data/class-names.mjs +0 -12
  246. package/schematics/ng-update/data/constructor-checks.mjs +0 -17
  247. package/schematics/ng-update/data/css-selectors.mjs +0 -12
  248. package/schematics/ng-update/data/css-tokens.mjs +0 -12
  249. package/schematics/ng-update/data/element-selectors.mjs +0 -12
  250. package/schematics/ng-update/data/index.mjs +0 -35
  251. package/schematics/ng-update/data/input-names.mjs +0 -12
  252. package/schematics/ng-update/data/method-call-checks.mjs +0 -12
  253. package/schematics/ng-update/data/output-names.mjs +0 -12
  254. package/schematics/ng-update/data/property-names.mjs +0 -12
  255. package/schematics/ng-update/data/symbol-removal.mjs +0 -12
  256. package/schematics/ng-update/devkit-file-system.mjs +0 -84
  257. package/schematics/ng-update/devkit-migration-rule.mjs +0 -133
  258. package/schematics/ng-update/devkit-migration.mjs +0 -20
  259. package/schematics/ng-update/find-stylesheets.mjs +0 -41
  260. package/schematics/ng-update/html-parsing/angular.mjs +0 -51
  261. package/schematics/ng-update/html-parsing/elements.mjs +0 -62
  262. package/schematics/ng-update/index.mjs +0 -29
  263. package/schematics/ng-update/migrations/attribute-selectors.mjs +0 -68
  264. package/schematics/ng-update/migrations/class-inheritance.mjs +0 -55
  265. package/schematics/ng-update/migrations/class-names.mjs +0 -88
  266. package/schematics/ng-update/migrations/constructor-signature.mjs +0 -136
  267. package/schematics/ng-update/migrations/css-selectors.mjs +0 -72
  268. package/schematics/ng-update/migrations/css-tokens.mjs +0 -80
  269. package/schematics/ng-update/migrations/element-selectors.mjs +0 -63
  270. package/schematics/ng-update/migrations/input-names.mjs +0 -56
  271. package/schematics/ng-update/migrations/method-call-arguments.mjs +0 -59
  272. package/schematics/ng-update/migrations/misc-template.mjs +0 -22
  273. package/schematics/ng-update/migrations/output-names.mjs +0 -43
  274. package/schematics/ng-update/migrations/property-names.mjs +0 -57
  275. package/schematics/ng-update/migrations/symbol-removal.mjs +0 -43
  276. package/schematics/ng-update/public-api.mjs +0 -36
  277. package/schematics/ng-update/typescript/base-types.mjs +0 -23
  278. package/schematics/ng-update/typescript/imports.mjs +0 -53
  279. package/schematics/ng-update/typescript/literal.mjs +0 -32
  280. package/schematics/ng-update/typescript/module-specifiers.mjs +0 -35
  281. package/schematics/ng-update/upgrade-data.mjs +0 -40
  282. package/schematics/paths.mjs +0 -16
  283. package/schematics/schematics.externs.js +0 -0
  284. package/schematics/tsconfig.json +0 -29
  285. package/schematics/update-tool/component-resource-collector.mjs +0 -166
  286. package/schematics/update-tool/file-system.mjs +0 -18
  287. package/schematics/update-tool/index.mjs +0 -178
  288. package/schematics/update-tool/logger.mjs +0 -18
  289. package/schematics/update-tool/migration.mjs +0 -77
  290. package/schematics/update-tool/public-api.mjs +0 -33
  291. package/schematics/update-tool/target-version.mjs +0 -27
  292. package/schematics/update-tool/update-recorder.mjs +0 -10
  293. package/schematics/update-tool/update-tool.externs.js +0 -0
  294. package/schematics/update-tool/utils/decorators.mjs +0 -41
  295. package/schematics/update-tool/utils/diagnostics.mjs +0 -18
  296. package/schematics/update-tool/utils/functions.mjs +0 -20
  297. package/schematics/update-tool/utils/imports.mjs +0 -110
  298. package/schematics/update-tool/utils/line-mappings.mjs +0 -75
  299. package/schematics/update-tool/utils/parse-tsconfig.mjs +0 -45
  300. package/schematics/update-tool/utils/property-name.mjs +0 -27
  301. package/schematics/update-tool/utils/virtual-host.mjs +0 -72
  302. package/schematics/update-tool/version-changes.mjs +0 -38
  303. package/schematics/utils/ast/ng-module-imports.mjs +0 -82
  304. package/schematics/utils/ast.mjs +0 -68
  305. package/schematics/utils/build-component.mjs +0 -183
  306. package/schematics/utils/get-project.mjs +0 -28
  307. package/schematics/utils/html-manipulation.mjs +0 -91
  308. package/schematics/utils/index.mjs +0 -36
  309. package/schematics/utils/parse5-element.mjs +0 -30
  310. package/schematics/utils/project-index-file.mjs +0 -20
  311. package/schematics/utils/project-main-file.mjs +0 -25
  312. package/schematics/utils/project-style-file.mjs +0 -42
  313. package/schematics/utils/project-targets.mjs +0 -39
  314. package/schematics/utils/project-tsconfig-paths.mjs +0 -34
  315. package/schematics/utils/schematic-options.mjs +0 -77
@@ -1,20 +0,0 @@
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.dev/license
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.getProjectIndexFiles = getProjectIndexFiles;
11
- const project_targets_1 = require("./project-targets");
12
- /** Gets the path of the index file in the given project. */
13
- function getProjectIndexFiles(project) {
14
- const paths = (0, project_targets_1.getProjectBuildTargets)(project)
15
- .filter(t => t.options?.['index'])
16
- .map(t => t.options['index']);
17
- // Use a set to remove duplicate index files referenced in multiple build targets of a project.
18
- return Array.from(new Set(paths));
19
- }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1pbmRleC1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3V0aWxzL3Byb2plY3QtaW5kZXgtZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOztBQU1ILG9EQU9DO0FBVkQsdURBQXlEO0FBRXpELDREQUE0RDtBQUM1RCxTQUFnQixvQkFBb0IsQ0FBQyxPQUFxQztJQUN4RSxNQUFNLEtBQUssR0FBRyxJQUFBLHdDQUFzQixFQUFDLE9BQU8sQ0FBQztTQUMxQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQVEsQ0FBQyxPQUFPLENBQVMsQ0FBQyxDQUFDO0lBRXpDLCtGQUErRjtJQUMvRixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1BhdGgsIHdvcmtzcGFjZXN9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9jb3JlJztcbmltcG9ydCB7Z2V0UHJvamVjdEJ1aWxkVGFyZ2V0c30gZnJvbSAnLi9wcm9qZWN0LXRhcmdldHMnO1xuXG4vKiogR2V0cyB0aGUgcGF0aCBvZiB0aGUgaW5kZXggZmlsZSBpbiB0aGUgZ2l2ZW4gcHJvamVjdC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcm9qZWN0SW5kZXhGaWxlcyhwcm9qZWN0OiB3b3Jrc3BhY2VzLlByb2plY3REZWZpbml0aW9uKTogUGF0aFtdIHtcbiAgY29uc3QgcGF0aHMgPSBnZXRQcm9qZWN0QnVpbGRUYXJnZXRzKHByb2plY3QpXG4gICAgLmZpbHRlcih0ID0+IHQub3B0aW9ucz8uWydpbmRleCddKVxuICAgIC5tYXAodCA9PiB0Lm9wdGlvbnMhWydpbmRleCddIGFzIFBhdGgpO1xuXG4gIC8vIFVzZSBhIHNldCB0byByZW1vdmUgZHVwbGljYXRlIGluZGV4IGZpbGVzIHJlZmVyZW5jZWQgaW4gbXVsdGlwbGUgYnVpbGQgdGFyZ2V0cyBvZiBhIHByb2plY3QuXG4gIHJldHVybiBBcnJheS5mcm9tKG5ldyBTZXQocGF0aHMpKTtcbn1cbiJdfQ==
@@ -1,25 +0,0 @@
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.dev/license
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.getProjectMainFile = getProjectMainFile;
11
- const schematics_1 = require("@angular-devkit/schematics");
12
- const project_targets_1 = require("./project-targets");
13
- /** Looks for the main TypeScript file in the given project and returns its path. */
14
- function getProjectMainFile(project) {
15
- const buildOptions = (0, project_targets_1.getProjectTargetOptions)(project, 'build');
16
- // `browser` is for the `@angular-devkit/build-angular:application` builder while
17
- // `main` is for the `@angular-devkit/build-angular:browser` builder.
18
- const mainPath = (buildOptions['browser'] || buildOptions['main']);
19
- if (!mainPath) {
20
- throw new schematics_1.SchematicsException(`Could not find the project main file inside of the ` +
21
- `workspace config (${project.sourceRoot})`);
22
- }
23
- return mainPath;
24
- }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1tYWluLWZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvdXRpbHMvcHJvamVjdC1tYWluLWZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7QUFPSCxnREFlQztBQW5CRCwyREFBK0Q7QUFDL0QsdURBQTBEO0FBRTFELG9GQUFvRjtBQUNwRixTQUFnQixrQkFBa0IsQ0FBQyxPQUFxQztJQUN0RSxNQUFNLFlBQVksR0FBRyxJQUFBLHlDQUF1QixFQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUUvRCxpRkFBaUY7SUFDakYscUVBQXFFO0lBQ3JFLE1BQU0sUUFBUSxHQUFHLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBcUIsQ0FBQztJQUV2RixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDZCxNQUFNLElBQUksZ0NBQW1CLENBQzNCLHFEQUFxRDtZQUNuRCxxQkFBcUIsT0FBTyxDQUFDLFVBQVUsR0FBRyxDQUM3QyxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZVxuICovXG5cbmltcG9ydCB7UGF0aCwgd29ya3NwYWNlc30gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2NvcmUnO1xuaW1wb3J0IHtTY2hlbWF0aWNzRXhjZXB0aW9ufSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcyc7XG5pbXBvcnQge2dldFByb2plY3RUYXJnZXRPcHRpb25zfSBmcm9tICcuL3Byb2plY3QtdGFyZ2V0cyc7XG5cbi8qKiBMb29rcyBmb3IgdGhlIG1haW4gVHlwZVNjcmlwdCBmaWxlIGluIHRoZSBnaXZlbiBwcm9qZWN0IGFuZCByZXR1cm5zIGl0cyBwYXRoLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFByb2plY3RNYWluRmlsZShwcm9qZWN0OiB3b3Jrc3BhY2VzLlByb2plY3REZWZpbml0aW9uKTogUGF0aCB7XG4gIGNvbnN0IGJ1aWxkT3B0aW9ucyA9IGdldFByb2plY3RUYXJnZXRPcHRpb25zKHByb2plY3QsICdidWlsZCcpO1xuXG4gIC8vIGBicm93c2VyYCBpcyBmb3IgdGhlIGBAYW5ndWxhci1kZXZraXQvYnVpbGQtYW5ndWxhcjphcHBsaWNhdGlvbmAgYnVpbGRlciB3aGlsZVxuICAvLyBgbWFpbmAgaXMgZm9yIHRoZSBgQGFuZ3VsYXItZGV2a2l0L2J1aWxkLWFuZ3VsYXI6YnJvd3NlcmAgYnVpbGRlci5cbiAgY29uc3QgbWFpblBhdGggPSAoYnVpbGRPcHRpb25zWydicm93c2VyJ10gfHwgYnVpbGRPcHRpb25zWydtYWluJ10pIGFzIFBhdGggfCB1bmRlZmluZWQ7XG5cbiAgaWYgKCFtYWluUGF0aCkge1xuICAgIHRocm93IG5ldyBTY2hlbWF0aWNzRXhjZXB0aW9uKFxuICAgICAgYENvdWxkIG5vdCBmaW5kIHRoZSBwcm9qZWN0IG1haW4gZmlsZSBpbnNpZGUgb2YgdGhlIGAgK1xuICAgICAgICBgd29ya3NwYWNlIGNvbmZpZyAoJHtwcm9qZWN0LnNvdXJjZVJvb3R9KWAsXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBtYWluUGF0aDtcbn1cbiJdfQ==
@@ -1,42 +0,0 @@
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.dev/license
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.getProjectStyleFile = getProjectStyleFile;
11
- const core_1 = require("@angular-devkit/core");
12
- const project_targets_1 = require("./project-targets");
13
- /** Regular expression that matches all possible Angular CLI default style files. */
14
- const defaultStyleFileRegex = /styles\.(c|le|sc)ss/;
15
- /** Regular expression that matches all files that have a proper stylesheet extension. */
16
- const validStyleFileRegex = /\.(c|le|sc)ss/;
17
- /**
18
- * Gets a style file with the given extension in a project and returns its path. If no
19
- * extension is specified, any style file with a valid extension will be returned.
20
- */
21
- function getProjectStyleFile(project, extension) {
22
- const buildOptions = (0, project_targets_1.getProjectTargetOptions)(project, 'build');
23
- const buildStyles = buildOptions['styles'];
24
- if (buildStyles && (0, core_1.isJsonArray)(buildStyles) && buildStyles.length) {
25
- const styles = buildStyles.map(s => (typeof s === 'string' ? s : s.input));
26
- // Look for the default style file that is generated for new projects by the Angular CLI. This
27
- // default style file is usually called `styles.ext` unless it has been changed explicitly.
28
- const defaultMainStylePath = styles.find(file => extension ? file === `styles.${extension}` : defaultStyleFileRegex.test(file));
29
- if (defaultMainStylePath) {
30
- return (0, core_1.normalize)(defaultMainStylePath);
31
- }
32
- // If no default style file could be found, use the first style file that matches the given
33
- // extension. If no extension specified explicitly, we look for any file with a valid style
34
- // file extension.
35
- const fallbackStylePath = styles.find(file => extension ? file.endsWith(`.${extension}`) : validStyleFileRegex.test(file));
36
- if (fallbackStylePath) {
37
- return (0, core_1.normalize)(fallbackStylePath);
38
- }
39
- }
40
- return null;
41
- }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1zdHlsZS1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3V0aWxzL3Byb2plY3Qtc3R5bGUtZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOztBQWVILGtEQWlDQztBQTlDRCwrQ0FBd0U7QUFDeEUsdURBQTBEO0FBRTFELG9GQUFvRjtBQUNwRixNQUFNLHFCQUFxQixHQUFHLHFCQUFxQixDQUFDO0FBRXBELHlGQUF5RjtBQUN6RixNQUFNLG1CQUFtQixHQUFHLGVBQWUsQ0FBQztBQUU1Qzs7O0dBR0c7QUFDSCxTQUFnQixtQkFBbUIsQ0FDakMsT0FBcUMsRUFDckMsU0FBa0I7SUFFbEIsTUFBTSxZQUFZLEdBQUcsSUFBQSx5Q0FBdUIsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDL0QsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTNDLElBQUksV0FBVyxJQUFJLElBQUEsa0JBQVcsRUFBQyxXQUFXLENBQUMsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbEUsTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFFLENBQXFCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUVoRyw4RkFBOEY7UUFDOUYsMkZBQTJGO1FBQzNGLE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUM5QyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxVQUFVLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQzlFLENBQUM7UUFFRixJQUFJLG9CQUFvQixFQUFFLENBQUM7WUFDekIsT0FBTyxJQUFBLGdCQUFTLEVBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBRUQsMkZBQTJGO1FBQzNGLDJGQUEyRjtRQUMzRixrQkFBa0I7UUFDbEIsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQzNDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDNUUsQ0FBQztRQUVGLElBQUksaUJBQWlCLEVBQUUsQ0FBQztZQUN0QixPQUFPLElBQUEsZ0JBQVMsRUFBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2lzSnNvbkFycmF5LCBub3JtYWxpemUsIHdvcmtzcGFjZXN9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9jb3JlJztcbmltcG9ydCB7Z2V0UHJvamVjdFRhcmdldE9wdGlvbnN9IGZyb20gJy4vcHJvamVjdC10YXJnZXRzJztcblxuLyoqIFJlZ3VsYXIgZXhwcmVzc2lvbiB0aGF0IG1hdGNoZXMgYWxsIHBvc3NpYmxlIEFuZ3VsYXIgQ0xJIGRlZmF1bHQgc3R5bGUgZmlsZXMuICovXG5jb25zdCBkZWZhdWx0U3R5bGVGaWxlUmVnZXggPSAvc3R5bGVzXFwuKGN8bGV8c2Mpc3MvO1xuXG4vKiogUmVndWxhciBleHByZXNzaW9uIHRoYXQgbWF0Y2hlcyBhbGwgZmlsZXMgdGhhdCBoYXZlIGEgcHJvcGVyIHN0eWxlc2hlZXQgZXh0ZW5zaW9uLiAqL1xuY29uc3QgdmFsaWRTdHlsZUZpbGVSZWdleCA9IC9cXC4oY3xsZXxzYylzcy87XG5cbi8qKlxuICogR2V0cyBhIHN0eWxlIGZpbGUgd2l0aCB0aGUgZ2l2ZW4gZXh0ZW5zaW9uIGluIGEgcHJvamVjdCBhbmQgcmV0dXJucyBpdHMgcGF0aC4gSWYgbm9cbiAqIGV4dGVuc2lvbiBpcyBzcGVjaWZpZWQsIGFueSBzdHlsZSBmaWxlIHdpdGggYSB2YWxpZCBleHRlbnNpb24gd2lsbCBiZSByZXR1cm5lZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFByb2plY3RTdHlsZUZpbGUoXG4gIHByb2plY3Q6IHdvcmtzcGFjZXMuUHJvamVjdERlZmluaXRpb24sXG4gIGV4dGVuc2lvbj86IHN0cmluZyxcbik6IHN0cmluZyB8IG51bGwge1xuICBjb25zdCBidWlsZE9wdGlvbnMgPSBnZXRQcm9qZWN0VGFyZ2V0T3B0aW9ucyhwcm9qZWN0LCAnYnVpbGQnKTtcbiAgY29uc3QgYnVpbGRTdHlsZXMgPSBidWlsZE9wdGlvbnNbJ3N0eWxlcyddO1xuXG4gIGlmIChidWlsZFN0eWxlcyAmJiBpc0pzb25BcnJheShidWlsZFN0eWxlcykgJiYgYnVpbGRTdHlsZXMubGVuZ3RoKSB7XG4gICAgY29uc3Qgc3R5bGVzID0gYnVpbGRTdHlsZXMubWFwKHMgPT4gKHR5cGVvZiBzID09PSAnc3RyaW5nJyA/IHMgOiAocyBhcyB7aW5wdXQ6IHN0cmluZ30pLmlucHV0KSk7XG5cbiAgICAvLyBMb29rIGZvciB0aGUgZGVmYXVsdCBzdHlsZSBmaWxlIHRoYXQgaXMgZ2VuZXJhdGVkIGZvciBuZXcgcHJvamVjdHMgYnkgdGhlIEFuZ3VsYXIgQ0xJLiBUaGlzXG4gICAgLy8gZGVmYXVsdCBzdHlsZSBmaWxlIGlzIHVzdWFsbHkgY2FsbGVkIGBzdHlsZXMuZXh0YCB1bmxlc3MgaXQgaGFzIGJlZW4gY2hhbmdlZCBleHBsaWNpdGx5LlxuICAgIGNvbnN0IGRlZmF1bHRNYWluU3R5bGVQYXRoID0gc3R5bGVzLmZpbmQoZmlsZSA9PlxuICAgICAgZXh0ZW5zaW9uID8gZmlsZSA9PT0gYHN0eWxlcy4ke2V4dGVuc2lvbn1gIDogZGVmYXVsdFN0eWxlRmlsZVJlZ2V4LnRlc3QoZmlsZSksXG4gICAgKTtcblxuICAgIGlmIChkZWZhdWx0TWFpblN0eWxlUGF0aCkge1xuICAgICAgcmV0dXJuIG5vcm1hbGl6ZShkZWZhdWx0TWFpblN0eWxlUGF0aCk7XG4gICAgfVxuXG4gICAgLy8gSWYgbm8gZGVmYXVsdCBzdHlsZSBmaWxlIGNvdWxkIGJlIGZvdW5kLCB1c2UgdGhlIGZpcnN0IHN0eWxlIGZpbGUgdGhhdCBtYXRjaGVzIHRoZSBnaXZlblxuICAgIC8vIGV4dGVuc2lvbi4gSWYgbm8gZXh0ZW5zaW9uIHNwZWNpZmllZCBleHBsaWNpdGx5LCB3ZSBsb29rIGZvciBhbnkgZmlsZSB3aXRoIGEgdmFsaWQgc3R5bGVcbiAgICAvLyBmaWxlIGV4dGVuc2lvbi5cbiAgICBjb25zdCBmYWxsYmFja1N0eWxlUGF0aCA9IHN0eWxlcy5maW5kKGZpbGUgPT5cbiAgICAgIGV4dGVuc2lvbiA/IGZpbGUuZW5kc1dpdGgoYC4ke2V4dGVuc2lvbn1gKSA6IHZhbGlkU3R5bGVGaWxlUmVnZXgudGVzdChmaWxlKSxcbiAgICApO1xuXG4gICAgaWYgKGZhbGxiYWNrU3R5bGVQYXRoKSB7XG4gICAgICByZXR1cm4gbm9ybWFsaXplKGZhbGxiYWNrU3R5bGVQYXRoKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cbiJdfQ==
@@ -1,39 +0,0 @@
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.dev/license
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.getProjectTargetOptions = getProjectTargetOptions;
11
- exports.getProjectBuildTargets = getProjectBuildTargets;
12
- exports.getProjectTestTargets = getProjectTestTargets;
13
- const schematics_1 = require("@angular-devkit/schematics");
14
- /** Resolves the architect options for the build target of the given project. */
15
- function getProjectTargetOptions(project, buildTarget) {
16
- const options = project.targets?.get(buildTarget)?.options;
17
- if (!options) {
18
- throw new schematics_1.SchematicsException(`Cannot determine project target configuration for: ${buildTarget}.`);
19
- }
20
- return options;
21
- }
22
- /** Gets all of the default CLI-provided build targets in a project. */
23
- function getProjectBuildTargets(project) {
24
- return getTargetsByBuilderName(project, builder => builder === '@angular-devkit/build-angular:application' ||
25
- builder === '@angular-devkit/build-angular:browser' ||
26
- builder === '@angular-devkit/build-angular:browser-esbuild' ||
27
- builder === '@angular/build:application');
28
- }
29
- /** Gets all of the default CLI-provided testing targets in a project. */
30
- function getProjectTestTargets(project) {
31
- return getTargetsByBuilderName(project, builder => builder === '@angular-devkit/build-angular:karma');
32
- }
33
- /** Gets all targets from the given project that pass a predicate check. */
34
- function getTargetsByBuilderName(project, predicate) {
35
- return Array.from(project.targets.keys())
36
- .filter(name => predicate(project.targets.get(name)?.builder))
37
- .map(name => project.targets.get(name));
38
- }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC10YXJnZXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL3V0aWxzL3Byb2plY3QtdGFyZ2V0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOztBQU1ILDBEQWFDO0FBR0Qsd0RBV0M7QUFHRCxzREFPQztBQXhDRCwyREFBK0Q7QUFFL0QsZ0ZBQWdGO0FBQ2hGLFNBQWdCLHVCQUF1QixDQUNyQyxPQUFxQyxFQUNyQyxXQUFtQjtJQUVuQixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFM0QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2IsTUFBTSxJQUFJLGdDQUFtQixDQUMzQixzREFBc0QsV0FBVyxHQUFHLENBQ3JFLENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUVELHVFQUF1RTtBQUN2RSxTQUFnQixzQkFBc0IsQ0FDcEMsT0FBcUM7SUFFckMsT0FBTyx1QkFBdUIsQ0FDNUIsT0FBTyxFQUNQLE9BQU8sQ0FBQyxFQUFFLENBQ1IsT0FBTyxLQUFLLDJDQUEyQztRQUN2RCxPQUFPLEtBQUssdUNBQXVDO1FBQ25ELE9BQU8sS0FBSywrQ0FBK0M7UUFDM0QsT0FBTyxLQUFLLDRCQUE0QixDQUMzQyxDQUFDO0FBQ0osQ0FBQztBQUVELHlFQUF5RTtBQUN6RSxTQUFnQixxQkFBcUIsQ0FDbkMsT0FBcUM7SUFFckMsT0FBTyx1QkFBdUIsQ0FDNUIsT0FBTyxFQUNQLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxLQUFLLHFDQUFxQyxDQUM3RCxDQUFDO0FBQ0osQ0FBQztBQUVELDJFQUEyRTtBQUMzRSxTQUFTLHVCQUF1QixDQUM5QixPQUFxQyxFQUNyQyxTQUFnRDtJQUVoRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUN0QyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDN0QsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFFLENBQUMsQ0FBQztBQUM3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0pzb25WYWx1ZSwgd29ya3NwYWNlc30gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2NvcmUnO1xuaW1wb3J0IHtTY2hlbWF0aWNzRXhjZXB0aW9ufSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcyc7XG5cbi8qKiBSZXNvbHZlcyB0aGUgYXJjaGl0ZWN0IG9wdGlvbnMgZm9yIHRoZSBidWlsZCB0YXJnZXQgb2YgdGhlIGdpdmVuIHByb2plY3QuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHJvamVjdFRhcmdldE9wdGlvbnMoXG4gIHByb2plY3Q6IHdvcmtzcGFjZXMuUHJvamVjdERlZmluaXRpb24sXG4gIGJ1aWxkVGFyZ2V0OiBzdHJpbmcsXG4pOiBSZWNvcmQ8c3RyaW5nLCBKc29uVmFsdWUgfCB1bmRlZmluZWQ+IHtcbiAgY29uc3Qgb3B0aW9ucyA9IHByb2plY3QudGFyZ2V0cz8uZ2V0KGJ1aWxkVGFyZ2V0KT8ub3B0aW9ucztcblxuICBpZiAoIW9wdGlvbnMpIHtcbiAgICB0aHJvdyBuZXcgU2NoZW1hdGljc0V4Y2VwdGlvbihcbiAgICAgIGBDYW5ub3QgZGV0ZXJtaW5lIHByb2plY3QgdGFyZ2V0IGNvbmZpZ3VyYXRpb24gZm9yOiAke2J1aWxkVGFyZ2V0fS5gLFxuICAgICk7XG4gIH1cblxuICByZXR1cm4gb3B0aW9ucztcbn1cblxuLyoqIEdldHMgYWxsIG9mIHRoZSBkZWZhdWx0IENMSS1wcm92aWRlZCBidWlsZCB0YXJnZXRzIGluIGEgcHJvamVjdC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcm9qZWN0QnVpbGRUYXJnZXRzKFxuICBwcm9qZWN0OiB3b3Jrc3BhY2VzLlByb2plY3REZWZpbml0aW9uLFxuKTogd29ya3NwYWNlcy5UYXJnZXREZWZpbml0aW9uW10ge1xuICByZXR1cm4gZ2V0VGFyZ2V0c0J5QnVpbGRlck5hbWUoXG4gICAgcHJvamVjdCxcbiAgICBidWlsZGVyID0+XG4gICAgICBidWlsZGVyID09PSAnQGFuZ3VsYXItZGV2a2l0L2J1aWxkLWFuZ3VsYXI6YXBwbGljYXRpb24nIHx8XG4gICAgICBidWlsZGVyID09PSAnQGFuZ3VsYXItZGV2a2l0L2J1aWxkLWFuZ3VsYXI6YnJvd3NlcicgfHxcbiAgICAgIGJ1aWxkZXIgPT09ICdAYW5ndWxhci1kZXZraXQvYnVpbGQtYW5ndWxhcjpicm93c2VyLWVzYnVpbGQnIHx8XG4gICAgICBidWlsZGVyID09PSAnQGFuZ3VsYXIvYnVpbGQ6YXBwbGljYXRpb24nLFxuICApO1xufVxuXG4vKiogR2V0cyBhbGwgb2YgdGhlIGRlZmF1bHQgQ0xJLXByb3ZpZGVkIHRlc3RpbmcgdGFyZ2V0cyBpbiBhIHByb2plY3QuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHJvamVjdFRlc3RUYXJnZXRzKFxuICBwcm9qZWN0OiB3b3Jrc3BhY2VzLlByb2plY3REZWZpbml0aW9uLFxuKTogd29ya3NwYWNlcy5UYXJnZXREZWZpbml0aW9uW10ge1xuICByZXR1cm4gZ2V0VGFyZ2V0c0J5QnVpbGRlck5hbWUoXG4gICAgcHJvamVjdCxcbiAgICBidWlsZGVyID0+IGJ1aWxkZXIgPT09ICdAYW5ndWxhci1kZXZraXQvYnVpbGQtYW5ndWxhcjprYXJtYScsXG4gICk7XG59XG5cbi8qKiBHZXRzIGFsbCB0YXJnZXRzIGZyb20gdGhlIGdpdmVuIHByb2plY3QgdGhhdCBwYXNzIGEgcHJlZGljYXRlIGNoZWNrLiAqL1xuZnVuY3Rpb24gZ2V0VGFyZ2V0c0J5QnVpbGRlck5hbWUoXG4gIHByb2plY3Q6IHdvcmtzcGFjZXMuUHJvamVjdERlZmluaXRpb24sXG4gIHByZWRpY2F0ZTogKG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgPT4gYm9vbGVhbixcbik6IHdvcmtzcGFjZXMuVGFyZ2V0RGVmaW5pdGlvbltdIHtcbiAgcmV0dXJuIEFycmF5LmZyb20ocHJvamVjdC50YXJnZXRzLmtleXMoKSlcbiAgICAuZmlsdGVyKG5hbWUgPT4gcHJlZGljYXRlKHByb2plY3QudGFyZ2V0cy5nZXQobmFtZSk/LmJ1aWxkZXIpKVxuICAgIC5tYXAobmFtZSA9PiBwcm9qZWN0LnRhcmdldHMuZ2V0KG5hbWUpISk7XG59XG4iXX0=
@@ -1,34 +0,0 @@
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.dev/license
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.getTargetTsconfigPath = getTargetTsconfigPath;
11
- exports.getWorkspaceConfigGracefully = getWorkspaceConfigGracefully;
12
- const core_1 = require("@angular-devkit/core");
13
- const workspace_1 = require("@schematics/angular/utility/workspace");
14
- /** Name of the default Angular CLI workspace configuration files. */
15
- const defaultWorkspaceConfigPaths = ['/angular.json', '/.angular.json'];
16
- /** Gets the tsconfig path from the given target within the specified project. */
17
- function getTargetTsconfigPath(project, targetName) {
18
- const tsconfig = project.targets?.get(targetName)?.options?.['tsConfig'];
19
- return tsconfig ? (0, core_1.normalize)(tsconfig) : null;
20
- }
21
- /** Resolve the workspace configuration of the specified tree gracefully. */
22
- async function getWorkspaceConfigGracefully(tree) {
23
- const path = defaultWorkspaceConfigPaths.find(filePath => tree.exists(filePath));
24
- if (!path) {
25
- return null;
26
- }
27
- try {
28
- return (0, workspace_1.getWorkspace)(tree, path);
29
- }
30
- catch {
31
- return null;
32
- }
33
- }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC10c2NvbmZpZy1wYXRocy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy91dGlscy9wcm9qZWN0LXRzY29uZmlnLXBhdGhzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7O0FBV0gsc0RBTUM7QUFHRCxvRUFjQztBQWhDRCwrQ0FBMkQ7QUFFM0QscUVBQW1FO0FBR25FLHFFQUFxRTtBQUNyRSxNQUFNLDJCQUEyQixHQUFHLENBQUMsZUFBZSxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFFeEUsaUZBQWlGO0FBQ2pGLFNBQWdCLHFCQUFxQixDQUNuQyxPQUFxQyxFQUNyQyxVQUFrQjtJQUVsQixNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6RSxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBQSxnQkFBUyxFQUFDLFFBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ3pELENBQUM7QUFFRCw0RUFBNEU7QUFDckUsS0FBSyxVQUFVLDRCQUE0QixDQUNoRCxJQUFVO0lBRVYsTUFBTSxJQUFJLEdBQUcsMkJBQTJCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBRWpGLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNWLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE9BQU8sSUFBQSx3QkFBWSxFQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtub3JtYWxpemUsIHdvcmtzcGFjZXN9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9jb3JlJztcbmltcG9ydCB7VHJlZX0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3MnO1xuaW1wb3J0IHtnZXRXb3Jrc3BhY2V9IGZyb20gJ0BzY2hlbWF0aWNzL2FuZ3VsYXIvdXRpbGl0eS93b3Jrc3BhY2UnO1xuaW1wb3J0IHtXb3Jrc3BhY2VQYXRofSBmcm9tICcuLi91cGRhdGUtdG9vbC9maWxlLXN5c3RlbSc7XG5cbi8qKiBOYW1lIG9mIHRoZSBkZWZhdWx0IEFuZ3VsYXIgQ0xJIHdvcmtzcGFjZSBjb25maWd1cmF0aW9uIGZpbGVzLiAqL1xuY29uc3QgZGVmYXVsdFdvcmtzcGFjZUNvbmZpZ1BhdGhzID0gWycvYW5ndWxhci5qc29uJywgJy8uYW5ndWxhci5qc29uJ107XG5cbi8qKiBHZXRzIHRoZSB0c2NvbmZpZyBwYXRoIGZyb20gdGhlIGdpdmVuIHRhcmdldCB3aXRoaW4gdGhlIHNwZWNpZmllZCBwcm9qZWN0LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFRhcmdldFRzY29uZmlnUGF0aChcbiAgcHJvamVjdDogd29ya3NwYWNlcy5Qcm9qZWN0RGVmaW5pdGlvbixcbiAgdGFyZ2V0TmFtZTogc3RyaW5nLFxuKTogV29ya3NwYWNlUGF0aCB8IG51bGwge1xuICBjb25zdCB0c2NvbmZpZyA9IHByb2plY3QudGFyZ2V0cz8uZ2V0KHRhcmdldE5hbWUpPy5vcHRpb25zPy5bJ3RzQ29uZmlnJ107XG4gIHJldHVybiB0c2NvbmZpZyA/IG5vcm1hbGl6ZSh0c2NvbmZpZyBhcyBzdHJpbmcpIDogbnVsbDtcbn1cblxuLyoqIFJlc29sdmUgdGhlIHdvcmtzcGFjZSBjb25maWd1cmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgdHJlZSBncmFjZWZ1bGx5LiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFdvcmtzcGFjZUNvbmZpZ0dyYWNlZnVsbHkoXG4gIHRyZWU6IFRyZWUsXG4pOiBQcm9taXNlPHdvcmtzcGFjZXMuV29ya3NwYWNlRGVmaW5pdGlvbiB8IG51bGw+IHtcbiAgY29uc3QgcGF0aCA9IGRlZmF1bHRXb3Jrc3BhY2VDb25maWdQYXRocy5maW5kKGZpbGVQYXRoID0+IHRyZWUuZXhpc3RzKGZpbGVQYXRoKSk7XG5cbiAgaWYgKCFwYXRoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB0cnkge1xuICAgIHJldHVybiBnZXRXb3Jrc3BhY2UodHJlZSwgcGF0aCk7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=
@@ -1,77 +0,0 @@
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.dev/license
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.getDefaultComponentOptions = getDefaultComponentOptions;
11
- exports.isStandaloneSchematic = isStandaloneSchematic;
12
- const core_1 = require("@angular-devkit/core");
13
- const schema_1 = require("@schematics/angular/component/schema");
14
- const ng_ast_utils_1 = require("@schematics/angular/utility/ng-ast-utils");
15
- const project_main_file_1 = require("./project-main-file");
16
- const workspace_1 = require("@schematics/angular/utility/workspace");
17
- const get_project_1 = require("./get-project");
18
- /**
19
- * Returns the default options for the `@schematics/angular:component` schematic which would
20
- * have been specified at project initialization (ng new or ng init).
21
- *
22
- * This is necessary because the Angular CLI only exposes the default values for the "--style",
23
- * "--inlineStyle", "--skipTests" and "--inlineTemplate" options to the "component" schematic.
24
- */
25
- function getDefaultComponentOptions(project) {
26
- // Note: Not all options which are available when running "ng new" will be stored in the
27
- // workspace config. List of options which will be available in the configuration:
28
- // angular/angular-cli/blob/main/packages/schematics/angular/application/index.ts#L109-L131
29
- let skipTests = getDefaultComponentOption(project, ['skipTests'], null);
30
- // In case "skipTests" is not set explicitly, also look for the "spec" option. The "spec"
31
- // option has been deprecated but can be still used in older Angular CLI projects.
32
- // See: https://github.com/angular/angular-cli/commit/a12a4e02a4689b5bdbc6e740c0d9865afb55671a
33
- if (skipTests === null) {
34
- skipTests = !getDefaultComponentOption(project, ['spec'], true);
35
- }
36
- return {
37
- style: getDefaultComponentOption(project, ['style', 'styleext'], schema_1.Style.Css),
38
- inlineStyle: getDefaultComponentOption(project, ['inlineStyle'], false),
39
- inlineTemplate: getDefaultComponentOption(project, ['inlineTemplate'], false),
40
- skipTests: skipTests,
41
- };
42
- }
43
- /** Determines whether the schematic is configured to be standalone. */
44
- async function isStandaloneSchematic(host, options) {
45
- if (options.standalone != null) {
46
- return options.standalone;
47
- }
48
- // If the `--standalone` flag isn't passed and there isn't a default, infer based on the project.
49
- const workspace = await (0, workspace_1.getWorkspace)(host);
50
- const project = (0, get_project_1.getProjectFromWorkspace)(workspace, options.project);
51
- // Legacy projects might not have a `build` target, but they're likely
52
- // not on an Angular version that supports standalone either.
53
- if (!project.targets?.has('build')) {
54
- return false;
55
- }
56
- return (0, ng_ast_utils_1.isStandaloneApp)(host, (0, project_main_file_1.getProjectMainFile)(project));
57
- }
58
- /**
59
- * Gets the default value for the specified option. The default options will be determined
60
- * by looking at the stored schematic options for `@schematics/angular:component` in the
61
- * CLI workspace configuration.
62
- */
63
- function getDefaultComponentOption(project, optionNames, fallbackValue) {
64
- const schematicOptions = (0, core_1.isJsonObject)(project.extensions['schematics'] || null)
65
- ? project.extensions['schematics']
66
- : null;
67
- const defaultSchematic = schematicOptions
68
- ? schematicOptions['@schematics/angular:component']
69
- : null;
70
- for (const optionName of optionNames) {
71
- if (defaultSchematic && defaultSchematic[optionName] != null) {
72
- return defaultSchematic[optionName];
73
- }
74
- }
75
- return fallbackValue;
76
- }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hdGljLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvdXRpbHMvc2NoZW1hdGljLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7QUFpQkgsZ0VBbUJDO0FBR0Qsc0RBZ0JDO0FBckRELCtDQUEwRTtBQUMxRSxpRUFBbUU7QUFDbkUsMkVBQXlFO0FBQ3pFLDJEQUF1RDtBQUN2RCxxRUFBbUU7QUFDbkUsK0NBQXNEO0FBR3REOzs7Ozs7R0FNRztBQUNILFNBQWdCLDBCQUEwQixDQUFDLE9BQXFDO0lBQzlFLHdGQUF3RjtJQUN4RixrRkFBa0Y7SUFDbEYsMkZBQTJGO0lBQzNGLElBQUksU0FBUyxHQUFHLHlCQUF5QixDQUFpQixPQUFPLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUV4Rix5RkFBeUY7SUFDekYsa0ZBQWtGO0lBQ2xGLDhGQUE4RjtJQUM5RixJQUFJLFNBQVMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUN2QixTQUFTLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsT0FBTztRQUNMLEtBQUssRUFBRSx5QkFBeUIsQ0FBUSxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEVBQUUsY0FBSyxDQUFDLEdBQUcsQ0FBQztRQUNsRixXQUFXLEVBQUUseUJBQXlCLENBQUMsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxDQUFDO1FBQ3ZFLGNBQWMsRUFBRSx5QkFBeUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssQ0FBQztRQUM3RSxTQUFTLEVBQUUsU0FBUztLQUNyQixDQUFDO0FBQ0osQ0FBQztBQUVELHVFQUF1RTtBQUNoRSxLQUFLLFVBQVUscUJBQXFCLENBQUMsSUFBVSxFQUFFLE9BQWU7SUFDckUsSUFBSSxPQUFPLENBQUMsVUFBVSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQy9CLE9BQU8sT0FBTyxDQUFDLFVBQVUsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUdBQWlHO0lBQ2pHLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBQSx3QkFBWSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNDLE1BQU0sT0FBTyxHQUFHLElBQUEscUNBQXVCLEVBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUVwRSxzRUFBc0U7SUFDdEUsNkRBQTZEO0lBQzdELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ25DLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE9BQU8sSUFBQSw4QkFBZSxFQUFDLElBQUksRUFBRSxJQUFBLHNDQUFrQixFQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7QUFDNUQsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFTLHlCQUF5QixDQUNoQyxPQUFxQyxFQUNyQyxXQUFxQixFQUNyQixhQUFnQjtJQUVoQixNQUFNLGdCQUFnQixHQUFHLElBQUEsbUJBQVksRUFBQyxPQUFPLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksQ0FBQztRQUM3RSxDQUFDLENBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQWdCO1FBQ2xELENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDVCxNQUFNLGdCQUFnQixHQUFHLGdCQUFnQjtRQUN2QyxDQUFDLENBQUUsZ0JBQWdCLENBQUMsK0JBQStCLENBQXVCO1FBQzFFLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFFVCxLQUFLLE1BQU0sVUFBVSxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksZ0JBQWdCLElBQUksZ0JBQWdCLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7WUFDN0QsT0FBTyxnQkFBZ0IsQ0FBQyxVQUFVLENBQWlCLENBQUM7UUFDdEQsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2lzSnNvbk9iamVjdCwgSnNvbk9iamVjdCwgd29ya3NwYWNlc30gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2NvcmUnO1xuaW1wb3J0IHtTY2hlbWEsIFN0eWxlfSBmcm9tICdAc2NoZW1hdGljcy9hbmd1bGFyL2NvbXBvbmVudC9zY2hlbWEnO1xuaW1wb3J0IHtpc1N0YW5kYWxvbmVBcHB9IGZyb20gJ0BzY2hlbWF0aWNzL2FuZ3VsYXIvdXRpbGl0eS9uZy1hc3QtdXRpbHMnO1xuaW1wb3J0IHtnZXRQcm9qZWN0TWFpbkZpbGV9IGZyb20gJy4vcHJvamVjdC1tYWluLWZpbGUnO1xuaW1wb3J0IHtnZXRXb3Jrc3BhY2V9IGZyb20gJ0BzY2hlbWF0aWNzL2FuZ3VsYXIvdXRpbGl0eS93b3Jrc3BhY2UnO1xuaW1wb3J0IHtnZXRQcm9qZWN0RnJvbVdvcmtzcGFjZX0gZnJvbSAnLi9nZXQtcHJvamVjdCc7XG5pbXBvcnQge1RyZWV9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzJztcblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBkZWZhdWx0IG9wdGlvbnMgZm9yIHRoZSBgQHNjaGVtYXRpY3MvYW5ndWxhcjpjb21wb25lbnRgIHNjaGVtYXRpYyB3aGljaCB3b3VsZFxuICogaGF2ZSBiZWVuIHNwZWNpZmllZCBhdCBwcm9qZWN0IGluaXRpYWxpemF0aW9uIChuZyBuZXcgb3IgbmcgaW5pdCkuXG4gKlxuICogVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgQW5ndWxhciBDTEkgb25seSBleHBvc2VzIHRoZSBkZWZhdWx0IHZhbHVlcyBmb3IgdGhlIFwiLS1zdHlsZVwiLFxuICogXCItLWlubGluZVN0eWxlXCIsIFwiLS1za2lwVGVzdHNcIiBhbmQgXCItLWlubGluZVRlbXBsYXRlXCIgb3B0aW9ucyB0byB0aGUgXCJjb21wb25lbnRcIiBzY2hlbWF0aWMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXREZWZhdWx0Q29tcG9uZW50T3B0aW9ucyhwcm9qZWN0OiB3b3Jrc3BhY2VzLlByb2plY3REZWZpbml0aW9uKTogUGFydGlhbDxTY2hlbWE+IHtcbiAgLy8gTm90ZTogTm90IGFsbCBvcHRpb25zIHdoaWNoIGFyZSBhdmFpbGFibGUgd2hlbiBydW5uaW5nIFwibmcgbmV3XCIgd2lsbCBiZSBzdG9yZWQgaW4gdGhlXG4gIC8vIHdvcmtzcGFjZSBjb25maWcuIExpc3Qgb2Ygb3B0aW9ucyB3aGljaCB3aWxsIGJlIGF2YWlsYWJsZSBpbiB0aGUgY29uZmlndXJhdGlvbjpcbiAgLy8gYW5ndWxhci9hbmd1bGFyLWNsaS9ibG9iL21haW4vcGFja2FnZXMvc2NoZW1hdGljcy9hbmd1bGFyL2FwcGxpY2F0aW9uL2luZGV4LnRzI0wxMDktTDEzMVxuICBsZXQgc2tpcFRlc3RzID0gZ2V0RGVmYXVsdENvbXBvbmVudE9wdGlvbjxib29sZWFuIHwgbnVsbD4ocHJvamVjdCwgWydza2lwVGVzdHMnXSwgbnVsbCk7XG5cbiAgLy8gSW4gY2FzZSBcInNraXBUZXN0c1wiIGlzIG5vdCBzZXQgZXhwbGljaXRseSwgYWxzbyBsb29rIGZvciB0aGUgXCJzcGVjXCIgb3B0aW9uLiBUaGUgXCJzcGVjXCJcbiAgLy8gb3B0aW9uIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYnV0IGNhbiBiZSBzdGlsbCB1c2VkIGluIG9sZGVyIEFuZ3VsYXIgQ0xJIHByb2plY3RzLlxuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXItY2xpL2NvbW1pdC9hMTJhNGUwMmE0Njg5YjViZGJjNmU3NDBjMGQ5ODY1YWZiNTU2NzFhXG4gIGlmIChza2lwVGVzdHMgPT09IG51bGwpIHtcbiAgICBza2lwVGVzdHMgPSAhZ2V0RGVmYXVsdENvbXBvbmVudE9wdGlvbihwcm9qZWN0LCBbJ3NwZWMnXSwgdHJ1ZSk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHN0eWxlOiBnZXREZWZhdWx0Q29tcG9uZW50T3B0aW9uPFN0eWxlPihwcm9qZWN0LCBbJ3N0eWxlJywgJ3N0eWxlZXh0J10sIFN0eWxlLkNzcyksXG4gICAgaW5saW5lU3R5bGU6IGdldERlZmF1bHRDb21wb25lbnRPcHRpb24ocHJvamVjdCwgWydpbmxpbmVTdHlsZSddLCBmYWxzZSksXG4gICAgaW5saW5lVGVtcGxhdGU6IGdldERlZmF1bHRDb21wb25lbnRPcHRpb24ocHJvamVjdCwgWydpbmxpbmVUZW1wbGF0ZSddLCBmYWxzZSksXG4gICAgc2tpcFRlc3RzOiBza2lwVGVzdHMsXG4gIH07XG59XG5cbi8qKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHNjaGVtYXRpYyBpcyBjb25maWd1cmVkIHRvIGJlIHN0YW5kYWxvbmUuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaXNTdGFuZGFsb25lU2NoZW1hdGljKGhvc3Q6IFRyZWUsIG9wdGlvbnM6IFNjaGVtYSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICBpZiAob3B0aW9ucy5zdGFuZGFsb25lICE9IG51bGwpIHtcbiAgICByZXR1cm4gb3B0aW9ucy5zdGFuZGFsb25lO1xuICB9XG5cbiAgLy8gSWYgdGhlIGAtLXN0YW5kYWxvbmVgIGZsYWcgaXNuJ3QgcGFzc2VkIGFuZCB0aGVyZSBpc24ndCBhIGRlZmF1bHQsIGluZmVyIGJhc2VkIG9uIHRoZSBwcm9qZWN0LlxuICBjb25zdCB3b3Jrc3BhY2UgPSBhd2FpdCBnZXRXb3Jrc3BhY2UoaG9zdCk7XG4gIGNvbnN0IHByb2plY3QgPSBnZXRQcm9qZWN0RnJvbVdvcmtzcGFjZSh3b3Jrc3BhY2UsIG9wdGlvbnMucHJvamVjdCk7XG5cbiAgLy8gTGVnYWN5IHByb2plY3RzIG1pZ2h0IG5vdCBoYXZlIGEgYGJ1aWxkYCB0YXJnZXQsIGJ1dCB0aGV5J3JlIGxpa2VseVxuICAvLyBub3Qgb24gYW4gQW5ndWxhciB2ZXJzaW9uIHRoYXQgc3VwcG9ydHMgc3RhbmRhbG9uZSBlaXRoZXIuXG4gIGlmICghcHJvamVjdC50YXJnZXRzPy5oYXMoJ2J1aWxkJykpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gaXNTdGFuZGFsb25lQXBwKGhvc3QsIGdldFByb2plY3RNYWluRmlsZShwcm9qZWN0KSk7XG59XG5cbi8qKlxuICogR2V0cyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlIHNwZWNpZmllZCBvcHRpb24uIFRoZSBkZWZhdWx0IG9wdGlvbnMgd2lsbCBiZSBkZXRlcm1pbmVkXG4gKiBieSBsb29raW5nIGF0IHRoZSBzdG9yZWQgc2NoZW1hdGljIG9wdGlvbnMgZm9yIGBAc2NoZW1hdGljcy9hbmd1bGFyOmNvbXBvbmVudGAgaW4gdGhlXG4gKiBDTEkgd29ya3NwYWNlIGNvbmZpZ3VyYXRpb24uXG4gKi9cbmZ1bmN0aW9uIGdldERlZmF1bHRDb21wb25lbnRPcHRpb248VD4oXG4gIHByb2plY3Q6IHdvcmtzcGFjZXMuUHJvamVjdERlZmluaXRpb24sXG4gIG9wdGlvbk5hbWVzOiBzdHJpbmdbXSxcbiAgZmFsbGJhY2tWYWx1ZTogVCxcbik6IFQge1xuICBjb25zdCBzY2hlbWF0aWNPcHRpb25zID0gaXNKc29uT2JqZWN0KHByb2plY3QuZXh0ZW5zaW9uc1snc2NoZW1hdGljcyddIHx8IG51bGwpXG4gICAgPyAocHJvamVjdC5leHRlbnNpb25zWydzY2hlbWF0aWNzJ10gYXMgSnNvbk9iamVjdClcbiAgICA6IG51bGw7XG4gIGNvbnN0IGRlZmF1bHRTY2hlbWF0aWMgPSBzY2hlbWF0aWNPcHRpb25zXG4gICAgPyAoc2NoZW1hdGljT3B0aW9uc1snQHNjaGVtYXRpY3MvYW5ndWxhcjpjb21wb25lbnQnXSBhcyBKc29uT2JqZWN0IHwgbnVsbClcbiAgICA6IG51bGw7XG5cbiAgZm9yIChjb25zdCBvcHRpb25OYW1lIG9mIG9wdGlvbk5hbWVzKSB7XG4gICAgaWYgKGRlZmF1bHRTY2hlbWF0aWMgJiYgZGVmYXVsdFNjaGVtYXRpY1tvcHRpb25OYW1lXSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gZGVmYXVsdFNjaGVtYXRpY1tvcHRpb25OYW1lXSBhcyB1bmtub3duIGFzIFQ7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbGxiYWNrVmFsdWU7XG59XG4iXX0=