Extends
Members
__flatTextCache :string|null
Type:
- string | null
- Source:
(protected) becca
- Overrides:
- Source:
blobId :string
Type:
- string
- Source:
dateCreated :string
Type:
- string
- Source:
dateModified :string
Type:
- string
- Source:
isBeingDeleted :boolean
set during the deletion operation, before it is completed (removed from becca completely)
Type:
- boolean
- Source:
isDecrypted :boolean
Type:
- boolean
- Source:
isProtected :boolean
Type:
- boolean
- Source:
mime :string
Type:
- string
- Source:
noteId :string
Type:
- string
- Source:
title :string
Type:
- string
- Source:
type :NoteType
Type:
- Source:
utcDateCreated :string
Type:
- string
- Source:
utcDateModified :string
Type:
- string
- Source:
Methods
(protected) _getContent() → {string|Buffer}
- Overrides:
- Source:
Returns:
- Type
- string | Buffer
(protected) _setContent()
- Overrides:
- Source:
addAttribute(type, name, valueopt, isInheritableopt, positionopt) → {BAttribute}
Adds a new attribute to this note. The attribute is saved and returned.
See addLabel, addRelation for more specific methods.
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
type |
string | attribute type (label / relation) | ||
name |
string | name of the attribute, not including the leading ~/# | ||
value |
string |
<optional> |
value of the attribute - text for labels, target note ID for relations; optional. | |
isInheritable |
boolean |
<optional> |
false | |
position |
int | null |
<optional> |
null |
- Source:
Returns:
- Type
- BAttribute
addLabel(name, valueopt, isInheritableopt) → {BAttribute}
Adds a new label to this note. The label attribute is saved and returned.
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
name |
string | name of the label, not including the leading # | ||
value |
string |
<optional> |
text value of the label; optional | |
isInheritable |
boolean |
<optional> |
false |
- Source:
Returns:
- Type
- BAttribute
addRelation(name, targetNoteId, isInheritableopt) → {BAttribute}
Adds a new relation to this note. The relation attribute is saved and
returned.
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
name |
string | name of the relation, not including the leading ~ | ||
targetNoteId |
string | |||
isInheritable |
boolean |
<optional> |
false |
- Source:
Returns:
- Type
- BAttribute
(protected) beforeSaving()
- Overrides:
- Source:
cloneTo(parentNoteId) → {Object}
Parameters:
Name | Type | Description |
---|---|---|
parentNoteId |
- Source:
Returns:
- Type
- Object
convertToParentAttachment() → {BAttachment|null}
Some notes are eligible for conversion into an attachment of its parent, note must have these properties:
- it has exactly one target relation
- it has a relation from its parent note
- it has no children
- it has no clones
- the parent is of type text
- both notes are either unprotected or user is in protected session
Currently, works only for image notes.
In the future, this functionality might get more generic and some of the requirements relaxed.
- Source:
Returns:
- null if note is not eligible for conversion
- Type
- BAttachment | null
deleteNote(deleteIdopt, taskContextopt)
(Soft) delete a note and all its descendants.
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
deleteId |
string |
<optional> |
null | optional delete identified |
taskContext |
TaskContext |
<optional> |
null |
- Source:
(protected) generateHash() → {string}
- Overrides:
- Source:
Returns:
- Type
- string
getAllNotePaths() → {Array.<Array.<string>>}
Gives all possible note paths leading to this note. Paths containing search note are ignored (could form cycles)
- Source:
Returns:
- array of notePaths (each represented by array of noteIds constituting the particular note path)
- Type
- Array.<Array.<string>>
getAncestorNoteIds() → {Array.<string>}
- Source:
Returns:
- Type
- Array.<string>
getAncestors() → {Array.<BNote>}
- Source:
Returns:
- Type
- Array.<BNote>
getAttachmentById() → {BAttachment|null}
- Source:
Returns:
- Type
- BAttachment | null
getAttachmentByTitle() → {BAttachment}
- Source:
Returns:
- Type
- BAttachment
getAttachments() → {Array.<BAttachment>}
- Source:
Returns:
- Type
- Array.<BAttachment>
getAttachmentsByRole() → {Array.<BAttachment>}
- Source:
Returns:
- Type
- Array.<BAttachment>
getAttribute(type, name) → {BAttribute}
Parameters:
Name | Type | Description |
---|---|---|
type |
string | attribute type (label, relation, etc.) |
name |
string | attribute name |
- Source:
Returns:
attribute of the given type and name. If there are more such attributes, first is returned.
Returns null if there's no such attribute belonging to this note.
- Type
- BAttribute
getAttributeValue(type, name) → {string|null}
Parameters:
Name | Type | Description |
---|---|---|
type |
string | attribute type (label, relation, etc.) |
name |
string | attribute name |
- Source:
Returns:
attribute value of given type and name or null if no such attribute exists.
- Type
- string | null
getAttributes(typeopt, nameopt) → {Array.<BAttribute>}
Beware that the method must not create a copy of the array, but actually returns its internal array
(for performance reasons)
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
type |
string |
<optional> |
(optional) attribute type to filter |
name |
string |
<optional> |
(optional) attribute name to filter |
- Source:
Returns:
all note's attributes, including inherited ones
- Type
- Array.<BAttribute>
getBestNotePath(hoistedNoteIdopt) → {Array.<string>}
Returns a note path considered to be the "best"
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
hoistedNoteId |
string |
<optional> |
'root' |
- Source:
Returns:
array of noteIds constituting the particular note path
- Type
- Array.<string>
getBestNotePathString(hoistedNoteIdopt) → {string}
Returns a note path considered to be the "best"
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
hoistedNoteId |
string |
<optional> |
'root' |
- Source:
Returns:
serialized note path (e.g. 'root/a1h315/js725h')
- Type
- string
getBranches() → {Array.<BBranch>}
- Deprecated:
- use getParentBranches() instead
- Source:
Returns:
- Type
- Array.<BBranch>
getChildBranches() → {Array.<BBranch>}
- Source:
Returns:
- Type
- Array.<BBranch>
getChildNotes() → {Array.<BNote>}
- Source:
Returns:
- Type
- Array.<BNote>
getContent() → {string|Buffer}
- Source:
Returns:
- Type
- string | Buffer
getDescendantNoteIds()
- Deprecated:
- use getSubtreeNoteIds() instead
- Source:
getFlatText() → {string}
This is used for:
- fast searching
- note similarity evaluation
- Source:
Returns:
- returns flattened textual representation of note, prefixes and attributes
- Type
- string
getInheritingNotes() → {Array.<BNote>}
- Source:
Returns:
- returns only notes which are templated, does not include their subtrees
in effect returns notes which are influenced by note's non-inheritable attributes
- Type
- Array.<BNote>
getJsonContent() → {*}
- Source:
Throws:
Error in case of invalid JSON
Returns:
- Type
- *
getJsonContentSafely() → {*|null}
- Source:
Returns:
valid object or null if the content cannot be parsed as JSON
- Type
- * | null
getLabel(name) → {BAttribute|null}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | label name |
- Source:
Returns:
label if it exists, null otherwise
- Type
- BAttribute | null
getLabelValue(name) → {string|null}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | label name |
- Source:
Returns:
label value if label exists, null otherwise
- Type
- string | null
getLabelValues(nameopt) → {Array.<string>}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string |
<optional> |
label name to filter |
- Source:
Returns:
all note's label values, including inherited ones
- Type
- Array.<string>
getLabels(nameopt) → {Array.<BAttribute>}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string |
<optional> |
label name to filter |
- Source:
Returns:
all note's labels (attributes with type label), including inherited ones
- Type
- Array.<BAttribute>
getOwnedAttribute() → {BAttribute}
- Source:
Returns:
attribute belonging to this specific note (excludes inherited attributes)
This method can be significantly faster than the getAttribute()
- Type
- BAttribute
getOwnedAttributeValue(type, name) → {string|null}
Parameters:
Name | Type | Description |
---|---|---|
type |
string | attribute type (label, relation, etc.) |
name |
string | attribute name |
- Source:
Returns:
attribute value of given type and name or null if no such attribute exists.
- Type
- string | null
getOwnedAttributes(typeopt, nameopt, valueopt) → {Array.<BAttribute>}
Beware that the method must not create a copy of the array, but actually returns its internal array
(for performance reasons)
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
type |
string | null |
<optional> |
null | (optional) attribute type to filter |
name |
string | null |
<optional> |
null | (optional) attribute name to filter |
value |
string | null |
<optional> |
null | (optional) attribute value to filter |
- Source:
Returns:
note's "owned" attributes - excluding inherited ones
- Type
- Array.<BAttribute>
getOwnedLabel(name) → {BAttribute|null}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | label name |
- Source:
Returns:
label if it exists, null otherwise
- Type
- BAttribute | null
getOwnedLabelValue(name) → {string|null}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | label name |
- Source:
Returns:
label value if label exists, null otherwise
- Type
- string | null
getOwnedLabelValues(nameopt) → {Array.<string>}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string |
<optional> |
label name to filter |
- Source:
Returns:
all note's label values, excluding inherited ones
- Type
- Array.<string>
getOwnedLabels(nameopt) → {Array.<BAttribute>}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string |
<optional> |
label name to filter |
- Source:
Returns:
all note's labels (attributes with type label), excluding inherited ones
- Type
- Array.<BAttribute>
getOwnedRelation(name) → {BAttribute|null}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | relation name |
- Source:
Returns:
relation if it exists, null otherwise
- Type
- BAttribute | null
getOwnedRelationValue(name) → {string|null}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | relation name |
- Source:
Returns:
relation value if relation exists, null otherwise
- Type
- string | null
getOwnedRelations(nameopt) → {Array.<BAttribute>}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string |
<optional> |
relation name to filter |
- Source:
Returns:
all note's relations (attributes with type relation), excluding inherited ones
- Type
- Array.<BAttribute>
getParentBranches() → {Array.<BBranch>}
- Source:
Returns:
- Type
- Array.<BBranch>
getParentNotes() → {Array.<BNote>}
- Source:
Returns:
- Type
- Array.<BNote>
(abstract, protected) getPojo()
- Overrides:
- Source:
(protected) getPojoToSave()
- Overrides:
- Source:
getRelation(name) → {BAttribute|null}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | relation name |
- Source:
Returns:
relation if it exists, null otherwise
- Type
- BAttribute | null
getRelationValue(name) → {string|null}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | relation name |
- Source:
Returns:
relation value if relation exists, null otherwise
- Type
- string | null
getRelations(nameopt) → {Array.<BAttribute>}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string |
<optional> |
relation name to filter |
- Source:
Returns:
all note's relations (attributes with type relation), including inherited ones
- Type
- Array.<BAttribute>
getRevisions() → {Array.<BRevision>}
- Source:
Returns:
- Type
- Array.<BRevision>
getScriptEnv() → {string|null}
- Source:
Returns:
JS script environment - either "frontend" or "backend"
- Type
- string | null
getSearchResultNotes() → {Array.<BNote>}
- Source:
Returns:
- Type
- Array.<BNote>
getSortedNotePathRecords(hoistedNoteIdopt) → {Array.<NotePathRecord>}
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
hoistedNoteId |
string |
<optional> |
'root' |
- Source:
Returns:
- Type
- Array.<NotePathRecord>
getStrongParentBranches() → {Array.<BBranch>}
Returns strong (as opposed to weak) parent branches. See isWeak for details.
- Source:
Returns:
- Type
- Array.<BBranch>
getSubtree() → {Object}
- Source:
Returns:
- Type
- Object
getSubtreeNoteIds() → {Array.<string>}
- Source:
Returns:
- includes the subtree root note as well
- Type
- Array.<string>
getSubtreeNotesIncludingTemplated() → {Array.<BNote>}
- Source:
Returns:
- Type
- Array.<BNote>
getTargetRelations() → {Array.<BAttribute>}
- Source:
Returns:
- Type
- Array.<BAttribute>
(protected) getUtcDateChanged()
- Overrides:
- Source:
hasAncestor() → {boolean}
- Source:
Returns:
- Type
- boolean
hasAttribute(type, name, valueopt) → {boolean}
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
type |
||||
name |
||||
value |
<optional> |
null |
- Source:
Returns:
- Type
- boolean
hasChildren() → {boolean}
- Source:
Returns:
- Type
- boolean
hasLabel(name, valueopt) → {boolean}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string | label name | |
value |
string |
<optional> |
label value |
- Source:
Returns:
true if label exists (including inherited)
- Type
- boolean
hasOwnedAttribute(type, name, valueopt) → {boolean}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
type |
string | attribute type (label, relation, etc.) | |
name |
string | attribute name | |
value |
string |
<optional> |
attribute value |
- Source:
Returns:
true if note has an attribute with given type and name (excluding inherited)
- Type
- boolean
hasOwnedLabel(name, valueopt) → {boolean}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string | label name | |
value |
string |
<optional> |
label value |
- Source:
Returns:
true if label exists (excluding inherited)
- Type
- boolean
hasOwnedRelation(name, valueopt) → {boolean}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string | relation name | |
value |
string |
<optional> |
relation value |
- Source:
Returns:
true if relation exists (excluding inherited)
- Type
- boolean
hasRelation(name, valueopt) → {boolean}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string | relation name | |
value |
string |
<optional> |
relation value |
- Source:
Returns:
true if relation exists (including inherited)
- Type
- boolean
hasStringContent() → {boolean}
- Source:
Returns:
true if the note has string content (not binary)
- Type
- boolean
isDescendantOfNote(ancestorNoteId) → {boolean}
Parameters:
Name | Type | Description |
---|---|---|
ancestorNoteId |
- Source:
Returns:
- true if ancestorNoteId occurs in at least one of the note's paths
- Type
- boolean
isHiddenCompletely()
- Source:
Returns:
boolean - true if there's no non-hidden path, note is not cloned to the visible tree
isHtml() → {boolean}
- Source:
Returns:
true if this note is HTML
- Type
- boolean
isImage() → {boolean}
- Source:
Returns:
true if this note is an image
- Type
- boolean
isJavaScript() → {boolean}
- Source:
Returns:
true if this note is JavaScript (code or attachment)
- Type
- boolean
isJson() → {boolean}
- Source:
Returns:
true if this note is of application/json content type
- Type
- boolean
isLabelTruthy(name) → {boolean}
Parameters:
Name | Type | Description |
---|---|---|
name |
string | label name |
- Source:
Returns:
true if label exists (including inherited) and does not have "false" value.
- Type
- boolean
isRoot() → {boolean}
- Source:
Returns:
true if this note is the root of the note tree. Root note has "root" noteId
- Type
- boolean
isStringNote()
- Deprecated:
- use hasStringContent() instead
- Source:
markAsDeleted(deleteIdopt)
Mark the entity as (soft) deleted. It will be completely erased later.
This is a low-level method, for notes and branches use `note.deleteNote()` and 'branch.deleteBranch()` instead.
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
deleteId |
<optional> |
null |
- Overrides:
- Source:
(protected) putEntityChange()
- Overrides:
- Source:
removeAttribute(type, name, valueopt)
Removes given attribute name-value pair if it exists.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
type |
string | attribute type (label, relation, etc.) | |
name |
string | attribute name | |
value |
string |
<optional> |
attribute value (optional) |
- Source:
removeLabel(name, valueopt)
Remove label name-value pair, if it exists.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string | label name | |
value |
string |
<optional> |
label value |
- Source:
removeRelation(name, valueopt)
Remove the relation name-value pair, if it exists.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string | relation name | |
value |
string |
<optional> |
relation value (noteId) |
- Source:
save() → {this}
Saves entity - executes SQL, but doesn't commit the transaction on its own
- Overrides:
- Source:
Returns:
- Type
- this
saveAttachment(matchBy) → {BAttachment}
Parameters:
Name | Type | Default | Description |
---|---|---|---|
matchBy |
string | attachmentId | choose by which property we detect if to update an existing attachment. Supported values are either 'attachmentId' (default) or 'title' |
- Source:
Returns:
- Type
- BAttachment
saveRevision() → {BRevision|null}
- Source:
Returns:
- Type
- BRevision | null
setAttribute(type, name, valueopt)
Update's given attribute's value or creates it if it doesn't exist
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
type |
string | attribute type (label, relation, etc.) | |
name |
string | attribute name | |
value |
string |
<optional> |
attribute value (optional) |
- Source:
setContent(content, optsopt)
Parameters:
Name | Type | Attributes | Description | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
content |
||||||||||||||||||
opts |
object |
<optional> |
Properties
|
- Source:
setLabel(name, valueopt)
Update's given label's value or creates it if it doesn't exist
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string | label name | |
value |
string |
<optional> |
label value |
- Source:
setRelation(name, value)
Update's given relation's value or creates it if it doesn't exist
Parameters:
Name | Type | Description |
---|---|---|
name |
string | relation name |
value |
string | relation value (noteId) |
- Source:
toggleAttribute(type, enabled, name, valueopt)
Based on enabled, the attribute is either set or removed.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
type |
string | attribute type ('relation', 'label' etc.) | |
enabled |
boolean | toggle On or Off | |
name |
string | attribute name | |
value |
string |
<optional> |
attribute value (optional) |
- Source:
toggleLabel(enabled, name, valueopt)
Based on enabled, label is either set or removed.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
enabled |
boolean | toggle On or Off | |
name |
string | label name | |
value |
string |
<optional> |
label value (optional) |
- Source:
toggleRelation(enabled, name, valueopt)
Based on enabled, relation is either set or removed.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
enabled |
boolean | toggle On or Off | |
name |
string | relation name | |
value |
string |
<optional> |
relation value (noteId) |
- Source: