diff --git a/.gitpod.yml b/.gitpod.yml index ab7e12a82..8a4a9a03b 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -2,7 +2,7 @@ image: file: .gitpod.dockerfile tasks: - - before: nvm install 16.14.2 && nvm use 16.14.2 + - before: nvm install 16.15.0 && nvm use 16.15.0 init: npm install command: npm run start-server diff --git a/.idea/misc.xml b/.idea/misc.xml index bc4ec316b..8524fae44 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,7 +3,7 @@ - + \ No newline at end of file diff --git a/DockerHealthcheck.sh b/DockerHealthcheck.sh new file mode 100755 index 000000000..786166602 --- /dev/null +++ b/DockerHealthcheck.sh @@ -0,0 +1,6 @@ +#!/bin/sh +if wget --spider -S "127.0.0.1:8080/api/health-check" 2>&1 | awk 'NR==2' | grep -w "HTTP/1.1 200 OK" ; then + exit 0 +else + exit 1 +fi diff --git a/Dockerfile b/Dockerfile index 7f03916de..477dd963b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # !!! Don't try to build this Dockerfile directly, run it through bin/build-docker.sh script !!! -FROM node:16.14.2-alpine +FROM node:16.15.0-alpine # Create app directory WORKDIR /usr/src/app @@ -21,10 +21,17 @@ RUN set -x \ && npm install --production \ && apk del .build-dependencies +# Some setup tools need to be kept +RUN apk add --no-cache su-exec shadow + # Bundle app source COPY . . -USER node +# Add application user and setup proper volume permissions +RUN adduser -s /bin/false node; exit 0 +# Start the application EXPOSE 8080 -CMD [ "node", "./src/www" ] +CMD [ "./start-docker.sh" ] + +HEALTHCHECK CMD sh DockerHealthcheck.sh diff --git a/README.md b/README.md index f10171eb6..746a3e7e3 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Trilium Notes is a hierarchical note taking application with focus on building l ![](https://raw.githubusercontent.com/wiki/zadam/trilium/images/screenshot.png) -Ukraine is currently suffering from Russian aggression, please consider donating to [one of these charities](https://old.reddit.com/r/ukraine/comments/s6g5un/want_to_support_ukraine_heres_a_list_of_charities/). +Ukraine is currently defending itself from Russian aggression, please consider [donating to Ukrainian Army or humanitarian charities](https://standforukraine.com/). drawing @@ -23,6 +23,7 @@ Ukraine is currently suffering from Russian aggression, please consider donating * there's a [3rd party service for hosting synchronisation server](https://trilium.cc/paid-hosting) * [Sharing](https://github.com/zadam/trilium/wiki/Sharing) (publishing) notes to public internet * Strong [note encryption](https://github.com/zadam/trilium/wiki/Protected-notes) with per-note granularity +* Sketching diagrams with bult-in Excalidraw (note type "canvas") * [Relation maps](https://github.com/zadam/trilium/wiki/Relation-map) and [link maps](https://github.com/zadam/trilium/wiki/Link-map) for visualizing notes and their relations * [Scripting](https://github.com/zadam/trilium/wiki/Scripts) - see [Advanced showcases](https://github.com/zadam/trilium/wiki/Advanced-showcases) * [REST API](https://github.com/zadam/trilium/wiki/ETAPI) for automation @@ -40,6 +41,10 @@ Trilium is provided as either desktop application (Linux and Windows) or web app * If you want to install Trilium on server, follow [this page](https://github.com/zadam/trilium/wiki/Server-installation). * Currently only recent Chrome and Firefox are supported (tested) browsers. +Trilium is also provided as a Flatpak: + +[](https://flathub.org/apps/details/com.github.zadam.trilium) + ## Documentation [See wiki for complete list of documentation pages.](https://github.com/zadam/trilium/wiki/) diff --git a/bin/build-server.sh b/bin/build-server.sh index 518b7c125..1df3e0b54 100755 --- a/bin/build-server.sh +++ b/bin/build-server.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash PKG_DIR=dist/trilium-linux-x64-server -NODE_VERSION=16.14.2 +NODE_VERSION=16.15.0 if [ "$1" != "DONTCOPY" ] then diff --git a/bin/copy-trilium.sh b/bin/copy-trilium.sh index 7d85d8a59..22998a749 100755 --- a/bin/copy-trilium.sh +++ b/bin/copy-trilium.sh @@ -5,7 +5,7 @@ if [[ $# -eq 0 ]] ; then exit 1 fi -n exec 16.14.2 npm run webpack +n exec 16.15.0 npm run webpack DIR=$1 @@ -30,7 +30,7 @@ cp -r electron.js $DIR/ cp webpack-* $DIR/ # run in subshell (so we return to original dir) -(cd $DIR && n exec 16.14.2 npm install --only=prod) +(cd $DIR && n exec 16.15.0 npm install --only=prod) # cleanup of useless files in dependencies rm -r $DIR/node_modules/image-q/demo diff --git a/bin/release-flatpack.sh b/bin/release-flatpack.sh new file mode 100755 index 000000000..9edc56749 --- /dev/null +++ b/bin/release-flatpack.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash + +if [[ $# -eq 0 ]] ; then + echo "Missing argument of new version" + exit 1 +fi + +VERSION=$1 + +if ! [[ ${VERSION} =~ ^[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,2}(-.+)?$ ]] ; +then + echo "Version ${VERSION} isn't in format X.Y.Z" + exit 1 +fi + +VERSION_DATE=$(git log -1 --format=%aI v${VERSION} | cut -c -10) +VERSION_COMMIT=$(git rev-list -n 1 v${VERSION}) + +echo "Updating files with version ${VERSION}, date ${VERSION_DATE} and commit ${VERSION_COMMIT}" + +# expecting the directory at a specific path +cd ~/trilium-flathub + +if ! git diff-index --quiet HEAD --; then + echo "There are uncommitted changes" + exit 1 +fi + +flatpak-node-generator npm ../trilium/package-lock.json + +xmlstarlet ed --inplace --update "/component/releases/release/@version" --value "${VERSION}" --update "/component/releases/release/@date" --value "${VERSION_DATE}" ./com.github.zadam.trilium.metainfo.xml + +yq --inplace "(.modules[0].sources[0].tag = \"v${VERSION}\") | (.modules[0].sources[0].commit = \"${VERSION_COMMIT}\")" ./com.github.zadam.trilium.yml + +git add ./generated-sources.json +git add ./com.github.zadam.trilium.metainfo.xml +git add ./com.github.zadam.trilium.yml + +git commit -m "release $VERSION" +git push diff --git a/bin/tpl/anonymize-database.sql b/bin/tpl/anonymize-database.sql index e7e061047..94c0140f7 100644 --- a/bin/tpl/anonymize-database.sql +++ b/bin/tpl/anonymize-database.sql @@ -5,8 +5,8 @@ UPDATE note_contents SET content = 'text' WHERE content IS NOT NULL; UPDATE note_revisions SET title = 'title'; UPDATE note_revision_contents SET content = 'text' WHERE content IS NOT NULL; -UPDATE attributes SET name = 'name', value = 'value' WHERE type = 'label' AND name NOT IN('inbox', 'disableVersioning', 'calendarRoot', 'archived', 'excludeFromExport', 'disableInclusion', 'appCss', 'appTheme', 'hidePromotedAttributes', 'readOnly', 'autoReadOnlyDisabled', 'hoistedCssClass', 'cssClass', 'iconClass', 'keyboardShortcut', 'run', 'runOnInstance', 'runAtHour', 'customRequestHandler', 'customResourceProvider', 'widget', 'noteInfoWidgetDisabled', 'linkMapWidgetDisabled', 'noteRevisionsWidgetDisabled', 'whatLinksHereWidgetDisabled', 'similarNotesWidgetDisabled', 'workspace', 'workspaceIconClass', 'workspaceTabBackgroundColor', 'searchHome', 'hoistedInbox', 'hoistedSearchHome', 'sqlConsoleHome', 'datePattern', 'pageSize', 'viewType', 'mapRootNoteId', 'bookmarked', 'bookmarkFolder', 'sorted', 'top', 'fullContentWidth', 'shareHiddenFromTree', 'shareAlias', 'shareOmitDefaultCss', 'shareRoot', 'internalLink', 'imageLink', 'relationMapLink', 'includeMapLink', 'runOnNoteCreation', 'runOnNoteTitleChange', 'runOnNoteChange', 'runOnChildNoteCreation', 'runOnAttributeCreation', 'runOnAttributeChange', 'template', 'widget', 'renderNote', 'shareCss', 'shareJs', 'shareFavicon'); -UPDATE attributes SET name = 'name' WHERE type = 'relation' AND name NOT IN ('inbox', 'disableVersioning', 'calendarRoot', 'archived', 'excludeFromExport', 'disableInclusion', 'appCss', 'appTheme', 'hidePromotedAttributes', 'readOnly', 'autoReadOnlyDisabled', 'hoistedCssClass', 'cssClass', 'iconClass', 'keyboardShortcut', 'run', 'runOnInstance', 'runAtHour', 'customRequestHandler', 'customResourceProvider', 'widget', 'noteInfoWidgetDisabled', 'linkMapWidgetDisabled', 'noteRevisionsWidgetDisabled', 'whatLinksHereWidgetDisabled', 'similarNotesWidgetDisabled', 'workspace', 'workspaceIconClass', 'workspaceTabBackgroundColor', 'searchHome', 'hoistedInbox', 'hoistedSearchHome', 'sqlConsoleHome', 'datePattern', 'pageSize', 'viewType', 'mapRootNoteId', 'bookmarked', 'bookmarkFolder', 'sorted', 'top', 'fullContentWidth', 'shareHiddenFromTree', 'shareAlias', 'shareOmitDefaultCss', 'shareRoot', 'internalLink', 'imageLink', 'relationMapLink', 'includeMapLink', 'runOnNoteCreation', 'runOnNoteTitleChange', 'runOnNoteChange', 'runOnChildNoteCreation', 'runOnAttributeCreation', 'runOnAttributeChange', 'template', 'widget', 'renderNote', 'shareCss', 'shareJs', 'shareFavicon'); +UPDATE attributes SET name = 'name', value = 'value' WHERE type = 'label' AND name NOT IN('inbox', 'disableVersioning', 'calendarRoot', 'archived', 'excludeFromExport', 'disableInclusion', 'appCss', 'appTheme', 'hidePromotedAttributes', 'readOnly', 'autoReadOnlyDisabled', 'hoistedCssClass', 'cssClass', 'iconClass', 'keyboardShortcut', 'run', 'runOnInstance', 'runAtHour', 'customRequestHandler', 'customResourceProvider', 'widget', 'noteInfoWidgetDisabled', 'linkMapWidgetDisabled', 'noteRevisionsWidgetDisabled', 'whatLinksHereWidgetDisabled', 'similarNotesWidgetDisabled', 'workspace', 'workspaceIconClass', 'workspaceTabBackgroundColor', 'searchHome', 'hoistedInbox', 'hoistedSearchHome', 'sqlConsoleHome', 'datePattern', 'pageSize', 'viewType', 'mapRootNoteId', 'bookmarked', 'bookmarkFolder', 'sorted', 'top', 'fullContentWidth', 'shareHiddenFromTree', 'shareAlias', 'shareOmitDefaultCss', 'shareRoot', 'shareDescription', 'internalLink', 'imageLink', 'relationMapLink', 'includeMapLink', 'runOnNoteCreation', 'runOnNoteTitleChange', 'runOnNoteChange', 'runOnChildNoteCreation', 'runOnAttributeCreation', 'runOnAttributeChange', 'template', 'widget', 'renderNote', 'shareCss', 'shareJs', 'shareFavicon'); +UPDATE attributes SET name = 'name' WHERE type = 'relation' AND name NOT IN ('inbox', 'disableVersioning', 'calendarRoot', 'archived', 'excludeFromExport', 'disableInclusion', 'appCss', 'appTheme', 'hidePromotedAttributes', 'readOnly', 'autoReadOnlyDisabled', 'hoistedCssClass', 'cssClass', 'iconClass', 'keyboardShortcut', 'run', 'runOnInstance', 'runAtHour', 'customRequestHandler', 'customResourceProvider', 'widget', 'noteInfoWidgetDisabled', 'linkMapWidgetDisabled', 'noteRevisionsWidgetDisabled', 'whatLinksHereWidgetDisabled', 'similarNotesWidgetDisabled', 'workspace', 'workspaceIconClass', 'workspaceTabBackgroundColor', 'searchHome', 'hoistedInbox', 'hoistedSearchHome', 'sqlConsoleHome', 'datePattern', 'pageSize', 'viewType', 'mapRootNoteId', 'bookmarked', 'bookmarkFolder', 'sorted', 'top', 'fullContentWidth', 'shareHiddenFromTree', 'shareAlias', 'shareOmitDefaultCss', 'shareRoot', 'shareDescription', 'internalLink', 'imageLink', 'relationMapLink', 'includeMapLink', 'runOnNoteCreation', 'runOnNoteTitleChange', 'runOnNoteChange', 'runOnChildNoteCreation', 'runOnAttributeCreation', 'runOnAttributeChange', 'template', 'widget', 'renderNote', 'shareCss', 'shareJs', 'shareFavicon'); UPDATE branches SET prefix = 'prefix' WHERE prefix IS NOT NULL AND prefix != 'recovered'; UPDATE options SET value = 'anonymized' WHERE name IN ('documentId', 'documentSecret', 'encryptedDataKey', diff --git a/bin/tpl/trilium-safe-mode.bat b/bin/tpl/trilium-safe-mode.bat index 45fb21c07..7a5699369 100644 --- a/bin/tpl/trilium-safe-mode.bat +++ b/bin/tpl/trilium-safe-mode.bat @@ -2,4 +2,4 @@ SET DIR=%~dp0 SET TRILIUM_SAFE_MODE=1 cd %DIR% WHERE powershell.exe -IF %ERRORLEVEL% NEQ 0 (start trilium.exe) ELSE (powershell.exe ./trilium-safe-mode.ps1) \ No newline at end of file +IF %ERRORLEVEL% NEQ 0 (start trilium.exe --disable-gpu) ELSE (powershell.exe ./trilium-safe-mode.ps1) diff --git a/bin/tpl/trilium-safe-mode.ps1 b/bin/tpl/trilium-safe-mode.ps1 index 5fafd5c3e..909c2f1f5 100644 --- a/bin/tpl/trilium-safe-mode.ps1 +++ b/bin/tpl/trilium-safe-mode.ps1 @@ -1,2 +1,2 @@ Set-Item -Path Env:TRILIUM_SAFE_MODE -Value 1 -./trilium.exe \ No newline at end of file +./trilium.exe --disable-gpu diff --git a/bin/tpl/trilium-safe-mode.sh b/bin/tpl/trilium-safe-mode.sh index a5513f1db..5221d4d61 100644 --- a/bin/tpl/trilium-safe-mode.sh +++ b/bin/tpl/trilium-safe-mode.sh @@ -3,5 +3,5 @@ DIR=`dirname "$0"` export TRILIUM_SAFE_MODE=1 -"$DIR/trilium" +"$DIR/trilium" --disable-gpu diff --git a/config-sample.ini b/config-sample.ini index 393a124f3..0e8da0360 100644 --- a/config-sample.ini +++ b/config-sample.ini @@ -21,3 +21,9 @@ https=false # path to certificate (run "bash bin/generate-cert.sh" to generate self-signed certificate). Relevant only if https=true certPath= keyPath= +# setting to give trust to reverse proxies, a comma-separated list of trusted rev. proxy IPs can be specified (CIDR notation is permitted), +# alternatively 'true' will make use of the leftmost IP in X-Forwarded-For, ultimately an integer can be used to tell about the number of hops between +# Trilium (which is hop 0) and the first trusted rev. proxy. +# once set, expressjs will use the X-Forwarded-For header set by the rev. proxy to determinate the real IPs of clients. +# expressjs shortcuts are supported: loopback(127.0.0.1/8, ::1/128), linklocal(169.254.0.0/16, fe80::/10), uniquelocal(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, fc00::/7) +trustedReverseProxy=false diff --git a/db/demo.zip b/db/demo.zip index a2327ff33..6a32588e3 100644 Binary files a/db/demo.zip and b/db/demo.zip differ diff --git a/db/migrations/0196__rename_bulk_actions.sql b/db/migrations/0196__rename_bulk_actions.sql new file mode 100644 index 000000000..ad4c5febe --- /dev/null +++ b/db/migrations/0196__rename_bulk_actions.sql @@ -0,0 +1,2 @@ +UPDATE attributes SET value = replace(value, 'setLabelValue', 'updateLabelValue') WHERE name = 'action' AND type = 'label'; +UPDATE attributes SET value = replace(value, 'setRelationTarget', 'updateRelationTarget') WHERE name = 'action' AND type = 'label'; diff --git a/db/migrations/0197__NOOP.js b/db/migrations/0197__NOOP.js new file mode 100644 index 000000000..c7bdf54ac --- /dev/null +++ b/db/migrations/0197__NOOP.js @@ -0,0 +1 @@ +module.exports = () => console.log("NOOP, increased because of protected notes IV change"); diff --git a/docs/backend_api/AbstractEntity.html b/docs/backend_api/AbstractEntity.html index ab08501ce..b39f717a3 100644 --- a/docs/backend_api/AbstractEntity.html +++ b/docs/backend_api/AbstractEntity.html @@ -139,10 +139,576 @@ +

