diff --git a/frontend/src/lib/components/project/Column.svelte b/frontend/src/lib/components/project/Column.svelte
index 18c017d..3f86a36 100644
--- a/frontend/src/lib/components/project/Column.svelte
+++ b/frontend/src/lib/components/project/Column.svelte
@@ -71,6 +71,15 @@
card.showModal = true;
}
+
+ async function setOptionValue() {
+ if (!option || !primaryTag) return;
+ if (newOptionValue === option.value) return;
+
+ await option.setValue(newOptionValue);
+ newOptionValue = option.value;
+ currentView.reload();
+ }
{
- if (!option || !primaryTag) return;
- if (newOptionValue === option.value) return;
-
- await option.setValue(newOptionValue);
- newOptionValue = option.value;
+ on:blur={setOptionValue}
+ on:keydown={(e) => {
+ if (e.key === 'Enter') {
+ setOptionValue();
+ }
}}
disabled={option === null}
/>
diff --git a/frontend/src/lib/components/project/Project.svelte b/frontend/src/lib/components/project/Project.svelte
index 0a8b568..3926fce 100644
--- a/frontend/src/lib/components/project/Project.svelte
+++ b/frontend/src/lib/components/project/Project.svelte
@@ -5,7 +5,7 @@
import type Project from '$lib/types/Project';
import type ProjectTag from '$lib/types/ProjectTag';
import { projectTags } from '$lib/types/ProjectTag';
- import type TagOption from '$lib/types/TagOption';
+ import TagOption from '$lib/types/TagOption';
import type View from '$lib/types/View';
import Column from './Column.svelte';
import Header from './Header.svelte';
@@ -118,7 +118,7 @@
{#if $cards}
{#if $currentView.primaryTag}
- {#each $currentView.primaryTag.options as option (option.id)}
+ {#each [...$currentView.primaryTag.options].sort(TagOption.compare) as option (option.id)}
{#if columnPassFilters(option, $currentView.filters)}