DiamondLightSource / DiamondLightSource/atlas

i15-1: "Add all to queue" when all or some items are already queued

Open
#112 0 comments 0 reactions 0 assignees View on GitHub
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.