mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 10:26:08 +01:00 
			
		
		
		
	configurable keyboard shortcuts WIP
This commit is contained in:
		| @@ -49,6 +49,7 @@ const RELATION_DEFINITION = 'relation-definition'; | ||||
|  * @property {string} type - one of "text", "code", "file" or "render" | ||||
|  * @property {string} mime - MIME type, e.g. "text/html" | ||||
|  * @property {string} title - note title | ||||
|  * @property {int} contentLength - length of content | ||||
|  * @property {boolean} isProtected - true if note is protected | ||||
|  * @property {boolean} isDeleted - true if note is deleted | ||||
|  * @property {boolean} isErased - true if note's content is erased after it has been deleted | ||||
| @@ -141,8 +142,13 @@ class Note extends Entity { | ||||
|  | ||||
|     /** @returns {Promise} */ | ||||
|     async setContent(content) { | ||||
|         if (content === null || content === undefined) { | ||||
|             throw new Error(`Cannot set null content to note ${this.noteId}`); | ||||
|         } | ||||
|  | ||||
|         // force updating note itself so that dateModified is represented correctly even for the content | ||||
|         this.forcedChange = true; | ||||
|         this.contentLength = content.length; | ||||
|         await this.save(); | ||||
|  | ||||
|         this.content = content; | ||||
| @@ -498,6 +504,32 @@ class Note extends Entity { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * @return {Promise<Attribute>} | ||||
|      */ | ||||
|     async addAttribute(type, name, value = "") { | ||||
|         const attr = new Attribute({ | ||||
|             noteId: this.noteId, | ||||
|             type: type, | ||||
|             name: name, | ||||
|             value: value | ||||
|         }); | ||||
|  | ||||
|         await attr.save(); | ||||
|  | ||||
|         this.invalidateAttributeCache(); | ||||
|  | ||||
|         return attr; | ||||
|     } | ||||
|  | ||||
|     async addLabel(name, value = "") { | ||||
|         return await this.addAttribute(LABEL, name, value); | ||||
|     } | ||||
|  | ||||
|     async addRelation(name, targetNoteId) { | ||||
|         return await this.addAttribute(RELATION, name, targetNoteId); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * @param {string} name - label name | ||||
|      * @returns {Promise<boolean>} true if label exists (including inherited) | ||||
| @@ -767,6 +799,10 @@ class Note extends Entity { | ||||
|             this.utcDateCreated = dateUtils.utcNowDateTime(); | ||||
|         } | ||||
|  | ||||
|         if (this.contentLength === undefined) { | ||||
|             this.contentLength = -1; | ||||
|         } | ||||
|  | ||||
|         super.beforeSaving(); | ||||
|  | ||||
|         if (this.isChanged) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user