backstage / backstage/community-plugins

announcements: migrate components to `@backstage/ui` design system

Open
#6,485 1 comment 0 reactions 1 assignee Claimed by @kurtaking View on GitHub
do-not-stale workspace/announcements
Dominant language
TypeScript
Stars
422
Forks
697
Avg merge
2d 6h
Merged PRs (30d)
286

Description

### Workspace

announcements

### Summary

This issue tracks the remaining work to complete the migration of all announcements plugin components to the new `@backstage/ui` design system.

## Remaining

### Complete Admin

- [ ] **AnnouncementForm** - Create/edit announcement form
- Keep: `@uiw/react-md-editor` (markdown)
- Sub-components:
- [x] `CategoryInput` - likely use [Searchable Select](https://ui.backstage.io/components/select#searchable) (https://github.com/backstage/community-plugins/pull/7278)
- [x] `TagsInput` - likely use [Searchable Multi Select](https://ui.backstage.io/components/select#searchable) (https://github.com/backstage/community-plugins/pull/7427)
- [x] `OnBehalfTeamDropdown` - likely use [Searchable Select](https://ui.backstage.io/components/select#searchable) (https://github.com/backstage/community-plugins/pull/7288)
- [ ] `Announcement start date` and `Announcement end date` - wait for `@backstage/ui` to provide `DatePicker`

### Widgets

- [ ] **AnnouncementsCard** - Dashboard widget (https://github.com/backstage/community-plugins/pull/6905)
- No _Toast/Snackbar_ equivalent

### Search

- [ ] **AnnouncementSearchResultListItem** - Search result display

### Documentation

- [x] Documentation needs to be updated with screenshots of the updated UI

### Completed

- [x] `AnnouncementsAdminPage` https://github.com/backstage/community-plugins/pull/6426
- [x] `CategoriesContent` https://github.com/backstage/community-plugins/pull/6484
- [x] `CategoriesTableCard`
- [x] `CategoriesTable`
- [x] `CreateCatagoryDialog`
- [x] `TagsContent` https://github.com/backstage/community-plugins/pull/6484
- [x] `TagsTableCard`
- [x] `TagsTable`
- [x] `CreateTagDialog`
- [x] `DeleteConfirmationDialog` https://github.com/backstage/community-plugins/pull/6426
- [x] `CreateTitleDialog` https://github.com/backstage/community-plugins/pull/6426
- [X] AnnouncementsPage https://github.com/backstage/community-plugins/pull/6521
- [X] AnnouncementPage - Single announcement view
- [X] ContextMenu - Header context menu ([bui menu](https://ui.backstage.io/components/menu#with-links))
- [x] **AnnouncementsContent** - Admin announcements table (https://github.com/backstage/community-plugins/pull/6831)

### Cleanup

- [x] Update alpha Router to import all components from alpha directory
- [x] Consider upgrading existing frontend plugin to use new components

### Not Migrating

- [x] `AnnouncementsTimeline` - Deprecated (will not be replaced)
- [x] `AnnouncementsAdminPortal` (Old public exported component extension) - Deprecated (replaced with `AnnouncementsAdminPage` available via direct `/announcements/admin` url or context menu)

## Notes

- `InfoCard` from core-components → `Card`
- Utility files do not need migration
- `MarkdownRenderer` can remain unchanged

### 👀 Have you spent some time to check if this feature request has been raised before?

- [x] I checked and didn't find similar issue

### 🏢 Have you read the Code of Conduct?

- [x] I have read the [Code of Conduct](https://github.com/backstage/community-plugins/blob/main/CODE_OF_CONDUCT.md)

### Are you willing to submit PR?

Yes I am willing to submit a PR!

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.