mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 03:29:02 +01:00 
			
		
		
		
	backend import unification
This commit is contained in:
		
							parent
							
								
									b9ff481eb7
								
							
						
					
					
						commit
						b660238a40
					
				| @ -1,4 +1,4 @@ | |||||||
| FROM node:14.17.0-alpine | FROM node:14.17.1-alpine | ||||||
| 
 | 
 | ||||||
| # Create app directory | # Create app directory | ||||||
| WORKDIR /usr/src/app | WORKDIR /usr/src/app | ||||||
|  | |||||||
							
								
								
									
										1
									
								
								TODO
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								TODO
									
									
									
									
									
								
							| @ -1,4 +1,3 @@ | |||||||
| - all ribbon tabs should have assignable shortcut |  | ||||||
| - new icon | - new icon | ||||||
| - polish becca entities API | - polish becca entities API | ||||||
| - separate private and public APIs in becca entities | - separate private and public APIs in becca entities | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| #!/usr/bin/env bash | #!/usr/bin/env bash | ||||||
| 
 | 
 | ||||||
| PKG_DIR=dist/trilium-linux-x64-server | PKG_DIR=dist/trilium-linux-x64-server | ||||||
| NODE_VERSION=14.17.0 | NODE_VERSION=14.17.1 | ||||||
| 
 | 
 | ||||||
