mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
integrate new search into the main global search
This commit is contained in:
parent
cb4d0624b5
commit
b5627b138a
44
package-lock.json
generated
44
package-lock.json
generated
@ -3385,9 +3385,9 @@
|
||||
}
|
||||
},
|
||||
"electron-debug": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/electron-debug/-/electron-debug-3.0.1.tgz",
|
||||
"integrity": "sha512-fo3mtDM4Bxxm3DW1I+XcJKfQlUlns4QGWyWGs8OrXK1bBZ2X9HeqYMntYBx78MYRcGY5S/ualuG4GhCnPlaZEA==",
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/electron-debug/-/electron-debug-3.1.0.tgz",
|
||||
"integrity": "sha512-SWEqLj4MgfV3tGuO5eBLQ5/Nr6M+KPxsnE0bUJZvQebGJus6RAcdmvd7L+l0Ji31h2mmrN23l2tHFtCa2FvurA==",
|
||||
"requires": {
|
||||
"electron-is-dev": "^1.1.0",
|
||||
"electron-localshortcut": "^3.1.0"
|
||||
@ -3568,29 +3568,19 @@
|
||||
"integrity": "sha1-UJ5RDCala1Xhf4Y6SwThEYRqsns="
|
||||
},
|
||||
"electron-is-dev": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/electron-is-dev/-/electron-is-dev-1.1.0.tgz",
|
||||
"integrity": "sha512-Z1qA/1oHNowGtSBIcWk0pcLEqYT/j+13xUw/MYOrBUOL4X7VN0i0KCTf5SqyvMPmW5pSPKbo28wkxMxzZ20YnQ=="
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/electron-is-dev/-/electron-is-dev-1.2.0.tgz",
|
||||
"integrity": "sha512-R1oD5gMBPS7PVU8gJwH6CtT0e6VSoD0+SzSnYpNm+dBkcijgA+K7VAMHDfnRq/lkKPZArpzplTW6jfiMYosdzw=="
|
||||
},
|
||||
"electron-localshortcut": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/electron-localshortcut/-/electron-localshortcut-3.1.0.tgz",
|
||||
"integrity": "sha512-MgL/j5jdjW7iA0R6cI7S045B0GlKXWM1FjjujVPjlrmyXRa6yH0bGSaIAfxXAF9tpJm3pLEiQzerYHkRh9JG/A==",
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/electron-localshortcut/-/electron-localshortcut-3.2.1.tgz",
|
||||
"integrity": "sha512-DWvhKv36GsdXKnaFFhEiK8kZZA+24/yFLgtTwJJHc7AFgDjNRIBJZ/jq62Y/dWv9E4ypYwrVWN2bVrCYw1uv7Q==",
|
||||
"requires": {
|
||||
"debug": "^2.6.8",
|
||||
"debug": "^4.0.1",
|
||||
"electron-is-accelerator": "^0.1.0",
|
||||
"keyboardevent-from-electron-accelerator": "^1.1.0",
|
||||
"keyboardevent-from-electron-accelerator": "^2.0.0",
|
||||
"keyboardevents-areequal": "^0.2.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "2.6.9",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
|
||||
"requires": {
|
||||
"ms": "2.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"electron-notarize": {
|
||||
@ -6507,9 +6497,9 @@
|
||||
"integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ=="
|
||||
},
|
||||
"keyboardevent-from-electron-accelerator": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/keyboardevent-from-electron-accelerator/-/keyboardevent-from-electron-accelerator-1.1.0.tgz",
|
||||
"integrity": "sha512-VDC4vKWGrR3VgIKCE4CsXnvObGgP8C2idnTKEMUkuEuvDGE1GEBX9FtNdJzrD00iQlhI3xFxRaeItsUmlERVng=="
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/keyboardevent-from-electron-accelerator/-/keyboardevent-from-electron-accelerator-2.0.0.tgz",
|
||||
"integrity": "sha512-iQcmNA0M4ETMNi0kG/q0h/43wZk7rMeKYrXP7sqKIJbHkTU8Koowgzv+ieR/vWJbOwxx5nDC3UnudZ0aLSu4VA=="
|
||||
},
|
||||
"keyboardevents-areequal": {
|
||||
"version": "0.2.2",
|
||||
@ -10338,9 +10328,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"sqlite": {
|
||||
"version": "4.0.7",
|
||||
"resolved": "https://registry.npmjs.org/sqlite/-/sqlite-4.0.7.tgz",
|
||||
"integrity": "sha512-1bBO+me3gXRfqwRR3K9aNDoSbTkQ87o6fSjj/BE2gSHHsK3qIDR+LoFZHgZ6kSPdFBoLTsy5/w/+8PBBaK+lvg=="
|
||||
"version": "4.0.8",
|
||||
"resolved": "https://registry.npmjs.org/sqlite/-/sqlite-4.0.8.tgz",
|
||||
"integrity": "sha512-MOy63kITfjJnZimrwgQ50+L83J3IBPjuyTZ98YooAmSXdLtfGHDTMgH5csWturZ/mzm4TafLvtjkIbhmQVNgcw=="
|
||||
},
|
||||
"sqlite3": {
|
||||
"version": "4.1.1",
|
||||
|
@ -32,7 +32,7 @@
|
||||
"dayjs": "1.8.27",
|
||||
"debug": "4.1.1",
|
||||
"ejs": "3.1.3",
|
||||
"electron-debug": "3.0.1",
|
||||
"electron-debug": "3.1.0",
|
||||
"electron-dl": "3.0.0",
|
||||
"electron-find": "1.0.6",
|
||||
"electron-window-state": "5.0.3",
|
||||
@ -67,7 +67,7 @@
|
||||
"serve-favicon": "2.5.0",
|
||||
"session-file-store": "1.4.0",
|
||||
"simple-node-logger": "18.12.24",
|
||||
"sqlite": "4.0.7",
|
||||
"sqlite": "4.0.8",
|
||||
"sqlite3": "4.1.1",
|
||||
"string-similarity": "4.0.1",
|
||||
"tar-stream": "2.1.2",
|
||||
|
@ -48,8 +48,8 @@ export default class SearchResultsWidget extends BasicWidget {
|
||||
for (const result of results) {
|
||||
const link = $('<a>', {
|
||||
href: 'javascript:',
|
||||
text: result.title
|
||||
}).attr('data-action', 'note').attr('data-note-path', result.path);
|
||||
text: result.notePathTitle
|
||||
}).attr('data-action', 'note').attr('data-note-path', result.notePath);
|
||||
|
||||
const $result = $('<li>').append(link);
|
||||
|
||||
|
@ -4,15 +4,15 @@ const repository = require('../../services/repository');
|
||||
const noteCacheService = require('../../services/note_cache/note_cache.js');
|
||||
const log = require('../../services/log');
|
||||
const scriptService = require('../../services/script');
|
||||
const searchService = require('../../services/search');
|
||||
const searchService = require('../../services/search/search');
|
||||
|
||||
async function searchNotes(req) {
|
||||
const noteIds = await searchService.searchForNoteIds(req.params.searchString);
|
||||
const notePaths = await searchService.searchNotes(req.params.searchString);
|
||||
|
||||
try {
|
||||
return {
|
||||
success: true,
|
||||
results: noteIds.map(noteCacheService.getNotePath).filter(res => !!res)
|
||||
results: notePaths
|
||||
}
|
||||
}
|
||||
catch {
|
||||
|
@ -13,6 +13,7 @@ const PROP_MAPPING = {
|
||||
"type": "type",
|
||||
"mime": "mime",
|
||||
"isprotected": "isProtected",
|
||||
"isarhived": "isArchived",
|
||||
"datecreated": "dateCreated",
|
||||
"datemodified": "dateModified",
|
||||
"utcdatecreated": "utcDateCreated",
|
||||
|
@ -75,6 +75,23 @@ async function findNotesWithQuery(query, parsingContext) {
|
||||
return await findNotesWithExpression(expression);
|
||||
}
|
||||
|
||||
async function searchNotes(query) {
|
||||
if (!query.trim().length) {
|
||||
return [];
|
||||
}
|
||||
|
||||
const parsingContext = new ParsingContext({
|
||||
includeNoteContent: true,
|
||||
fuzzyAttributeSearch: false
|
||||
});
|
||||
|
||||
let searchResults = await findNotesWithQuery(query, parsingContext);
|
||||
|
||||
searchResults = searchResults.slice(0, 200);
|
||||
|
||||
return searchResults;
|
||||
}
|
||||
|
||||
async function searchNotesForAutocomplete(query) {
|
||||
if (!query.trim().length) {
|
||||
return [];
|
||||
@ -85,7 +102,7 @@ async function searchNotesForAutocomplete(query) {
|
||||
fuzzyAttributeSearch: true
|
||||
});
|
||||
|
||||
let searchResults = findNotesWithQuery(query, parsingContext);
|
||||
let searchResults = await findNotesWithQuery(query, parsingContext);
|
||||
|
||||
searchResults = searchResults.slice(0, 200);
|
||||
|
||||
@ -154,6 +171,7 @@ function formatAttribute(attr) {
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
searchNotes,
|
||||
searchNotesForAutocomplete,
|
||||
findNotesWithQuery
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user