@backstage/create-app 0.7.10-next.2 → 0.8.1
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.
- package/CHANGELOG.md +58 -0
- package/dist/createApp.cjs.js +1 -1
- package/dist/createApp.cjs.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/lib/versions.cjs.js +18 -16
- package/dist/lib/versions.cjs.js.map +1 -1
- package/dist/package.json.cjs.js +1 -1
- package/dist/packages/app-defaults/package.json.cjs.js +1 -1
- package/dist/packages/backend-defaults/package.json.cjs.js +1 -1
- package/dist/packages/catalog-client/package.json.cjs.js +1 -1
- package/dist/packages/catalog-model/package.json.cjs.js +1 -1
- package/dist/packages/cli/package.json.cjs.js +1 -1
- package/dist/packages/cli-defaults/package.json.cjs.js +6 -0
- package/dist/packages/cli-defaults/package.json.cjs.js.map +1 -0
- package/dist/packages/core-app-api/package.json.cjs.js +1 -1
- package/dist/packages/core-compat-api/package.json.cjs.js +1 -1
- package/dist/packages/core-components/package.json.cjs.js +1 -1
- package/dist/packages/core-plugin-api/package.json.cjs.js +1 -1
- package/dist/packages/frontend-defaults/package.json.cjs.js +1 -1
- package/dist/packages/frontend-plugin-api/package.json.cjs.js +1 -1
- package/dist/packages/frontend-test-utils/package.json.cjs.js +1 -1
- package/dist/packages/integration-react/package.json.cjs.js +1 -1
- package/dist/packages/repo-tools/package.json.cjs.js +1 -1
- package/dist/packages/test-utils/package.json.cjs.js +1 -1
- package/dist/packages/ui/package.json.cjs.js +1 -1
- package/dist/plugins/api-docs/package.json.cjs.js +1 -1
- package/dist/plugins/app-backend/package.json.cjs.js +1 -1
- package/dist/plugins/app-react/package.json.cjs.js +1 -1
- package/dist/plugins/app-visualizer/package.json.cjs.js +1 -1
- package/dist/plugins/auth-backend/package.json.cjs.js +1 -1
- package/dist/plugins/auth-backend-module-github-provider/package.json.cjs.js +1 -1
- package/dist/plugins/auth-backend-module-guest-provider/package.json.cjs.js +1 -1
- package/dist/plugins/auth-node/package.json.cjs.js +1 -1
- package/dist/plugins/catalog/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-backend/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-backend-module-logs/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-backend-module-scaffolder-entity-model/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-graph/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-import/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-react/package.json.cjs.js +1 -1
- package/dist/plugins/kubernetes/package.json.cjs.js +1 -1
- package/dist/plugins/kubernetes-backend/package.json.cjs.js +1 -1
- package/dist/plugins/notifications/package.json.cjs.js +1 -1
- package/dist/plugins/notifications-backend/package.json.cjs.js +1 -1
- package/dist/plugins/org/package.json.cjs.js +1 -1
- package/dist/plugins/permission-backend/package.json.cjs.js +1 -1
- package/dist/plugins/permission-backend-module-policy-allow-all/package.json.cjs.js +1 -1
- package/dist/plugins/permission-common/package.json.cjs.js +1 -1
- package/dist/plugins/permission-node/package.json.cjs.js +1 -1
- package/dist/plugins/permission-react/package.json.cjs.js +1 -1
- package/dist/plugins/proxy-backend/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder-backend/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder-backend-module-github/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder-backend-module-notifications/package.json.cjs.js +1 -1
- package/dist/plugins/search/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend-module-catalog/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend-module-pg/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend-module-techdocs/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend-node/package.json.cjs.js +1 -1
- package/dist/plugins/search-react/package.json.cjs.js +1 -1
- package/dist/plugins/signals/package.json.cjs.js +1 -1
- package/dist/plugins/signals-backend/package.json.cjs.js +1 -1
- package/dist/plugins/techdocs/package.json.cjs.js +1 -1
- package/dist/plugins/techdocs-backend/package.json.cjs.js +1 -1
- package/dist/plugins/techdocs-module-addons-contrib/package.json.cjs.js +1 -1
- package/dist/plugins/techdocs-react/package.json.cjs.js +1 -1
- package/dist/plugins/user-settings/package.json.cjs.js +1 -1
- package/package.json +4 -4
- package/templates/default-app/package.json.hbs +23 -0
- package/templates/default-app/packages/app/src/components/catalog/EntityPage.tsx +9 -9
- package/templates/next-app/app-config.yaml.hbs +0 -7
- package/templates/next-app/examples/entities.yaml +2 -0
- package/templates/next-app/examples/example-docs/docs/index.md +5 -0
- package/templates/next-app/examples/example-docs/mkdocs.yml +4 -0
- package/templates/next-app/examples/template/template.yaml +1 -1
- package/templates/next-app/package.json.hbs +2 -14
- package/templates/next-app/packages/app/e2e-tests/app.test.ts +3 -1
- package/templates/next-app/packages/app/package.json.hbs +0 -1
- package/templates/next-app/packages/app/src/modules/nav/Sidebar.tsx +10 -10
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@backstage/create-app",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.1",
|
|
4
4
|
"description": "A CLI that helps you create your own Backstage app",
|
|
5
5
|
"backstage": {
|
|
6
6
|
"role": "cli"
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"watch": "./src"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@backstage/cli-common": "0.2.0
|
|
46
|
+
"@backstage/cli-common": "^0.2.0",
|
|
47
47
|
"chalk": "^4.0.0",
|
|
48
48
|
"commander": "^14.0.3",
|
|
49
49
|
"fs-extra": "^11.2.0",
|
|
@@ -53,8 +53,8 @@
|
|
|
53
53
|
"recursive-readdir": "^2.2.2"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@backstage/backend-test-utils": "1.11.1
|
|
57
|
-
"@backstage/cli": "0.36.0
|
|
56
|
+
"@backstage/backend-test-utils": "^1.11.1",
|
|
57
|
+
"@backstage/cli": "^0.36.0",
|
|
58
58
|
"@types/command-exists": "^1.2.0",
|
|
59
59
|
"@types/fs-extra": "^11.0.0",
|
|
60
60
|
"@types/inquirer": "^8.1.3",
|
|
@@ -22,12 +22,35 @@
|
|
|
22
22
|
"prettier:check": "prettier --check .",
|
|
23
23
|
"new": "backstage-cli new"
|
|
24
24
|
},
|
|
25
|
+
"backstage": {
|
|
26
|
+
"cli": {
|
|
27
|
+
"new": {
|
|
28
|
+
"globals": {
|
|
29
|
+
"license": "UNLICENSED"
|
|
30
|
+
},
|
|
31
|
+
"templates": [
|
|
32
|
+
"@backstage/cli-module-new/templates/legacy-frontend-plugin",
|
|
33
|
+
"@backstage/cli-module-new/templates/backend-plugin",
|
|
34
|
+
"@backstage/cli-module-new/templates/backend-plugin-module",
|
|
35
|
+
"@backstage/cli-module-new/templates/plugin-web-library",
|
|
36
|
+
"@backstage/cli-module-new/templates/plugin-node-library",
|
|
37
|
+
"@backstage/cli-module-new/templates/plugin-common-library",
|
|
38
|
+
"@backstage/cli-module-new/templates/web-library",
|
|
39
|
+
"@backstage/cli-module-new/templates/node-library",
|
|
40
|
+
"@backstage/cli-module-new/templates/cli-module",
|
|
41
|
+
"@backstage/cli-module-new/templates/catalog-provider-module",
|
|
42
|
+
"@backstage/cli-module-new/templates/scaffolder-backend-module"
|
|
43
|
+
]
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
},
|
|
25
47
|
"workspaces": [
|
|
26
48
|
"packages/*",
|
|
27
49
|
"plugins/*"
|
|
28
50
|
],
|
|
29
51
|
"devDependencies": {
|
|
30
52
|
"@backstage/cli": "^{{version '@backstage/cli'}}",
|
|
53
|
+
"@backstage/cli-defaults": "^{{version '@backstage/cli-defaults'}}",
|
|
31
54
|
"@backstage/e2e-test-utils": "^{{version '@backstage/e2e-test-utils'}}",
|
|
32
55
|
"@jest/environment-jsdom-abstract": "^30.0.0",
|
|
33
56
|
"@playwright/test": "^1.32.3",
|
|
@@ -138,7 +138,7 @@ const overviewContent = (
|
|
|
138
138
|
<EntityLinksCard />
|
|
139
139
|
</Grid>
|
|
140
140
|
<Grid item md={8} xs={12}>
|
|
141
|
-
<EntityHasSubcomponentsCard
|
|
141
|
+
<EntityHasSubcomponentsCard />
|
|
142
142
|
</Grid>
|
|
143
143
|
</Grid>
|
|
144
144
|
);
|
|
@@ -175,10 +175,10 @@ const serviceEntityPage = (
|
|
|
175
175
|
<EntityLayout.Route path="/dependencies" title="Dependencies">
|
|
176
176
|
<Grid container spacing={3} alignItems="stretch">
|
|
177
177
|
<Grid item md={6}>
|
|
178
|
-
<EntityDependsOnComponentsCard
|
|
178
|
+
<EntityDependsOnComponentsCard />
|
|
179
179
|
</Grid>
|
|
180
180
|
<Grid item md={6}>
|
|
181
|
-
<EntityDependsOnResourcesCard
|
|
181
|
+
<EntityDependsOnResourcesCard />
|
|
182
182
|
</Grid>
|
|
183
183
|
</Grid>
|
|
184
184
|
</EntityLayout.Route>
|
|
@@ -210,10 +210,10 @@ const websiteEntityPage = (
|
|
|
210
210
|
<EntityLayout.Route path="/dependencies" title="Dependencies">
|
|
211
211
|
<Grid container spacing={3} alignItems="stretch">
|
|
212
212
|
<Grid item md={6}>
|
|
213
|
-
<EntityDependsOnComponentsCard
|
|
213
|
+
<EntityDependsOnComponentsCard />
|
|
214
214
|
</Grid>
|
|
215
215
|
<Grid item md={6}>
|
|
216
|
-
<EntityDependsOnResourcesCard
|
|
216
|
+
<EntityDependsOnResourcesCard />
|
|
217
217
|
</Grid>
|
|
218
218
|
</Grid>
|
|
219
219
|
</EntityLayout.Route>
|
|
@@ -345,13 +345,13 @@ const systemPage = (
|
|
|
345
345
|
<EntityLinksCard />
|
|
346
346
|
</Grid>
|
|
347
347
|
<Grid item md={8}>
|
|
348
|
-
<EntityHasComponentsCard
|
|
348
|
+
<EntityHasComponentsCard />
|
|
349
349
|
</Grid>
|
|
350
350
|
<Grid item md={6}>
|
|
351
|
-
<EntityHasApisCard
|
|
351
|
+
<EntityHasApisCard />
|
|
352
352
|
</Grid>
|
|
353
353
|
<Grid item md={6}>
|
|
354
|
-
<EntityHasResourcesCard
|
|
354
|
+
<EntityHasResourcesCard />
|
|
355
355
|
</Grid>
|
|
356
356
|
</Grid>
|
|
357
357
|
</EntityLayout.Route>
|
|
@@ -388,7 +388,7 @@ const domainPage = (
|
|
|
388
388
|
<EntityCatalogGraphCard height={400} />
|
|
389
389
|
</Grid>
|
|
390
390
|
<Grid item md={6}>
|
|
391
|
-
<EntityHasSystemsCard
|
|
391
|
+
<EntityHasSystemsCard />
|
|
392
392
|
</Grid>
|
|
393
393
|
</Grid>
|
|
394
394
|
</EntityLayout.Route>
|
|
@@ -6,18 +6,11 @@ app:
|
|
|
6
6
|
packages: all
|
|
7
7
|
|
|
8
8
|
extensions:
|
|
9
|
-
# Disable the nav items that we're manually rendering in packages/app/src/modules/nav/Sidebar.tsx
|
|
10
|
-
- nav-item:search: false
|
|
11
|
-
- nav-item:user-settings: false
|
|
12
|
-
- nav-item:catalog: false
|
|
13
|
-
- nav-item:scaffolder: false
|
|
14
|
-
|
|
15
9
|
# Configure the catalog index page to be the root page, this is normally mounted on /catalog
|
|
16
10
|
- page:catalog:
|
|
17
11
|
config:
|
|
18
12
|
path: /
|
|
19
13
|
|
|
20
|
-
|
|
21
14
|
organization:
|
|
22
15
|
name: My Company
|
|
23
16
|
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Example TechDocs page
|
|
2
|
+
|
|
3
|
+
This is an example TechDocs page!
|
|
4
|
+
|
|
5
|
+
The source of this documentation for the `example-website` component is found in the `examples/example-docs` directory, which is referenced from `examples/entities.yaml`. Typically the `docs` directory would live alongside the `catalog-info.yaml` file of a component instead, but in this case it is separated out to avoid cluttering the examples directory.
|
|
@@ -27,20 +27,7 @@
|
|
|
27
27
|
"new": {
|
|
28
28
|
"globals": {
|
|
29
29
|
"license": "UNLICENSED"
|
|
30
|
-
}
|
|
31
|
-
"templates": [
|
|
32
|
-
"@backstage/cli/templates/new-frontend-plugin",
|
|
33
|
-
"@backstage/cli/templates/new-frontend-plugin-module",
|
|
34
|
-
"@backstage/cli/templates/backend-plugin",
|
|
35
|
-
"@backstage/cli/templates/backend-plugin-module",
|
|
36
|
-
"@backstage/cli/templates/plugin-web-library",
|
|
37
|
-
"@backstage/cli/templates/plugin-node-library",
|
|
38
|
-
"@backstage/cli/templates/plugin-common-library",
|
|
39
|
-
"@backstage/cli/templates/web-library",
|
|
40
|
-
"@backstage/cli/templates/node-library",
|
|
41
|
-
"@backstage/cli/templates/catalog-provider-module",
|
|
42
|
-
"@backstage/cli/templates/scaffolder-backend-module"
|
|
43
|
-
]
|
|
30
|
+
}
|
|
44
31
|
}
|
|
45
32
|
}
|
|
46
33
|
},
|
|
@@ -50,6 +37,7 @@
|
|
|
50
37
|
],
|
|
51
38
|
"devDependencies": {
|
|
52
39
|
"@backstage/cli": "^{{version '@backstage/cli'}}",
|
|
40
|
+
"@backstage/cli-defaults": "^{{version '@backstage/cli-defaults'}}",
|
|
53
41
|
"@backstage/e2e-test-utils": "^{{version '@backstage/e2e-test-utils'}}",
|
|
54
42
|
"@jest/environment-jsdom-abstract": "^30.0.0",
|
|
55
43
|
"@playwright/test": "^1.32.3",
|
|
@@ -23,5 +23,7 @@ test('App should render the welcome page', async ({ page }) => {
|
|
|
23
23
|
await expect(enterButton).toBeVisible();
|
|
24
24
|
await enterButton.click();
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
const nav = page.getByRole('navigation');
|
|
27
|
+
await expect(nav.getByRole('link', { name: 'Catalog' })).toBeVisible();
|
|
28
|
+
await expect(page.getByRole('link', { name: 'APIs' })).toBeVisible();
|
|
27
29
|
});
|
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@backstage/cli": "^{{ version '@backstage/cli'}}",
|
|
18
|
-
"@backstage/core-compat-api": "^{{ version '@backstage/core-compat-api'}}",
|
|
19
18
|
"@backstage/core-components": "^{{ version '@backstage/core-components'}}",
|
|
20
19
|
"@backstage/core-plugin-api": "^{{ version '@backstage/core-plugin-api'}}",
|
|
21
20
|
"@backstage/frontend-defaults": "^{{ version '@backstage/frontend-defaults'}}",
|
|
@@ -6,26 +6,25 @@ import {
|
|
|
6
6
|
SidebarScrollWrapper,
|
|
7
7
|
SidebarSpace,
|
|
8
8
|
} from '@backstage/core-components';
|
|
9
|
-
import { compatWrapper } from '@backstage/core-compat-api';
|
|
10
9
|
import { NavContentBlueprint } from '@backstage/plugin-app-react';
|
|
11
10
|
import { SidebarLogo } from './SidebarLogo';
|
|
12
11
|
import MenuIcon from '@material-ui/icons/Menu';
|
|
13
12
|
import SearchIcon from '@material-ui/icons/Search';
|
|
14
13
|
import { SidebarSearchModal } from '@backstage/plugin-search';
|
|
15
|
-
import { UserSettingsSignInAvatar
|
|
14
|
+
import { UserSettingsSignInAvatar } from '@backstage/plugin-user-settings';
|
|
16
15
|
import { NotificationsSidebarItem } from '@backstage/plugin-notifications';
|
|
17
16
|
|
|
18
17
|
export const SidebarContent = NavContentBlueprint.make({
|
|
19
18
|
params: {
|
|
20
19
|
component: ({ navItems }) => {
|
|
21
20
|
const nav = navItems.withComponent(item => (
|
|
22
|
-
<SidebarItem
|
|
23
|
-
icon={() => item.icon}
|
|
24
|
-
to={item.href}
|
|
25
|
-
text={item.title}
|
|
26
|
-
/>
|
|
21
|
+
<SidebarItem icon={() => item.icon} to={item.href} text={item.title} />
|
|
27
22
|
));
|
|
28
|
-
|
|
23
|
+
|
|
24
|
+
// Skipped items
|
|
25
|
+
nav.take('page:search'); // Using search modal instead
|
|
26
|
+
|
|
27
|
+
return (
|
|
29
28
|
<Sidebar>
|
|
30
29
|
<SidebarLogo />
|
|
31
30
|
<SidebarGroup label="Search" icon={<SearchIcon />} to="/search">
|
|
@@ -49,9 +48,10 @@ export const SidebarContent = NavContentBlueprint.make({
|
|
|
49
48
|
icon={<UserSettingsSignInAvatar />}
|
|
50
49
|
to="/settings"
|
|
51
50
|
>
|
|
52
|
-
|
|
51
|
+
{nav.take('page:app-visualizer')}
|
|
52
|
+
{nav.take('page:user-settings')}
|
|
53
53
|
</SidebarGroup>
|
|
54
|
-
</Sidebar
|
|
54
|
+
</Sidebar>
|
|
55
55
|
);
|
|
56
56
|
},
|
|
57
57
|
},
|