@backstage/cli 0.36.0-next.2 → 0.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/config/eslint-factory.js +1 -0
  3. package/config/getJestEnvironment.js +7 -29
  4. package/config/jest-environment-jsdom/index.js +9 -43
  5. package/config/jest.js +7 -401
  6. package/config/jestCacheResultProcessor.cjs +10 -6
  7. package/config/jestCachingModuleLoader.js +11 -19
  8. package/config/jestFileTransform.js +11 -28
  9. package/config/jestRejectNetworkRequests.js +10 -53
  10. package/config/jestSucraseTransform.js +10 -70
  11. package/config/jestSwcTransform.js +10 -27
  12. package/config/jestYamlTransform.js +11 -24
  13. package/config/nodeTransform.cjs +10 -70
  14. package/config/nodeTransformHooks.mjs +4 -278
  15. package/config/webpack-public-path.js +10 -14
  16. package/dist/cli-internal/src/InternalCliModule.cjs.js +11 -0
  17. package/dist/cli-internal/src/InternalCommandNode.cjs.js +25 -0
  18. package/dist/cli-internal/src/knownPluginPackages.cjs.js +40 -0
  19. package/dist/index.cjs.js +21 -11
  20. package/dist/wiring/CliInitializer.cjs.js +61 -30
  21. package/dist/wiring/CommandGraph.cjs.js +81 -23
  22. package/dist/wiring/discoverCliModules.cjs.js +44 -0
  23. package/package.json +27 -160
  24. package/dist/modules/auth/commands/list.cjs.js +0 -23
  25. package/dist/modules/auth/commands/login.cjs.js +0 -316
  26. package/dist/modules/auth/commands/logout.cjs.js +0 -55
  27. package/dist/modules/auth/commands/printToken.cjs.js +0 -41
  28. package/dist/modules/auth/commands/select.cjs.js +0 -32
  29. package/dist/modules/auth/commands/show.cjs.js +0 -59
  30. package/dist/modules/auth/index.cjs.js +0 -44
  31. package/dist/modules/auth/lib/auth.cjs.js +0 -60
  32. package/dist/modules/auth/lib/http.cjs.js +0 -26
  33. package/dist/modules/auth/lib/localServer.cjs.js +0 -80
  34. package/dist/modules/auth/lib/pkce.cjs.js +0 -23
  35. package/dist/modules/auth/lib/prompt.cjs.js +0 -44
  36. package/dist/modules/auth/lib/secretStore.cjs.js +0 -81
  37. package/dist/modules/auth/lib/storage.cjs.js +0 -152
  38. package/dist/modules/build/commands/buildWorkspace.cjs.js +0 -53
  39. package/dist/modules/build/commands/package/build/command.cjs.js +0 -136
  40. package/dist/modules/build/commands/package/build/index.cjs.js +0 -10
  41. package/dist/modules/build/commands/package/clean.cjs.js +0 -21
  42. package/dist/modules/build/commands/package/postpack.cjs.js +0 -15
  43. package/dist/modules/build/commands/package/prepack.cjs.js +0 -29
  44. package/dist/modules/build/commands/package/start/command.cjs.js +0 -80
  45. package/dist/modules/build/commands/package/start/index.cjs.js +0 -10
  46. package/dist/modules/build/commands/package/start/resolveLinkedWorkspace.cjs.js +0 -34
  47. package/dist/modules/build/commands/package/start/startBackend.cjs.js +0 -46
  48. package/dist/modules/build/commands/package/start/startFrontend.cjs.js +0 -50
  49. package/dist/modules/build/commands/package/start/startPackage.cjs.js +0 -53
  50. package/dist/modules/build/commands/repo/build.cjs.js +0 -149
  51. package/dist/modules/build/commands/repo/clean.cjs.js +0 -41
  52. package/dist/modules/build/commands/repo/start.cjs.js +0 -199
  53. package/dist/modules/build/index.cjs.js +0 -68
  54. package/dist/modules/build/lib/buildBackend.cjs.js +0 -81
  55. package/dist/modules/build/lib/buildFrontend.cjs.js +0 -50
  56. package/dist/modules/build/lib/builder/config.cjs.js +0 -257
  57. package/dist/modules/build/lib/builder/packager.cjs.js +0 -131
  58. package/dist/modules/build/lib/builder/plugins.cjs.js +0 -125
  59. package/dist/modules/build/lib/builder/types.cjs.js +0 -10
  60. package/dist/modules/build/lib/bundler/ConfigInjectingHtmlWebpackPlugin.cjs.js +0 -43
  61. package/dist/modules/build/lib/bundler/bundle.cjs.js +0 -189
  62. package/dist/modules/build/lib/bundler/config.cjs.js +0 -308
  63. package/dist/modules/build/lib/bundler/hasReactDomClient.cjs.js +0 -17
  64. package/dist/modules/build/lib/bundler/linkWorkspaces.cjs.js +0 -34
  65. package/dist/modules/build/lib/bundler/moduleFederation.cjs.js +0 -135
  66. package/dist/modules/build/lib/bundler/optimization.cjs.js +0 -68
  67. package/dist/modules/build/lib/bundler/packageDetection.cjs.js +0 -124
  68. package/dist/modules/build/lib/bundler/paths.cjs.js +0 -62
  69. package/dist/modules/build/lib/bundler/server.cjs.js +0 -231
  70. package/dist/modules/build/lib/bundler/transforms.cjs.js +0 -145
  71. package/dist/modules/build/lib/config.cjs.js +0 -94
  72. package/dist/modules/build/lib/entryPoints.cjs.js +0 -49
  73. package/dist/modules/build/lib/ipc/IpcServer.cjs.js +0 -60
  74. package/dist/modules/build/lib/ipc/ServerDataStore.cjs.js +0 -36
  75. package/dist/modules/build/lib/optionsParser.cjs.js +0 -22
  76. package/dist/modules/build/lib/packager/createDistWorkspace.cjs.js +0 -235
  77. package/dist/modules/build/lib/packager/productionPack.cjs.js +0 -160
  78. package/dist/modules/build/lib/publishing.cjs.js +0 -40
  79. package/dist/modules/build/lib/role.cjs.js +0 -24
  80. package/dist/modules/build/lib/runner/runBackend.cjs.js +0 -136
  81. package/dist/modules/build/lib/typeDistProject.cjs.js +0 -89
  82. package/dist/modules/build/lib/urls.cjs.js +0 -13
  83. package/dist/modules/config/commands/docs.cjs.js +0 -63
  84. package/dist/modules/config/commands/print.cjs.js +0 -81
  85. package/dist/modules/config/commands/schema.cjs.js +0 -56
  86. package/dist/modules/config/commands/validate.cjs.js +0 -50
  87. package/dist/modules/config/index.cjs.js +0 -51
  88. package/dist/modules/config/lib/config.cjs.js +0 -94
  89. package/dist/modules/create-github-app/commands/create-github-app/GithubCreateAppServer.cjs.js +0 -127
  90. package/dist/modules/create-github-app/commands/create-github-app/index.cjs.js +0 -126
  91. package/dist/modules/create-github-app/index.cjs.js +0 -19
  92. package/dist/modules/info/commands/info.cjs.js +0 -182
  93. package/dist/modules/info/index.cjs.js +0 -19
  94. package/dist/modules/lint/commands/package/lint.cjs.js +0 -78
  95. package/dist/modules/lint/commands/repo/lint.cjs.js +0 -282
  96. package/dist/modules/lint/index.cjs.js +0 -24
  97. package/dist/modules/lint/lib/optionsParser.cjs.js +0 -22
  98. package/dist/modules/maintenance/commands/repo/fix.cjs.js +0 -426
  99. package/dist/modules/maintenance/commands/repo/list-deprecations.cjs.js +0 -90
  100. package/dist/modules/maintenance/index.cjs.js +0 -24
  101. package/dist/modules/migrate/commands/packageExports.cjs.js +0 -15
  102. package/dist/modules/migrate/commands/packageLintConfigs.cjs.js +0 -77
  103. package/dist/modules/migrate/commands/packageRole.cjs.js +0 -57
  104. package/dist/modules/migrate/commands/packageScripts.cjs.js +0 -87
  105. package/dist/modules/migrate/commands/reactRouterDeps.cjs.js +0 -51
  106. package/dist/modules/migrate/commands/versions/bump.cjs.js +0 -403
  107. package/dist/modules/migrate/commands/versions/migrate.cjs.js +0 -133
  108. package/dist/modules/migrate/index.cjs.js +0 -59
  109. package/dist/modules/migrate/lib/utils.cjs.js +0 -44
  110. package/dist/modules/migrate/lib/versioning/packages.cjs.js +0 -71
  111. package/dist/modules/migrate/lib/versioning/yarn.cjs.js +0 -28
  112. package/dist/modules/new/commands/new.cjs.js +0 -115
  113. package/dist/modules/new/index.cjs.js +0 -40
  114. package/dist/modules/new/lib/codeowners/codeowners.cjs.js +0 -92
  115. package/dist/modules/new/lib/createNewPackage.cjs.js +0 -32
  116. package/dist/modules/new/lib/defaultTemplates.cjs.js +0 -17
  117. package/dist/modules/new/lib/execution/PortableTemplater.cjs.js +0 -89
  118. package/dist/modules/new/lib/execution/executePortableTemplate.cjs.js +0 -66
  119. package/dist/modules/new/lib/execution/installNewPackage.cjs.js +0 -127
  120. package/dist/modules/new/lib/execution/writeTemplateContents.cjs.js +0 -116
  121. package/dist/modules/new/lib/preparation/collectPortableTemplateInput.cjs.js +0 -157
  122. package/dist/modules/new/lib/preparation/loadPortableTemplate.cjs.js +0 -81
  123. package/dist/modules/new/lib/preparation/loadPortableTemplateConfig.cjs.js +0 -132
  124. package/dist/modules/new/lib/preparation/resolvePackageParams.cjs.js +0 -40
  125. package/dist/modules/new/lib/preparation/selectTemplateInteractively.cjs.js +0 -38
  126. package/dist/modules/new/lib/tasks.cjs.js +0 -51
  127. package/dist/modules/new/lib/types.cjs.js +0 -19
  128. package/dist/modules/new/lib/version.cjs.js +0 -91
  129. package/dist/modules/test/commands/package/test.cjs.js +0 -59
  130. package/dist/modules/test/commands/repo/test.cjs.js +0 -299
  131. package/dist/modules/test/index.cjs.js +0 -24
  132. package/dist/modules/translations/commands/export.cjs.js +0 -128
  133. package/dist/modules/translations/commands/import.cjs.js +0 -165
  134. package/dist/modules/translations/index.cjs.js +0 -24
  135. package/dist/modules/translations/lib/discoverPackages.cjs.js +0 -121
  136. package/dist/modules/translations/lib/extractTranslations.cjs.js +0 -71
  137. package/dist/modules/translations/lib/messageFilePath.cjs.js +0 -43
  138. package/dist/packages/backend-defaults/package.json.cjs.js +0 -6
  139. package/dist/packages/backend-plugin-api/package.json.cjs.js +0 -6
  140. package/dist/packages/backend-test-utils/package.json.cjs.js +0 -6
  141. package/dist/packages/catalog-client/package.json.cjs.js +0 -6
  142. package/dist/packages/cli/package.json.cjs.js +0 -159
  143. package/dist/packages/config/package.json.cjs.js +0 -6
  144. package/dist/packages/core-app-api/package.json.cjs.js +0 -6
  145. package/dist/packages/core-components/package.json.cjs.js +0 -6
  146. package/dist/packages/core-plugin-api/package.json.cjs.js +0 -6
  147. package/dist/packages/dev-utils/package.json.cjs.js +0 -6
  148. package/dist/packages/errors/package.json.cjs.js +0 -6
  149. package/dist/packages/frontend-defaults/package.json.cjs.js +0 -6
  150. package/dist/packages/frontend-plugin-api/package.json.cjs.js +0 -6
  151. package/dist/packages/frontend-plugin-api/src/routing/describeParentCallSite.cjs.js +0 -26
  152. package/dist/packages/frontend-test-utils/package.json.cjs.js +0 -6
  153. package/dist/packages/test-utils/package.json.cjs.js +0 -6
  154. package/dist/packages/theme/package.json.cjs.js +0 -6
  155. package/dist/packages/types/package.json.cjs.js +0 -6
  156. package/dist/plugins/auth-backend/package.json.cjs.js +0 -6
  157. package/dist/plugins/auth-backend-module-guest-provider/package.json.cjs.js +0 -6
  158. package/dist/plugins/catalog-node/package.json.cjs.js +0 -6
  159. package/dist/plugins/scaffolder-node/package.json.cjs.js +0 -6
  160. package/dist/plugins/scaffolder-node-test-utils/package.json.cjs.js +0 -6
  161. package/dist/wiring/CommandRegistry.cjs.js +0 -14
  162. package/dist/wiring/factory.cjs.js +0 -15
  163. package/dist/wiring/types.cjs.js +0 -11
  164. package/templates/backend-plugin/.eslintrc.js.hbs +0 -1
  165. package/templates/backend-plugin/README.md.hbs +0 -28
  166. package/templates/backend-plugin/dev/index.ts.hbs +0 -60
  167. package/templates/backend-plugin/package.json.hbs +0 -44
  168. package/templates/backend-plugin/portable-template.yaml +0 -5
  169. package/templates/backend-plugin/src/index.ts.hbs +0 -1
  170. package/templates/backend-plugin/src/plugin.test.ts.hbs +0 -129
  171. package/templates/backend-plugin/src/plugin.ts.hbs +0 -32
  172. package/templates/backend-plugin/src/router.test.ts +0 -67
  173. package/templates/backend-plugin/src/router.ts +0 -51
  174. package/templates/backend-plugin/src/services/TodoListService.ts +0 -155
  175. package/templates/backend-plugin/src/setupTests.ts +0 -1
  176. package/templates/backend-plugin-module/.eslintrc.js.hbs +0 -1
  177. package/templates/backend-plugin-module/README.md.hbs +0 -5
  178. package/templates/backend-plugin-module/package.json.hbs +0 -34
  179. package/templates/backend-plugin-module/portable-template.yaml +0 -5
  180. package/templates/backend-plugin-module/src/index.ts.hbs +0 -8
  181. package/templates/backend-plugin-module/src/module.ts.hbs +0 -17
  182. package/templates/catalog-provider-module/.eslintrc.js.hbs +0 -1
  183. package/templates/catalog-provider-module/README.md.hbs +0 -5
  184. package/templates/catalog-provider-module/config.d.ts.hbs +0 -34
  185. package/templates/catalog-provider-module/package.json.hbs +0 -36
  186. package/templates/catalog-provider-module/portable-template.yaml +0 -9
  187. package/templates/catalog-provider-module/src/index.ts.hbs +0 -8
  188. package/templates/catalog-provider-module/src/module.ts.hbs +0 -29
  189. package/templates/catalog-provider-module/src/provider/readProviderConfigs.ts.hbs +0 -78
  190. package/templates/catalog-provider-module/src/provider/{{providerClass}}.test.ts.hbs +0 -18
  191. package/templates/catalog-provider-module/src/provider/{{providerClass}}.ts.hbs +0 -109
  192. package/templates/frontend-plugin/.eslintrc.js.hbs +0 -1
  193. package/templates/frontend-plugin/README.md.hbs +0 -13
  194. package/templates/frontend-plugin/dev/index.tsx.hbs +0 -11
  195. package/templates/frontend-plugin/package.json.hbs +0 -54
  196. package/templates/frontend-plugin/portable-template.yaml +0 -6
  197. package/templates/frontend-plugin/src/components/ExampleComponent/ExampleComponent.test.tsx.hbs +0 -28
  198. package/templates/frontend-plugin/src/components/ExampleComponent/ExampleComponent.tsx.hbs +0 -37
  199. package/templates/frontend-plugin/src/components/ExampleComponent/index.ts +0 -1
  200. package/templates/frontend-plugin/src/components/ExampleFetchComponent/ExampleFetchComponent.test.tsx.hbs +0 -19
  201. package/templates/frontend-plugin/src/components/ExampleFetchComponent/ExampleFetchComponent.tsx.hbs +0 -308
  202. package/templates/frontend-plugin/src/components/ExampleFetchComponent/index.ts +0 -1
  203. package/templates/frontend-plugin/src/index.ts.hbs +0 -1
  204. package/templates/frontend-plugin/src/plugin.test.ts.hbs +0 -7
  205. package/templates/frontend-plugin/src/plugin.ts.hbs +0 -22
  206. package/templates/frontend-plugin/src/routes.ts.hbs +0 -5
  207. package/templates/frontend-plugin/src/setupTests.ts +0 -1
  208. package/templates/new-frontend-plugin/.eslintrc.js.hbs +0 -1
  209. package/templates/new-frontend-plugin/README.md.hbs +0 -20
  210. package/templates/new-frontend-plugin/dev/index.tsx +0 -10
  211. package/templates/new-frontend-plugin/package.json.hbs +0 -49
  212. package/templates/new-frontend-plugin/portable-template.yaml +0 -5
  213. package/templates/new-frontend-plugin/src/components/ExampleComponent/ExampleComponent.test.tsx.hbs +0 -28
  214. package/templates/new-frontend-plugin/src/components/ExampleComponent/ExampleComponent.tsx.hbs +0 -37
  215. package/templates/new-frontend-plugin/src/components/ExampleComponent/index.ts +0 -1
  216. package/templates/new-frontend-plugin/src/components/ExampleFetchComponent/ExampleFetchComponent.test.tsx.hbs +0 -19
  217. package/templates/new-frontend-plugin/src/components/ExampleFetchComponent/ExampleFetchComponent.tsx.hbs +0 -308
  218. package/templates/new-frontend-plugin/src/components/ExampleFetchComponent/index.ts +0 -1
  219. package/templates/new-frontend-plugin/src/index.ts.hbs +0 -1
  220. package/templates/new-frontend-plugin/src/plugin.test.ts.hbs +0 -7
  221. package/templates/new-frontend-plugin/src/plugin.tsx.hbs +0 -25
  222. package/templates/new-frontend-plugin/src/routes.ts +0 -3
  223. package/templates/new-frontend-plugin/src/setupTests.ts +0 -1
  224. package/templates/new-frontend-plugin-module/.eslintrc.js.hbs +0 -1
  225. package/templates/new-frontend-plugin-module/README.md.hbs +0 -5
  226. package/templates/new-frontend-plugin-module/package.json.hbs +0 -35
  227. package/templates/new-frontend-plugin-module/portable-template.yaml +0 -5
  228. package/templates/new-frontend-plugin-module/src/index.ts.hbs +0 -1
  229. package/templates/new-frontend-plugin-module/src/module.tsx.hbs +0 -8
  230. package/templates/new-frontend-plugin-module/src/setupTests.ts +0 -1
  231. package/templates/node-library/.eslintrc.js.hbs +0 -1
  232. package/templates/node-library/README.md.hbs +0 -12
  233. package/templates/node-library/package.json.hbs +0 -29
  234. package/templates/node-library/portable-template.yaml +0 -3
  235. package/templates/node-library/src/index.ts.hbs +0 -1
  236. package/templates/node-library/src/setupTests.ts +0 -1
  237. package/templates/plugin-common-library/.eslintrc.js.hbs +0 -1
  238. package/templates/plugin-common-library/README.md.hbs +0 -5
  239. package/templates/plugin-common-library/package.json.hbs +0 -31
  240. package/templates/plugin-common-library/portable-template.yaml +0 -3
  241. package/templates/plugin-common-library/src/index.ts.hbs +0 -19
  242. package/templates/plugin-common-library/src/setupTests.ts +0 -1
  243. package/templates/plugin-node-library/.eslintrc.js.hbs +0 -1
  244. package/templates/plugin-node-library/README.md.hbs +0 -5
  245. package/templates/plugin-node-library/package.json.hbs +0 -30
  246. package/templates/plugin-node-library/portable-template.yaml +0 -3
  247. package/templates/plugin-node-library/src/index.ts.hbs +0 -18
  248. package/templates/plugin-node-library/src/setupTests.ts +0 -1
  249. package/templates/plugin-web-library/.eslintrc.js.hbs +0 -1
  250. package/templates/plugin-web-library/README.md.hbs +0 -5
  251. package/templates/plugin-web-library/package.json.hbs +0 -42
  252. package/templates/plugin-web-library/portable-template.yaml +0 -3
  253. package/templates/plugin-web-library/src/components/ExampleComponent/ExampleComponent.test.tsx +0 -17
  254. package/templates/plugin-web-library/src/components/ExampleComponent/ExampleComponent.tsx +0 -28
  255. package/templates/plugin-web-library/src/components/ExampleComponent/index.ts +0 -2
  256. package/templates/plugin-web-library/src/components/index.ts +0 -5
  257. package/templates/plugin-web-library/src/hooks/index.ts +0 -5
  258. package/templates/plugin-web-library/src/hooks/useExample/index.ts +0 -1
  259. package/templates/plugin-web-library/src/hooks/useExample/useExample.ts +0 -15
  260. package/templates/plugin-web-library/src/index.ts.hbs +0 -12
  261. package/templates/plugin-web-library/src/setupTests.ts +0 -1
  262. package/templates/scaffolder-backend-module/.eslintrc.js.hbs +0 -1
  263. package/templates/scaffolder-backend-module/README.md.hbs +0 -5
  264. package/templates/scaffolder-backend-module/package.json.hbs +0 -36
  265. package/templates/scaffolder-backend-module/portable-template.yaml +0 -6
  266. package/templates/scaffolder-backend-module/src/actions/example.test.ts +0 -24
  267. package/templates/scaffolder-backend-module/src/actions/example.ts +0 -39
  268. package/templates/scaffolder-backend-module/src/index.ts.hbs +0 -8
  269. package/templates/scaffolder-backend-module/src/module.ts +0 -21
  270. package/templates/web-library/.eslintrc.js.hbs +0 -1
  271. package/templates/web-library/README.md.hbs +0 -12
  272. package/templates/web-library/package.json.hbs +0 -30
  273. package/templates/web-library/portable-template.yaml +0 -3
  274. package/templates/web-library/src/index.ts.hbs +0 -1
  275. package/templates/web-library/src/setupTests.ts +0 -1
  276. /package/dist/{packages/opaque-internal → opaque-internal}/src/OpaqueType.cjs.js +0 -0
