瀏覽代碼

fix: export special not containing formatVersion

Sven 10 月之前
父節點
當前提交
852dedd2d2
共有 3 個文件被更改,包括 10 次插入6 次删除
  1. 1 0
      src/dialogs/autoLike.ts
  2. 3 1
      src/dialogs/importCfg.ts
  3. 6 5
      src/menu/menu_old.ts

+ 1 - 0
src/dialogs/autoLike.ts

@@ -55,6 +55,7 @@ export async function getAutoLikeDialog() {
       onImport: async (data) => {
         try {
           const parsed = await tryToDecompressAndParse<AutoLikeData>(data);
+          log("Trying to import auto-like data:", parsed);
 
           if(!parsed || typeof parsed !== "object")
             return alert(t("import_error_invalid"));

+ 3 - 1
src/dialogs/importCfg.ts

@@ -1,4 +1,4 @@
-import { error, tryToDecompressAndParse, t, warn } from "../utils/index.js";
+import { error, tryToDecompressAndParse, t, warn, log } from "../utils/index.js";
 import { BytmDialog } from "../components/index.js";
 import { scriptInfo } from "../constants.js";
 import { emitSiteEvent } from "../siteEvents.js";
@@ -70,6 +70,8 @@ async function renderFooter() {
       return warn("Couldn't find import menu textarea element");
     try {
       const parsed = await tryToDecompressAndParse<{ data: FeatureConfig, formatVersion: number }>(textAreaElem.value.trim());
+      log("Trying to import config object:", parsed);
+
       if(!parsed || typeof parsed !== "object")
         return alert(t("import_error_invalid"));
       if(typeof parsed.formatVersion !== "number")

+ 6 - 5
src/menu/menu_old.ts

@@ -173,6 +173,9 @@ async function mountCfgMenu() {
   reloadFooterEl.appendChild(reloadTxtEl);
   reloadFooterCont.appendChild(reloadFooterEl);
 
+  /** For copying plain when shift-clicking the copy button or when compression is not supported */
+  const exportDataSpecial = () => JSON.stringify({ formatVersion, data: getFeatures() });
+
   const exImDlg = new ExImDialog({
     id: "bytm-config-import-export",
     width: 800,
@@ -180,14 +183,12 @@ async function mountCfgMenu() {
     // try to compress the data if possible
     exportData: async () => await compressionSupported()
       ? await compress(JSON.stringify({ formatVersion, data: getFeatures() }), compressionFormat, "string")
-      : JSON.stringify({ formatVersion, data: getFeatures() }),
-    // copy plain when shift-clicking the copy button
-    exportDataSpecial: () => JSON.stringify(getFeatures()),
+      : exportDataSpecial(),
+    exportDataSpecial,
     onImport: async (data) => {
       try {
         const parsed = await tryToDecompressAndParse<{ data: FeatureConfig, formatVersion: number }>(data.trim());
-
-        console.log(">> parsed", parsed);
+        log("Trying to import configuration:", parsed);
 
         if(!parsed || typeof parsed !== "object")
           return alert(t("import_error_invalid"));