Members
        
            
$container
    Properties:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | container | jQuery | of all the rendered script content | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Properties:
    
    
    
        
        | Type | Description | 
    
    
    
        
            
            | BasicWidget |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Properties:
    
    
    
        
        | Type | Description | 
    
    
    
        
            
            | RightPanelWidget |  | 
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use api.RightPanelWidget instead
 
NoteContextAwareWidget
    Properties:
    
    
    
        
        | Type | Description | 
    
    
    
        
            
            | NoteContextAwareWidget |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
NoteContextCachingWidget
    Properties:
    
    
    
        
        | Type | Description | 
    
    
    
        
            
            | NoteContextAwareWidget |  | 
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use NoteContextAwareWidget instead
 
Properties:
    
    
    
        
        | Type | Description | 
    
    
    
        
            
            | RightPanelWidget |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Properties:
    
    
    
        
        | Type | Description | 
    
    
    
        
            
            | NoteContextAwareWidget |  | 
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use NoteContextAwareWidget instead
 
Properties:
    
    
    
        
        | Type | Description | 
    
    
    
        
            
            | NoteContextAwareWidget |  | 
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use NoteContextAwareWidget instead
 
currentNote
    Properties:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | note | object | where script is currently executing | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
originEntity
    Properties:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | entity | object
|
null | whose event triggered this execution | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
startNote
    Properties:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | note | object | where script started executing | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Methods
        
            
    
    
    activateNewNote(notePath) → {Promise.<void>}
    
    
    Activates newly created note. Compared to this.activateNote() also makes sure that frontend has been fully synced.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | notePath | string | (or noteId) | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<void>
    
activateNote(notePath) → {Promise.<void>}
    
    
    Activates note in the tree and in the note detail.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | notePath | string | (or noteId) | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<void>
    
    Adds a new launcher to the launchbar. If the launcher (id) already exists, it will be updated.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | opts | object |  | 
    
    
    Properties:
    
    
    
        
        | Name | Type | Attributes | Description | 
    
    
    
        
            
                | opts.id | string | <optional> 
 | id of the button, used to identify the old instances of this button to be replaced
                         ID is optional because of BC, but not specifying it is deprecated. ID can be alphanumeric only. | 
    
        
            
                | opts.title | string |  |  | 
    
        
            
                | opts.icon | string | <optional> 
 | name of the boxicon to be used (e.g. "time" for "bx-time" icon) | 
    
        
            
                | opts.action | function |  | callback handling the click on the button | 
    
        
            
                | opts.shortcut | string | <optional> 
 | keyboard shortcut for the button, e.g. "alt+t" | 
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- you can now create/modify launchers in the top-left Menu -> Configure Launchbar
            for special needs there's also backend API's createOrUpdateLauncher()
 
addTextToActiveContextEditor(text)
    
    
    Adds given text to the editor cursor
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | text | string | this must be clear text, HTML is not supported. | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
addTextToActiveTabEditor(text)
    
    
    Adds given text to the editor cursor
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | text | string | this must be clear text, HTML is not supported. | 
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use addTextToActiveContextEditor() instead
 
bindGlobalShortcut(keyboardShortcut, handler, namespaceopt)
    
    
    Parameters:
    
    
    
        
        | Name | Type | Attributes | Description | 
    
    
    
        
            
                | keyboardShortcut | string |  | e.g. "ctrl+shift+a" | 
    
        
            
                | handler | function |  |  | 
    
        
            
                | namespace | string | <optional> 
 | specify namespace of the handler for the cases where call for bind may be repeated.
                              If a handler with this ID exists, it's replaced by the new handler. | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
createNoteLink(notePath, paramsopt)
    
    
    Create note link (jQuery object) for given note.
    Parameters:
    
    
    
        
        | Name | Type | Attributes | Description | 
    
    
    
        
            
                | notePath | string |  | (or noteId) | 
    
        
            
                | params | object | <optional> 
 | Properties
    
    
        
        | Name | Type | Attributes | Default | Description |  
            
                | showTooltip | boolean | <optional> 
 | true | enable/disable tooltip on the link |  
            
                | showNotePath | boolean | <optional> 
 | false | show also whole note's path as part of the link |  
            
                | showNoteIcon | boolean | <optional> 
 | false | show also note icon before the title |  
            
                | title= | string | <optional> 
 |  | custom link tile with note's title as default |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | date | Date |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    date in YYYY-MM-DD format
    - 
        Type
    