Members

+ + + +

(protected) becca

+ + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + +

Methods

+ + + + + + +

(protected) addEntityChange()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) beforeSaving()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) generateHash()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) generateIdIfNecessary()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) getPojoToSave()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) getUtcDateChanged()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + @@ -267,7 +833,7 @@ This is a low level method, for notes and branches use `note.deleteNote()` and '
Source:
@@ -355,7 +921,7 @@ This is a low level method, for notes and branches use `note.deleteNote()` and '
Source:
diff --git a/docs/backend_api/Attribute.html b/docs/backend_api/Attribute.html index 8633da77b..3b7696898 100644 --- a/docs/backend_api/Attribute.html +++ b/docs/backend_api/Attribute.html @@ -223,6 +223,69 @@ and relation (representing named relationship between source and target note)(protected) becca + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + +

isInheritable :boolean

@@ -703,6 +766,362 @@ and relation (representing named relationship between source and target note)Methods + + + + + + +

(protected) addEntityChange()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) beforeSaving()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) generateHash()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) generateIdIfNecessary()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + @@ -757,7 +1176,7 @@ and relation (representing named relationship between source and target note)Source:
@@ -808,6 +1227,95 @@ and relation (representing named relationship between source and target note)(protected) getPojoToSave() + + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + @@ -862,7 +1370,7 @@ and relation (representing named relationship between source and target note)Source:
@@ -913,6 +1421,95 @@ and relation (representing named relationship between source and target note)(protected) getUtcDateChanged() + + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + @@ -967,7 +1564,7 @@ and relation (representing named relationship between source and target note)Source:
@@ -1144,7 +1741,7 @@ This is a low level method, for notes and branches use `note.deleteNote()` and '
Source:
@@ -1237,7 +1834,7 @@ This is a low level method, for notes and branches use `note.deleteNote()` and '
Source:
diff --git a/docs/backend_api/BackendScriptApi.html b/docs/backend_api/BackendScriptApi.html index d99d0c219..8e1204851 100644 --- a/docs/backend_api/BackendScriptApi.html +++ b/docs/backend_api/BackendScriptApi.html @@ -131,6 +131,78 @@ +

