From eff53745d91ded60a2cefbe2b859ecbba96dc03f Mon Sep 17 00:00:00 2001 From: Dustin Carlino Date: Mon, 26 Feb 2024 14:56:12 +0000 Subject: [PATCH] Reorder lanes (without bringing in a drag-and-drop library yet) --- .../proposed/CrossSection.svelte | 23 ++++++++++++++++++- .../cross_section/proposed/LaneCard.svelte | 16 +++++++++++-- 2 files changed, 36 insertions(+), 3 deletions(-) diff --git a/src/routes/cross_section/proposed/CrossSection.svelte b/src/routes/cross_section/proposed/CrossSection.svelte index 3a2f1dd637..532b7aa6d8 100644 --- a/src/routes/cross_section/proposed/CrossSection.svelte +++ b/src/routes/cross_section/proposed/CrossSection.svelte @@ -12,12 +12,33 @@ lanesLeftToRight.splice(i, 1); lanesLeftToRight = lanesLeftToRight; } + + function moveLeft(i: number) { + [lanesLeftToRight[i - 1], lanesLeftToRight[i]] = [ + lanesLeftToRight[i], + lanesLeftToRight[i - 1], + ]; + } + + function moveRight(i: number) { + [lanesLeftToRight[i + 1], lanesLeftToRight[i]] = [ + lanesLeftToRight[i], + lanesLeftToRight[i + 1], + ]; + } Add
{#each lanesLeftToRight as lane, i (i)} - deleteLane(i)} /> + deleteLane(i)} + on:moveLeft={() => moveLeft(i)} + on:moveRight={() => moveRight(i)} + isFirst={i == 0} + isLast={i == lanesLeftToRight.length - 1} + /> {/each}
diff --git a/src/routes/cross_section/proposed/LaneCard.svelte b/src/routes/cross_section/proposed/LaneCard.svelte index f98bcbfcda..77a22196db 100644 --- a/src/routes/cross_section/proposed/LaneCard.svelte +++ b/src/routes/cross_section/proposed/LaneCard.svelte @@ -1,12 +1,16 @@