- 
        
string
    
getActiveContextCodeEditor() → {Promise.<CodeMirror>}
    
    
    See https://codemirror.net/doc/manual.html#api
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    instance of CodeMirror
    - 
        Type
    
- 
        
Promise.<CodeMirror>
    
getActiveContextNote() → {FNote}
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    active note (loaded into right pane)
    - 
        Type
    
- 
        
FNote
    
getActiveContextNotePath() → {Promise.<(string|null)>}
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    returns note path of active note or null if there isn't active note
    - 
        Type
    
- 
        
Promise.<(string|null)>
    
getActiveContextTextEditor() → {Promise.<CKEditor>}
    
    
    See https://ckeditor.com/docs/ckeditor5/latest/api/module_core_editor_editor-Editor.html for a documentation on the returned instance.
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    instance of CKEditor
    - 
        Type
    
- 
        
Promise.<CKEditor>
    
    Get access to the widget handling note detail. Methods like `getWidgetType()` and `getTypeWidget()` to get to the
implementation of actual widget type.
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<NoteDetailWidget>
    
getActiveTabNote() → {FNote}
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use getActiveContextNote() instead
 
Returns:
        
    active note (loaded into right pane)
    - 
        Type
    
- 
        
FNote
    
getActiveTabNotePath() → {Promise.<(string|null)>}
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use getActiveContextNotePath() instead
 
Returns:
        
    returns note path of active note or null if there isn't active note
    - 
        Type
    
- 
        
Promise.<(string|null)>
    
getActiveTabTextEditor(callbackopt)
    
    
    See https://ckeditor.com/docs/ckeditor5/latest/api/module_core_editor_editor-Editor.html for a documentation on the returned instance.
    Parameters:
    
    
    
        
        | Name | Type | Attributes | Description | 
    
    
    
        
            
                | callback |  | <optional> 
 | callback receiving "textEditor" instance | 
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use getActiveContextTextEditor()
 
getComponentByEl(el) → {Component}
    
    
    Returns component which owns given DOM element (the nearest parent component in DOM tree)
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | el | Element | DOM element | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Component
    
getDateNote(date) → {Promise.<FNote>}
    
    
    Returns day note for a given date. If it doesn't exist, it is automatically created.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | date | string | e.g. "2019-04-29" | 
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
Returns:
        
    - 
        Type
    
- 
        
Promise.<FNote>
    
getDayNote(date) → {Promise.<FNote>}
    
    
    Returns day note for a given date. If it doesn't exist, it is automatically created.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | date | string | e.g. "2019-04-29" | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<FNote>
    
getInstanceName() → {string}
    
    
    Instance name identifies particular Trilium instance. It can be useful for scripts
if some action needs to happen on only one specific instance.
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
string
    
getMonthNote(month) → {Promise.<FNote>}
    
    
    Returns month-note. If it doesn't exist, it is automatically created.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | month | string | e.g. "2019-04" | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<FNote>
    
getNote(noteId) → {Promise.<FNote>}
    
    
    Returns note by given noteId. If note is missing from cache, it's loaded.
*
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | noteId | string |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<FNote>
    
getNotes(noteIds, silentNotFoundErroropt) → {Promise.<Array.<FNote>>}
    
    
    Returns list of notes. If note is missing from cache, it's loaded.
This is often used to bulk-fill the cache with notes which would have to be picked one by one
otherwise (by e.g. createNoteLink())
    Parameters:
    
    
    
        
        | Name | Type | Attributes | Description | 
    
    
    
        
            
                | noteIds | Array.<string> |  |  | 
    
        
            
                | silentNotFoundError | boolean | <optional> 
 | don't report error if the note is not found | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<Array.<FNote>>
    
getTodayNote() → {Promise.<FNote>}
    
    
    Returns date-note for today. If it doesn't exist, it is automatically created.
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<FNote>
    
getWeekNote(date) → {Promise.<FNote>}
    
    
    Returns day note for the first date of the week of the given date. If it doesn't exist, it is automatically created.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | date | string | e.g. "2019-04-29" | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<FNote>
    
