Kaynağa Gözat

:art: https://github.com/siyuan-note/siyuan/issues/10538

Vanessa 1 yıl önce
ebeveyn
işleme
077288184c

+ 4 - 0
app/src/block/popover.ts

@@ -283,6 +283,10 @@ export const showPopover = async (app: App, showRef = false) => {
     } else if (popoverTargetElement.dataset.type === "url") {
         // 在 database 的 url 列中以思源协议开头的链接
         ids = [getIdFromSYProtocol(popoverTargetElement.textContent.trim())];
+    } else if (popoverTargetElement.dataset.popoverUrl) {
+        // 镜像数据库
+        const postResponse = await fetchSyncPost(popoverTargetElement.dataset.popoverUrl, {id: popoverTargetElement.dataset.avId});
+        ids = postResponse.data;
     } else {
         // pdf
         let targetId;

+ 2 - 1
app/src/constants.ts

@@ -360,6 +360,7 @@ export abstract class Constants {
                 refPopover: {default: "", custom: ""},
                 copyText: {default: "", custom: ""},
                 exitFocus: {default: "", custom: ""},
+                ai: {default: "", custom: ""},
                 switchReadonly: {default: "", custom: ""},
                 expand: {default: "⌘↓", custom: "⌘↓"},
                 collapse: {default: "⌘↑", custom: "⌘↑"},
@@ -395,7 +396,7 @@ export abstract class Constants {
                 insertAfter: {default: "⇧⌘A", custom: "⇧⌘A"},
                 jumpToParentNext: {default: "⇧⌘N", custom: "⇧⌘N"},
                 moveToUp: {default: "⇧⌘↑", custom: "⇧⌘↑"},
-                moveToDown: {default: "⇧⌘↓", custom: "⇧⌘↓"},
+                moveToDown: {default: "⇧⌘↓", custom: "⇧⌘↓"}
             },
             insert: {
                 appearance: {default: "⌥⌘X", custom: "⌥⌘X"},

+ 1 - 1
app/src/protyle/render/av/render.ts

@@ -204,7 +204,7 @@ ${cell.color ? `color:${cell.color};` : ""}">${renderCell(cell.value)}</div>`;
                 <svg><use xlink:href="#iconAdd"></use></svg>
             </span>
             <div class="fn__space"></div>
-            ${response.data.isMirror ? ` <span class="block__icon block__icon--show ariaLabel" aria-label="${window.siyuan.languages.mirrorTip}">
+            ${response.data.isMirror ? ` <span data-av-id="${response.data.id}" data-popover-url="/api/av/getMirrorDatabaseBlocks" class="popover__block block__icon block__icon--show ariaLabel" aria-label="${window.siyuan.languages.mirrorTip}">
     <svg><use xlink:href="#iconSplitLR"></use></svg></span><div class="fn__space"></div>` : ""}
         </div>
         <div contenteditable="${protyle.disabled ? "false" : "true"}" spellcheck="${window.siyuan.config.editor.spellcheck.toString()}" class="av__title${viewData.hideAttrViewName ? " av__title--hide" : ""}" data-title="${response.data.name || ""}" data-tip="${window.siyuan.languages.title}">${response.data.name || ""}</div>