@@ -1,59 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var factory = require('../../wiring/factory.cjs.js');
6
-
7
- var index = factory.createCliPlugin({
8
- pluginId: "migrate",
9
- init: async (reg) => {
10
- reg.addCommand({
11
- path: ["versions:migrate"],
12
- description: "Migrate any plugins that have been moved to the @backstage-community namespace automatically",
13
- execute: { loader: () => import('./commands/versions/migrate.cjs.js') }
14
- });
15
- reg.addCommand({
16
- path: ["versions:bump"],
17
- description: "Bump Backstage packages to the latest versions",
18
- execute: { loader: () => import('./commands/versions/bump.cjs.js') }
19
- });
20
- reg.addCommand({
21
- path: ["migrate", "package-roles"],
22
- description: `Add package role field to packages that don't have it`,
23
- execute: {
24
- loader: () => import('./commands/packageRole.cjs.js')
25
- }
26
- });
27
- reg.addCommand({
28
- path: ["migrate", "package-scripts"],
29
- description: "Set package scripts according to each package role",
30
- execute: {
31
- loader: () => import('./commands/packageScripts.cjs.js')
32
- }
33
- });
34
- reg.addCommand({
35
- path: ["migrate", "package-exports"],
36
- description: "Synchronize package subpath export definitions",
37
- execute: {
38
- loader: () => import('./commands/packageExports.cjs.js')
39
- }
40
- });
41
- reg.addCommand({
42
- path: ["migrate", "package-lint-configs"],
43
- description: "Migrates all packages to use @backstage/cli/config/eslint-factory",
44
- execute: {
45
- loader: () => import('./commands/packageLintConfigs.cjs.js')
46
- }
47
- });
48
- reg.addCommand({
49
- path: ["migrate", "react-router-deps"],
50
- description: "Migrates the react-router dependencies for all packages to be peer dependencies",
51
- execute: {
52
- loader: () => import('./commands/reactRouterDeps.cjs.js')
53
- }
54
- });
55
- }
56
- });
57
-
58
- exports.default = index;
59
- //# sourceMappingURL=index.cjs.js.map
@@ -1,44 +0,0 @@
1
- 'use strict';
2
-
3
- var ora = require('ora');
4
- var chalk = require('chalk');
5
- var cliCommon = require('@backstage/cli-common');
6
-
7
- function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
8
-
9
- var ora__default = /*#__PURE__*/_interopDefaultCompat(ora);
10
- var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
11
-
12
- async function runYarnInstall() {
13
- const spinner = ora__default.default({
14
- prefixText: `Running ${chalk__default.default.blue("yarn install")} to install new versions`,
15
- spinner: "arc",
16
- color: "green"
17
- }).start();
18
- const installOutput = new Array();
19
- try {
20
- await cliCommon.run(["yarn", "install"], {
21
- env: {
22
- FORCE_COLOR: "true",
23
- // We filter out all of the npm_* environment variables that are added when
24
- // executing through yarn. This works around an issue where these variables
25
- // incorrectly override local yarn or npm config in the project directory.
26
- ...Object.fromEntries(
27
- Object.entries(process.env).map(
28
- ([name, value]) => name.startsWith("npm_") ? [name, void 0] : [name, value]
29
- )
30
- )
31
- },
32
- onStdout: (data) => installOutput.push(data),
33
- onStderr: (data) => installOutput.push(data)
34
- }).waitForExit();
35
- spinner.succeed();
36
- } catch (error) {
37
- spinner.fail();
38
- process.stdout.write(Buffer.concat(installOutput));
39
- throw error;
40
- }
41
- }
42
-
43
- exports.runYarnInstall = runYarnInstall;
44
- //# sourceMappingURL=utils.cjs.js.map
@@ -1,71 +0,0 @@
1
- 'use strict';
2
-
3
- var minimatch = require('minimatch');
4
- var getPackages = require('@manypkg/get-packages');
5
- var yarn = require('./yarn.cjs.js');
6
- var cliCommon = require('@backstage/cli-common');
7
- var errors = require('@backstage/errors');
8
-
9
- const DEP_TYPES = [
10
- "dependencies",
11
- "devDependencies",
12
- "peerDependencies",
13
- "optionalDependencies"
14
- ];
15
- async function fetchPackageInfo(name) {
16
- const yarnVersion = await yarn.detectYarnVersion();
17
- const cmd = yarnVersion === "classic" ? ["info"] : ["npm", "info"];
18
- try {
19
- const output = await cliCommon.runOutput(["yarn", ...cmd, "--json", name]);
20
- if (!output) {
21
- throw new errors.NotFoundError(
22
- `No package information found for package ${name}`
23
- );
24
- }
25
- if (yarnVersion === "berry") {
26
- return JSON.parse(output);
27
- }
28
- const info = JSON.parse(output);
29
- if (info.type !== "inspect") {
30
- throw new Error(`Received unknown yarn info for ${name}, ${output}`);
31
- }
32
- return info.data;
33
- } catch (error) {
34
- if (yarnVersion === "classic") {
35
- throw error;
36
- }
37
- if (error instanceof Error && "stdout" in error && typeof error.stdout === "string" && error.stdout.includes("Response Code: 404")) {
38
- throw new errors.NotFoundError(
39
- `No package information found for package ${name}`
40
- );
41
- }
42
- throw error;
43
- }
44
- }
45
- async function mapDependencies(targetDir, pattern) {
46
- const { packages, root } = await getPackages.getPackages(targetDir);
47
- packages.push(root);
48
- const dependencyMap = /* @__PURE__ */ new Map();
49
- for (const pkg of packages) {
50
- const deps = DEP_TYPES.flatMap(
51
- (t) => Object.entries(pkg.packageJson[t] ?? {})
52
- );
53
- for (const [name, range] of deps) {
54
- if (minimatch.minimatch(name, pattern)) {
55
- dependencyMap.set(
56
- name,
57
- (dependencyMap.get(name) ?? []).concat({
58
- range,
59
- name: pkg.packageJson.name,
60
- location: pkg.dir
61
- })
62
- );
63
- }
64
- }
65
- }
66
- return dependencyMap;
67
- }
68
-
69
- exports.fetchPackageInfo = fetchPackageInfo;
70
- exports.mapDependencies = mapDependencies;
71
- //# sourceMappingURL=packages.cjs.js.map
@@ -1,28 +0,0 @@
1
- 'use strict';
2
-
3
- var errors = require('@backstage/errors');
4
- var cliCommon = require('@backstage/cli-common');
5
-
6
- const versions = /* @__PURE__ */ new Map();
7
- function detectYarnVersion(dir) {
8
- const cwd = process.cwd();
9
- if (versions.has(cwd)) {
10
- return versions.get(cwd);
11
- }
12
- const promise = Promise.resolve().then(async () => {
13
- try {
14
- const stdout = await cliCommon.runOutput(["yarn", "--version"], {
15
- cwd
16
- });
17
- return stdout.trim().startsWith("1.") ? "classic" : "berry";
18
- } catch (error) {
19
- errors.assertError(error);
20
- throw new errors.ForwardedError("Failed to determine yarn version", error);
21
- }
22
- });
23
- versions.set(cwd, promise);
24
- return promise;
25
- }
26
-
27
- exports.detectYarnVersion = detectYarnVersion;
28
- //# sourceMappingURL=yarn.cjs.js.map
@@ -1,115 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var cleye = require('cleye');
6
- var createNewPackage = require('../lib/createNewPackage.cjs.js');
7
-
8
- var _new = async ({ args, info }) => {
9
- for (const flag of ["skipInstall", "npmRegistry", "baseVersion"]) {
10
- if (args.some((a) => a === `--${flag}` || a.startsWith(`--${flag}=`))) {
11
- process.stderr.write(
12
- `DEPRECATION WARNING: --${flag} is deprecated, use the kebab-case form instead
13
- `
14
- );
15
- }
16
- }
17
- const {
18
- flags: {
19
- select,
20
- option: rawArgOptions,
21
- skipInstall,
22
- scope,
23
- npmRegistry,
24
- baseVersion,
25
- license,
26
- private: isPrivate
27
- }
28
- } = cleye.cli(
29
- {
30
- help: info,
31
- booleanFlagNegation: true,
32
- flags: {
33
- select: {
34
- type: String,
35
- description: "Select the thing you want to be creating upfront"
36
- },
37
- option: {
38
- type: [String],
39
- description: "Pre-fill options for the creation process",
40
- default: []
41
- },
42
- skipInstall: {
43
- type: Boolean,
44
- description: `Skips running 'yarn install' and 'yarn lint --fix'`
45
- },
46
- scope: {
47
- type: String,
48
- description: "The scope to use for new packages"
49
- },
50
- npmRegistry: {
51
- type: String,
52
- description: "The package registry to use for new packages"
53
- },
54
- baseVersion: {
55
- type: String,
56
- description: "The version to use for any new packages (default: 0.1.0)"
57
- },
58
- license: {
59
- type: String,
60
- description: "The license to use for any new packages (default: Apache-2.0)"
61
- },
62
- private: {
63
- type: Boolean,
64
- description: "Mark new packages as private",
65
- default: true
66
- }
67
- }
68
- },
69
- void 0,
70
- args
71
- );
72
- const prefilledParams = parseParams(rawArgOptions);
73
- let pluginInfix = void 0;
74
- let packagePrefix = void 0;
75
- if (scope) {
76
- const normalizedScope = scope.startsWith("@") ? scope : `@${scope}`;
77
- packagePrefix = normalizedScope.includes("/") ? normalizedScope : `${normalizedScope}/`;
78
- pluginInfix = scope.includes("backstage") ? "plugin-" : "backstage-plugin-";
79
- }
80
- if (isPrivate === false || [npmRegistry, baseVersion, license].filter(Boolean).length !== 0) {
81
- console.warn(
82
- `Global template configuration via CLI flags is deprecated, see https://backstage.io/docs/cli/new for information on how to configure package templating`
83
- );
84
- }
85
- await createNewPackage.createNewPackage({
86
- prefilledParams,
87
- preselectedTemplateId: select,
88
- configOverrides: {
89
- license,
90
- version: baseVersion,
91
- private: isPrivate,
92
- publishRegistry: npmRegistry,
93
- packageNamePrefix: packagePrefix,
94
- packageNamePluginInfix: pluginInfix
95
- },
96
- skipInstall: Boolean(skipInstall)
97
- });
98
- };
99
- function parseParams(optionStrings) {
100
- const options = {};
101
- for (const str of optionStrings) {
102
- const [key] = str.split("=", 1);
103
- const value = str.slice(key.length + 1);
104
- if (!key || str[key.length] !== "=") {
105
- throw new Error(
106
- `Invalid option '${str}', must be of the format <key>=<value>`
107
- );
108
- }
109
- options[key] = value;
110
- }
111
- return options;
112
- }
113
-
114
- exports.default = _new;
115
- //# sourceMappingURL=new.cjs.js.map
@@ -1,40 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var factory = require('../../wiring/factory.cjs.js');
6
- var errors = require('@backstage/errors');
7
-
8
- var index = factory.createCliPlugin({
9
- pluginId: "new",
10
- init: async (reg) => {
11
- reg.addCommand({
12
- path: ["new"],
13
- description: "Open up an interactive guide to creating new things in your app",
14
- execute: { loader: () => import('./commands/new.cjs.js') }
15
- });
16
- reg.addCommand({
17
- path: ["create"],
18
- description: "Create a new Backstage app",
19
- deprecated: true,
20
- execute: async () => {
21
- throw new errors.NotImplementedError(
22
- `This command has been removed, use 'backstage-cli new' instead`
23
- );
24
- }
25
- });
26
- reg.addCommand({
27
- path: ["create-plugin"],
28
- description: "Create a new Backstage plugin",
29
- deprecated: true,
30
- execute: async () => {
31
- throw new errors.NotImplementedError(
32
- `This command has been removed, use 'backstage-cli new' instead`
33
- );
34
- }
35
- });
36
- }
37
- });
38
-
39
- exports.default = index;
40
- //# sourceMappingURL=index.cjs.js.map
@@ -1,92 +0,0 @@
1
- 'use strict';
2
-
3
- var fs = require('fs-extra');
4
- var path = require('node:path');
5
- var cliCommon = require('@backstage/cli-common');
6
-
7
- function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
8
-
9
- var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
10
- var path__default = /*#__PURE__*/_interopDefaultCompat(path);
11
-
12
- const TEAM_ID_RE = /^@[-\w]+\/[-\w]+$/;
13
- const USER_ID_RE = /^@[-\w]+$/;
14
- const EMAIL_RE = /^[^@]+@[-.\w]+\.[-\w]+$/i;
15
- const DEFAULT_OWNER = "@backstage/maintainers";
16
- async function getCodeownersFilePath(rootDir) {
17
- const possiblePaths = [
18
- path__default.default.join(rootDir, ".github", "CODEOWNERS"),
19
- path__default.default.join(rootDir, ".gitlab", "CODEOWNERS"),
20
- path__default.default.join(rootDir, "docs", "CODEOWNERS"),
21
- path__default.default.join(rootDir, "CODEOWNERS")
22
- ];
23
- for (const p of possiblePaths) {
24
- if (await fs__default.default.pathExists(p)) {
25
- return p;
26
- }
27
- }
28
- return void 0;
29
- }
30
- function isValidSingleOwnerId(id) {
31
- if (!id || typeof id !== "string") {
32
- return false;
33
- }
34
- return TEAM_ID_RE.test(id) || USER_ID_RE.test(id) || EMAIL_RE.test(id);
35
- }
36
- function parseOwnerIds(spaceSeparatedOwnerIds) {
37
- if (!spaceSeparatedOwnerIds || typeof spaceSeparatedOwnerIds !== "string") {
38
- return void 0;
39
- }
40
- const ids = spaceSeparatedOwnerIds.split(" ").filter(Boolean);
41
- if (!ids.every(isValidSingleOwnerId)) {
42
- return void 0;
43
- }
44
- return ids;
45
- }
46
- async function addCodeownersEntry(ownedPath, ownerStr, codeownersFilePath) {
47
- const ownerIds = parseOwnerIds(ownerStr);
48
- if (!ownerIds || ownerIds.length === 0) {
49
- return false;
50
- }
51
- let filePath = codeownersFilePath;
52
- if (!filePath) {
53
- filePath = await getCodeownersFilePath(cliCommon.targetPaths.rootDir);
54
- if (!filePath) {
55
- return false;
56
- }
57
- }
58
- const allLines = (await fs__default.default.readFile(filePath, "utf8")).split("\n");
59
- const commentLines = [];
60
- for (const line of allLines) {
61
- if (line[0] !== "#") {
62
- break;
63
- }
64
- commentLines.push(line);
65
- }
66
- const oldDeclarationEntries = allLines.filter((line) => line[0] !== "#").map((line) => line.split(/\s+/).filter(Boolean)).filter((tokens) => tokens.length >= 2).map((tokens) => ({
67
- ownedPath: tokens[0],
68
- ownerIds: tokens.slice(1)
69
- }));
70
- const newDeclarationEntries = oldDeclarationEntries.filter((entry) => entry.ownedPath !== "*").concat([{ ownedPath, ownerIds }]).sort((l1, l2) => l1.ownedPath.localeCompare(l2.ownedPath));
71
- newDeclarationEntries.unshift({
72
- ownedPath: "*",
73
- ownerIds: [DEFAULT_OWNER]
74
- });
75
- const longestOwnedPath = newDeclarationEntries.reduce(
76
- (length, entry) => Math.max(length, entry.ownedPath.length),
77
- 0
78
- );
79
- const newDeclarationLines = newDeclarationEntries.map((entry) => {
80
- const entryPath = entry.ownedPath + " ".repeat(longestOwnedPath - entry.ownedPath.length);
81
- return [entryPath, ...entry.ownerIds].join(" ");
82
- });
83
- const newLines = [...commentLines, "", ...newDeclarationLines, ""];
84
- await fs__default.default.writeFile(filePath, newLines.join("\n"), "utf8");
85
- return true;
86
- }
87
-
88
- exports.addCodeownersEntry = addCodeownersEntry;
89
- exports.getCodeownersFilePath = getCodeownersFilePath;
90
- exports.isValidSingleOwnerId = isValidSingleOwnerId;
91
- exports.parseOwnerIds = parseOwnerIds;
92
- //# sourceMappingURL=codeowners.cjs.js.map
@@ -1,32 +0,0 @@
1
- 'use strict';
2
-
3
- var collectPortableTemplateInput = require('./preparation/collectPortableTemplateInput.cjs.js');
4
- var loadPortableTemplateConfig = require('./preparation/loadPortableTemplateConfig.cjs.js');
5
- var selectTemplateInteractively = require('./preparation/selectTemplateInteractively.cjs.js');
6
- var loadPortableTemplate = require('./preparation/loadPortableTemplate.cjs.js');
7
- var executePortableTemplate = require('./execution/executePortableTemplate.cjs.js');
8
-
9
- async function createNewPackage(options) {
10
- const config = await loadPortableTemplateConfig.loadPortableTemplateConfig({
11
- overrides: options.configOverrides
12
- });
13
- const selectedTemplate = await selectTemplateInteractively.selectTemplateInteractively(
14
- config,
15
- options.preselectedTemplateId
16
- );
17
- const template = await loadPortableTemplate.loadPortableTemplate(selectedTemplate);
18
- const input = await collectPortableTemplateInput.collectPortableTemplateInput({
19
- config,
20
- template,
21
- prefilledParams: options.prefilledParams
22
- });
23
- await executePortableTemplate.executePortableTemplate({
24
- config,
25
- template,
26
- input,
27
- skipInstall: options.skipInstall
28
- });
29
- }
30
-
31
- exports.createNewPackage = createNewPackage;
32
- //# sourceMappingURL=createNewPackage.cjs.js.map
@@ -1,17 +0,0 @@
1
- 'use strict';
2
-
3
- const defaultTemplates = [
4
- "@backstage/cli/templates/frontend-plugin",
5
- "@backstage/cli/templates/backend-plugin",
6
- "@backstage/cli/templates/backend-plugin-module",
7
- "@backstage/cli/templates/plugin-web-library",
8
- "@backstage/cli/templates/plugin-node-library",
9
- "@backstage/cli/templates/plugin-common-library",
10
- "@backstage/cli/templates/web-library",
11
- "@backstage/cli/templates/node-library",
12
- "@backstage/cli/templates/catalog-provider-module",
13
- "@backstage/cli/templates/scaffolder-backend-module"
14
- ];
15
-
16
- exports.defaultTemplates = defaultTemplates;
17
- //# sourceMappingURL=defaultTemplates.cjs.js.map
@@ -1,89 +0,0 @@
1
- 'use strict';
2
-
3
- var handlebars = require('handlebars');
4
- var camelCase = require('lodash/camelCase');
5
- var kebabCase = require('lodash/kebabCase');
6
- var lowerCase = require('lodash/lowerCase');
7
- var snakeCase = require('lodash/snakeCase');
8
- var startCase = require('lodash/startCase');
9
- var upperCase = require('lodash/upperCase');
10
- var upperFirst = require('lodash/upperFirst');
11
- var lowerFirst = require('lodash/lowerFirst');
12
- var cliNode = require('@backstage/cli-node');
13
- var cliCommon = require('@backstage/cli-common');
14
- var version = require('../version.cjs.js');
15
-
16
- function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
17
-
18
- var handlebars__default = /*#__PURE__*/_interopDefaultCompat(handlebars);
19
- var camelCase__default = /*#__PURE__*/_interopDefaultCompat(camelCase);
20
- var kebabCase__default = /*#__PURE__*/_interopDefaultCompat(kebabCase);
21
- var lowerCase__default = /*#__PURE__*/_interopDefaultCompat(lowerCase);
22
- var snakeCase__default = /*#__PURE__*/_interopDefaultCompat(snakeCase);
23
- var startCase__default = /*#__PURE__*/_interopDefaultCompat(startCase);
24
- var upperCase__default = /*#__PURE__*/_interopDefaultCompat(upperCase);
25
- var upperFirst__default = /*#__PURE__*/_interopDefaultCompat(upperFirst);
26
- var lowerFirst__default = /*#__PURE__*/_interopDefaultCompat(lowerFirst);
27
-
28
- const builtInHelpers = {
29
- camelCase: camelCase__default.default,
30
- kebabCase: kebabCase__default.default,
31
- lowerCase: lowerCase__default.default,
32
- snakeCase: snakeCase__default.default,
33
- startCase: startCase__default.default,
34
- upperCase: upperCase__default.default,
35
- upperFirst: upperFirst__default.default,
36
- lowerFirst: lowerFirst__default.default
37
- };
38
- class PortableTemplater {
39
- static async create(options = {}) {
40
- let lockfile;
41
- try {
42
- lockfile = await cliNode.Lockfile.load(cliCommon.targetPaths.resolveRoot("yarn.lock"));
43
- } catch {
44
- }
45
- const yarnPluginEnabled = await cliNode.hasBackstageYarnPlugin();
46
- const versionProvider = version.createPackageVersionProvider(lockfile, {
47
- preferBackstageProtocol: yarnPluginEnabled
48
- });
49
- const templater = new PortableTemplater(
50
- {
51
- versionQuery(name, versionHint) {
52
- return versionProvider(
53
- name,
54
- typeof versionHint === "string" ? versionHint : void 0
55
- );
56
- }
57
- },
58
- options.values ?? {}
59
- );
60
- if (options.templatedValues) {
61
- templater.appendTemplatedValues(options.templatedValues);
62
- }
63
- return templater;
64
- }
65
- #templater;
66
- #values;
67
- constructor(helpers, values) {
68
- this.#templater = handlebars__default.default.create();
69
- this.#templater.registerHelper(builtInHelpers);
70
- if (helpers) {
71
- this.#templater.registerHelper(helpers);
72
- }
73
- this.#values = values;
74
- }
75
- template(content) {
76
- return this.#templater.compile(content, {
77
- strict: true
78
- })(this.#values);
79
- }
80
- appendTemplatedValues(record) {
81
- const newValues = Object.fromEntries(
82
- Object.entries(record).map(([key, value]) => [key, this.template(value)])
83
- );
84
- this.#values = { ...this.#values, ...newValues };
85
- }
86
- }
87
-
88
- exports.PortableTemplater = PortableTemplater;
89
- //# sourceMappingURL=PortableTemplater.cjs.js.map
@@ -1,66 +0,0 @@
1
- 'use strict';
2
-
3
- var errors = require('@backstage/errors');
4
- var codeowners = require('../codeowners/codeowners.cjs.js');
5
- var tasks = require('../tasks.cjs.js');
6
- var installNewPackage = require('./installNewPackage.cjs.js');
7
- var writeTemplateContents = require('./writeTemplateContents.cjs.js');
8
- var cliCommon = require('@backstage/cli-common');
9
-
10
- async function executePortableTemplate(options) {
11
- const { template, input } = options;
12
- let modified = false;
13
- try {
14
- const { targetDir } = await tasks.Task.forItem(
15
- "templating",
16
- input.packagePath,
17
- () => writeTemplateContents.writeTemplateContents(template, input)
18
- );
19
- modified = true;
20
- await installNewPackage.installNewPackage(input);
21
- if (input.owner) {
22
- await codeowners.addCodeownersEntry(targetDir, input.owner);
23
- }
24
- if (!options.skipInstall) {
25
- for (const command of [
26
- ["yarn", "install"],
27
- ["yarn", "lint", "--fix"]
28
- ]) {
29
- const commandStr = command.join(" ");
30
- try {
31
- await tasks.Task.forItem("executing", commandStr, async () => {
32
- await cliCommon.run(command, {
33
- cwd: targetDir,
34
- stdio: "ignore"
35
- }).waitForExit();
36
- });
37
- } catch (error) {
38
- errors.assertError(error);
39
- tasks.Task.error(
40
- `Warning: Failed to execute command '${commandStr}', ${error}`
41
- );
42
- }
43
- }
44
- }
45
- tasks.Task.log();
46
- tasks.Task.log(`\u{1F389} Successfully created ${template.name}`);
47
- tasks.Task.log();
48
- } catch (error) {
49
- errors.assertError(error);
50
- tasks.Task.error(error.message);
51
- if (modified) {
52
- tasks.Task.log("It seems that something went wrong in the creation process \u{1F914}");
53
- tasks.Task.log();
54
- tasks.Task.log(
55
- "We have left the changes that were made intact in case you want to"
56
- );
57
- tasks.Task.log(
58
- "continue manually, but you can also revert the changes and try again."
59
- );
60
- tasks.Task.error(`\u{1F525} Failed to create ${template.name}!`);
61
- }
62
- }
63
- }
64
-
65
- exports.executePortableTemplate = executePortableTemplate;
66
- //# sourceMappingURL=executePortableTemplate.cjs.js.map