Skip to content

Block view: drag/drop to reorder recipe rows #6

Description

@ApocDev

Let me reorder the recipe rows within a block by dragging them, so the display order reflects how I actually think about the processing chain.

Why

Today recipe rows render in insertion order — they come straight from the BlockData.recipes: string[] array (rendered by recipes.map(...) at routes/block.$id.tsx:1077; add() just appends at :561). There's no way to reorder them. In practice I sometimes have to add recipes in an awkward order "just because", and I'd rather see them arranged in an order that makes processing sense.

Scope

  • Drag handle on each recipe row in the block editor; drop reorders the recipes array.
  • Persist the new array order (it's already the source of truth, so this is a reorder + save of BlockData.recipes).
  • Reorder is display/authoring only — it must not change solve results (the solver is order-independent: a linear system over the recipe set).

Mirrors the drag/drop pattern already used in the sidebar (dropBlockBefore/setBlockOrder in routes/block.tsx).

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: webWeb UI (React/TanStack/vite-plus)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions