diff --git a/packages/cli/src/lib/new/factories/webLibrary.ts b/packages/cli/src/lib/new/factories/webLibrary.ts index a58e9f2935..b0010c377d 100644 --- a/packages/cli/src/lib/new/factories/webLibrary.ts +++ b/packages/cli/src/lib/new/factories/webLibrary.ts @@ -14,14 +14,13 @@ * limitations under the License. */ -import fs from 'fs-extra'; import chalk from 'chalk'; import camelCase from 'lodash/camelCase'; import upperFirst from 'lodash/upperFirst'; import { paths } from '../../paths'; import { addCodeownersEntry, getCodeownersFilePath } from '../../codeowners'; import { createFactory, CreateContext } from '../types'; -import { addPackageDependency, Task } from '../../tasks'; +import { Task } from '../../tasks'; import { ownerPrompt, pluginIdPrompt } from './common/prompts'; import { executePluginPackageTemplate } from './common/tasks'; @@ -41,9 +40,7 @@ export const webLibrary = createFactory({ async create(options: Options, ctx: CreateContext) { const { id } = options; - const name = ctx.scope - ? `@${ctx.scope}/${id}` - : `backstage-plugin-${id}`; + const name = ctx.scope ? `@${ctx.scope}/${id}` : `backstage-plugin-${id}`; const extensionName = `${upperFirst(camelCase(id))}Page`; Task.log(); @@ -67,55 +64,6 @@ export const webLibrary = createFactory({ }, }); - if (await fs.pathExists(paths.resolveTargetRoot('packages/app'))) { - await Task.forItem('app', 'adding dependency', async () => { - await addPackageDependency( - paths.resolveTargetRoot('packages/app/package.json'), - { - dependencies: { - [name]: `^${ctx.defaultVersion}`, - }, - }, - ); - }); - - await Task.forItem('app', 'adding import', async () => { - const pluginsFilePath = paths.resolveTargetRoot( - 'packages/app/src/App.tsx', - ); - if (!(await fs.pathExists(pluginsFilePath))) { - return; - } - - const content = await fs.readFile(pluginsFilePath, 'utf8'); - const revLines = content.split('\n').reverse(); - - const lastImportIndex = revLines.findIndex(line => - line.match(/ from ("|').*("|')/), - ); - const lastRouteIndex = revLines.findIndex(line => - line.match(/<\/FlatRoutes/), - ); - - if (lastImportIndex !== -1 && lastRouteIndex !== -1) { - const importLine = `import { ${extensionName} } from '${name}';`; - if (!content.includes(importLine)) { - revLines.splice(lastImportIndex, 0, importLine); - } - - const componentLine = `} />`; - if (!content.includes(componentLine)) { - const [indentation] = - revLines[lastRouteIndex + 1].match(/^\s*/) ?? []; - revLines.splice(lastRouteIndex + 1, 0, indentation + componentLine); - } - - const newContent = revLines.reverse().join('\n'); - await fs.writeFile(pluginsFilePath, newContent, 'utf8'); - } - }); - } - if (options.owner) { await addCodeownersEntry(`/packages/${id}`, options.owner); } diff --git a/packages/cli/templates/web-library-package/package.json.hbs b/packages/cli/templates/web-library-package/package.json.hbs index 666b3859e3..d364dba9e1 100644 --- a/packages/cli/templates/web-library-package/package.json.hbs +++ b/packages/cli/templates/web-library-package/package.json.hbs @@ -27,29 +27,14 @@ "prepack": "backstage-cli package prepack", "postpack": "backstage-cli package postpack" }, - "dependencies": { - "@backstage/core-components": "{{versionQuery '@backstage/core-components'}}", - "@backstage/core-plugin-api": "{{versionQuery '@backstage/core-plugin-api'}}", - "@backstage/theme": "{{versionQuery '@backstage/theme'}}", - "@material-ui/core": "{{versionQuery '@material-ui/core' '4.12.2'}}", - "@material-ui/icons": "{{versionQuery '@material-ui/icons' '4.9.1'}}", - "@material-ui/lab": "{{versionQuery '@material-ui/lab' '4.0.0-alpha.57'}}", - "react-use": "{{versionQuery 'react-use' '17.2.4'}}" - }, "peerDependencies": { "react": "{{versionQuery 'react' '^16.13.1 || ^17.0.0'}}" }, "devDependencies": { "@backstage/cli": "{{versionQuery '@backstage/cli'}}", - "@backstage/core-app-api": "{{versionQuery '@backstage/core-app-api'}}", - "@backstage/dev-utils": "{{versionQuery '@backstage/dev-utils'}}", - "@backstage/test-utils": "{{versionQuery '@backstage/test-utils'}}", "@testing-library/jest-dom": "{{versionQuery '@testing-library/jest-dom' '5.10.1'}}", "@testing-library/react": "{{versionQuery '@testing-library/react' '12.1.3'}}", "@testing-library/user-event": "{{versionQuery '@testing-library/user-event' '14.0.0'}}", - "@types/node": "{{versionQuery '@types/node' '16.11.26'}}", - "msw": "{{versionQuery 'msw' '0.47.0'}}", - "cross-fetch": "{{versionQuery 'cross-fetch' '3.1.5'}}" }, "files": [ "dist"