mirror of
https://github.com/zadam/trilium.git
synced 2024-11-17 13:14:44 +08:00
29 lines
No EOL
783 B
JavaScript
29 lines
No EOL
783 B
JavaScript
import server from "./server.js";
|
|
import bundleService from "./bundle.js";
|
|
|
|
async function render(note, $el) {
|
|
const relations = note.getRelations('renderNote');
|
|
const renderNoteIds = relations
|
|
.map(rel => rel.value)
|
|
.filter(noteId => noteId);
|
|
|
|
$el.empty().toggle(renderNoteIds.length > 0);
|
|
|
|
for (const renderNoteId of renderNoteIds) {
|
|
const bundle = await server.get('script/bundle/' + renderNoteId);
|
|
|
|
const $scriptContainer = $('<div>');
|
|
$el.append($scriptContainer);
|
|
|
|
$scriptContainer.append(bundle.html);
|
|
|
|
// async so that scripts cannot block trilium execution
|
|
bundleService.executeBundle(bundle, note, $scriptContainer);
|
|
}
|
|
|
|
return renderNoteIds.length > 0;
|
|
}
|
|
|
|
export default {
|
|
render
|
|
} |