Skip to content

Commit 7492b3a

Browse files
committed
No longer support individual create and edit pages
Removes all individual pages for creating and edits announcements, categories, and tags. Users must use the admin portal component in order to manage announcements, categories, and tags. Signed-off-by: Kurt King <[email protected]>
1 parent 2b8134c commit 7492b3a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+133
-1661
lines changed
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
---
2+
'@backstage-community/plugin-announcements': major
3+
---
4+
5+
# Major Release: Admin Portal Consolidation
6+
7+
Releases the first major version of the plugin with support for two primary entry points:
8+
9+
- `AnnouncementsPage` - A page that displays all announcements that end users consume
10+
- `AdminPortal` - A unified portal for managing announcements, categories, and tags
11+
12+
With this major release, we are consolidating all functionality into the admin portal. The previous version provides individual pages for each of these entry points which have now been removed.
13+
14+
As the plugin's adoption grew, more requests to hide UI components based on permissions came in. This decision was made to simplify the plugin and reduce the complexity of the codebase. It also provides a more consistent UX for admin operations and allows for more flexibility in the future.
15+
16+
## Breaking Changes
17+
18+
### Removed Routes
19+
20+
The following route references have been removed and are no longer available:
21+
22+
- `announcementCreateRouteRef` - Use `announcementAdminRouteRef` instead
23+
- `announcementEditRouteRef` - Use `announcementAdminRouteRef` instead
24+
- `categoriesListRouteRef` - Categories are now managed within the Admin Portal
25+
- `tagsListRouteRef` - Tags are now managed within the Admin Portal
26+
27+
### Removed Components
28+
29+
The following components have been removed:
30+
31+
- `CreateAnnouncementPage` - Replaced by `AdminPortal` with Announcements tab
32+
- `EditAnnouncementPage` - Replaced by `AdminPortal` with Announcements tab
33+
- `CategoriesPage` - Replaced by `AdminPortal` with Categories tab
34+
- `TagsPage` - Replaced by `AdminPortal` with Tags tab
35+
- `NewCategoryDialog` - Category creation is now handled inline within the Categories tab
36+
- `NewTagDialog` - Tag creation is now handled inline within the Tags tab
37+
38+
### Component Reorganization
39+
40+
Admin-related components have been reorganized into feature-specific directories:
41+
42+
- `Admin/AnnouncementsContent/` - Contains announcement management components
43+
- `Admin/CategoriesContent/` - Contains category management components
44+
- `Admin/TagsContent/` - Contains tag management components
45+
46+
## Benefits
47+
48+
- Single entry point for all admin operations (`/announcements/admin`)
49+
- Less code to maintain - removed duplicate page components
50+
- Reduction in code duplication - shared form logic consolidated
51+
- Less code to migrate to `@backstage/ui` and the new frontend system
52+
- Improved UX with tabbed interface for related admin operations
53+
- Better permission handling - all admin operations gated through one portal
54+
55+
## Highlights
56+
57+
- The button to create a new announcement has been removed from the announcements page. This button is now only available in the admin portal.
58+
- The context menu has been updated to only include a link to the admin portal. Links to the individual pages for categories and tags have been removed.
59+
- All admin operations (create/edit announcements, manage categories, manage tags) are now accessible through a unified tabbed interface in the Admin Portal.
60+
- The `AnnouncementsCard` component now links to the admin portal instead of the create page.
61+
62+
## Migration Guide
63+
64+
If you have custom integrations or links to the old routes, update them as follows:
65+
66+
**Before:**
67+
68+
```tsx
69+
import { announcementCreateRouteRef } from '@backstage-community/plugin-announcements';
70+
const createLink = useRouteRef(announcementCreateRouteRef);
71+
```
72+
73+
**After:**
74+
75+
```tsx
76+
import { announcementAdminRouteRef } from '@backstage-community/plugin-announcements';
77+
const adminLink = useRouteRef(announcementAdminRouteRef);
78+
```
79+
80+
All admin functionality is now accessible at the `/admin` route under the announcements root path.

0 commit comments

Comments
 (0)