diff --git a/app/src/protyle/index.ts b/app/src/protyle/index.ts
index 7be99ac99..d715357c0 100644
--- a/app/src/protyle/index.ts
+++ b/app/src/protyle/index.ts
@@ -255,7 +255,6 @@ export class Protyle {
private getDoc(mergedOptions: IOptions) {
fetchPost("/api/filetree/getDoc", {
id: mergedOptions.blockId,
- k: mergedOptions.key || "",
isBacklink: mergedOptions.action.includes(Constants.CB_GET_BACKLINK),
// 0: 仅当前 ID(默认值),1:向上 2:向下,3:上下都加载,4:加载最后
mode: (mergedOptions.action && mergedOptions.action.includes(Constants.CB_GET_CONTEXT)) ? 3 : 0,
diff --git a/app/src/protyle/scroll/event.ts b/app/src/protyle/scroll/event.ts
index 0519bce0a..b8f9b7b9f 100644
--- a/app/src/protyle/scroll/event.ts
+++ b/app/src/protyle/scroll/event.ts
@@ -66,7 +66,6 @@ export const scrollEvent = (protyle: IProtyle, element: HTMLElement) => {
fetchPost("/api/filetree/getDoc", {
id: protyle.wysiwyg.element.firstElementChild.getAttribute("data-node-id"),
mode: 1,
- k: protyle.options.key || "",
size: window.siyuan.config.editor.dynamicLoadBlocks,
}, getResponse => {
protyle.contentElement.style.overflow = "";
@@ -81,7 +80,6 @@ export const scrollEvent = (protyle: IProtyle, element: HTMLElement) => {
fetchPost("/api/filetree/getDoc", {
id: protyle.wysiwyg.element.lastElementChild.getAttribute("data-node-id"),
mode: 2,
- k: protyle.options.key || "",
size: window.siyuan.config.editor.dynamicLoadBlocks,
}, getResponse => {
onGet(getResponse, protyle, [Constants.CB_GET_APPEND, Constants.CB_GET_UNCHANGEID]);
diff --git a/app/src/protyle/util/onGet.ts b/app/src/protyle/util/onGet.ts
index df9fba4e6..01a6a9802 100644
--- a/app/src/protyle/util/onGet.ts
+++ b/app/src/protyle/util/onGet.ts
@@ -246,7 +246,6 @@ const setHTML = (options: {
fetchPost("/api/filetree/getDoc", {
id: protyle.wysiwyg.element.lastElementChild.getAttribute("data-node-id"),
mode: 2,
- k: protyle.options.key || "",
size: window.siyuan.config.editor.dynamicLoadBlocks,
}, getResponse => {
onGet(getResponse, protyle, [Constants.CB_GET_APPEND, Constants.CB_GET_UNCHANGEID]);
diff --git a/app/src/protyle/wysiwyg/index.ts b/app/src/protyle/wysiwyg/index.ts
index 14170d6c8..2bade3bdd 100644
--- a/app/src/protyle/wysiwyg/index.ts
+++ b/app/src/protyle/wysiwyg/index.ts
@@ -1304,7 +1304,6 @@ export class WYSIWYG {
fetchPost("/api/filetree/getDoc", {
id: protyle.wysiwyg.element.firstElementChild.getAttribute("data-node-id"),
mode: 1,
- k: protyle.options.key || "",
size: window.siyuan.config.editor.dynamicLoadBlocks,
}, getResponse => {
preventGetTopHTML = false;
diff --git a/app/src/protyle/wysiwyg/transaction.ts b/app/src/protyle/wysiwyg/transaction.ts
index b2301b46f..3a87f64a6 100644
--- a/app/src/protyle/wysiwyg/transaction.ts
+++ b/app/src/protyle/wysiwyg/transaction.ts
@@ -133,7 +133,6 @@ const promiseTransaction = () => {
fetchPost("/api/filetree/getDoc", {
id: protyle.wysiwyg.element.lastElementChild.getAttribute("data-node-id"),
mode: 2,
- k: protyle.options.key || "",
size: window.siyuan.config.editor.dynamicLoadBlocks,
}, getResponse => {
onGet(getResponse, protyle, [Constants.CB_GET_APPEND, Constants.CB_GET_UNCHANGEID]);
diff --git a/app/src/search/util.ts b/app/src/search/util.ts
index 9a56259b2..2daaeefd1 100644
--- a/app/src/search/util.ts
+++ b/app/src/search/util.ts
@@ -625,7 +625,8 @@ export const genSearch = (app: App, config: ISearchOption, element: Element, clo
getArticle({
edit,
id: target.getAttribute("data-node-id"),
- k: getKeyByLiElement(target)
+ config,
+ value: searchInputElement.value,
});
searchInputElement.focus();
} else if (target.classList.contains("b3-list-item--focus")) {
@@ -740,7 +741,8 @@ export const genSearch = (app: App, config: ISearchOption, element: Element, clo
}
getArticle({
id: currentList.getAttribute("data-node-id"),
- k: getKeyByLiElement(currentList),
+ config,
+ value: searchInputElement.value,
edit
});
event.preventDefault();
@@ -766,7 +768,8 @@ export const genSearch = (app: App, config: ISearchOption, element: Element, clo
}
getArticle({
id: currentList.getAttribute("data-node-id"),
- k: getKeyByLiElement(currentList),
+ config,
+ value: searchInputElement.value,
edit
});
event.preventDefault();
@@ -888,15 +891,18 @@ const renderNextSearchMark = (options: {
const getArticle = (options: {
id: string,
- k: string,
+ config: ISearchOption,
edit: Protyle
+ value: string,
}) => {
fetchPost("/api/block/checkBlockFold", {id: options.id}, (foldResponse) => {
options.edit.protyle.scroll.lastScrollTop = 0;
addLoading(options.edit.protyle);
fetchPost("/api/filetree/getDoc", {
id: options.id,
- k: options.k,
+ query: options.value,
+ method: options.config.method,
+ types: options.config.types,
mode: foldResponse.data ? 0 : 3,
size: foldResponse.data ? Constants.SIZE_GET_MAX : window.siyuan.config.editor.dynamicLoadBlocks,
zoom: foldResponse.data,
@@ -920,6 +926,7 @@ const replace = (element: Element, config: ISearchOption, edit: Protyle, isAll:
}
const searchPanelElement = element.querySelector("#searchList");
const replaceInputElement = element.querySelector("#replaceInput") as HTMLInputElement;
+ const searchInputElement = element.querySelector("#searchInput") as HTMLInputElement;
const loadElement = replaceInputElement.nextElementSibling;
if (!loadElement.classList.contains("fn__none")) {
@@ -943,7 +950,7 @@ const replace = (element: Element, config: ISearchOption, edit: Protyle, isAll:
rootIds = [currentList.getAttribute("data-root-id")];
}
fetchPost("/api/search/findReplace", {
- k: config.method === 0 ? getKeyByLiElement(currentList) : (element.querySelector("#searchInput") as HTMLInputElement).value,
+ k: config.method === 0 ? getKeyByLiElement(currentList) : searchInputElement.value,
r: replaceInputElement.value,
ids,
types: config.types,
@@ -997,7 +1004,8 @@ const replace = (element: Element, config: ISearchOption, edit: Protyle, isAll:
getArticle({
edit,
id: currentList.getAttribute("data-node-id"),
- k: getKeyByLiElement(currentList)
+ config,
+ value: searchInputElement.value,
});
});
};
@@ -1017,7 +1025,7 @@ const inputEvent = (element: Element, config: ISearchOption, inputTimeout: numbe
const nextElement = element.querySelector('[data-type="next"]');
if (inputValue === "" && (!config.idPath || config.idPath.length === 0)) {
fetchPost("/api/block/getRecentUpdatedBlocks", {}, (response) => {
- onSearch(response.data, edit, element);
+ onSearch(response.data, edit, element, config);
loadingElement.classList.add("fn__none");
element.querySelector("#searchResult").innerHTML = "";
previousElement.setAttribute("disabled", "true");
@@ -1046,7 +1054,7 @@ const inputEvent = (element: Element, config: ISearchOption, inputTimeout: numbe
} else {
nextElement.setAttribute("disabled", "disabled");
}
- onSearch(response.data.blocks, edit, element);
+ onSearch(response.data.blocks, edit, element, config);
element.querySelector("#searchResult").innerHTML = `${config.page}/${response.data.pageCount || 1}
${window.siyuan.languages.findInDoc.replace("${x}", response.data.matchedRootCount).replace("${y}", response.data.matchedBlockCount)}`;
loadingElement.classList.add("fn__none");
@@ -1056,7 +1064,7 @@ const inputEvent = (element: Element, config: ISearchOption, inputTimeout: numbe
return inputTimeout;
};
-const onSearch = (data: IBlock[], edit: Protyle, element: Element) => {
+const onSearch = (data: IBlock[], edit: Protyle, element: Element, config: ISearchOption) => {
let resultHTML = "";
data.forEach((item, index) => {
const title = getNotebookName(item.box) + getDisplayName(item.hPath, false);
@@ -1089,20 +1097,20 @@ ${unicode2Emoji(item.ial.icon, false, "b3-list-item__graphic", true)}
if (data[0]) {
edit.protyle.element.classList.remove("fn__none");
element.querySelector(".search__drag").classList.remove("fn__none");
- const contentElement = document.createElement("div");
+ const searchInputElement = element.querySelector("#searchInput") as HTMLInputElement;
if (data[0].children) {
- contentElement.innerHTML = data[0].children[0].content;
getArticle({
edit,
id: data[0].children[0].id,
- k: getKeyByLiElement(contentElement),
+ config,
+ value: searchInputElement.value,
});
} else {
- contentElement.innerHTML = data[0].content;
getArticle({
edit,
id: data[0].id,
- k: getKeyByLiElement(contentElement),
+ config,
+ value: searchInputElement.value,
});
}
} else {