getYearNote(year) → {Promise.<FNote>}
    
    
    Returns year-note. If it doesn't exist, it is automatically created.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | year | string | e.g. "2019" | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<FNote>
    
log(message)
    
    
    Log given message to the log pane in UI
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | message |  |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
openSplitWithNote(notePath, activate) → {Promise.<void>}
    
    
    Open a note in a new split.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | notePath | string | (or noteId) | 
    
        
            
                | activate | boolean | set to true to activate the new split, false to stay on the current split | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<void>
    
openTabWithNote(notePath, activate) → {Promise.<void>}
    
    
    Open a note in a new tab.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | notePath | string | (or noteId) | 
    
        
            
                | activate | boolean | set to true to activate the new tab, false to stay on the current tab | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<void>
    
parseDate(str) → {Date}
    
    
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | str | string |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    parsed object
    - 
        Type
    
- 
        
Date
    
protectActiveNote()
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- use protectNote and protectSubtree instead
 
protectNote(noteId, protect)
    
    
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | noteId | string |  | 
    
        
            
                | protect | boolean | true to protect note, false to unprotect | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
protectSubTree(noteId, protect)
    
    
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | noteId | string |  | 
    
        
            
                | protect | boolean | true to protect subtree, false to unprotect | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
randomString(length) → {string}
    
    
    Return randomly generated string of given length. This random string generation is NOT cryptographically secure.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | length | number | of the string | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    random string
    - 
        Type
    
- 
        
string
    
refreshIncludedNote(includedNoteId)
    
    
    This will refresh all currently opened notes which have included note specified in the parameter
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | includedNoteId |  | noteId of the included note | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
refreshTree()
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- - this is now no-op since all the changes should be gracefully handled per widget
 
reloadNotes(noteIds)
    
    
    Update frontend tree (note) cache from the backend.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | noteIds | Array.<string> |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
runOnBackend(script, params) → {Promise.<*>}
    
    
    Executes given anonymous function on the backend.
Internally this serializes the anonymous function into string and sends it to backend via AJAX.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | script | string | script to be executed on the backend | 
    
        
            
                | params | Array.<?> | list of parameters to the anonymous function to be send to backend | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    return value of the executed function on the backend
    - 
        Type
    
- 
        
Promise.<*>
    
runOnServer()
    
    
    
    
    
    
    
    
    
    
        - Deprecated:
- new name of this API call is runOnBackend so use that
 
searchForNote(searchString) → {Promise.<(FNote|null)>}
    
    
    This is a powerful search method - you can search by attributes and their values, e.g.:
"#dateModified =* MONTH AND #log". See full documentation for all options at: https://github.com/zadam/trilium/wiki/Search
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | searchString | string |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<(FNote|null)>
    
searchForNotes(searchString) → {Promise.<Array.<FNote>>}
    
    
    This is a powerful search method - you can search by attributes and their values, e.g.:
"#dateModified =* MONTH AND #log". See full documentation for all options at: https://github.com/zadam/trilium/wiki/Search
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | searchString | string |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise.<Array.<FNote>>
    
setHoistedNoteId(noteId) → {Promise}
    
    
    Hoist note in the current tab. See https://github.com/zadam/trilium/wiki/Note-hoisting
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | noteId | string | set hoisted note. 'root' will effectively unhoist | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
Returns:
        
    - 
        Type
    
- 
        
Promise
    
Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | $el | object | jquery object on which to setup the tooltip | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
showError(message)
    
    
    Show error message to the user.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | message | string |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
showMessage(message)
    
    
    Show info message to the user.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | message | string |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
triggerCommand(name, data)
    
    
    Trigger command.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | name | string |  | 
    
        
            
                | data | object |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
triggerEvent(name, data)
    
    
    Trigger event.
    Parameters:
    
    
    
        
        | Name | Type | Description | 
    
    
    
        
            
                | name | string |  | 
    
        
            
                | data | object |  | 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
waitUntilSynced()
    
    
    Trilium runs in backend and frontend process, when something is changed on the backend from script,
frontend will get asynchronously synchronized.
This method returns a promise which resolves once all the backend -> frontend synchronization is finished.
Typical use case is when new note has been created, we should wait until it is synced into frontend and only then activate it.