mirror of
https://github.com/zadam/trilium.git
synced 2025-11-02 19:36:12 +01:00
Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
51939b161c | ||
|
|
95d46b7ce7 | ||
|
|
88c4171031 | ||
|
|
b6c7e2e48f | ||
|
|
305d28b5b3 | ||
|
|
a88bf68eb6 |
7
.eslintignore
Normal file
7
.eslintignore
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
node_modules
|
||||||
|
dist
|
||||||
|
bin
|
||||||
|
docs
|
||||||
|
libraries
|
||||||
|
coverage
|
||||||
|
play
|
||||||
212
.eslintrc.js
Normal file
212
.eslintrc.js
Normal file
@@ -0,0 +1,212 @@
|
|||||||
|
module.exports = {
|
||||||
|
env: {
|
||||||
|
browser: true,
|
||||||
|
commonjs: true,
|
||||||
|
es2021: true,
|
||||||
|
node: true,
|
||||||
|
},
|
||||||
|
// plugins: ['prettier'], // to be activated
|
||||||
|
extends: ['eslint:recommended', 'airbnb-base', 'plugin:jsonc/recommended-with-jsonc', 'prettier'],
|
||||||
|
overrides: [
|
||||||
|
{
|
||||||
|
files: ['*.json', '*.json5', '*.jsonc'],
|
||||||
|
parser: 'jsonc-eslint-parser',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
files: ['package.json'],
|
||||||
|
parser: 'jsonc-eslint-parser',
|
||||||
|
rules: {
|
||||||
|
'jsonc/sort-keys': [
|
||||||
|
'off',
|
||||||
|
{
|
||||||
|
pathPattern: '^$',
|
||||||
|
order: [
|
||||||
|
'name',
|
||||||
|
'version',
|
||||||
|
'private',
|
||||||
|
'packageManager',
|
||||||
|
'description',
|
||||||
|
'type',
|
||||||
|
'keywords',
|
||||||
|
'homepage',
|
||||||
|
'bugs',
|
||||||
|
'license',
|
||||||
|
'author',
|
||||||
|
'contributors',
|
||||||
|
'funding',
|
||||||
|
'files',
|
||||||
|
'main',
|
||||||
|
'module',
|
||||||
|
'exports',
|
||||||
|
'unpkg',
|
||||||
|
'jsdelivr',
|
||||||
|
'browser',
|
||||||
|
'bin',
|
||||||
|
'man',
|
||||||
|
'directories',
|
||||||
|
'repository',
|
||||||
|
'publishConfig',
|
||||||
|
'scripts',
|
||||||
|
'peerDependencies',
|
||||||
|
'peerDependenciesMeta',
|
||||||
|
'optionalDependencies',
|
||||||
|
'dependencies',
|
||||||
|
'devDependencies',
|
||||||
|
'engines',
|
||||||
|
'config',
|
||||||
|
'overrides',
|
||||||
|
'pnpm',
|
||||||
|
'husky',
|
||||||
|
'lint-staged',
|
||||||
|
'eslintConfig',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
pathPattern: '^(?:dev|peer|optional|bundled)?[Dd]ependencies$',
|
||||||
|
order: { type: 'asc' },
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
globals: {
|
||||||
|
$: true,
|
||||||
|
jQuery: true,
|
||||||
|
glob: true,
|
||||||
|
log: true,
|
||||||
|
EditorWatchdog: true,
|
||||||
|
React: true,
|
||||||
|
appState: true,
|
||||||
|
ExcalidrawLib: true,
|
||||||
|
elements: true,
|
||||||
|
files: true,
|
||||||
|
ReactDOM: true,
|
||||||
|
// src\public\app\widgets\type_widgets\relation_map.js
|
||||||
|
jsPlumb: true,
|
||||||
|
panzoom: true,
|
||||||
|
logError: true,
|
||||||
|
// src\public\app\widgets\type_widgets\image.js
|
||||||
|
WZoom: true,
|
||||||
|
// \src\public\app\widgets\type_widgets\read_only_text.js
|
||||||
|
renderMathInElement: true,
|
||||||
|
// \src\public\app\widgets\type_widgets\editable_text.js
|
||||||
|
BalloonEditor: true,
|
||||||
|
FancytreeNode: true,
|
||||||
|
CKEditorInspector: true,
|
||||||
|
// \src\public\app\widgets\type_widgets\editable_code.js
|
||||||
|
CodeMirror: true,
|
||||||
|
// \src\public\app\services\resizer.js
|
||||||
|
Split: true,
|
||||||
|
// \src\public\app\services\content_renderer.js
|
||||||
|
mermaid: true,
|
||||||
|
// src\public\app\services\frontend_script_api.js
|
||||||
|
dayjs: true,
|
||||||
|
// \src\public\app\widgets\note_map.js
|
||||||
|
ForceGraph: true,
|
||||||
|
// \src\public\app\setup.js
|
||||||
|
ko: true,
|
||||||
|
syncInProgress: true,
|
||||||
|
// src\public\app\services\utils.js
|
||||||
|
logInfo: true,
|
||||||
|
__non_webpack_require__: true,
|
||||||
|
describe: true,
|
||||||
|
it: true,
|
||||||
|
expect: true
|
||||||
|
},
|
||||||
|
parserOptions: {
|
||||||
|
ecmaVersion: 'latest',
|
||||||
|
sourceType: 'module',
|
||||||
|
},
|
||||||
|
rules: {
|
||||||
|
// eslint:recommended
|
||||||
|
'no-unused-vars': 'off',
|
||||||
|
'linebreak-style': 'off',
|
||||||
|
'no-useless-escape': 'off',
|
||||||
|
'no-empty': 'off',
|
||||||
|
'no-constant-condition': 'off',
|
||||||
|
'getter-return': 'off',
|
||||||
|
'no-cond-assign': 'off',
|
||||||
|
'no-async-promise-executor': 'off',
|
||||||
|
'no-extra-semi': 'off',
|
||||||
|
'no-inner-declarations': 'off',
|
||||||
|
|
||||||
|
// prettier
|
||||||
|
'prettier/prettier': ['off', { endOfLine: 'auto' }],
|
||||||
|
|
||||||
|
// airbnb-base
|
||||||
|
'no-console': 'off',
|
||||||
|
'no-plusplus': 'off',
|
||||||
|
'no-param-reassign': 'off',
|
||||||
|
'global-require': 'off',
|
||||||
|
'no-use-before-define': 'off',
|
||||||
|
'no-await-in-loop': 'off',
|
||||||
|
radix: 'off',
|
||||||
|
'import/order': 'off',
|
||||||
|
'import/no-extraneous-dependencies': 'off',
|
||||||
|
'prefer-destructuring': 'off',
|
||||||
|
'no-shadow': 'off',
|
||||||
|
'no-new': 'off',
|
||||||
|
'no-restricted-syntax': 'off',
|
||||||
|
strict: 'off',
|
||||||
|
'class-methods-use-this': 'off',
|
||||||
|
'no-else-return': 'off',
|
||||||
|
'import/no-dynamic-require': 'off',
|
||||||
|
'no-underscore-dangle': 'off',
|
||||||
|
'prefer-template': 'off',
|
||||||
|
'consistent-return': 'off',
|
||||||
|
'no-continue': 'off',
|
||||||
|
'object-shorthand': 'off',
|
||||||
|
'one-var': 'off',
|
||||||
|
'prefer-const': 'off',
|
||||||
|
'spaced-comment': 'off',
|
||||||
|
'no-loop-func': 'off',
|
||||||
|
'arrow-body-style': 'off',
|
||||||
|
|
||||||
|
'guard-for-in': 'off',
|
||||||
|
'no-return-assign': 'off',
|
||||||
|
'dot-notation': 'off',
|
||||||
|
|
||||||
|
'func-names': 'off',
|
||||||
|
'import/no-useless-path-segments': 'off',
|
||||||
|
'default-param-last': 'off',
|
||||||
|
'prefer-arrow-callback': 'off',
|
||||||
|
'no-unneeded-ternary': 'off',
|
||||||
|
'no-return-await': 'off',
|
||||||
|
'import/extensions': 'off',
|
||||||
|
|
||||||
|
'no-var': 'off',
|
||||||
|
'import/newline-after-import': 'off',
|
||||||
|
'no-restricted-globals': 'off',
|
||||||
|
'operator-assignment': 'off',
|
||||||
|
'no-eval': 'off',
|
||||||
|
'max-classes-per-file': 'off',
|
||||||
|
'vars-on-top': 'off',
|
||||||
|
'no-bitwise': 'off',
|
||||||
|
'no-lonely-if': 'off',
|
||||||
|
'no-multi-assign': 'off',
|
||||||
|
'no-promise-executor-return': 'off',
|
||||||
|
'no-empty-function': 'off',
|
||||||
|
'import/no-unresolved': 'off',
|
||||||
|
camelcase: 'off',
|
||||||
|
eqeqeq: 'off',
|
||||||
|
'lines-between-class-members': 'off',
|
||||||
|
'import/no-cycle': 'off',
|
||||||
|
'new-cap': 'off',
|
||||||
|
'prefer-object-spread': 'off',
|
||||||
|
'no-new-func': 'off',
|
||||||
|
'no-unused-expressions': 'off',
|
||||||
|
'lines-around-directive': 'off',
|
||||||
|
'prefer-exponentiation-operator': 'off',
|
||||||
|
'no-restricted-properties': 'off',
|
||||||
|
'prefer-rest-params': 'off',
|
||||||
|
'no-unreachable-loop': 'off',
|
||||||
|
'no-alert': 'off',
|
||||||
|
'no-useless-return': 'off',
|
||||||
|
'no-nested-ternary': 'off',
|
||||||
|
'prefer-regex-literals': 'off',
|
||||||
|
'import/no-named-as-default-member': 'off',
|
||||||
|
yoda: 'off',
|
||||||
|
'no-script-url': 'off',
|
||||||
|
'no-prototype-builtins':'off'
|
||||||
|
},
|
||||||
|
};
|
||||||
1
.husky/.gitignore
vendored
Normal file
1
.husky/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
_
|
||||||
4
.husky/pre-commit
Normal file
4
.husky/pre-commit
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
. "$(dirname "$0")/_/husky.sh"
|
||||||
|
|
||||||
|
#npx lint-staged
|
||||||
6
.idea/jsLinters/eslint.xml
generated
Normal file
6
.idea/jsLinters/eslint.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="EslintConfiguration">
|
||||||
|
<option name="fix-on-save" value="true" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
13
.prettierrc.js
Normal file
13
.prettierrc.js
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
//https://prettier.io/docs/en/options.html
|
||||||
|
module.exports = {
|
||||||
|
semi: true,
|
||||||
|
trailingComma: 'none',
|
||||||
|
singleQuote: true,
|
||||||
|
printWidth: 100,
|
||||||
|
tabWidth: 4,
|
||||||
|
useTabs: false,
|
||||||
|
quoteProps: "as-needed",
|
||||||
|
bracketSpacing: true,
|
||||||
|
arrowParens: "avoid"
|
||||||
|
// htmlWhitespaceSensitivity: 'ignore',
|
||||||
|
};
|
||||||
6
.vscode/extensions.json
vendored
Normal file
6
.vscode/extensions.json
vendored
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"recommendations": [
|
||||||
|
"dbaeumer.vscode-eslint",
|
||||||
|
"esbenp.prettier-vscode",
|
||||||
|
]
|
||||||
|
}
|
||||||
33
.vscode/settings.json
vendored
33
.vscode/settings.json
vendored
@@ -1,4 +1,33 @@
|
|||||||
{
|
{
|
||||||
|
"[javascript]": {
|
||||||
|
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
|
||||||
|
},
|
||||||
|
"[json]": {
|
||||||
|
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
|
||||||
|
},
|
||||||
"editor.formatOnSave": true,
|
"editor.formatOnSave": true,
|
||||||
"files.eol": "\n"
|
"eslint.format.enable": true,
|
||||||
}
|
"eslint.probe": [
|
||||||
|
"javascript",
|
||||||
|
"javascriptreact",
|
||||||
|
"typescript",
|
||||||
|
"typescriptreact",
|
||||||
|
"html",
|
||||||
|
"vue",
|
||||||
|
"markdown",
|
||||||
|
"json",
|
||||||
|
"jsonc"
|
||||||
|
],
|
||||||
|
"eslint.validate": [
|
||||||
|
"javascript",
|
||||||
|
"javascriptreact",
|
||||||
|
"typescript",
|
||||||
|
"typescriptreact",
|
||||||
|
"html",
|
||||||
|
"vue",
|
||||||
|
"markdown",
|
||||||
|
"json",
|
||||||
|
"jsonc"
|
||||||
|
],
|
||||||
|
"files.eol": "\n",
|
||||||
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
# Trilium Notes
|
# Trilium Notes
|
||||||
|
|
||||||
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md) | [Italian](https://github.com/zadam/trilium/blob/master/README.it.md)
|
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md)
|
||||||
|
|
||||||
[](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
[](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||||
Trilium Notes 是一个层次化的笔记应用程序,专注于建立大型个人知识库。请参阅[屏幕截图](https://github.com/zadam/trilium/wiki/Screenshot-tour)以快速了解:
|
Trilium Notes 是一个层次化的笔记应用程序,专注于建立大型个人知识库。请参阅[屏幕截图](https://github.com/zadam/trilium/wiki/Screenshot-tour)以快速了解:
|
||||||
|
|||||||
93
README.it.md
93
README.it.md
@@ -1,93 +0,0 @@
|
|||||||
# Trilium Notes
|
|
||||||
|
|
||||||
## Trilium è in manutenzione - vedi i dettagli in https://github.com/zadam/trilium/issues/4620
|
|
||||||
|
|
||||||
Le discussioni preliminari sull'organizzazione si stanno svolgendo in [Trilium Next discussions](https://github.com/orgs/TriliumNext/discussions).
|
|
||||||
|
|
||||||
[](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md) | [Italian](https://github.com/zadam/trilium/blob/master/README.it.md)
|
|
||||||
|
|
||||||
|
|
||||||
Trilium Notes è un'applicazione per appunti ad organizzazione gerarchica, studiata per la costruzione di archivi di conoscenza personali di grandi dimensioni.
|
|
||||||
|
|
||||||
Vedi [fotografie](https://github.com/zadam/trilium/wiki/Screenshot-tour) per una panoramica veloce:
|
|
||||||
|
|
||||||
<a href="https://github.com/zadam/trilium/wiki/Screenshot-tour"><img src="https://raw.githubusercontent.com/wiki/zadam/trilium/images/screenshot.png" alt="Trilium Screenshot" width="1000"></a>
|
|
||||||
|
|
||||||
L'Ucraina si sta difendendo dall'aggressione russa, considera [donare all'esercito ucraino o a organizzazioni umanitarie](https://standforukraine.com/).
|
|
||||||
|
|
||||||
<p float="left">
|
|
||||||
<img src="https://upload.wikimedia.org/wikipedia/commons/4/49/Flag_of_Ukraine.svg" alt="drawing" width="400"/>
|
|
||||||
<img src="https://signmyrocket.com//uploads/2b2a523cd0c0e76cdbba95a89a9636b2_1676971281.jpg" alt="Trilium Notes supports Ukraine!" width="570"/>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
## 🎁 Funzionalità
|
|
||||||
|
|
||||||
|
|
||||||
* Gli appunti possono essere organizzati in un albero di profondità arbitraria. Un singolo appunto può essere collocato in più posti nell'albero (vedi [clonazione](https://github.com/zadam/trilium/wiki/Cloning-notes))
|
|
||||||
* Ricco editor visuale (WYSIWYG), con supporto -tra l'altro- per tabelle, immagini ed [espressioni matematiche](https://github.com/zadam/trilium/wiki/Text-notes#math-support) e con [formattazione automatica](https://github.com/zadam/trilium/wiki/Text-notes#autoformat) per markdown
|
|
||||||
* Supporto per la modifica di [appunti con codice sorgente](https://github.com/zadam/trilium/wiki/Code-notes), con evidenziazione della sintassi
|
|
||||||
* [Navigazione veloce](https://github.com/zadam/trilium/wiki/Note-navigation) tra gli appunti, ricerca testuale completa e [fissaggio degli appunti](https://github.com/zadam/trilium/wiki/Note-hoisting)
|
|
||||||
* Supporto integrato ed automatico per le [revisioni degli appunti](https://github.com/zadam/trilium/wiki/Note-revisions)
|
|
||||||
* Gli [attributi](https://github.com/zadam/trilium/wiki/Attributes) degli appunti possono essere utilizzati per l'organizzazione, per l'interrogazione e per lo scripting avanzato (prorgrammazione).
|
|
||||||
* [Sincronizzazione](https://github.com/zadam/trilium/wiki/Synchronization) con un server di sincronizzazione auto-ospitato
|
|
||||||
* c'è un [servizio di terze parti per ospitare server di sincronizzazione](https://trilium.cc/paid-hosting)
|
|
||||||
* [Condivisione](https://github.com/zadam/trilium/wiki/Sharing) (pubblicazione) di appunti sull'internet pubblico
|
|
||||||
* Robusta [crittografia](https://github.com/zadam/trilium/wiki/Protected-notes) configurabile singolarmente per ogni appunto
|
|
||||||
* Disegno di diagrammi con Excalidraw (tipo di appunto "canvas")
|
|
||||||
* [Mappe relazionali](https://github.com/zadam/trilium/wiki/Relation-map) e [mappe di collegamenti](https://github.com/zadam/trilium/wiki/Link-map) per visualizzare gli appunti e le loro relazioni
|
|
||||||
* [Scripting](https://github.com/zadam/trilium/wiki/Scripts) - vedi [Esempi avanzati](https://github.com/zadam/trilium/wiki/Advanced-showcases)
|
|
||||||
* [API REST](https://github.com/zadam/trilium/wiki/ETAPI) per l'automazione
|
|
||||||
* Si adatta bene sia in termini di usabilità che di prestazioni fino ad oltre 100 000 appunti
|
|
||||||
* Interfaccia utente ottimizzata per il [mobile](https://github.com/zadam/trilium/wiki/Mobile-frontend) (smartphone e tablet)
|
|
||||||
* [Tema Notturno](https://github.com/zadam/trilium/wiki/Themes)
|
|
||||||
* Supporto per importazione ed esportazione da e per [Evernote](https://github.com/zadam/trilium/wiki/Evernote-import) e [Markdown import](https://github.com/zadam/trilium/wiki/Markdown)
|
|
||||||
* [Web Clipper](https://github.com/zadam/trilium/wiki/Web-clipper) per il salvataggio facile di contenuti web
|
|
||||||
|
|
||||||
|
|
||||||
Dai un'occhiata a [awesome-trilium](https://github.com/Nriver/awesome-trilium) per temi, script, plugin e altro di terze parti.
|
|
||||||
|
|
||||||
## 🏗 Rilasci
|
|
||||||
|
|
||||||
|
|
||||||
Trilium è fornito come applicazione desktop (Linux e Windows) o come applicazione web ospitata sul tuo server (Linux). La versione desktop per Mac OS è disponibile, ma [non è supportata](https://github.com/zadam/trilium/wiki/FAQ#mac-os-support).
|
|
||||||
|
|
||||||
* Se vuoi usare Trilium sul tuo desktop, scarica il rilascio binario per la tua piattaforma dall'[ultimo rilascio](https://github.com/zadam/trilium/releases/latest), decomprimi l'archivio e avvia l'eseguibile ```trilium```.
|
|
||||||
* Se vuoi installare Trilium su un server, segui [questa pagina](https://github.com/zadam/trilium/wiki/Server-installation).
|
|
||||||
* Per ora solo Chrome e Firefox sono i browser supportati (testati).
|
|
||||||
|
|
||||||
Trilium è anche disponibile su Flatpak:
|
|
||||||
|
|
||||||
[<img width="240" src="https://flathub.org/assets/badges/flathub-badge-en.png">](https://flathub.org/apps/details/com.github.zadam.trilium)
|
|
||||||
|
|
||||||
## 📝 Documentazione
|
|
||||||
|
|
||||||
[Vedi la wiki per una lista completa delle pagine di documentazione.](https://github.com/zadam/trilium/wiki/)
|
|
||||||
|
|
||||||
Puoi anche leggere ["Patterns of personal knowledge base"](https://github.com/zadam/trilium/wiki/Patterns-of-personal-knowledge-base) per avere un'ispirazione su come potresti utilizzare Trilium.
|
|
||||||
|
|
||||||
## 💻 Contribuire
|
|
||||||
|
|
||||||
Usa un ambiente di sviluppo basato su browser
|
|
||||||
|
|
||||||
[](https://gitpod.io/#https://github.com/zadam/trilium)
|
|
||||||
|
|
||||||
O clona localmente ed esegui
|
|
||||||
```
|
|
||||||
npm install
|
|
||||||
npm run start-server
|
|
||||||
```
|
|
||||||
|
|
||||||
## 📢 Riconoscimenti
|
|
||||||
|
|
||||||
* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - miglior editor visuale (WYSIWYG) sul mercato, squadra di sviluppo attenta e reattiva
|
|
||||||
* [FancyTree](https://github.com/mar10/fancytree) - libreria per alberi molto ricca di funzionalità, senza pari. Trilium Notes non sarebbe lo stesso senza di essa.
|
|
||||||
* [CodeMirror](https://github.com/codemirror/CodeMirror) - editor di codice con supporto per un'enorme quantità di linguaggi.
|
|
||||||
* [jsPlumb](https://github.com/jsplumb/jsplumb) - libreria per la connettività visuale senza pari. Utilizzata per [mappe relazionali](https://github.com/zadam/trilium/wiki/Relation-map) e [mappe di collegamenti](https://github.com/zadam/trilium/wiki/Link-map).
|
|
||||||
|
|
||||||
## 🤝 Supporto
|
|
||||||
|
|
||||||
È possibile supportare Trilium attraverso Github Sponsors, [PayPal](https://paypal.me/za4am) o Bitcoin (bitcoin:bc1qv3svjn40v89mnkre5vyvs2xw6y8phaltl385d2).
|
|
||||||
|
|
||||||
## 🔑 Licenza
|
|
||||||
|
|
||||||
Questo programma è software libero: è possibile redistribuirlo e/o modificarlo nei termini della GNU Affero General Public License come pubblicata dalla Free Software Foundation, sia la versione 3 della Licenza, o (a propria scelta) qualsiasi versione successiva.
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
# Trilium Notes
|
# Trilium Notes
|
||||||
|
|
||||||
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md) | [Italian](https://github.com/zadam/trilium/blob/master/README.it.md)
|
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md)
|
||||||
|
|
||||||
Trilium Notes は、大規模な個人知識ベースの構築に焦点を当てた、階層型ノートアプリケーションです。概要は[スクリーンショット](https://github.com/zadam/trilium/wiki/Screenshot-tour)をご覧ください:
|
Trilium Notes は、大規模な個人知識ベースの構築に焦点を当てた、階層型ノートアプリケーションです。概要は[スクリーンショット](https://github.com/zadam/trilium/wiki/Screenshot-tour)をご覧ください:
|
||||||
|
|
||||||
|
|||||||
@@ -4,8 +4,7 @@
|
|||||||
|
|
||||||
Preliminary disccusions on the successor organization are taking place in [Trilium Next discussions](https://github.com/orgs/TriliumNext/discussions).
|
Preliminary disccusions on the successor organization are taking place in [Trilium Next discussions](https://github.com/orgs/TriliumNext/discussions).
|
||||||
|
|
||||||
[](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md) | [Italian](https://github.com/zadam/trilium/blob/master/README.it.md)
|
[](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md)
|
||||||
|
|
||||||
|
|
||||||
Trilium Notes is a hierarchical note taking application with focus on building large personal knowledge bases.
|
Trilium Notes is a hierarchical note taking application with focus on building large personal knowledge bases.
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Trilium Notes
|
# Trilium Notes
|
||||||
|
|
||||||
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md) | [Italian](https://github.com/zadam/trilium/blob/master/README.it.md)
|
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md)
|
||||||
|
|
||||||
[](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
[](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||||
Trilium Notes – это приложение для заметок с иерархической структурой, ориентированное на создание больших персональных баз знаний. Для быстрого ознакомления посмотрите [скриншот-тур](https://github.com/zadam/trilium/wiki/Screenshot-tour):
|
Trilium Notes – это приложение для заметок с иерархической структурой, ориентированное на создание больших персональных баз знаний. Для быстрого ознакомления посмотрите [скриншот-тур](https://github.com/zadam/trilium/wiki/Screenshot-tour):
|
||||||
|
|||||||
13652
package-lock.json
generated
13652
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
71
package.json
71
package.json
@@ -2,7 +2,7 @@
|
|||||||
"name": "trilium",
|
"name": "trilium",
|
||||||
"productName": "Trilium Notes",
|
"productName": "Trilium Notes",
|
||||||
"description": "Trilium Notes",
|
"description": "Trilium Notes",
|
||||||
"version": "0.63.6",
|
"version": "0.63.7",
|
||||||
"license": "AGPL-3.0-only",
|
"license": "AGPL-3.0-only",
|
||||||
"main": "electron.js",
|
"main": "electron.js",
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -31,18 +31,20 @@
|
|||||||
"test-jasmine": "TRILIUM_DATA_DIR=~/trilium/data-test jasmine",
|
"test-jasmine": "TRILIUM_DATA_DIR=~/trilium/data-test jasmine",
|
||||||
"test-es6": "node -r esm spec-es6/attribute_parser.spec.js ",
|
"test-es6": "node -r esm spec-es6/attribute_parser.spec.js ",
|
||||||
"test": "npm run test-jasmine && npm run test-es6",
|
"test": "npm run test-jasmine && npm run test-es6",
|
||||||
"postinstall": "rimraf ./node_modules/canvas"
|
"postinstall": "rimraf ./node_modules/canvas",
|
||||||
|
"lint": "eslint . --cache",
|
||||||
|
"prepare": "husky install || echo 'Husky install failed, expected on flatpak build'"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@braintree/sanitize-url": "6.0.4",
|
"@braintree/sanitize-url": "6.0.4",
|
||||||
"@electron/remote": "2.1.2",
|
"@electron/remote": "2.1.0",
|
||||||
"@excalidraw/excalidraw": "0.17.3",
|
"@excalidraw/excalidraw": "0.17.3",
|
||||||
"archiver": "7.0.0",
|
"archiver": "6.0.1",
|
||||||
"async-mutex": "0.4.1",
|
"async-mutex": "0.4.0",
|
||||||
"axios": "1.6.7",
|
"axios": "1.6.2",
|
||||||
"better-sqlite3": "8.4.0",
|
"better-sqlite3": "8.4.0",
|
||||||
"boxicons": "2.1.4",
|
"boxicons": "2.1.4",
|
||||||
"chokidar": "3.6.0",
|
"chokidar": "3.5.3",
|
||||||
"cls-hooked": "4.2.2",
|
"cls-hooked": "4.2.2",
|
||||||
"compression": "1.7.4",
|
"compression": "1.7.4",
|
||||||
"cookie-parser": "1.4.6",
|
"cookie-parser": "1.4.6",
|
||||||
@@ -52,35 +54,35 @@
|
|||||||
"debounce": "1.2.1",
|
"debounce": "1.2.1",
|
||||||
"ejs": "3.1.9",
|
"ejs": "3.1.9",
|
||||||
"electron-debug": "3.2.0",
|
"electron-debug": "3.2.0",
|
||||||
"electron-dl": "3.5.2",
|
"electron-dl": "3.5.1",
|
||||||
"electron-window-state": "5.0.3",
|
"electron-window-state": "5.0.3",
|
||||||
"escape-html": "1.0.3",
|
"escape-html": "1.0.3",
|
||||||
"express": "4.18.3",
|
"express": "4.18.2",
|
||||||
"express-partial-content": "1.0.2",
|
"express-partial-content": "1.0.2",
|
||||||
"express-rate-limit": "7.2.0",
|
"express-rate-limit": "7.1.4",
|
||||||
"express-session": "1.18.0",
|
"express-session": "1.17.3",
|
||||||
"force-graph": "1.43.5",
|
"force-graph": "1.43.4",
|
||||||
"fs-extra": "11.2.0",
|
"fs-extra": "11.1.1",
|
||||||
"helmet": "7.1.0",
|
"helmet": "7.1.0",
|
||||||
"html": "1.0.0",
|
"html": "1.0.0",
|
||||||
"html2plaintext": "2.1.4",
|
"html2plaintext": "2.1.4",
|
||||||
"http-proxy-agent": "7.0.2",
|
"http-proxy-agent": "7.0.0",
|
||||||
"https-proxy-agent": "7.0.4",
|
"https-proxy-agent": "7.0.2",
|
||||||
"image-type": "4.1.0",
|
"image-type": "4.1.0",
|
||||||
"ini": "3.0.1",
|
"ini": "3.0.1",
|
||||||
"is-animated": "2.0.2",
|
"is-animated": "2.0.2",
|
||||||
"is-svg": "4.3.2",
|
"is-svg": "4.3.2",
|
||||||
"jimp": "0.22.12",
|
"jimp": "0.22.10",
|
||||||
"joplin-turndown-plugin-gfm": "1.0.12",
|
"joplin-turndown-plugin-gfm": "1.0.12",
|
||||||
"jquery": "3.7.1",
|
"jquery": "3.7.1",
|
||||||
"jquery-hotkeys": "0.2.2",
|
"jquery-hotkeys": "0.2.2",
|
||||||
"jsdom": "24.0.0",
|
"jsdom": "22.1.0",
|
||||||
"katex": "0.16.9",
|
"katex": "0.16.9",
|
||||||
"marked": "12.0.0",
|
"marked": "9.1.6",
|
||||||
"mermaid": "10.9.0",
|
"mermaid": "10.6.1",
|
||||||
"mime-types": "2.1.35",
|
"mime-types": "2.1.35",
|
||||||
"multer": "1.4.5-lts.1",
|
"multer": "1.4.5-lts.1",
|
||||||
"node-abi": "3.56.0",
|
"node-abi": "3.51.0",
|
||||||
"normalize-strings": "1.1.1",
|
"normalize-strings": "1.1.1",
|
||||||
"open": "8.4.1",
|
"open": "8.4.1",
|
||||||
"panzoom": "9.4.3",
|
"panzoom": "9.4.3",
|
||||||
@@ -92,38 +94,51 @@
|
|||||||
"rimraf": "5.0.5",
|
"rimraf": "5.0.5",
|
||||||
"safe-compare": "1.1.4",
|
"safe-compare": "1.1.4",
|
||||||
"sanitize-filename": "1.6.3",
|
"sanitize-filename": "1.6.3",
|
||||||
"sanitize-html": "2.12.1",
|
"sanitize-html": "2.11.0",
|
||||||
"sax": "1.3.0",
|
"sax": "1.3.0",
|
||||||
"semver": "7.6.0",
|
"semver": "7.5.4",
|
||||||
"serve-favicon": "2.5.0",
|
"serve-favicon": "2.5.0",
|
||||||
"session-file-store": "1.5.0",
|
"session-file-store": "1.5.0",
|
||||||
"split.js": "1.6.5",
|
"split.js": "1.6.5",
|
||||||
"stream-throttle": "0.1.3",
|
"stream-throttle": "0.1.3",
|
||||||
"striptags": "3.2.0",
|
"striptags": "3.2.0",
|
||||||
"tmp": "0.2.3",
|
"tmp": "0.2.1",
|
||||||
"tree-kill": "1.2.2",
|
"tree-kill": "1.2.2",
|
||||||
"turndown": "7.1.2",
|
"turndown": "7.1.2",
|
||||||
"unescape": "1.0.1",
|
"unescape": "1.0.1",
|
||||||
"ws": "8.16.0",
|
"ws": "8.14.2",
|
||||||
"xml2js": "0.6.2",
|
"xml2js": "0.6.2",
|
||||||
"yauzl": "3.1.2"
|
"yauzl": "2.10.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"cross-env": "7.0.3",
|
"cross-env": "7.0.3",
|
||||||
"electron": "25.9.8",
|
"electron": "25.9.8",
|
||||||
"electron-builder": "24.13.3",
|
"electron-builder": "24.6.4",
|
||||||
"electron-packager": "17.1.2",
|
"electron-packager": "17.1.2",
|
||||||
"electron-rebuild": "3.2.9",
|
"electron-rebuild": "3.2.9",
|
||||||
|
"eslint": "8.54.0",
|
||||||
|
"eslint-config-airbnb-base": "15.0.0",
|
||||||
|
"eslint-config-prettier": "9.0.0",
|
||||||
|
"eslint-plugin-import": "2.29.0",
|
||||||
|
"eslint-plugin-jsonc": "2.10.0",
|
||||||
|
"eslint-plugin-prettier": "5.0.1",
|
||||||
"esm": "3.2.25",
|
"esm": "3.2.25",
|
||||||
|
"husky": "8.0.3",
|
||||||
"jasmine": "5.1.0",
|
"jasmine": "5.1.0",
|
||||||
"jsdoc": "4.0.2",
|
"jsdoc": "4.0.2",
|
||||||
|
"jsonc-eslint-parser": "2.4.0",
|
||||||
|
"lint-staged": "15.1.0",
|
||||||
"lorem-ipsum": "2.0.8",
|
"lorem-ipsum": "2.0.8",
|
||||||
"nodemon": "3.1.0",
|
"nodemon": "3.0.1",
|
||||||
|
"prettier": "3.1.0",
|
||||||
"rcedit": "4.0.1",
|
"rcedit": "4.0.1",
|
||||||
"webpack": "5.90.3",
|
"webpack": "5.89.0",
|
||||||
"webpack-cli": "5.1.4"
|
"webpack-cli": "5.1.4"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"electron-installer-debian": "3.2.0"
|
"electron-installer-debian": "3.2.0"
|
||||||
|
},
|
||||||
|
"lint-staged": {
|
||||||
|
"*.js": "eslint --cache --fix"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,10 +50,10 @@ export default class TreeContextMenu {
|
|||||||
{ title: 'Open in a new tab <kbd>Ctrl+Click</kbd>', command: "openInTab", uiIcon: "bx bx-empty", enabled: noSelectedNotes },
|
{ title: 'Open in a new tab <kbd>Ctrl+Click</kbd>', command: "openInTab", uiIcon: "bx bx-empty", enabled: noSelectedNotes },
|
||||||
{ title: 'Open in a new split', command: "openNoteInSplit", uiIcon: "bx bx-dock-right", enabled: noSelectedNotes },
|
{ title: 'Open in a new split', command: "openNoteInSplit", uiIcon: "bx bx-dock-right", enabled: noSelectedNotes },
|
||||||
{ title: 'Insert note after <kbd data-command="createNoteAfter"></kbd>', command: "insertNoteAfter", uiIcon: "bx bx-plus",
|
{ title: 'Insert note after <kbd data-command="createNoteAfter"></kbd>', command: "insertNoteAfter", uiIcon: "bx bx-plus",
|
||||||
items: insertNoteAfterEnabled ? await noteTypesService.getNoteTypeItems("insertNoteAfter", {removeDeprecatedTypes: true}) : null,
|
items: insertNoteAfterEnabled ? await noteTypesService.getNoteTypeItems("insertNoteAfter") : null,
|
||||||
enabled: insertNoteAfterEnabled && noSelectedNotes },
|
enabled: insertNoteAfterEnabled && noSelectedNotes },
|
||||||
{ title: 'Insert child note <kbd data-command="createNoteInto"></kbd>', command: "insertChildNote", uiIcon: "bx bx-plus",
|
{ title: 'Insert child note <kbd data-command="createNoteInto"></kbd>', command: "insertChildNote", uiIcon: "bx bx-plus",
|
||||||
items: notSearch ? await noteTypesService.getNoteTypeItems("insertChildNote", {removeDeprecatedTypes: true}) : null,
|
items: notSearch ? await noteTypesService.getNoteTypeItems("insertChildNote") : null,
|
||||||
enabled: notSearch && noSelectedNotes },
|
enabled: notSearch && noSelectedNotes },
|
||||||
{ title: 'Delete <kbd data-command="deleteNotes"></kbd>', command: "deleteNotes", uiIcon: "bx bx-trash",
|
{ title: 'Delete <kbd data-command="deleteNotes"></kbd>', command: "deleteNotes", uiIcon: "bx bx-trash",
|
||||||
enabled: isNotRoot && !isHoisted && parentNotSearch },
|
enabled: isNotRoot && !isHoisted && parentNotSearch },
|
||||||
|
|||||||
@@ -1,21 +1,19 @@
|
|||||||
import server from "./server.js";
|
import server from "./server.js";
|
||||||
import froca from "./froca.js";
|
import froca from "./froca.js";
|
||||||
|
|
||||||
async function getNoteTypeItems(command, opts = {}) {
|
async function getNoteTypeItems(command) {
|
||||||
const removeDeprecatedTypes = !!opts.removeDeprecatedTypes;
|
|
||||||
|
|
||||||
const items = [
|
const items = [
|
||||||
{ title: "Text", command: command, type: "text", uiIcon: "bx bx-note" },
|
{ title: "Text", command: command, type: "text", uiIcon: "bx bx-note" },
|
||||||
{ title: "Code", command: command, type: "code", uiIcon: "bx bx-code" },
|
{ title: "Code", command: command, type: "code", uiIcon: "bx bx-code" },
|
||||||
{ title: "Saved Search", command: command, type: "search", uiIcon: "bx bx-file-find" },
|
{ title: "Saved Search", command: command, type: "search", uiIcon: "bx bx-file-find" },
|
||||||
{ title: "Relation Map", command: command, type: "relationMap", uiIcon: "bx bx-map-alt", deprecated: true },
|
{ title: "Relation Map", command: command, type: "relationMap", uiIcon: "bx bx-map-alt" },
|
||||||
{ title: "Note Map", command: command, type: "noteMap", uiIcon: "bx bx-map-alt" },
|
{ title: "Note Map", command: command, type: "noteMap", uiIcon: "bx bx-map-alt" },
|
||||||
{ title: "Render Note", command: command, type: "render", uiIcon: "bx bx-extension" },
|
{ title: "Render Note", command: command, type: "render", uiIcon: "bx bx-extension" },
|
||||||
{ title: "Book", command: command, type: "book", uiIcon: "bx bx-book" },
|
{ title: "Book", command: command, type: "book", uiIcon: "bx bx-book" },
|
||||||
{ title: "Mermaid Diagram", command: command, type: "mermaid", uiIcon: "bx bx-selection" },
|
{ title: "Mermaid Diagram", command: command, type: "mermaid", uiIcon: "bx bx-selection" },
|
||||||
{ title: "Canvas", command: command, type: "canvas", uiIcon: "bx bx-pen" },
|
{ title: "Canvas", command: command, type: "canvas", uiIcon: "bx bx-pen" },
|
||||||
{ title: "Web View", command: command, type: "webView", uiIcon: "bx bx-globe-alt" },
|
{ title: "Web View", command: command, type: "webView", uiIcon: "bx bx-globe-alt" },
|
||||||
].filter(item => !removeDeprecatedTypes || !item.deprecated);
|
];
|
||||||
|
|
||||||
const templateNoteIds = await server.get("search-templates");
|
const templateNoteIds = await server.get("search-templates");
|
||||||
const templateNotes = await froca.getNotes(templateNoteIds);
|
const templateNotes = await froca.getNotes(templateNoteIds);
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ import libraryLoader from '../../services/library_loader.js';
|
|||||||
import TypeWidget from './type_widget.js';
|
import TypeWidget from './type_widget.js';
|
||||||
import utils from '../../services/utils.js';
|
import utils from '../../services/utils.js';
|
||||||
import linkService from '../../services/link.js';
|
import linkService from '../../services/link.js';
|
||||||
import debounce from '../../services/debounce.js';
|
|
||||||
|
|
||||||
const TPL = `
|
const TPL = `
|
||||||
<div class="canvas-widget note-detail-canvas note-detail-printable note-detail">
|
<div class="canvas-widget note-detail-canvas note-detail-printable note-detail">
|
||||||
@@ -103,8 +102,6 @@ export default class ExcalidrawTypeWidget extends TypeWidget {
|
|||||||
this.SCENE_VERSION_INITIAL = -1; // -1 indicates that it is fresh. excalidraw scene version is always >0
|
this.SCENE_VERSION_INITIAL = -1; // -1 indicates that it is fresh. excalidraw scene version is always >0
|
||||||
this.SCENE_VERSION_ERROR = -2; // -2 indicates error
|
this.SCENE_VERSION_ERROR = -2; // -2 indicates error
|
||||||
|
|
||||||
// config
|
|
||||||
this.DEBOUNCE_TIME_ONCHANGEHANDLER = 750; // ms
|
|
||||||
// ensure that assets are loaded from trilium
|
// ensure that assets are loaded from trilium
|
||||||
window.EXCALIDRAW_ASSET_PATH = `${window.location.origin}/node_modules/@excalidraw/excalidraw/dist/`;
|
window.EXCALIDRAW_ASSET_PATH = `${window.location.origin}/node_modules/@excalidraw/excalidraw/dist/`;
|
||||||
|
|
||||||
@@ -117,11 +114,6 @@ export default class ExcalidrawTypeWidget extends TypeWidget {
|
|||||||
this.$widget;
|
this.$widget;
|
||||||
this.reactHandlers; // used to control react state
|
this.reactHandlers; // used to control react state
|
||||||
|
|
||||||
// binds
|
|
||||||
this.createExcalidrawReactApp = this.createExcalidrawReactApp.bind(this);
|
|
||||||
this.onChangeHandler = this.onChangeHandler.bind(this);
|
|
||||||
this.isNewSceneVersion = this.isNewSceneVersion.bind(this);
|
|
||||||
|
|
||||||
this.libraryChanged = false;
|
this.libraryChanged = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -153,7 +145,7 @@ export default class ExcalidrawTypeWidget extends TypeWidget {
|
|||||||
|
|
||||||
ReactDOM.unmountComponentAtNode(renderElement);
|
ReactDOM.unmountComponentAtNode(renderElement);
|
||||||
const root = ReactDOM.createRoot(renderElement);
|
const root = ReactDOM.createRoot(renderElement);
|
||||||
root.render(React.createElement(this.createExcalidrawReactApp));
|
root.render(React.createElement(() => this.createExcalidrawReactApp()));
|
||||||
});
|
});
|
||||||
|
|
||||||
return this.$widget;
|
return this.$widget;
|
||||||
@@ -445,7 +437,7 @@ export default class ExcalidrawTypeWidget extends TypeWidget {
|
|||||||
|
|
||||||
this.saveData();
|
this.saveData();
|
||||||
},
|
},
|
||||||
onChange: debounce(this.onChangeHandler, this.DEBOUNCE_TIME_ONCHANGEHANDLER),
|
onChange: () => this.onChangeHandler(),
|
||||||
viewModeEnabled: false,
|
viewModeEnabled: false,
|
||||||
zenModeEnabled: false,
|
zenModeEnabled: false,
|
||||||
gridModeEnabled: false,
|
gridModeEnabled: false,
|
||||||
|
|||||||
@@ -184,8 +184,6 @@ export default class RelationMapTypeWidget extends TypeWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async loadMapData() {
|
async loadMapData() {
|
||||||
toastService.showMessage("Relation Map has been deprecated since Trilium 0.63 and will be removed in a future version. Migrate your content to some other note type (e.g. canvas) as soon as possible.", 5000);
|
|
||||||
|
|
||||||
this.mapData = {
|
this.mapData = {
|
||||||
notes: [],
|
notes: [],
|
||||||
// it is important to have this exact value here so that initial transform is the same as this
|
// it is important to have this exact value here so that initial transform is the same as this
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
module.exports = { buildDate:"2024-05-18T06:17:21+02:00", buildRevision: "c7f19e04fafc031910f6f9a45d2015387618e902" };
|
module.exports = { buildDate:"2024-05-30T06:59:06+02:00", buildRevision: "95d46b7ce7e0036eeb72b43e1815cc5c00dc214c" };
|
||||||
|
|||||||
@@ -458,13 +458,18 @@ function findIncludeNoteLinks(content, foundLinks) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function findRelationMapLinks(content, foundLinks) {
|
function findRelationMapLinks(content, foundLinks) {
|
||||||
const obj = JSON.parse(content);
|
try {
|
||||||
|
const obj = JSON.parse(content);
|
||||||
|
|
||||||
for (const note of obj.notes) {
|
for (const note of obj.notes) {
|
||||||
foundLinks.push({
|
foundLinks.push({
|
||||||
name: 'relationMapLink',
|
name: 'relationMapLink',
|
||||||
value: note.noteId
|
value: note.noteId
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
log.error("Could not scan for relation map links: " + e.message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user