Merge remote-tracking branch 'origin/stable'

This commit is contained in:
zadam 2020-11-24 20:31:16 +01:00
commit 14f5b46ece
3 changed files with 32 additions and 14 deletions

8
package-lock.json generated
View File

@ -1,6 +1,6 @@
{ {
"name": "trilium", "name": "trilium",
"version": "0.45.4", "version": "0.45.5",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {
@ -2638,9 +2638,9 @@
} }
}, },
"electron": { "electron": {
"version": "9.3.4", "version": "9.3.5",
"resolved": "https://registry.npmjs.org/electron/-/electron-9.3.4.tgz", "resolved": "https://registry.npmjs.org/electron/-/electron-9.3.5.tgz",
"integrity": "sha512-OHP8qMKgW8D8GtH+altB22WJw/lBOyyVdoz5e8D0/iPBmJU3Jm93vO4z4Eh/9DvdSXlH8bMHUCMLL9PVW6f+tw==", "integrity": "sha512-EPmDsp7sO0UPtw7nLD1ufse/nBskP+ifXzBgUg9psCUlapkzuwYi6pmLAzKLW/bVjwgyUKwh1OKWILWfOeLGcQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"@electron/get": "^1.0.1", "@electron/get": "^1.0.1",

View File

@ -77,7 +77,7 @@
}, },
"devDependencies": { "devDependencies": {
"cross-env": "7.0.2", "cross-env": "7.0.2",
"electron": "9.3.4", "electron": "9.3.5",
"electron-builder": "22.9.1", "electron-builder": "22.9.1",
"electron-packager": "15.1.0", "electron-packager": "15.1.0",
"electron-rebuild": "2.3.2", "electron-rebuild": "2.3.2",

View File

@ -3,15 +3,33 @@
const sql = require('../../services/sql'); const sql = require('../../services/sql');
function getRelations(noteIds) { function getRelations(noteIds) {
return (sql.getManyRows(` noteIds = Array.from(noteIds);
SELECT noteId, name, value AS targetNoteId
FROM attributes return [
WHERE (noteId IN (???) OR value IN (???)) // first read all non-image relations
AND type = 'relation' ...sql.getManyRows(`
AND isDeleted = 0 SELECT noteId, name, value AS targetNoteId
AND noteId != '' FROM attributes
AND value != '' WHERE (noteId IN (???) OR value IN (???))
`, Array.from(noteIds))); AND type = 'relation'
AND name != 'imageLink'
AND isDeleted = 0
AND noteId != ''
AND value != ''`, noteIds),
// ... then read only imageLink relations which are not connecting parent and child
// this is done to not show image links in the trivial case where they are direct children of the note to which they are included. Same heuristic as in note tree
...sql.getManyRows(`
SELECT rel.noteId, rel.name, rel.value AS targetNoteId
FROM attributes AS rel
LEFT JOIN branches ON branches.parentNoteId = rel.noteId AND branches.noteId = rel.value AND branches.isDeleted = 0
WHERE (rel.noteId IN (???) OR rel.value IN (???))
AND rel.type = 'relation'
AND rel.name = 'imageLink'
AND rel.isDeleted = 0
AND rel.noteId != ''
AND rel.value != ''
AND branches.branchId IS NULL`, noteIds)
];
} }
function getLinkMap(req) { function getLinkMap(req) {