mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
introduction of refreshWithNote
This commit is contained in:
parent
adb9ce5e93
commit
9f1e777e6d
@ -60,7 +60,7 @@ window.glob.noteChanged = noteDetailService.noteChanged;
|
|||||||
window.glob.refreshTree = treeService.reload;
|
window.glob.refreshTree = treeService.reload;
|
||||||
|
|
||||||
// required for ESLint plugin
|
// required for ESLint plugin
|
||||||
window.glob.getActiveTabNote = appContext.getActiveTabNote;
|
window.glob.getActiveTabNote = () => appContext.getActiveTabNote();
|
||||||
window.glob.requireLibrary = libraryLoader.requireLibrary;
|
window.glob.requireLibrary = libraryLoader.requireLibrary;
|
||||||
window.glob.ESLINT = libraryLoader.ESLINT;
|
window.glob.ESLINT = libraryLoader.ESLINT;
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ class AttributesWidget extends StandardWidget {
|
|||||||
return [$showFullButton];
|
return [$showFullButton];
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
const attributes = await this.tabContext.attributes.getAttributes();console.log("attributes", attributes);
|
const attributes = await this.tabContext.attributes.getAttributes();console.log("attributes", attributes);
|
||||||
const ownedAttributes = attributes.filter(attr => attr.noteId === this.tabContext.note.noteId);
|
const ownedAttributes = attributes.filter(attr => attr.noteId === this.tabContext.note.noteId);
|
||||||
|
|
||||||
|
@ -17,6 +17,10 @@ class BasicWidget extends Component {
|
|||||||
doRender() {}
|
doRender() {}
|
||||||
|
|
||||||
toggle(show) {
|
toggle(show) {
|
||||||
|
if (!this.$widget) {
|
||||||
|
console.log(this.componentId);
|
||||||
|
}
|
||||||
|
|
||||||
this.$widget.toggle(show);
|
this.$widget.toggle(show);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ class CalendarWidget extends StandardWidget {
|
|||||||
this.$body.html(TPL);
|
this.$body.html(TPL);
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
this.init(this.$body, await this.tabContext.note.getLabelValue("dateNote"));
|
this.init(this.$body, await this.tabContext.note.getLabelValue("dateNote"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ class EditedNotesWidget extends StandardWidget {
|
|||||||
&& await this.tabContext.note.hasLabel("dateNote");
|
&& await this.tabContext.note.hasLabel("dateNote");
|
||||||
}
|
}
|
||||||
|
|
||||||
async doRenderBody() {
|
async refreshWithNote() {
|
||||||
const note = this.tabContext.note;
|
const note = this.tabContext.note;
|
||||||
// remember which title was when we found the similar notes
|
// remember which title was when we found the similar notes
|
||||||
this.title = note.title;
|
this.title = note.title;
|
||||||
|
@ -28,7 +28,7 @@ class LinkMapWidget extends StandardWidget {
|
|||||||
return [$showFullButton];
|
return [$showFullButton];
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
this.$body.css('opacity', 0);
|
this.$body.css('opacity', 0);
|
||||||
this.$body.html(TPL);
|
this.$body.html(TPL);
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ class NoteInfoWidget extends StandardWidget {
|
|||||||
this.$body.html(TPL);
|
this.$body.html(TPL);
|
||||||
}
|
}
|
||||||
|
|
||||||
refresh() {
|
refreshWithNote() {
|
||||||
const $noteId = this.$body.find(".note-info-note-id");
|
const $noteId = this.$body.find(".note-info-note-id");
|
||||||
const $dateCreated = this.$body.find(".note-info-date-created");
|
const $dateCreated = this.$body.find(".note-info-date-created");
|
||||||
const $dateModified = this.$body.find(".note-info-date-modified");
|
const $dateModified = this.$body.find(".note-info-date-modified");
|
||||||
|
@ -30,7 +30,7 @@ export default class NotePathsWidget extends TabAwareWidget {
|
|||||||
return this.$widget;
|
return this.$widget;
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
const {note, notePath} = this.tabContext;
|
const {note, notePath} = this.tabContext;
|
||||||
|
|
||||||
if (note.noteId === 'root') {
|
if (note.noteId === 'root') {
|
||||||
|
@ -26,7 +26,7 @@ class NoteRevisionsWidget extends StandardWidget {
|
|||||||
return [$showFullButton];
|
return [$showFullButton];
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
const note = this.tabContext.note;
|
const note = this.tabContext.note;
|
||||||
const revisionItems = await server.get(`notes/${note.noteId}/revisions`);
|
const revisionItems = await server.get(`notes/${note.noteId}/revisions`);
|
||||||
|
|
||||||
|
@ -130,17 +130,9 @@ export default class NoteTitleWidget extends TabAwareWidget {
|
|||||||
return this.$widget;
|
return this.$widget;
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
const note = this.tabContext.note;
|
const note = this.tabContext.note;
|
||||||
|
|
||||||
if (!note) {
|
|
||||||
this.toggle(false);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
this.toggle(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
this.$noteTitle.val(note.title);
|
this.$noteTitle.val(note.title);
|
||||||
|
|
||||||
if (note.isProtected && !protectedSessionHolder.isProtectedSessionAvailable()) {
|
if (note.isProtected && !protectedSessionHolder.isProtectedSessionAvailable()) {
|
||||||
|
@ -17,15 +17,14 @@ const NOTE_TYPES = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
const TPL = `
|
const TPL = `
|
||||||
<style>
|
|
||||||
.note-type-dropdown {
|
|
||||||
max-height: 500px;
|
|
||||||
overflow-y: auto;
|
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<div class="dropdown note-type">
|
<div class="dropdown note-type">
|
||||||
|
<style>
|
||||||
|
.note-type-dropdown {
|
||||||
|
max-height: 500px;
|
||||||
|
overflow-y: auto;
|
||||||
|
overflow-x: hidden;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
<button type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" class="btn btn-sm dropdown-toggle note-type-button">
|
<button type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" class="btn btn-sm dropdown-toggle note-type-button">
|
||||||
Type: <span class="note-type-desc"></span>
|
Type: <span class="note-type-desc"></span>
|
||||||
<span class="caret"></span>
|
<span class="caret"></span>
|
||||||
@ -36,20 +35,20 @@ const TPL = `
|
|||||||
|
|
||||||
export default class NoteTypeWidget extends TabAwareWidget {
|
export default class NoteTypeWidget extends TabAwareWidget {
|
||||||
doRender() {
|
doRender() {
|
||||||
const $widget = $(TPL);
|
this.$widget = $(TPL);
|
||||||
|
|
||||||
$widget.on('show.bs.dropdown', () => this.renderDropdown());
|
this.$widget.on('show.bs.dropdown', () => this.renderDropdown());
|
||||||
|
|
||||||
this.$noteTypeDropdown = $widget.find(".note-type-dropdown");
|
this.$noteTypeDropdown = this.$widget.find(".note-type-dropdown");
|
||||||
this.$noteTypeButton = $widget.find(".note-type-button");
|
this.$noteTypeButton = this.$widget.find(".note-type-button");
|
||||||
this.$noteTypeDesc = $widget.find(".note-type-desc");
|
this.$noteTypeDesc = this.$widget.find(".note-type-desc");
|
||||||
this.$executeScriptButton = $widget.find(".execute-script-button");
|
this.$executeScriptButton = this.$widget.find(".execute-script-button");
|
||||||
this.$renderButton = $widget.find('.render-button');
|
this.$renderButton = this.$widget.find('.render-button');
|
||||||
|
|
||||||
return $widget;
|
return this.$widget;
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
this.$noteTypeButton.prop("disabled",
|
this.$noteTypeButton.prop("disabled",
|
||||||
() => ["file", "image", "search"].includes(this.tabContext.note.type));
|
() => ["file", "image", "search"].includes(this.tabContext.note.type));
|
||||||
|
|
||||||
|
@ -35,14 +35,9 @@ export default class PromotedAttributesWidget extends TabAwareWidget {
|
|||||||
return this.$widget;
|
return this.$widget;
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
this.$container.empty();
|
this.$container.empty();
|
||||||
|
|
||||||
if (!this.tabContext.note) {
|
|
||||||
this.toggle(false);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const attributes = await this.tabContext.attributes.getAttributes();
|
const attributes = await this.tabContext.attributes.getAttributes();
|
||||||
|
|
||||||
const promoted = attributes.filter(attr =>
|
const promoted = attributes.filter(attr =>
|
||||||
|
@ -14,7 +14,7 @@ class SimilarNotesWidget extends StandardWidget {
|
|||||||
|
|
||||||
getMaxHeight() { return "200px"; }
|
getMaxHeight() { return "200px"; }
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
// remember which title was when we found the similar notes
|
// remember which title was when we found the similar notes
|
||||||
this.title = this.tabContext.note.title;
|
this.title = this.tabContext.note.title;
|
||||||
|
|
||||||
|
@ -18,12 +18,21 @@ export default class TabAwareWidget extends BasicWidget {
|
|||||||
this.refresh();
|
this.refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
// to override
|
|
||||||
activeTabChanged() {
|
activeTabChanged() {
|
||||||
this.refresh();
|
this.refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
refresh() {}
|
refresh() {
|
||||||
|
if (this.tabContext && this.tabContext.note) {
|
||||||
|
this.toggle(true);
|
||||||
|
this.refreshWithNote();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this.toggle(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
refreshWithNote() {}
|
||||||
|
|
||||||
activeTabChangedListener() {
|
activeTabChangedListener() {
|
||||||
this.tabContext = this.appContext.getActiveTabContext();
|
this.tabContext = this.appContext.getActiveTabContext();
|
||||||
|
@ -35,4 +35,10 @@ export default class TabCachingWidget extends TabAwareWidget {
|
|||||||
|
|
||||||
return false; // stop propagation to children
|
return false; // stop propagation to children
|
||||||
}
|
}
|
||||||
|
|
||||||
|
toggle(show) {
|
||||||
|
for (const tabId in this.widgets) {
|
||||||
|
this.widgets[tabId].toggle(show && this.tabContext && tabId === this.tabContext.tabId);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
@ -22,7 +22,7 @@ class WhatLinksHereWidget extends StandardWidget {
|
|||||||
return [$showFullButton];
|
return [$showFullButton];
|
||||||
}
|
}
|
||||||
|
|
||||||
async refresh() {
|
async refreshWithNote() {
|
||||||
const targetRelations = await this.tabContext.note.getTargetRelations();
|
const targetRelations = await this.tabContext.note.getTargetRelations();
|
||||||
|
|
||||||
if (targetRelations.length === 0) {
|
if (targetRelations.length === 0) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user