mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
add support for the persistent #sortDirection and #sortFoldersFirst (one time UI action exists), closes #3046
This commit is contained in:
parent
b2a63afc28
commit
3c1f826ead
@ -135,10 +135,6 @@ function getSomeNotePath(note, hoistedNotePath = 'root') {
|
|||||||
return notePath === null ? null : notePath.join('/');
|
return notePath === null ? null : notePath.join('/');
|
||||||
}
|
}
|
||||||
|
|
||||||
async function sortAlphabetically(noteId) {
|
|
||||||
await server.put(`notes/${noteId}/sort`);
|
|
||||||
}
|
|
||||||
|
|
||||||
ws.subscribeToMessages(message => {
|
ws.subscribeToMessages(message => {
|
||||||
if (message.type === 'openNote') {
|
if (message.type === 'openNote') {
|
||||||
appContext.tabManager.activateOrOpenNote(message.noteId);
|
appContext.tabManager.activateOrOpenNote(message.noteId);
|
||||||
@ -319,7 +315,6 @@ function parseNotePath(notePath) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
sortAlphabetically,
|
|
||||||
resolveNotePath,
|
resolveNotePath,
|
||||||
resolveNotePathToSegments,
|
resolveNotePathToSegments,
|
||||||
getSomeNotePath,
|
getSomeNotePath,
|
||||||
|
@ -189,6 +189,8 @@ const ATTR_HELP = {
|
|||||||
"runAtHour": "On which hour should this run. Should be used together with <code>#run=hourly</code>. Can be defined multiple times for more runs during the day.",
|
"runAtHour": "On which hour should this run. Should be used together with <code>#run=hourly</code>. Can be defined multiple times for more runs during the day.",
|
||||||
"disableInclusion": "scripts with this label won't be included into parent script execution.",
|
"disableInclusion": "scripts with this label won't be included into parent script execution.",
|
||||||
"sorted": "keeps child notes sorted by title alphabetically",
|
"sorted": "keeps child notes sorted by title alphabetically",
|
||||||
|
"sortDirection": "ASC (the default) or DESC",
|
||||||
|
"sortFoldersFirst": "Folders (notes with children) should be sorted on top",
|
||||||
"top": "keep given note on top in its parent (applies only on sorted parents)",
|
"top": "keep given note on top in its parent (applies only on sorted parents)",
|
||||||
"hidePromotedAttributes": "Hide promoted attributes on this note",
|
"hidePromotedAttributes": "Hide promoted attributes on this note",
|
||||||
"readOnly": "editor is in read only mode. Works only for text and code notes.",
|
"readOnly": "editor is in read only mode. Works only for text and code notes.",
|
||||||
|
@ -41,6 +41,8 @@ module.exports = [
|
|||||||
{ type: 'label', name: 'bookmarked' },
|
{ type: 'label', name: 'bookmarked' },
|
||||||
{ type: 'label', name: 'bookmarkFolder' },
|
{ type: 'label', name: 'bookmarkFolder' },
|
||||||
{ type: 'label', name: 'sorted' },
|
{ type: 'label', name: 'sorted' },
|
||||||
|
{ type: 'label', name: 'sortDirection' },
|
||||||
|
{ type: 'label', name: 'sortFoldersFirst' },
|
||||||
{ type: 'label', name: 'top' },
|
{ type: 'label', name: 'top' },
|
||||||
{ type: 'label', name: 'fullContentWidth' },
|
{ type: 'label', name: 'fullContentWidth' },
|
||||||
{ type: 'label', name: 'shareHiddenFromTree' },
|
{ type: 'label', name: 'shareHiddenFromTree' },
|
||||||
|
@ -44,7 +44,7 @@ eventService.subscribe([ eventService.ENTITY_CHANGED, eventService.ENTITY_DELETE
|
|||||||
if (entityName === 'attributes') {
|
if (entityName === 'attributes') {
|
||||||
runAttachedRelations(entity.getNote(), 'runOnAttributeChange', entity);
|
runAttachedRelations(entity.getNote(), 'runOnAttributeChange', entity);
|
||||||
|
|
||||||
if (entity.type === 'label' && entity.name === 'sorted') {
|
if (entity.type === 'label' && ['sorted', 'sortDirection', 'sortFoldersFirst'].includes(entity.name)) {
|
||||||
handleSortedAttribute(entity);
|
handleSortedAttribute(entity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -204,7 +204,11 @@ function sortNotesIfNeeded(parentNoteId) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
sortNotes(parentNoteId, sortedLabel.value);
|
const sortReversed = parentNote.getLabelValue('sortDirection')?.toLowerCase() === "desc";
|
||||||
|
const sortFoldersFirstLabel = parentNote.getLabel('sortFoldersFirst');
|
||||||
|
const sortFoldersFirst = sortFoldersFirstLabel && sortFoldersFirstLabel.value.toLowerCase() !== "false";
|
||||||
|
|
||||||
|
sortNotes(parentNoteId, sortedLabel.value, sortReversed, sortFoldersFirst);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user