diff --git a/src/store/index.ts b/src/store/index.ts index ec50ae7..a8df8ff 100644 --- a/src/store/index.ts +++ b/src/store/index.ts @@ -2578,6 +2578,8 @@ export const updateTask = async (id: string, updates: Partial) => { } if (currentTask) { + let favoriteTagOverride: string | null | undefined; + if (finalUpdates.tags) { const parsedTags = parseTags(finalUpdates.tags); finalUpdates.labelTags = parsedTags.filter(tag => tag.kind === "label").map(tag => tag.display); @@ -2600,10 +2602,13 @@ export const updateTask = async (id: string, updates: Partial) => { key: tag.key } satisfies NoteRef; }); + favoriteTagOverride = finalUpdates.tags.find(tag => tag.endsWith("_favorite__")) || null; } if (finalUpdates.labelTags || finalUpdates.shareRefs || finalUpdates.noteRefs) { - const favoriteTag = currentTask.tags.find(tag => tag.endsWith("_favorite__")); + const favoriteTag = favoriteTagOverride !== undefined + ? favoriteTagOverride || undefined + : currentTask.tags.find(tag => tag.endsWith("_favorite__")); finalUpdates.tags = buildTaskTags( finalUpdates.labelTags || currentTask.labelTags, finalUpdates.shareRefs || currentTask.shareRefs,