| if [ "$1" != "DONTCOPY" ] | if [ "$1" != "DONTCOPY" ] | ||||||
| then | then | ||||||
|  | |||||||
							
								
								
									
										66
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										66
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -1,6 +1,6 @@ | |||||||
| { | { | ||||||
|   "name": "trilium", |   "name": "trilium", | ||||||
|   "version": "0.47.4", |   "version": "0.47.5", | ||||||
|   "lockfileVersion": 1, |   "lockfileVersion": 1, | ||||||
|   "requires": true, |   "requires": true, | ||||||
|   "dependencies": { |   "dependencies": { | ||||||
| @ -725,9 +725,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "@types/estree": { |     "@types/estree": { | ||||||
|       "version": "0.0.47", |       "version": "0.0.48", | ||||||
|       "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.47.tgz", |       "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.48.tgz", | ||||||
|       "integrity": "sha512-c5ciR06jK8u9BstrmJyO97m+klJrrhCf9u3rLu3DEAJBirxRqSCvDQoYKmxuYwQI5SZChAWu+tq9oVlGRuzPAg==", |       "integrity": "sha512-LfZwXoGUDo0C3me81HXgkBg5CTQYb6xzEl+fNmbO4JdRiSKQ8A0GD1OBBvKAIsbCUgoyAty7m99GqqMQe784ew==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "@types/fs-extra": { |     "@types/fs-extra": { | ||||||
| @ -1930,9 +1930,9 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "caniuse-lite": { |     "caniuse-lite": { | ||||||
|       "version": "1.0.30001239", |       "version": "1.0.30001241", | ||||||
|       "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001239.tgz", |       "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001241.tgz", | ||||||
|       "integrity": "sha512-cyBkXJDMeI4wthy8xJ2FvDU6+0dtcZSJW3voUF8+e9f1bBeuvyZfc3PNbkOETyhbR+dGCPzn9E7MA3iwzusOhQ==", |       "integrity": "sha512-1uoSZ1Pq1VpH0WerIMqwptXHNNGfdl7d1cJUFs80CwQ/lVzdhTvsFZCeNFslze7AjsQnb4C85tzclPa1VShbeQ==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "caseless": { |     "caseless": { | ||||||
| @ -3769,9 +3769,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "electron-to-chromium": { |     "electron-to-chromium": { | ||||||
|       "version": "1.3.756", |       "version": "1.3.761", | ||||||
|       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.756.tgz", |       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.761.tgz", | ||||||
|       "integrity": "sha512-WsmJym1TMeHVndjPjczTFbnRR/c4sbzg8fBFtuhlb2Sru3i/S1VGpzDSrv/It8ctMU2bj8G7g7/O3FzYMGw6eA==", |       "integrity": "sha512-7a/wV/plM/b95XjTdA2Q4zAxxExTDKkNQpTiaU/nVT8tGCQVtX9NsnTjhALBFICpOB58hU6xg5fFC3CT2Bybpg==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "electron-window-state": { |     "electron-window-state": { | ||||||
| @ -5143,9 +5143,9 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "jest-worker": { |     "jest-worker": { | ||||||
|       "version": "27.0.2", |       "version": "27.0.6", | ||||||
|       "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.2.tgz", |       "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.6.tgz", | ||||||
|       "integrity": "sha512-EoBdilOTTyOgmHXtw/cPc+ZrCA0KJMrkXzkrPGNwLmnvvlN1nj7MPrxpT7m+otSv2e1TLaVffzDnE/LB14zJMg==", |       "integrity": "sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "requires": { |       "requires": { | ||||||
|         "@types/node": "*", |         "@types/node": "*", | ||||||
| @ -7279,9 +7279,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "serialize-javascript": { |     "serialize-javascript": { | ||||||
|       "version": "5.0.1", |       "version": "6.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", |       "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", | ||||||
|       "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", |       "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "requires": { |       "requires": { | ||||||
|         "randombytes": "^2.1.0" |         "randombytes": "^2.1.0" | ||||||
| @ -7769,9 +7769,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "terser": { |     "terser": { | ||||||
|       "version": "5.7.0", |       "version": "5.7.1", | ||||||
|       "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", |       "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.1.tgz", | ||||||
|       "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", |       "integrity": "sha512-b3e+d5JbHAe/JSjwsC3Zn55wsBIM7AsHLjKxT31kGCldgbpFePaFo+PiddtO6uwRZWRw7sPXmAN8dTW61xmnSg==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "requires": { |       "requires": { | ||||||
|         "commander": "^2.20.0", |         "commander": "^2.20.0", | ||||||
| @ -7794,15 +7794,15 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "terser-webpack-plugin": { |     "terser-webpack-plugin": { | ||||||
|       "version": "5.1.3", |       "version": "5.1.4", | ||||||
|       "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.3.tgz", |       "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.4.tgz", | ||||||
|       "integrity": "sha512-cxGbMqr6+A2hrIB5ehFIF+F/iST5ZOxvOmy9zih9ySbP1C2oEWQSOUS+2SNBTjzx5xLKO4xnod9eywdfq1Nb9A==", |       "integrity": "sha512-C2WkFwstHDhVEmsmlCxrXUtVklS+Ir1A7twrYzrDrQQOIMOaVAYykaoo/Aq1K0QRkMoY2hhvDQY1cm4jnIMFwA==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "requires": { |       "requires": { | ||||||
|         "jest-worker": "^27.0.2", |         "jest-worker": "^27.0.2", | ||||||
|         "p-limit": "^3.1.0", |         "p-limit": "^3.1.0", | ||||||
|         "schema-utils": "^3.0.0", |         "schema-utils": "^3.0.0", | ||||||
|         "serialize-javascript": "^5.0.1", |         "serialize-javascript": "^6.0.0", | ||||||
|         "source-map": "^0.6.1", |         "source-map": "^0.6.1", | ||||||
|         "terser": "^5.7.0" |         "terser": "^5.7.0" | ||||||
|       }, |       }, | ||||||
| @ -7925,9 +7925,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "turndown": { |     "turndown": { | ||||||
|       "version": "7.0.0", |       "version": "7.1.1", | ||||||
|       "resolved": "https://registry.npmjs.org/turndown/-/turndown-7.0.0.tgz", |       "resolved": "https://registry.npmjs.org/turndown/-/turndown-7.1.1.tgz", | ||||||
|       "integrity": "sha512-G1FfxfR0mUNMeGjszLYl3kxtopC4O9DRRiMlMDDVHvU1jaBkGFg4qxIyjIk2aiKLHyDyZvZyu4qBO2guuYBy3Q==", |       "integrity": "sha512-BEkXaWH7Wh7e9bd2QumhfAXk5g34+6QUmmWx+0q6ThaVOLuLUqsnkq35HQ5SBHSaxjSfSM7US5o4lhJNH7B9MA==", | ||||||
|       "requires": { |       "requires": { | ||||||
|         "domino": "^2.1.6" |         "domino": "^2.1.6" | ||||||
|       } |       } | ||||||
| @ -8226,13 +8226,13 @@ | |||||||
|       "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==" |       "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==" | ||||||
|     }, |     }, | ||||||
|     "webpack": { |     "webpack": { | ||||||
|       "version": "5.40.0", |       "version": "5.41.1", | ||||||
|       "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.40.0.tgz", |       "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.41.1.tgz", | ||||||
|       "integrity": "sha512-c7f5e/WWrxXWUzQqTBg54vBs5RgcAgpvKE4F4VegVgfo4x660ZxYUF2/hpMkZUnLjgytVTitjeXaN4IPlXCGIw==", |       "integrity": "sha512-AJZIIsqJ/MVTmegEq9Tlw5mk5EHdGiJbDdz9qP15vmUH+oxI1FdWcL0E9EO8K/zKaRPWqEs7G/OPxq1P61u5Ug==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "requires": { |       "requires": { | ||||||
|         "@types/eslint-scope": "^3.7.0", |         "@types/eslint-scope": "^3.7.0", | ||||||
|         "@types/estree": "^0.0.47", |         "@types/estree": "^0.0.48", | ||||||
|         "@webassemblyjs/ast": "1.11.0", |         "@webassemblyjs/ast": "1.11.0", | ||||||
|         "@webassemblyjs/wasm-edit": "1.11.0", |         "@webassemblyjs/wasm-edit": "1.11.0", | ||||||
|         "@webassemblyjs/wasm-parser": "1.11.0", |         "@webassemblyjs/wasm-parser": "1.11.0", | ||||||
| @ -8508,9 +8508,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "ws": { |     "ws": { | ||||||
|       "version": "7.5.0", |       "version": "7.5.1", | ||||||
|       "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.0.tgz", |       "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.1.tgz", | ||||||
|       "integrity": "sha512-6ezXvzOZupqKj4jUqbQ9tXuJNo+BR2gU8fFRk3XCP3e0G6WT414u5ELe6Y0vtp7kmSJ3F7YWObSNr1ESsgi4vw==" |       "integrity": "sha512-2c6faOUH/nhoQN6abwMloF7Iyl0ZS2E9HGtsiLrWn0zOOMWlhtDmdf/uihDt6jnuCxgtwGBNy6Onsoy2s2O2Ow==" | ||||||
|     }, |     }, | ||||||
|     "xdg-basedir": { |     "xdg-basedir": { | ||||||
|       "version": "4.0.0", |       "version": "4.0.0", | ||||||
|  | |||||||
| @ -74,9 +74,9 @@ | |||||||
|     "stream-throttle": "^0.1.3", |     "stream-throttle": "^0.1.3", | ||||||
|     "striptags": "3.2.0", |     "striptags": "3.2.0", | ||||||
|     "tmp": "^0.2.1", |     "tmp": "^0.2.1", | ||||||
|     "turndown": "7.0.0", |     "turndown": "7.1.1", | ||||||
|     "unescape": "1.0.1", |     "unescape": "1.0.1", | ||||||
|     "ws": "7.5.0", |     "ws": "7.5.1", | ||||||
|     "yauzl": "2.10.0" |     "yauzl": "2.10.0" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
| @ -90,7 +90,7 @@ | |||||||
|     "jsdoc": "3.6.7", |     "jsdoc": "3.6.7", | ||||||
|     "lorem-ipsum": "2.0.3", |     "lorem-ipsum": "2.0.3", | ||||||
|     "rcedit": "3.0.0", |     "rcedit": "3.0.0", | ||||||
|     "webpack": "5.40.0", |     "webpack": "5.41.1", | ||||||
|     "webpack-cli": "4.7.2" |     "webpack-cli": "4.7.2" | ||||||
|   }, |   }, | ||||||
|   "optionalDependencies": { |   "optionalDependencies": { | ||||||
|  | |||||||
| @ -1,9 +1,10 @@ | |||||||
| const Note = require('./entities/note.js'); | const Note = require('./entities/note'); | ||||||
| const NoteRevision = require('./entities/note_revision.js'); | const NoteRevision = require('./entities/note_revision'); | ||||||
| const Branch = require('./entities/branch.js'); | const Branch = require('./entities/branch'); | ||||||
| const Attribute = require('./entities/attribute.js'); | const Attribute = require('./entities/attribute'); | ||||||
| const RecentNote = require('./entities/recent_note.js'); | const RecentNote = require('./entities/recent_note'); | ||||||
| const ApiToken = require('./entities/api_token.js'); | const ApiToken = require('./entities/api_token'); | ||||||
|  | const Option = require('./entities/option'); | ||||||
| 
 | 
 | ||||||
| const ENTITY_NAME_TO_ENTITY = { | const ENTITY_NAME_TO_ENTITY = { | ||||||
|     "attributes": Attribute, |     "attributes": Attribute, | ||||||
| @ -14,6 +15,7 @@ const ENTITY_NAME_TO_ENTITY = { | |||||||
|     "note_revision_contents": NoteRevision, |     "note_revision_contents": NoteRevision, | ||||||
|     "recent_notes": RecentNote, |     "recent_notes": RecentNote, | ||||||
|     "api_tokens": ApiToken, |     "api_tokens": ApiToken, | ||||||
|  |     "options": Option | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| function getEntityFromEntityName(entityName) { | function getEntityFromEntityName(entityName) { | ||||||
| @ -24,35 +26,6 @@ function getEntityFromEntityName(entityName) { | |||||||
|     return ENTITY_NAME_TO_ENTITY[entityName]; |     return ENTITY_NAME_TO_ENTITY[entityName]; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| function createEntityFromRow(row) { |  | ||||||
|     let entity; |  | ||||||
| 
 |  | ||||||
|     if (row.attributeId) { |  | ||||||
|         entity = new Attribute(row); |  | ||||||
|     } |  | ||||||
|     else if (row.noteRevisionId) { |  | ||||||
|         entity = new NoteRevision(row); |  | ||||||
|     } |  | ||||||
|     else if (row.branchId && row.notePath) { |  | ||||||
|         entity = new RecentNote(row); |  | ||||||
|     } |  | ||||||
|     else if (row.apiTokenId) { |  | ||||||
|         entity = new ApiToken(row); |  | ||||||
|     } |  | ||||||
|     else if (row.branchId) { |  | ||||||
|         entity = new Branch(row); |  | ||||||
|     } |  | ||||||
|     else if (row.noteId) { |  | ||||||
|         entity = new Note(row); |  | ||||||
|     } |  | ||||||
|     else { |  | ||||||
|         throw new Error('Unknown entity type for row: ' + JSON.stringify(row)); |  | ||||||
|     } |  | ||||||
| 
 |  | ||||||
|     return entity; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     createEntityFromRow, |  | ||||||
|     getEntityFromEntityName |     getEntityFromEntityName | ||||||
| }; | }; | ||||||
|  | |||||||
| @ -3,8 +3,8 @@ | |||||||
| const sql = require('../../services/sql'); | const sql = require('../../services/sql'); | ||||||
| const log = require('../../services/log'); | const log = require('../../services/log'); | ||||||
| const attributeService = require('../../services/attributes'); | const attributeService = require('../../services/attributes'); | ||||||
| const Attribute = require('../../becca/entities/attribute.js'); | const Attribute = require('../../becca/entities/attribute'); | ||||||
| const becca = require("../../becca/becca.js"); | const becca = require("../../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function getEffectiveNoteAttributes(req) { | function getEffectiveNoteAttributes(req) { | ||||||
|     const note = becca.getNote(req.params.noteId); |     const note = becca.getNote(req.params.noteId); | ||||||
|  | |||||||
| @ -1,11 +1,11 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const beccaService = require('../../becca/becca_service.js'); | const beccaService = require('../../becca/becca_service'); | ||||||
| const searchService = require('../../services/search/services/search.js'); | const searchService = require('../../services/search/services/search'); | ||||||
| const log = require('../../services/log'); | const log = require('../../services/log'); | ||||||
| const utils = require('../../services/utils'); | const utils = require('../../services/utils'); | ||||||
| const cls = require('../../services/cls'); | const cls = require('../../services/cls'); | ||||||
| const becca = require("../../becca/becca.js"); | const becca = require("../../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function getAutocomplete(req) { | function getAutocomplete(req) { | ||||||
|     const query = req.query.query.trim(); |     const query = req.query.query.trim(); | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const fs = require('fs'); | const fs = require('fs'); | ||||||
| const dateUtils = require('../../services/date_utils'); | const dateUtils = require('../../services/date_utils'); | ||||||
| const {LOG_DIR} = require('../../services/data_dir.js'); | const {LOG_DIR} = require('../../services/data_dir'); | ||||||
| 
 | 
 | ||||||
| function getBackendLog() { | function getBackendLog() { | ||||||
|     const file = `${LOG_DIR}/trilium-${dateUtils.localNowDate()}.log`; |     const file = `${LOG_DIR}/trilium-${dateUtils.localNowDate()}.log`; | ||||||
|  | |||||||
| @ -2,10 +2,10 @@ | |||||||
| 
 | 
 | ||||||
| const sql = require('../../services/sql'); | const sql = require('../../services/sql'); | ||||||
| const utils = require('../../services/utils'); | const utils = require('../../services/utils'); | ||||||
| const entityChangesService = require('../../services/entity_changes.js'); | const entityChangesService = require('../../services/entity_changes'); | ||||||
| const treeService = require('../../services/tree'); | const treeService = require('../../services/tree'); | ||||||
| const noteService = require('../../services/notes'); | const noteService = require('../../services/notes'); | ||||||
| const becca = require('../../becca/becca.js'); | const becca = require('../../becca/becca'); | ||||||
| const TaskContext = require('../../services/task_context'); | const TaskContext = require('../../services/task_context'); | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  | |||||||
| @ -6,13 +6,13 @@ const dateNoteService = require('../../services/date_notes'); | |||||||
| const dateUtils = require('../../services/date_utils'); | const dateUtils = require('../../services/date_utils'); | ||||||
| const imageService = require('../../services/image'); | const imageService = require('../../services/image'); | ||||||
| const appInfo = require('../../services/app_info'); | const appInfo = require('../../services/app_info'); | ||||||
| const ws = require('../../services/ws.js'); | const ws = require('../../services/ws'); | ||||||
| const log = require('../../services/log'); | const log = require('../../services/log'); | ||||||
| const utils = require('../../services/utils'); | const utils = require('../../services/utils'); | ||||||
| const path = require('path'); | const path = require('path'); | ||||||
| const Attribute = require('../../becca/entities/attribute.js'); | const Attribute = require('../../becca/entities/attribute'); | ||||||
| const htmlSanitizer = require('../../services/html_sanitizer'); | const htmlSanitizer = require('../../services/html_sanitizer'); | ||||||
| const {formatAttrForSearch} = require("../../services/attribute_formatter.js"); | const {formatAttrForSearch} = require("../../services/attribute_formatter"); | ||||||
| 
 | 
 | ||||||
| function findClippingNote(todayNote, pageUrl) { | function findClippingNote(todayNote, pageUrl) { | ||||||
|     const notes = todayNote.searchNoteInSubtree( |     const notes = todayNote.searchNoteInSubtree( | ||||||
|  | |||||||
| @ -9,7 +9,7 @@ const fs = require('fs'); | |||||||
| const { Readable } = require('stream'); | const { Readable } = require('stream'); | ||||||
| const chokidar = require('chokidar'); | const chokidar = require('chokidar'); | ||||||
| const ws = require('../../services/ws'); | const ws = require('../../services/ws'); | ||||||
| const becca = require("../../becca/becca.js"); | const becca = require("../../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function updateFile(req) { | function updateFile(req) { | ||||||
|     const {noteId} = req.params; |     const {noteId} = req.params; | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const imageService = require('../../services/image'); | const imageService = require('../../services/image'); | ||||||
| const becca = require('../../becca/becca.js'); | const becca = require('../../becca/becca'); | ||||||
| const RESOURCE_DIR = require('../../services/resource_dir').RESOURCE_DIR; | const RESOURCE_DIR = require('../../services/resource_dir').RESOURCE_DIR; | ||||||
| const fs = require('fs'); | const fs = require('fs'); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -6,9 +6,9 @@ const zipImportService = require('../../services/import/zip'); | |||||||
| const singleImportService = require('../../services/import/single'); | const singleImportService = require('../../services/import/single'); | ||||||
| const cls = require('../../services/cls'); | const cls = require('../../services/cls'); | ||||||
| const path = require('path'); | const path = require('path'); | ||||||
| const beccaLoader = require('../../becca/becca_loader.js'); | const beccaLoader = require('../../becca/becca_loader'); | ||||||
| const log = require('../../services/log'); | const log = require('../../services/log'); | ||||||
| const TaskContext = require('../../services/task_context.js'); | const TaskContext = require('../../services/task_context'); | ||||||
| 
 | 
 | ||||||
| async function importToBranch(req) { | async function importToBranch(req) { | ||||||
|     const {parentNoteId} = req.params; |     const {parentNoteId} = req.params; | ||||||
|  | |||||||
| @ -11,8 +11,8 @@ const eventService = require('../../services/events'); | |||||||
| const sqlInit = require('../../services/sql_init'); | const sqlInit = require('../../services/sql_init'); | ||||||
| const sql = require('../../services/sql'); | const sql = require('../../services/sql'); | ||||||
| const optionService = require('../../services/options'); | const optionService = require('../../services/options'); | ||||||
| const ApiToken = require('../../becca/entities/api_token.js'); | const ApiToken = require('../../becca/entities/api_token'); | ||||||
| const ws = require("../../services/ws.js"); | const ws = require("../../services/ws"); | ||||||
| 
 | 
 | ||||||
| function loginSync(req) { | function loginSync(req) { | ||||||
|     if (!sqlInit.schemaExists()) { |     if (!sqlInit.schemaExists()) { | ||||||
|  | |||||||
| @ -1,12 +1,12 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const beccaService = require('../../becca/becca_service.js'); | const beccaService = require('../../becca/becca_service'); | ||||||
| const protectedSessionService = require('../../services/protected_session'); | const protectedSessionService = require('../../services/protected_session'); | ||||||
| const noteRevisionService = require('../../services/note_revisions'); | const noteRevisionService = require('../../services/note_revisions'); | ||||||
| const utils = require('../../services/utils'); | const utils = require('../../services/utils'); | ||||||
| const sql = require('../../services/sql'); | const sql = require('../../services/sql'); | ||||||
| const path = require('path'); | const path = require('path'); | ||||||
| const becca = require("../../becca/becca.js"); | const becca = require("../../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function getNoteRevisions(req) { | function getNoteRevisions(req) { | ||||||
|     return becca.getNoteRevisionsFromQuery(` |     return becca.getNoteRevisionsFromQuery(` | ||||||
|  | |||||||
| @ -7,8 +7,8 @@ const utils = require('../../services/utils'); | |||||||
| const log = require('../../services/log'); | const log = require('../../services/log'); | ||||||
| const TaskContext = require('../../services/task_context'); | const TaskContext = require('../../services/task_context'); | ||||||
| const fs = require('fs'); | const fs = require('fs'); | ||||||
| const noteRevisionService = require("../../services/note_revisions.js"); | const noteRevisionService = require("../../services/note_revisions"); | ||||||
| const becca = require("../../becca/becca.js"); | const becca = require("../../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function getNote(req) { | function getNote(req) { | ||||||
|     const noteId = req.params.noteId; |     const noteId = req.params.noteId; | ||||||
|  | |||||||
| @ -3,7 +3,7 @@ | |||||||
| const sql = require('../../services/sql'); | const sql = require('../../services/sql'); | ||||||
| const protectedSessionService = require('../../services/protected_session'); | const protectedSessionService = require('../../services/protected_session'); | ||||||
| const noteService = require('../../services/notes'); | const noteService = require('../../services/notes'); | ||||||
| const beccaService = require('../../becca/becca_service.js'); | const beccaService = require('../../becca/becca_service'); | ||||||
| 
 | 
 | ||||||
| function getRecentChanges(req) { | function getRecentChanges(req) { | ||||||
|     const {ancestorNoteId} = req.params; |     const {ancestorNoteId} = req.params; | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const RecentNote = require('../../becca/entities/recent_note.js'); | const RecentNote = require('../../becca/entities/recent_note'); | ||||||
| const sql = require('../../services/sql'); | const sql = require('../../services/sql'); | ||||||
| const dateUtils = require('../../services/date_utils'); | const dateUtils = require('../../services/date_utils'); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const scriptService = require('../../services/script'); | const scriptService = require('../../services/script'); | ||||||
| const attributeService = require('../../services/attributes'); | const attributeService = require('../../services/attributes'); | ||||||
| const becca = require('../../becca/becca.js'); | const becca = require('../../becca/becca'); | ||||||
| const syncService = require('../../services/sync'); | const syncService = require('../../services/sync'); | ||||||
| 
 | 
 | ||||||
| function exec(req) { | function exec(req) { | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const becca = require('../../becca/becca.js'); | const becca = require('../../becca/becca'); | ||||||
| const SearchContext = require('../../services/search/search_context'); | const SearchContext = require('../../services/search/search_context'); | ||||||
| const log = require('../../services/log'); | const log = require('../../services/log'); | ||||||
| const scriptService = require('../../services/script'); | const scriptService = require('../../services/script'); | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const similarityService = require('../../becca/similarity.js'); | const similarityService = require('../../becca/similarity'); | ||||||
| const becca = require("../../becca/becca.js"); | const becca = require("../../becca/becca"); | ||||||
| 
 | 
 | ||||||
| async function getSimilarNotes(req) { | async function getSimilarNotes(req) { | ||||||
|     const noteId = req.params.noteId; |     const noteId = req.params.noteId; | ||||||
|  | |||||||
| @ -1,5 +1,5 @@ | |||||||
| const sql = require('../../services/sql'); | const sql = require('../../services/sql'); | ||||||
| const becca = require('../../becca/becca.js'); | const becca = require('../../becca/becca'); | ||||||
| 
 | 
 | ||||||
| function getNoteSize(req) { | function getNoteSize(req) { | ||||||
|     const {noteId} = req.params; |     const {noteId} = req.params; | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const syncService = require('../../services/sync'); | const syncService = require('../../services/sync'); | ||||||
| const syncUpdateService = require('../../services/sync_update'); | const syncUpdateService = require('../../services/sync_update'); | ||||||
| const entityChangesService = require('../../services/entity_changes.js'); | const entityChangesService = require('../../services/entity_changes'); | ||||||
| const sql = require('../../services/sql'); | const sql = require('../../services/sql'); | ||||||
| const sqlInit = require('../../services/sql_init'); | const sqlInit = require('../../services/sql_init'); | ||||||
| const optionService = require('../../services/options'); | const optionService = require('../../services/options'); | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const becca = require('../../becca/becca.js'); | const becca = require('../../becca/becca'); | ||||||
| const log = require('../../services/log'); | const log = require('../../services/log'); | ||||||
| 
 | 
 | ||||||
| function getNotesAndBranchesAndAttributes(noteIds) { | function getNotesAndBranchesAndAttributes(noteIds) { | ||||||
|  | |||||||
| @ -1,9 +1,9 @@ | |||||||
| const log = require('../services/log'); | const log = require('../services/log'); | ||||||
| const fileUploadService = require('./api/files.js'); | const fileUploadService = require('./api/files'); | ||||||
| const scriptService = require('../services/script'); | const scriptService = require('../services/script'); | ||||||
| const cls = require('../services/cls'); | const cls = require('../services/cls'); | ||||||
| const sql = require("../services/sql"); | const sql = require("../services/sql"); | ||||||
| const becca = require("../becca/becca.js"); | const becca = require("../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function handleRequest(req, res) { | function handleRequest(req, res) { | ||||||
|     // express puts content after first slash into 0 index element
 |     // express puts content after first slash into 0 index element
 | ||||||
|  | |||||||
| @ -7,7 +7,7 @@ const config = require('../services/config'); | |||||||
| const optionService = require('../services/options'); | const optionService = require('../services/options'); | ||||||
| const log = require('../services/log'); | const log = require('../services/log'); | ||||||
| const env = require('../services/env'); | const env = require('../services/env'); | ||||||
| const protectedSessionService = require("../services/protected_session.js"); | const protectedSessionService = require("../services/protected_session"); | ||||||
| 
 | 
 | ||||||
| function index(req, res) { | function index(req, res) { | ||||||
|     const options = optionService.getOptionsMap(); |     const options = optionService.getOptionsMap(); | ||||||
|  | |||||||
| @ -45,7 +45,7 @@ const router = express.Router(); | |||||||
| const auth = require('../services/auth'); | const auth = require('../services/auth'); | ||||||
| const cls = require('../services/cls'); | const cls = require('../services/cls'); | ||||||
| const sql = require('../services/sql'); | const sql = require('../services/sql'); | ||||||
| const entityChangesService = require('../services/entity_changes.js'); | const entityChangesService = require('../services/entity_changes'); | ||||||
| const csurf = require('csurf'); | const csurf = require('csurf'); | ||||||
| const {createPartialContentHandler} = require("express-partial-content"); | const {createPartialContentHandler} = require("express-partial-content"); | ||||||
| const rateLimit = require("express-rate-limit"); | const rateLimit = require("express-rate-limit"); | ||||||
|  | |||||||
| @ -2,9 +2,9 @@ | |||||||
| 
 | 
 | ||||||
| const searchService = require('./search/services/search'); | const searchService = require('./search/services/search'); | ||||||
| const sql = require('./sql'); | const sql = require('./sql'); | ||||||
| const becca = require('../becca/becca.js'); | const becca = require('../becca/becca'); | ||||||
| const Attribute = require('../becca/entities/attribute.js'); | const Attribute = require('../becca/entities/attribute'); | ||||||
| const {formatAttrForSearch} = require("./attribute_formatter.js"); | const {formatAttrForSearch} = require("./attribute_formatter"); | ||||||
| 
 | 
 | ||||||
| const ATTRIBUTE_TYPES = [ 'label', 'relation' ]; | const ATTRIBUTE_TYPES = [ 'label', 'relation' ]; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -12,8 +12,8 @@ const xml2js = require('xml2js'); | |||||||
| const cloningService = require('./cloning'); | const cloningService = require('./cloning'); | ||||||
| const appInfo = require('./app_info'); | const appInfo = require('./app_info'); | ||||||
| const searchService = require('./search/services/search'); | const searchService = require('./search/services/search'); | ||||||
| const SearchContext = require("./search/search_context.js"); | const SearchContext = require("./search/search_context"); | ||||||
| const becca = require("../becca/becca.js"); | const becca = require("../becca/becca"); | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * This is the main backend API interface for scripts. It's published in the local "api" object. |  * This is the main backend API interface for scripts. It's published in the local "api" object. | ||||||
|  | |||||||
| @ -1,13 +1,13 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const sql = require('./sql'); | const sql = require('./sql'); | ||||||
| const eventChangesService = require('./entity_changes.js'); | const eventChangesService = require('./entity_changes'); | ||||||
| const treeService = require('./tree'); | const treeService = require('./tree'); | ||||||
| const noteService = require('./notes'); | const noteService = require('./notes'); | ||||||
| const Branch = require('../becca/entities/branch.js'); | const Branch = require('../becca/entities/branch'); | ||||||
| const TaskContext = require("./task_context.js"); | const TaskContext = require("./task_context"); | ||||||
| const utils = require('./utils'); | const utils = require('./utils'); | ||||||
| const becca = require("../becca/becca.js"); | const becca = require("../becca/becca"); | ||||||
| const beccaService = require("../becca/becca_service"); | const beccaService = require("../becca/becca_service"); | ||||||
| 
 | 
 | ||||||
| function cloneNoteToParent(noteId, parentBranchId, prefix) { | function cloneNoteToParent(noteId, parentBranchId, prefix) { | ||||||
|  | |||||||
| @ -3,16 +3,16 @@ | |||||||
| const sql = require('./sql'); | const sql = require('./sql'); | ||||||
| const sqlInit = require('./sql_init'); | const sqlInit = require('./sql_init'); | ||||||
| const log = require('./log'); | const log = require('./log'); | ||||||
| const ws = require('./ws.js'); | const ws = require('./ws'); | ||||||
| const syncMutexService = require('./sync_mutex'); | const syncMutexService = require('./sync_mutex'); | ||||||
| const cls = require('./cls'); | const cls = require('./cls'); | ||||||
| const entityChangesService = require('./entity_changes.js'); | const entityChangesService = require('./entity_changes'); | ||||||
| const optionsService = require('./options'); | const optionsService = require('./options'); | ||||||
| const Branch = require('../becca/entities/branch.js'); | const Branch = require('../becca/entities/branch'); | ||||||
| const dateUtils = require('./date_utils'); | const dateUtils = require('./date_utils'); | ||||||
| const attributeService = require('./attributes'); | const attributeService = require('./attributes'); | ||||||
| const noteRevisionService = require('./note_revisions'); | const noteRevisionService = require('./note_revisions'); | ||||||
| const becca = require("../becca/becca.js"); | const becca = require("../becca/becca"); | ||||||
| 
 | 
 | ||||||
| class ConsistencyChecks { | class ConsistencyChecks { | ||||||
|     constructor(autoFix) { |     constructor(autoFix) { | ||||||
| @ -579,7 +579,7 @@ class ConsistencyChecks { | |||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         if (this.fixedIssues) { |         if (this.fixedIssues) { | ||||||
|             require("../becca/becca_loader.js").load(); |             require("../becca/becca_loader").load(); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         return !this.unrecoveredConsistencyErrors; |         return !this.unrecoveredConsistencyErrors; | ||||||
|  | |||||||
| @ -3,7 +3,7 @@ | |||||||
| const noteService = require('./notes'); | const noteService = require('./notes'); | ||||||
| const attributeService = require('./attributes'); | const attributeService = require('./attributes'); | ||||||
| const dateUtils = require('./date_utils'); | const dateUtils = require('./date_utils'); | ||||||
| const becca = require('../becca/becca.js'); | const becca = require('../becca/becca'); | ||||||
| const sql = require('./sql'); | const sql = require('./sql'); | ||||||
| const protectedSessionService = require('./protected_session'); | const protectedSessionService = require('./protected_session'); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -3,7 +3,7 @@ const sourceIdService = require('./source_id'); | |||||||
| const dateUtils = require('./date_utils'); | const dateUtils = require('./date_utils'); | ||||||
| const log = require('./log'); | const log = require('./log'); | ||||||
| const cls = require('./cls'); | const cls = require('./cls'); | ||||||
| const becca = require("../becca/becca.js"); | const becca = require("../becca/becca"); | ||||||
| 
 | 
 | ||||||
| let maxEntityChangeId = 0; | let maxEntityChangeId = 0; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const utils = require('../utils'); | const utils = require('../utils'); | ||||||
| const becca = require("../../becca/becca.js"); | const becca = require("../../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function exportToOpml(taskContext, branch, version, res) { | function exportToOpml(taskContext, branch, version, res) { | ||||||
|     if (!['1.0', '2.0'].includes(version)) { |     if (!['1.0', '2.0'].includes(version)) { | ||||||
|  | |||||||
| @ -77,7 +77,7 @@ function exportToZip(taskContext, branch, format, res) { | |||||||
|             fileName = fileName.substr(0, 30); |             fileName = fileName.substr(0, 30); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         // if the note is already named with extension (e.g. "jquery.js"), then it's silly to append exact same extension again
 |         // if the note is already named with extension (e.g. "jquery"), then it's silly to append exact same extension again
 | ||||||
|         if (newExtension && existingExtension !== "." + newExtension.toLowerCase()) { |         if (newExtension && existingExtension !== "." + newExtension.toLowerCase()) { | ||||||
|             fileName += "." + newExtension; |             fileName += "." + newExtension; | ||||||
|         } |         } | ||||||
|  | |||||||
| @ -2,8 +2,8 @@ const eventService = require('./events'); | |||||||
| const scriptService = require('./script'); | const scriptService = require('./script'); | ||||||
| const treeService = require('./tree'); | const treeService = require('./tree'); | ||||||
| const noteService = require('./notes'); | const noteService = require('./notes'); | ||||||
| const becca = require('../becca/becca.js'); | const becca = require('../becca/becca'); | ||||||
| const Attribute = require('../becca/entities/attribute.js'); | const Attribute = require('../becca/entities/attribute'); | ||||||
| 
 | 
 | ||||||
| function runAttachedRelations(note, relationName, originEntity) { | function runAttachedRelations(note, relationName, originEntity) { | ||||||
|     // same script note can get here with multiple ways, but execute only once
 |     // same script note can get here with multiple ways, but execute only once
 | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const becca = require('../becca/becca.js'); | const becca = require('../becca/becca'); | ||||||
| const log = require('./log'); | const log = require('./log'); | ||||||
| const protectedSessionService = require('./protected_session'); | const protectedSessionService = require('./protected_session'); | ||||||
| const noteService = require('./notes'); | const noteService = require('./notes'); | ||||||
| @ -9,7 +9,7 @@ const sql = require('./sql'); | |||||||
| const jimp = require('jimp'); | const jimp = require('jimp'); | ||||||
| const imageType = require('image-type'); | const imageType = require('image-type'); | ||||||
| const sanitizeFilename = require('sanitize-filename'); | const sanitizeFilename = require('sanitize-filename'); | ||||||
| const noteRevisionService = require('./note_revisions.js'); | const noteRevisionService = require('./note_revisions'); | ||||||
| const isSvg = require('is-svg'); | const isSvg = require('is-svg'); | ||||||
| const isAnimated = require('is-animated'); | const isAnimated = require('is-animated'); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,11 +1,11 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const Attribute = require('../../becca/entities/attribute.js'); | const Attribute = require('../../becca/entities/attribute'); | ||||||
| const utils = require('../../services/utils'); | const utils = require('../../services/utils'); | ||||||
| const log = require('../../services/log'); | const log = require('../../services/log'); | ||||||
| const noteService = require('../../services/notes'); | const noteService = require('../../services/notes'); | ||||||
| const attributeService = require('../../services/attributes'); | const attributeService = require('../../services/attributes'); | ||||||
| const Branch = require('../../becca/entities/branch.js'); | const Branch = require('../../becca/entities/branch'); | ||||||
| const path = require('path'); | const path = require('path'); | ||||||
| const commonmark = require('commonmark'); | const commonmark = require('commonmark'); | ||||||
| const protectedSessionService = require('../protected_session'); | const protectedSessionService = require('../protected_session'); | ||||||
| @ -13,7 +13,7 @@ const mimeService = require("./mime"); | |||||||
| const treeService = require("../tree"); | const treeService = require("../tree"); | ||||||
| const yauzl = require("yauzl"); | const yauzl = require("yauzl"); | ||||||
| const htmlSanitizer = require('../html_sanitizer'); | const htmlSanitizer = require('../html_sanitizer'); | ||||||
| const becca = require("../../becca/becca.js"); | const becca = require("../../becca/becca"); | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * @param {TaskContext} taskContext |  * @param {TaskContext} taskContext | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const NoteRevision = require('../becca/entities/note_revision.js'); | const NoteRevision = require('../becca/entities/note_revision'); | ||||||
| const dateUtils = require('./date_utils'); | const dateUtils = require('./date_utils'); | ||||||
| const log = require('./log'); | const log = require('./log'); | ||||||
| const sql = require('./sql'); | const sql = require('./sql'); | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ const sql = require('./sql'); | |||||||
| const sqlInit = require('./sql_init'); | const sqlInit = require('./sql_init'); | ||||||
| const optionService = require('./options'); | const optionService = require('./options'); | ||||||
| const dateUtils = require('./date_utils'); | const dateUtils = require('./date_utils'); | ||||||
| const entityChangesService = require('./entity_changes.js'); | const entityChangesService = require('./entity_changes'); | ||||||
| const eventService = require('./events'); | const eventService = require('./events'); | ||||||
| const cls = require('../services/cls'); | const cls = require('../services/cls'); | ||||||
| const protectedSessionService = require('../services/protected_session'); | const protectedSessionService = require('../services/protected_session'); | ||||||
| @ -13,10 +13,10 @@ const attributeService = require('../services/attributes'); | |||||||
| const request = require('./request'); | const request = require('./request'); | ||||||
| const path = require('path'); | const path = require('path'); | ||||||
| const url = require('url'); | const url = require('url'); | ||||||
| const becca = require('../becca/becca.js'); | const becca = require('../becca/becca'); | ||||||
| const Branch = require('../becca/entities/branch.js'); | const Branch = require('../becca/entities/branch'); | ||||||
| const Note = require('../becca/entities/note.js'); | const Note = require('../becca/entities/note'); | ||||||
| const Attribute = require('../becca/entities/attribute.js'); | const Attribute = require('../becca/entities/attribute'); | ||||||
| 
 | 
 | ||||||
| function getNewNotePosition(parentNoteId) { | function getNewNotePosition(parentNoteId) { | ||||||
|     const note = becca.notes[parentNoteId]; |     const note = becca.notes[parentNoteId]; | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| const becca = require('../becca/becca.js'); | const becca = require('../becca/becca'); | ||||||
| 
 | 
 | ||||||
| function getOption(name) { | function getOption(name) { | ||||||
|     const option = require('../becca/becca.js').getOption(name); |     const option = require('../becca/becca').getOption(name); | ||||||
| 
 | 
 | ||||||
|     if (!option) { |     if (!option) { | ||||||
|         throw new Error(`Option "${name}" doesn't exist`); |         throw new Error(`Option "${name}" doesn't exist`); | ||||||
| @ -57,7 +57,7 @@ function setOption(name, value) { | |||||||
| 
 | 
 | ||||||
| function createOption(name, value, isSynced) { | function createOption(name, value, isSynced) { | ||||||
|     // to avoid circular dependency, need to find better solution
 |     // to avoid circular dependency, need to find better solution
 | ||||||
|     const Option = require('../becca/entities/option.js'); |     const Option = require('../becca/entities/option'); | ||||||
| 
 | 
 | ||||||
|     new Option({ |     new Option({ | ||||||
|         name: name, |         name: name, | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ const sqlInit = require('./sql_init'); | |||||||
| const config = require('./config'); | const config = require('./config'); | ||||||
| const log = require('./log'); | const log = require('./log'); | ||||||
| const sql = require("./sql"); | const sql = require("./sql"); | ||||||
| const becca = require("../becca/becca.js"); | const becca = require("../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function getRunAtHours(note) { | function getRunAtHours(note) { | ||||||
|     try { |     try { | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| const ScriptContext = require('./script_context'); | const ScriptContext = require('./script_context'); | ||||||
| const cls = require('./cls'); | const cls = require('./cls'); | ||||||
| const log = require('./log'); | const log = require('./log'); | ||||||
| const becca = require("../becca/becca.js"); | const becca = require("../becca/becca"); | ||||||
| 
 | 
 | ||||||
| function executeNote(note, apiParams) { | function executeNote(note, apiParams) { | ||||||
|     if (!note.isJavaScript() || note.getScriptEnv() !== 'backend' || !note.isContentAvailable()) { |     if (!note.isJavaScript() || note.getScriptEnv() !== 'backend' || !note.isContentAvailable()) { | ||||||
|  | |||||||
| @ -3,7 +3,7 @@ | |||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const log = require('../../log'); | const log = require('../../log'); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| 
 | 
 | ||||||
| class AncestorExp extends Expression { | class AncestorExp extends Expression { | ||||||
|     constructor(ancestorNoteId, ancestorDepth) { |     constructor(ancestorNoteId, ancestorDepth) { | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const TrueExp = require("./true.js"); | const TrueExp = require("./true"); | ||||||
| 
 | 
 | ||||||
| class AndExp extends Expression { | class AndExp extends Expression { | ||||||
|     static of(subExpressions) { |     static of(subExpressions) { | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| 
 | 
 | ||||||
| class AttributeExistsExp extends Expression { | class AttributeExistsExp extends Expression { | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| 
 | 
 | ||||||
| class DescendantOfExp extends Expression { | class DescendantOfExp extends Expression { | ||||||
|     constructor(subExpression) { |     constructor(subExpression) { | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| 
 | 
 | ||||||
| class LabelComparisonExp extends Expression { | class LabelComparisonExp extends Expression { | ||||||
|     constructor(attributeType, attributeName, comparator) { |     constructor(attributeType, attributeName, comparator) { | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| 
 | 
 | ||||||
| class BeccaFlatTextExp extends Expression { | class BeccaFlatTextExp extends Expression { | ||||||
|     constructor(tokens) { |     constructor(tokens) { | ||||||
| @ -13,7 +13,7 @@ class BeccaFlatTextExp extends Expression { | |||||||
| 
 | 
 | ||||||
|     execute(inputNoteSet, executionContext) { |     execute(inputNoteSet, executionContext) { | ||||||
|         // has deps on SQL which breaks unit test so needs to be dynamically required
 |         // has deps on SQL which breaks unit test so needs to be dynamically required
 | ||||||
|         const beccaService = require('../../../becca/becca_service.js'); |         const beccaService = require('../../../becca/becca_service'); | ||||||
|         const resultNoteSet = new NoteSet(); |         const resultNoteSet = new NoteSet(); | ||||||
| 
 | 
 | ||||||
|         function searchDownThePath(note, tokens, path) { |         function searchDownThePath(note, tokens, path) { | ||||||
|  | |||||||
| @ -3,7 +3,7 @@ | |||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const log = require('../../log'); | const log = require('../../log'); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| const protectedSessionService = require('../../protected_session'); | const protectedSessionService = require('../../protected_session'); | ||||||
| const striptags = require('striptags'); | const striptags = require('striptags'); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| const striptags = require('striptags'); | const striptags = require('striptags'); | ||||||
| 
 | 
 | ||||||
| class NoteContentUnprotectedFulltextExp extends Expression { | class NoteContentUnprotectedFulltextExp extends Expression { | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const buildComparator = require("../services/build_comparator.js"); | const buildComparator = require("../services/build_comparator"); | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * Search string is lower cased for case insensitive comparison. But when retrieving properties |  * Search string is lower cased for case insensitive comparison. But when retrieving properties | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ | |||||||
| 
 | 
 | ||||||
| const Expression = require('./expression'); | const Expression = require('./expression'); | ||||||
| const NoteSet = require('../note_set'); | const NoteSet = require('../note_set'); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| 
 | 
 | ||||||
| class RelationWhereExp extends Expression { | class RelationWhereExp extends Expression { | ||||||
|     constructor(relationName, subExpression) { |     constructor(relationName, subExpression) { | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const beccaService = require('../../becca/becca_service.js'); | const beccaService = require('../../becca/becca_service'); | ||||||
| 
 | 
 | ||||||
| class SearchResult { | class SearchResult { | ||||||
|     constructor(notePathArray) { |     constructor(notePathArray) { | ||||||
|  | |||||||
| @ -1,23 +1,23 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const dayjs = require("dayjs"); | const dayjs = require("dayjs"); | ||||||
| const AndExp = require('../expressions/and.js'); | const AndExp = require('../expressions/and'); | ||||||
| const OrExp = require('../expressions/or.js'); | const OrExp = require('../expressions/or'); | ||||||
| const NotExp = require('../expressions/not.js'); | const NotExp = require('../expressions/not'); | ||||||
| const ChildOfExp = require('../expressions/child_of.js'); | const ChildOfExp = require('../expressions/child_of'); | ||||||
| const DescendantOfExp = require('../expressions/descendant_of.js'); | const DescendantOfExp = require('../expressions/descendant_of'); | ||||||
| const ParentOfExp = require('../expressions/parent_of.js'); | const ParentOfExp = require('../expressions/parent_of'); | ||||||
| const RelationWhereExp = require('../expressions/relation_where.js'); | const RelationWhereExp = require('../expressions/relation_where'); | ||||||
| const PropertyComparisonExp = require('../expressions/property_comparison.js'); | const PropertyComparisonExp = require('../expressions/property_comparison'); | ||||||
| const AttributeExistsExp = require('../expressions/attribute_exists.js'); | const AttributeExistsExp = require('../expressions/attribute_exists'); | ||||||
| const LabelComparisonExp = require('../expressions/label_comparison.js'); | const LabelComparisonExp = require('../expressions/label_comparison'); | ||||||
| const BeccaFlatTextExp = require('../expressions/note_cache_flat_text.js'); | const BeccaFlatTextExp = require('../expressions/note_cache_flat_text'); | ||||||
| const NoteContentProtectedFulltextExp = require('../expressions/note_content_protected_fulltext.js'); | const NoteContentProtectedFulltextExp = require('../expressions/note_content_protected_fulltext'); | ||||||
| const NoteContentUnprotectedFulltextExp = require('../expressions/note_content_unprotected_fulltext.js'); | const NoteContentUnprotectedFulltextExp = require('../expressions/note_content_unprotected_fulltext'); | ||||||
| const OrderByAndLimitExp = require('../expressions/order_by_and_limit.js'); | const OrderByAndLimitExp = require('../expressions/order_by_and_limit'); | ||||||
| const AncestorExp = require("../expressions/ancestor.js"); | const AncestorExp = require("../expressions/ancestor"); | ||||||
| const buildComparator = require('./build_comparator.js'); | const buildComparator = require('./build_comparator'); | ||||||
| const ValueExtractor = require('../value_extractor.js'); | const ValueExtractor = require('../value_extractor'); | ||||||
| 
 | 
 | ||||||
| function getFulltext(tokens, searchContext) { | function getFulltext(tokens, searchContext) { | ||||||
|     tokens = tokens.map(t => t.token); |     tokens = tokens.map(t => t.token); | ||||||
|  | |||||||
| @ -1,18 +1,18 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const lex = require('./lex.js'); | const lex = require('./lex'); | ||||||
| const handleParens = require('./handle_parens.js'); | const handleParens = require('./handle_parens'); | ||||||
| const parse = require('./parse.js'); | const parse = require('./parse'); | ||||||
| const NoteSet = require("../note_set.js"); | const NoteSet = require("../note_set"); | ||||||
| const SearchResult = require("../search_result.js"); | const SearchResult = require("../search_result"); | ||||||
| const SearchContext = require("../search_context.js"); | const SearchContext = require("../search_context"); | ||||||
| const becca = require('../../../becca/becca.js'); | const becca = require('../../../becca/becca'); | ||||||
| const beccaService = require('../../../becca/becca_service.js'); | const beccaService = require('../../../becca/becca_service'); | ||||||
| const utils = require('../../utils.js'); | const utils = require('../../utils'); | ||||||
| const log = require('../../log.js'); | const log = require('../../log'); | ||||||
| 
 | 
 | ||||||
| function loadNeededInfoFromDatabase() { | function loadNeededInfoFromDatabase() { | ||||||
|     const sql = require('../../sql.js'); |     const sql = require('../../sql'); | ||||||
| 
 | 
 | ||||||
|     for (const noteId in becca.notes) { |     for (const noteId in becca.notes) { | ||||||
|         becca.notes[noteId].contentSize = 0; |         becca.notes[noteId].contentSize = 0; | ||||||
|  | |||||||
| @ -6,7 +6,7 @@ const syncOptions = require('./sync_options'); | |||||||
| const request = require('./request'); | const request = require('./request'); | ||||||
| const appInfo = require('./app_info'); | const appInfo = require('./app_info'); | ||||||
| const utils = require('./utils'); | const utils = require('./utils'); | ||||||
| const becca = require("../becca/becca.js"); | const becca = require("../becca/becca"); | ||||||
| 
 | 
 | ||||||
| async function hasSyncServerSchemaAndSeed() { | async function hasSyncServerSchemaAndSeed() { | ||||||
|     const response = await requestToSyncServer('GET', '/api/setup/status'); |     const response = await requestToSyncServer('GET', '/api/setup/status'); | ||||||
|  | |||||||
| @ -249,7 +249,7 @@ function transactional(func) { | |||||||
|         if (entityChanges.length > 0) { |         if (entityChanges.length > 0) { | ||||||
|             log.info("Transaction rollback dirtied the becca, forcing reload."); |             log.info("Transaction rollback dirtied the becca, forcing reload."); | ||||||
| 
 | 
 | ||||||
|             require('../becca/becca_loader.js').load(); |             require('../becca/becca_loader').load(); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         throw e; |         throw e; | ||||||
|  | |||||||
| @ -5,8 +5,8 @@ const sql = require('./sql'); | |||||||
| const utils = require('./utils'); | const utils = require('./utils'); | ||||||
| const optionService = require('./options'); | const optionService = require('./options'); | ||||||
| const port = require('./port'); | const port = require('./port'); | ||||||
| const Option = require('../becca/entities/option.js'); | const Option = require('../becca/entities/option'); | ||||||
| const TaskContext = require('./task_context.js'); | const TaskContext = require('./task_context'); | ||||||
| const migrationService = require('./migration'); | const migrationService = require('./migration'); | ||||||
| const cls = require('./cls'); | const cls = require('./cls'); | ||||||
| const config = require('./config'); | const config = require('./config'); | ||||||
| @ -62,10 +62,10 @@ async function createInitialDatabase(username, password, theme) { | |||||||
|     sql.transactional(() => { |     sql.transactional(() => { | ||||||
|         sql.executeScript(schema); |         sql.executeScript(schema); | ||||||
| 
 | 
 | ||||||
|         require("../becca/becca_loader.js").load(); |         require("../becca/becca_loader").load(); | ||||||
| 
 | 
 | ||||||
|         const Note = require("../becca/entities/note.js"); |         const Note = require("../becca/entities/note"); | ||||||
|         const Branch = require("../becca/entities/branch.js"); |         const Branch = require("../becca/entities/branch"); | ||||||
| 
 | 
 | ||||||
|         rootNote = new Note({ |         rootNote = new Note({ | ||||||
|             noteId: 'root', |             noteId: 'root', | ||||||
|  | |||||||
| @ -14,8 +14,8 @@ const syncMutexService = require('./sync_mutex'); | |||||||
| const cls = require('./cls'); | const cls = require('./cls'); | ||||||
| const request = require('./request'); | const request = require('./request'); | ||||||
| const ws = require('./ws'); | const ws = require('./ws'); | ||||||
| const entityChangesService = require('./entity_changes.js'); | const entityChangesService = require('./entity_changes'); | ||||||
| const entityConstructor = require('../becca/entity_constructor.js'); | const entityConstructor = require('../becca/entity_constructor'); | ||||||
| 
 | 
 | ||||||
| let proxyToggle = true; | let proxyToggle = true; | ||||||
| 
 | 
 | ||||||
| @ -385,7 +385,7 @@ function getOutstandingPullCount() { | |||||||
|     return outstandingPullCount; |     return outstandingPullCount; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| require("../becca/becca_loader.js").beccaLoaded.then(() => { | require("../becca/becca_loader").beccaLoaded.then(() => { | ||||||
|     setInterval(cls.wrap(sync), 60000); |     setInterval(cls.wrap(sync), 60000); | ||||||
| 
 | 
 | ||||||
|     // kickoff initial sync immediately
 |     // kickoff initial sync immediately
 | ||||||
|  | |||||||
| @ -1,8 +1,8 @@ | |||||||
| const sql = require('./sql'); | const sql = require('./sql'); | ||||||
| const log = require('./log'); | const log = require('./log'); | ||||||
| const entityChangesService = require('./entity_changes.js'); | const entityChangesService = require('./entity_changes'); | ||||||
| const eventService = require('./events'); | const eventService = require('./events'); | ||||||
| const entityConstructor = require("../becca/entity_constructor.js"); | const entityConstructor = require("../becca/entity_constructor"); | ||||||
| 
 | 
 | ||||||
| function updateEntity(entityChange, entity, sourceId) { | function updateEntity(entityChange, entity, sourceId) { | ||||||
|     // can be undefined for options with isSynced=false
 |     // can be undefined for options with isSynced=false
 | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
| const ws = require('./ws.js'); | const ws = require('./ws'); | ||||||
| 
 | 
 | ||||||
| // taskId => TaskContext
 | // taskId => TaskContext
 | ||||||
| const taskContexts = {}; | const taskContexts = {}; | ||||||
|  | |||||||
| @ -2,10 +2,10 @@ | |||||||
| 
 | 
 | ||||||
| const sql = require('./sql'); | const sql = require('./sql'); | ||||||
| const log = require('./log'); | const log = require('./log'); | ||||||
| const Branch = require('../becca/entities/branch.js'); | const Branch = require('../becca/entities/branch'); | ||||||
| const entityChangesService = require('./entity_changes.js'); | const entityChangesService = require('./entity_changes'); | ||||||
| const protectedSessionService = require('./protected_session'); | const protectedSessionService = require('./protected_session'); | ||||||
| const becca = require('../becca/becca.js'); | const becca = require('../becca/becca'); | ||||||
| 
 | 
 | ||||||
| function getNotes(noteIds) { | function getNotes(noteIds) { | ||||||
|     // we return also deleted notes which have been specifically asked for
 |     // we return also deleted notes which have been specifically asked for
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 zadam
						zadam