mirror of
				https://github.com/zadam/trilium.git
				synced 2025-11-03 20:06:08 +01:00 
			
		
		
		
	add back .isDeleted property to becca's note, branch and attribute entities for BC, fixes #2268
This commit is contained in:
		@@ -70,7 +70,7 @@ function postProcessEntityUpdate(entityName, entity) {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eventService.subscribe([eventService.ENTITY_CHANGE_SYNCED],  ({entityName, entityRow}) => {
 | 
					eventService.subscribeBeccaLoader([eventService.ENTITY_CHANGE_SYNCED],  ({entityName, entityRow}) => {
 | 
				
			||||||
    if (!becca.loaded) {
 | 
					    if (!becca.loaded) {
 | 
				
			||||||
        return;
 | 
					        return;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@@ -93,7 +93,7 @@ eventService.subscribe([eventService.ENTITY_CHANGE_SYNCED],  ({entityName, entit
 | 
				
			|||||||
    postProcessEntityUpdate(entityName, entityRow);
 | 
					    postProcessEntityUpdate(entityName, entityRow);
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eventService.subscribe(eventService.ENTITY_CHANGED,  ({entityName, entity}) => {
 | 
					eventService.subscribeBeccaLoader(eventService.ENTITY_CHANGED,  ({entityName, entity}) => {
 | 
				
			||||||
    if (!becca.loaded) {
 | 
					    if (!becca.loaded) {
 | 
				
			||||||
        return;
 | 
					        return;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@@ -101,7 +101,7 @@ eventService.subscribe(eventService.ENTITY_CHANGED,  ({entityName, entity}) => {
 | 
				
			|||||||
    postProcessEntityUpdate(entityName, entity);
 | 
					    postProcessEntityUpdate(entityName, entity);
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eventService.subscribe([eventService.ENTITY_DELETED, eventService.ENTITY_DELETE_SYNCED],  ({entityName, entityId}) => {
 | 
					eventService.subscribeBeccaLoader([eventService.ENTITY_DELETED, eventService.ENTITY_DELETE_SYNCED],  ({entityName, entityId}) => {
 | 
				
			||||||
    if (!becca.loaded) {
 | 
					    if (!becca.loaded) {
 | 
				
			||||||
        return;
 | 
					        return;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@@ -220,7 +220,7 @@ function noteReorderingUpdated(branchIdList) {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eventService.subscribe(eventService.ENTER_PROTECTED_SESSION, () => {
 | 
					eventService.subscribeBeccaLoader(eventService.ENTER_PROTECTED_SESSION, () => {
 | 
				
			||||||
    try {
 | 
					    try {
 | 
				
			||||||
        becca.decryptProtectedNotes();
 | 
					        becca.decryptProtectedNotes();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@@ -229,7 +229,7 @@ eventService.subscribe(eventService.ENTER_PROTECTED_SESSION, () => {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eventService.subscribe(eventService.LEAVE_PROTECTED_SESSION, load);
 | 
					eventService.subscribeBeccaLoader(eventService.LEAVE_PROTECTED_SESSION, load);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module.exports = {
 | 
					module.exports = {
 | 
				
			||||||
    load,
 | 
					    load,
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -145,6 +145,10 @@ class Attribute extends AbstractEntity {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    get isDeleted() {
 | 
				
			||||||
 | 
					        return !(this.attributeId in this.becca.attributes);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    beforeSaving() {
 | 
					    beforeSaving() {
 | 
				
			||||||
        if (!this.value) {
 | 
					        if (!this.value) {
 | 
				
			||||||
            if (this.type === 'relation') {
 | 
					            if (this.type === 'relation') {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -101,6 +101,10 @@ class Branch extends AbstractEntity {
 | 
				
			|||||||
        return this.becca.notes[this.parentNoteId];
 | 
					        return this.becca.notes[this.parentNoteId];
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    get isDeleted() {
 | 
				
			||||||
 | 
					        return !(this.branchId in this.becca.branches);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    beforeSaving() {
 | 
					    beforeSaving() {
 | 
				
			||||||
        if (this.notePosition === undefined || this.notePosition === null) {
 | 
					        if (this.notePosition === undefined || this.notePosition === null) {
 | 
				
			||||||
            // TODO finding new position can be refactored into becca
 | 
					            // TODO finding new position can be refactored into becca
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1112,6 +1112,10 @@ class Note extends AbstractEntity {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    get isDeleted() {
 | 
				
			||||||
 | 
					        return !(this.noteId in this.becca.notes);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    beforeSaving() {
 | 
					    beforeSaving() {
 | 
				
			||||||
        super.beforeSaving();
 | 
					        super.beforeSaving();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -147,7 +147,7 @@ function updateNoteAttributes(req) {
 | 
				
			|||||||
        if (incAttr.type === 'relation') {
 | 
					        if (incAttr.type === 'relation') {
 | 
				
			||||||
            const targetNote = becca.getNote(incAttr.value);
 | 
					            const targetNote = becca.getNote(incAttr.value);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (!targetNote || targetNote.isDeleted) {
 | 
					            if (!targetNote) {
 | 
				
			||||||
                log.error(`Target note of relation ${JSON.stringify(incAttr)} does not exist or is deleted`);
 | 
					                log.error(`Target note of relation ${JSON.stringify(incAttr)} does not exist or is deleted`);
 | 
				
			||||||
                continue;
 | 
					                continue;
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -27,6 +27,19 @@ function subscribe(eventTypes, listener) {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function subscribeBeccaLoader(eventTypes, listener) {
 | 
				
			||||||
 | 
					    if (!Array.isArray(eventTypes)) {
 | 
				
			||||||
 | 
					        eventTypes = [ eventTypes ];
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    for (const eventType of eventTypes) {
 | 
				
			||||||
 | 
					        eventListeners[eventType] = eventListeners[eventType] || [];
 | 
				
			||||||
 | 
					        // becca loader should be the first listener so that other listeners can already work
 | 
				
			||||||
 | 
					        // with updated becca
 | 
				
			||||||
 | 
					        eventListeners[eventType] = [listener, ...eventListeners[eventType]];
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function emit(eventType, data) {
 | 
					function emit(eventType, data) {
 | 
				
			||||||
    const listeners = eventListeners[eventType];
 | 
					    const listeners = eventListeners[eventType];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -45,6 +58,7 @@ function emit(eventType, data) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
module.exports = {
 | 
					module.exports = {
 | 
				
			||||||
    subscribe,
 | 
					    subscribe,
 | 
				
			||||||
 | 
					    subscribeBeccaLoader,
 | 
				
			||||||
    emit,
 | 
					    emit,
 | 
				
			||||||
    // event types:
 | 
					    // event types:
 | 
				
			||||||
    NOTE_TITLE_CHANGED,
 | 
					    NOTE_TITLE_CHANGED,
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user