Save tags back to Python

This commit is contained in:
Henrik Giesel 2021-06-28 15:27:59 +02:00
parent 375a96e263
commit 5575482e38
2 changed files with 15 additions and 2 deletions

View file

@ -426,6 +426,14 @@ $editorToolbar.then(({{ toolbar }}) => toolbar.appendGroup({{
(_, highlightColor) = cmd.split(":", 1)
self.mw.pm.profile["lastHighlightColor"] = highlightColor
elif cmd.startswith("saveTags"):
(type, tagsJson) = cmd.split(":", 1)
self.note.tags = json.loads(tagsJson)
gui_hooks.editor_did_update_tags(self.note)
if not self.addMode:
self._save_current_note()
elif cmd in self._links:
self._links[cmd](self)

View file

@ -5,6 +5,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
<script lang="typescript">
import { tick } from "svelte";
import { isApplePlatform } from "lib/platform";
import { bridgeCommand } from "lib/bridgecommand";
import StickyBottom from "components/StickyBottom.svelte";
import AddTagBadge from "./AddTagBadge.svelte";
import Tag from "./Tag.svelte";
@ -20,10 +21,14 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
export let tags: TagType[] = [];
export function resetTags(names: string[]) {
export function resetTags(names: string[]): void {
tags = names.map(attachId);
}
function saveTags(): void {
bridgeCommand(`saveTags:${JSON.stringify(tags.map((tag) => tag.name))}`);
}
let active: number | null = null;
let activeAfterBlur: number | null = null;
let activeName = "";
@ -236,12 +241,12 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
on:tagmoveprevious={() => moveToPreviousTag(index)}
on:tagmovenext={() => moveToNextTag(index)}
on:tagaccept={() => {
console.log("accept", tag, index, activeName);
deleteTagIfNotUnique(tag, index);
decideNextActive();
if (tag) {
updateWithTagName(tag);
}
saveTags();
}}
/>
</TagAutocomplete>