Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Batch Edit Task List Block for Svelte

A follow-up task list where Edit tasks turns every title into a field, marks changed rows as Edited with a per-row Undo edit, and saves all the changes at once or cancels them.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

Reword several tasks and save once, with this batch edit to-do list block for Svelte with Ark UI. The "Edit tasks" button in the header, which reports aria-pressed, turns every title into an Input. A row you change gets a filled dot and the word "Edited" under it, and an "Undo edit" button that puts only that title back. Nothing is committed until the foot says so: it counts "2 edited" and holds the block's one Shine Button, "Save 2 changes", which stays inert while nothing has changed, next to Cancel, which reverts all of it. A title cannot be saved empty: the problem shows under its row and Save refuses. Escape cancels, and rows keep their height whether or not you are editing. Each task is also a Checkbox, and the frame is ruled by Guides. For meeting follow-ups, checklists and any list you clean up in one pass.

FAQ

How do I load my own tasks?

Replace START. A task has an id, a title, a done flag and a source line shown under the title when it is not being edited, such as the meeting it came from.

When are the changes applied?

Only when you press Save. Until then each edit is held beside the task, so Cancel, Escape and the header toggle can discard all of them, and Undo edit discards one. Typing a title back to its saved text counts as no edit.

What happens with an empty title?

The row shows "A title can't be empty." under it, Save refuses and moves focus to the first such field, and the status line says how many titles are empty. Undo edit or typing a title fixes it.

What stays local, and how do I save for real?

Saving updates the page's state and nothing else, so titles return to the starting text on reload. Send the changed rows, which save already collects, in one request to your API.

Is it accessible?

Each field is labelled with the task it edits, an edited row is announced by the word "Edited" and not by color alone, and one polite status message reports each action. Fields that are not editing are inert, so the tab order never lands on a hidden control.