DiamondLightSource / DiamondLightSource/atlas
i15-1: "Add all to queue" when all or some items are already queued
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 4
- Avg merge
- 6d 8h
- Merged PRs (30d)
- 8
Description
When pressing "Add all to queue" it should add all items available to the queue (see #107).
For now this is okay, but this can cause unintended duplicates.
My suggestion is as follows:
- When pressing "Add all to queue"
- If none of the items are already queued, the action proceeds immediately.
- If one or more items are already in the queue, display a confirmation dialog:
> **Some items are already in the queue**
>
> Some of the selected items have already been added to the queue.
> What would you like to do?
>
> **Add all** (add every item, including duplicates)
> **Skip duplicates** (or **Add only new items** add only items that are not already in the queue)
> **Cancel**
Additional thoughts:
- This could pop-up also when selecting few rows and adding them to the row, if one or more are already queued
- We could evolve the message to: "24 items selected. 7 are already in the queue." if we want to be more explicit.
- We could show an option to "Replace existing" if we think it's necessary.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the existing "Add all to queue" action and the code handling selected rows, then inspect the project’s existing confirmation-dialog patterns. Done means the action proceeds when no selected items are queued, while an appropriate dialog lets users add all, skip duplicates, or cancel when duplicates are present.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100