diff --git a/src/App.svelte b/src/App.svelte
index 2954682..d8f463b 100644
--- a/src/App.svelte
+++ b/src/App.svelte
@@ -4,6 +4,7 @@
import SpKeys from "./SpKeys.svelte";
import SpCandidates from "./SpCandidates.svelte";
import SpJournal from "./SpJournal.svelte";
+ import SpNotsand from "./SpNotsand.svelte";
import { onMount } from "svelte";
let v = "loading...";
let relpath = "";
@@ -15,6 +16,7 @@
let frontmatter = {};
frontmatter["triad"] = [];
frontmatter["ascription"] = [];
+ frontmatter["journal"] = [];
frontmatter["notsand"] = [];
function keyUp(e) {
@@ -42,6 +44,27 @@
return Array.from(diff);
}
+ function newFmItem(fmKeyType, fmKey, fmValue) {
+ if (["abstract", "keywords"].includes(fmKey.toLowerCase())) {
+ fmKeyType = "journal";
+ }
+
+ if (fmKey == "_new") {
+ fmKey = `_new${Math.random()}`;
+ }
+
+ if (Array.isArray(fmValue)) {
+ let fmValueArray = [];
+ fmValue.forEach((v) => fmValueArray.push(v));
+ frontmatter[fmKeyType].push({ fmKey: fmKey, fmValue: fmValueArray });
+ } else {
+ frontmatter[fmKeyType].push({ fmKey: fmKey, fmValue: fmValue });
+ }
+ console.log("newFmItem", { frontmatter });
+ hasesCandidates = [...new Set(reckonHasesCandidates())];
+ toggleNewTiersButtons();
+ }
+
function newTier(fmKeyType, fmKey, fmValue) {
let tiers = [];
let candidates = [];
@@ -108,18 +131,10 @@
if (Array.isArray(fmValue)) {
newTier(fmKeyType, fmKey, fmValue);
}
- } else if (fmKeyType == "journal") {
- frontmatter["journal"] || (frontmatter["journal"] = []);
- if (Array.isArray(fmValue)) {
- let fmValueArray = [];
- fmValue.forEach((v) => fmValueArray.push(v));
- frontmatter[fmKeyType].push({ fmKey: fmKey, fmValue: fmValueArray });
- } else {
- frontmatter[fmKeyType].push({ fmKey: fmKey, fmValue: fmValue });
- }
+ } else if (!["draft", "iscjklanguage", "title"].includes(fmKey)) {
+ newFmItem(fmKeyType, fmKey, fmValue);
}
});
- hasesCandidates = reckonHasesCandidates();
const tkey = Object.keys(repo.frontmatter).filter((t) => t.toLowerCase() == "title")[0];
title = repo.frontmatter[tkey];
@@ -188,7 +203,7 @@
document.querySelectorAll(".newtiers").forEach((button) => {
button.style.display = "none";
});
- let newtierstitle = document.getElementById("newtierstitle")
+ let newtierstitle = document.getElementById("newtierstitle");
if (newtierstitle) {
newtierstitle.style.display = "none";
}
@@ -196,7 +211,7 @@
document.querySelectorAll(".newtiers").forEach((button) => {
button.style.display = "block";
});
- let newtierstitle = document.getElementById("newtierstitle")
+ let newtierstitle = document.getElementById("newtierstitle");
if (newtierstitle) {
newtierstitle.style.display = "block";
}
@@ -285,6 +300,20 @@