__private :Object

+ + + + +
+ This object contains "at your risk" and "no BC guarantees" objects for advanced use cases. +
+ + + +
Type:
+ + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + +

axios

diff --git a/docs/backend_api/Branch.html b/docs/backend_api/Branch.html index f89ff45ad..619545941 100644 --- a/docs/backend_api/Branch.html +++ b/docs/backend_api/Branch.html @@ -155,6 +155,69 @@ parents. +

(protected) becca

+ + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + +

branchId :string

@@ -263,7 +326,7 @@ parents.
Source:
@@ -525,7 +588,7 @@ parents.
Source:
@@ -751,6 +814,184 @@ parents.

Methods

+ + + + + + +

(protected) addEntityChange()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) beforeSaving()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + @@ -903,7 +1144,7 @@ parents.
Source:
@@ -955,6 +1196,362 @@ parents. + + + + + + +

(protected) generateHash()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) generateIdIfNecessary()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) getPojoToSave()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) getUtcDateChanged()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + @@ -1084,7 +1681,7 @@ This is a low level method, for notes and branches use `note.deleteNote()` and '
Source:
@@ -1177,7 +1774,7 @@ This is a low level method, for notes and branches use `note.deleteNote()` and '
Source:
diff --git a/docs/backend_api/EtapiToken.html b/docs/backend_api/EtapiToken.html index b675d8cdc..da6e56f2f 100644 --- a/docs/backend_api/EtapiToken.html +++ b/docs/backend_api/EtapiToken.html @@ -160,6 +160,69 @@ from tokenHash and token. +

(protected) becca

+ + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + +

etapiTokenId :string

@@ -572,6 +635,540 @@ from tokenHash and token.

Methods

+ + + + + + +

(protected) addEntityChange()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) beforeSaving()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) generateHash()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) generateIdIfNecessary()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) getPojoToSave()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

(protected) getUtcDateChanged()

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
Overrides:
+
+ + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + @@ -701,7 +1298,7 @@ This is a low level method, for notes and branches use `note.deleteNote()` and '
Source:
@@ -794,7 +1391,7 @@ This is a low level method, for notes and branches use `note.deleteNote()` and '
Source:
diff --git a/docs/backend_api/Note.html b/docs/backend_api/Note.html index e9312b9e1..9e2361403 100644 --- a/docs/backend_api/Note.html +++ b/docs/backend_api/Note.html @@ -93,7 +93,7 @@
Source:
@@ -154,23 +154,13 @@ -

children :Array.<Note>

+

(protected) becca

-
Type:
- - @@ -184,27 +174,9 @@ - - - - - - - - - - - - - - - - - - -
Source:
-