create note from template WIP

This commit is contained in:
zadam 2022-05-31 23:27:45 +02:00
parent 98b579524c
commit b204014a11
3 changed files with 19 additions and 5 deletions

View File

@ -43,7 +43,8 @@ async function createNote(parentNotePath, options = {}) {
content: options.content || "",
isProtected: options.isProtected,
type: options.type,
mime: options.mime
mime: options.mime,
templateNoteId: options.templateNoteId
});
if (options.saveSelection && utils.isCKEditorInitialized()) {

View File

@ -48,7 +48,10 @@ class TreeContextMenu {
for (const templateNote of templateNotes) {
items.push({
title: templateNote.title,
uiIcon: templateNote.getIcon()
uiIcon: templateNote.getIcon(),
command: command,
type: templateNote.type,
templateNoteId: templateNote.noteId
});
}
}
@ -127,7 +130,7 @@ class TreeContextMenu {
].filter(row => row !== null);
}
async selectMenuItemHandler({command, type}) {
async selectMenuItemHandler({command, type, templateNoteId}) {
const notePath = treeService.getNotePath(this.node);
if (command === 'openInTab') {
@ -141,7 +144,8 @@ class TreeContextMenu {
target: 'after',
targetBranchId: this.node.data.branchId,
type: type,
isProtected: isProtected
isProtected: isProtected,
templateNoteId: templateNoteId
});
}
else if (command === "insertChildNote") {
@ -149,7 +153,8 @@ class TreeContextMenu {
noteCreateService.createNote(parentNotePath, {
type: type,
isProtected: this.node.data.isProtected
isProtected: this.node.data.isProtected,
templateNoteId: templateNoteId
});
}
else if (command === 'openNoteInSplit') {

View File

@ -155,6 +155,14 @@ function createNewNote(params) {
scanForLinks(note);
if (params.templateNoteId) {
if (!becca.getNote(params.templateNoteId)) {
throw new Error(`Template note '${params.templateNoteId}' does not exist.`);
}
note.addRelation('template', params.templateNoteId);
}
copyChildAttributes(parentNote, note);
triggerNoteTitleChanged(note);