fix: note editor ui promise
fix: temp note not deleted after export
This commit is contained in:
parent
738ebf2057
commit
0e8af756d0
|
|
@ -79,7 +79,7 @@ class AddonEvents extends AddonBase {
|
|||
message.content.editorInstance._item.id === mainKnowledgeID;
|
||||
|
||||
Zotero.debug(`Knowledge4Zotero: main Knowledge`);
|
||||
this._Addon.views.addEditorButton(
|
||||
await this._Addon.views.addEditorButton(
|
||||
message.content.editorInstance,
|
||||
"workspace",
|
||||
isMainKnowledge ? "isMainKnowledge" : "notMainKnowledge",
|
||||
|
|
@ -89,7 +89,7 @@ class AddonEvents extends AddonBase {
|
|||
"start",
|
||||
new EditorMessage("openWorkspace", {})
|
||||
);
|
||||
this._Addon.views.addEditorButton(
|
||||
await this._Addon.views.addEditorButton(
|
||||
message.content.editorInstance,
|
||||
"addToKnowledge",
|
||||
"addToKnowledge",
|
||||
|
|
@ -99,7 +99,7 @@ class AddonEvents extends AddonBase {
|
|||
itemID: message.content.editorInstance._item.id,
|
||||
})
|
||||
);
|
||||
this._Addon.views.addEditorButton(
|
||||
await this._Addon.views.addEditorButton(
|
||||
message.content.editorInstance,
|
||||
"export",
|
||||
"export",
|
||||
|
|
|
|||
|
|
@ -443,8 +443,8 @@ class Knowledge extends AddonBase {
|
|||
item.setNote(`<div data-schema-version="8">${newLines.join("\n")}</div>`);
|
||||
item.saveTx();
|
||||
exporter.items = [item];
|
||||
exporter.save();
|
||||
Zotero.Items.erase(item.id);
|
||||
await exporter.save();
|
||||
await Zotero.Items.erase(item.id);
|
||||
} else {
|
||||
exporter.items = [note];
|
||||
exporter.save();
|
||||
|
|
|
|||
37
src/views.ts
37
src/views.ts
|
|
@ -28,23 +28,26 @@ class AddonViews extends AddonBase {
|
|||
async addEditorKnowledgeToolBar(editorInstances: EditorInstance) {
|
||||
await editorInstances._initPromise;
|
||||
|
||||
const _document = editorInstances._iframeWindow.document;
|
||||
const knowledgeToolBar = _document.createElement("div");
|
||||
knowledgeToolBar.setAttribute("id", "knowledge-tools");
|
||||
knowledgeToolBar.setAttribute("class", "toolbar");
|
||||
const start = _document.createElement("div");
|
||||
start.setAttribute("id", "knowledge-tools-start");
|
||||
start.setAttribute("class", "start");
|
||||
const middle = _document.createElement("div");
|
||||
middle.setAttribute("id", "knowledge-tools-middle");
|
||||
middle.setAttribute("class", "middle");
|
||||
const end = _document.createElement("div");
|
||||
end.setAttribute("id", "knowledge-tools-end");
|
||||
end.setAttribute("class", "end");
|
||||
knowledgeToolBar.append(start, middle, end);
|
||||
_document
|
||||
.getElementsByClassName("editor")[0]
|
||||
.childNodes[0].before(knowledgeToolBar);
|
||||
await new Promise<void>((resolve, reject) => {
|
||||
const _document = editorInstances._iframeWindow.document;
|
||||
const knowledgeToolBar = _document.createElement("div");
|
||||
knowledgeToolBar.setAttribute("id", "knowledge-tools");
|
||||
knowledgeToolBar.setAttribute("class", "toolbar");
|
||||
const start = _document.createElement("div");
|
||||
start.setAttribute("id", "knowledge-tools-start");
|
||||
start.setAttribute("class", "start");
|
||||
const middle = _document.createElement("div");
|
||||
middle.setAttribute("id", "knowledge-tools-middle");
|
||||
middle.setAttribute("class", "middle");
|
||||
const end = _document.createElement("div");
|
||||
end.setAttribute("id", "knowledge-tools-end");
|
||||
end.setAttribute("class", "end");
|
||||
knowledgeToolBar.append(start, middle, end);
|
||||
_document
|
||||
.getElementsByClassName("editor")[0]
|
||||
.childNodes[0].before(knowledgeToolBar);
|
||||
resolve();
|
||||
});
|
||||
}
|
||||
|
||||
async addEditorButton(
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ declare class ZoteroCollection {
|
|||
|
||||
declare class Zotero_File_Exporter {
|
||||
items: ZoteroItem[];
|
||||
save: () => void;
|
||||
save = async () => {};
|
||||
}
|
||||
|
||||
declare const Components: any;
|
||||
|
|
|
|||
Loading…
Reference in New Issue