Compare commits

...

2854 Commits

Author SHA1 Message Date
Adorian Doran
0a9c0234e2 client/settings/disable motion: update translation 2025-08-23 00:38:06 +03:00
Adorian Doran
3e3cc8c541 client/settings/disable motion: refactor 2025-08-23 00:19:26 +03:00
Adorian Doran
d1538508e8 client/settings/disable motion: turn off jQuery animations if motion is disabled 2025-08-22 22:20:57 +03:00
Adorian Doran
9b1da8c311 Settings/Appearance: improve CSS selector specificity 2025-08-22 21:37:56 +03:00
Adorian Doran
e4a8258acf client/settings/disable motion: fix submenus not opening 2025-08-22 20:52:31 +03:00
Adorian Doran
5e88043c7b client/settings/disable motion: add the CSS implementation 2025-08-22 20:48:26 +03:00
Adorian Doran
bedf9112fb client/settings/disable motion: add localization support 2025-08-22 20:42:17 +03:00
Adorian Doran
03681d23c5 client/settings/disable motion: add an option to allow transitions and animations to be disabled 2025-08-22 20:32:08 +03:00
Elian Doran
4c8da70ef3 chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.4 (#6721) 2025-08-21 17:49:28 +03:00
Elian Doran
ed5da5cd4a Translations update from Hosted Weblate (#6732) 2025-08-21 17:49:10 +03:00
Astryd Park
dc5fccdbcd Added translation using Weblate (Korean) 2025-08-21 16:32:31 +02:00
Astryd Park
91aea333c7 Added translation using Weblate (Korean) 2025-08-21 16:32:31 +02:00
Микола Копитін
a0de01cff1 Translated using Weblate (Ukrainian)
Currently translated at 99.4% (376 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/uk/
2025-08-21 16:32:30 +02:00
Микола Копитін
a41ed34193 Translated using Weblate (Ukrainian)
Currently translated at 37.0% (578 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/uk/
2025-08-21 16:32:30 +02:00
Newcomer1989
49e8811c18 Translated using Weblate (German)
Currently translated at 77.7% (294 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/de/
2025-08-21 16:32:29 +02:00
Lucas Fernandes de Camargo
488563a82e Translated using Weblate (Portuguese (Brazil))
Currently translated at 22.5% (351 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-21 16:32:29 +02:00
Elian Doran
a1b18c7f97 chore(deps): update dependency @sveltejs/kit to v2.36.1 (#6723) 2025-08-21 08:22:09 +03:00
Elian Doran
9958a6e1bf fix(deps): update dependency i18next to v25.4.0 (#6724) 2025-08-21 08:21:24 +03:00
renovate[bot]
1fc6d8aca7 fix(deps): update dependency i18next to v25.4.0 2025-08-21 05:21:13 +00:00
Elian Doran
3e9ec2d943 chore(deps): update dependency @playwright/test to v1.55.0 (#6722) 2025-08-21 08:20:47 +03:00
Elian Doran
1420def1c3 fix(deps): update dependency react-i18next to v15.7.0 (#6725) 2025-08-21 08:19:38 +03:00
renovate[bot]
3b4184e765 chore(deps): update dependency @sveltejs/kit to v2.36.1 2025-08-21 02:22:23 +00:00
renovate[bot]
b70e25d348 fix(deps): update dependency react-i18next to v15.7.0 2025-08-21 00:05:32 +00:00
renovate[bot]
772c0bbe1a chore(deps): update dependency @playwright/test to v1.55.0 2025-08-21 00:04:01 +00:00
renovate[bot]
144021c053 chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.4 2025-08-21 00:03:29 +00:00
Elian Doran
8abd3ed3f1 feat(docs): implement swagger ui endpoint for internal api (#6719) 2025-08-20 21:36:21 +03:00
perf3ct
53ed510c92 feat(docs): remove old json api docs 2025-08-20 17:36:22 +00:00
Elian Doran
4ec46a2ebd chore(client): add some documentation 2025-08-20 20:34:00 +03:00
Elian Doran
db6f948499 Translations update from Hosted Weblate (#6720) 2025-08-20 20:33:26 +03:00
perf3ct
05c73011f5 feat(docs): add additional api routes 2025-08-20 17:30:26 +00:00
Микола Копитін
3b733d01f1 Translated using Weblate (Ukrainian)
Currently translated at 44.1% (167 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/uk/
2025-08-20 17:29:08 +00:00
Микола Копитін
ebf21296d4 Translated using Weblate (Ukrainian)
Currently translated at 11.8% (184 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/uk/
2025-08-20 17:29:07 +00:00
Elian Doran
6f83ac4822 Port settings to React (#6660) 2025-08-20 20:28:54 +03:00
perf3ct
d358924324 feat(docs): implement swagger ui endpoint for internal api 2025-08-20 17:14:44 +00:00
perf3ct
f9a3606ca2 feat(docs): implement swagger ui endpoint for internal api 2025-08-20 17:11:54 +00:00
Elian Doran
33299ad51e chore(deps): update package lock 2025-08-20 19:45:49 +03:00
Elian Doran
8752182e7e Bump mermaid from 11.9.0 to 11.10.0 in /apps/client (#6717) 2025-08-20 19:22:44 +03:00
Elian Doran
0551ac8ead feat(ci): don't run checks outside main repo 2025-08-20 19:22:21 +03:00
Elian Doran
6d5a11bd4d Translations update from Hosted Weblate (#6718) 2025-08-20 19:14:25 +03:00
Elian Doran
ce19d84247 test(e2e): i18n test broken due to button 2025-08-20 19:10:41 +03:00
Микола Копитін
f24aa45a3b Translated using Weblate (Ukrainian)
Currently translated at 39.6% (150 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/uk/
2025-08-20 18:02:18 +02:00
Микола Копитін
64a28a7e75 Translated using Weblate (Ukrainian)
Currently translated at 10.8% (168 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/uk/
2025-08-20 18:02:16 +02:00
Flowerlywind
249a755312 Translated using Weblate (Vietnamese)
Currently translated at 2.1% (34 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/vi/
2025-08-20 18:02:13 +02:00
Kuzma Simonov
a3d51a013c Translated using Weblate (Russian)
Currently translated at 88.6% (335 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ru/
2025-08-20 18:02:12 +02:00
repilac
839def9959 Translated using Weblate (Japanese)
Currently translated at 97.6% (369 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-20 18:02:10 +02:00
Kuzma Simonov
fd432a7100 Translated using Weblate (Russian)
Currently translated at 81.9% (1271 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-20 18:02:08 +02:00
repilac
60a07ce1e7 Translated using Weblate (Japanese)
Currently translated at 68.2% (1059 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-20 18:02:07 +02:00
diego diaz
88c5700d87 Translated using Weblate (Spanish)
Currently translated at 100.0% (1551 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/es/
2025-08-20 18:02:05 +02:00
Elian Doran
d59993abf6 fix(server): potential race condition when rotating logs 2025-08-20 19:00:41 +03:00
Elian Doran
0754011909 chore(react): fix type errors 2025-08-20 18:52:14 +03:00
Elian Doran
376bb66cab Merge remote-tracking branch 'origin/main' into react/settings
; Conflicts:
;	pnpm-lock.yaml
2025-08-20 18:32:57 +03:00
Elian Doran
588e15c633 fix(settings): not fitting properly on mobile 2025-08-20 18:17:52 +03:00
Elian Doran
93b8ad20d7 fix(react/settings): settings displayed inline 2025-08-20 18:17:42 +03:00
dependabot[bot]
e51b3d760d Bump mermaid from 11.9.0 to 11.10.0 in /apps/client
Bumps [mermaid](https://github.com/mermaid-js/mermaid) from 11.9.0 to 11.10.0.
- [Release notes](https://github.com/mermaid-js/mermaid/releases)
- [Commits](https://github.com/mermaid-js/mermaid/compare/mermaid@11.9.0...mermaid@11.10.0)

---
updated-dependencies:
- dependency-name: mermaid
  dependency-version: 11.10.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-20 14:44:27 +00:00
Elian Doran
91f3bc4488 chore(deps): update svelte monorepo (#6707) 2025-08-20 08:41:54 +03:00
Elian Doran
3e80a99bbf fix(deps): update dependency mermaid to v11.10.0 [security] (#6700) 2025-08-20 08:41:11 +03:00
renovate[bot]
37cdb55e79 chore(deps): update svelte monorepo 2025-08-20 05:37:42 +00:00
renovate[bot]
58b66c0c95 fix(deps): update dependency mermaid to v11.10.0 [security] 2025-08-20 05:36:02 +00:00
Elian Doran
e5f9db86a1 fix(deps): update ckeditor monorepo to v46.0.2 (#6704) 2025-08-20 08:32:25 +03:00
Elian Doran
f138f99356 chore(deps): update pnpm to v10.15.0 (#6706) 2025-08-20 08:31:17 +03:00
renovate[bot]
c42f4b9814 fix(deps): update ckeditor monorepo to v46.0.2 2025-08-20 05:31:11 +00:00
Elian Doran
0a9fb886e3 fix(deps): update dependency @mermaid-js/layout-elk to v0.1.9 (#6705) 2025-08-20 08:31:04 +03:00
Elian Doran
3c4577201f chore(deps): update dependency vite to v7.1.3 (#6703) 2025-08-20 08:30:16 +03:00
Elian Doran
816421188f chore(deps): update dependency electron to v37.3.1 (#6702) 2025-08-20 08:29:36 +03:00
renovate[bot]
5b15d2c4c6 chore(deps): update pnpm to v10.15.0 2025-08-20 01:18:37 +00:00
renovate[bot]
4bc7165452 fix(deps): update dependency @mermaid-js/layout-elk to v0.1.9 2025-08-20 01:18:28 +00:00
renovate[bot]
82d6531e8c chore(deps): update dependency vite to v7.1.3 2025-08-20 01:17:10 +00:00
renovate[bot]
d6209035c3 chore(deps): update dependency electron to v37.3.1 2025-08-20 01:16:36 +00:00
Elian Doran
1d7799f981 refactor(react/settings): add names to all form groups 2025-08-19 23:34:25 +03:00
Elian Doran
51291a61e6 refactor(react/settings): associate IDs for labels 2025-08-19 22:54:23 +03:00
Elian Doran
0841603be0 refactor(react/settings): use FormGroup for time selector 2025-08-19 22:36:47 +03:00
Elian Doran
59ba6a0b1e chore(react/settings): use FormGroup for labels 2025-08-19 22:32:20 +03:00
Elian Doran
53eda46043 chore(react/settings): use translation for all units 2025-08-19 21:50:29 +03:00
Elian Doran
cbc9fb7d08 chore(react/settings): solve type errors 2025-08-19 21:41:05 +03:00
Elian Doran
1f479b20be chore(react/settings): use onBlur instead of onChange 2025-08-19 20:09:56 +03:00
Elian Doran
f00b8e9522 chore(react/settings): set 100% width for textarea 2025-08-19 17:39:41 +03:00
Elian Doran
c7dd271516 Translations update from Hosted Weblate (#6697) 2025-08-19 17:07:49 +03:00
Hosted Weblate
a947a61d65 Update translation files
Updated by "Remove blank strings" add-on in Weblate.

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/
2025-08-19 16:02:30 +02:00
Székely Miklós
0122f1cc5e Translated using Weblate (Hungarian)
Currently translated at 6.3% (24 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/hu/
2025-08-19 16:02:27 +02:00
Wojciech O
acb905a3e6 Translated using Weblate (Polish)
Currently translated at 37.0% (140 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/pl/
2025-08-19 16:02:26 +02:00
Wojciech O
7422eb5598 Translated using Weblate (Polish)
Currently translated at 1.3% (21 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pl/
2025-08-19 16:02:22 +02:00
Kuzma Simonov
e721166f95 Translated using Weblate (Russian)
Currently translated at 50.2% (190 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ru/
2025-08-19 16:02:18 +02:00
acwr47
5a48130fa4 Translated using Weblate (Japanese)
Currently translated at 96.8% (366 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-19 16:02:16 +02:00
Kuzma Simonov
b60fe1ad10 Translated using Weblate (Russian)
Currently translated at 81.8% (1269 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-19 16:02:15 +02:00
gri-gri
1405b0147c Translated using Weblate (Russian)
Currently translated at 81.8% (1269 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-19 16:02:13 +02:00
acwr47
222a7a57bc Translated using Weblate (Japanese)
Currently translated at 67.8% (1052 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-19 16:02:12 +02:00
Elian Doran
cddf9f0242 Merge remote-tracking branch 'origin/main' into react/settings
; Conflicts:
;	apps/client/package.json
;	apps/client/src/translations/en/translation.json
;	apps/client/src/translations/tw/translation.json
;	pnpm-lock.yaml
2025-08-19 13:50:27 +03:00
Elian Doran
3e17ff5e7b chore(react/settings): clean up options widget 2025-08-19 13:47:15 +03:00
Elian Doran
04973094f2 feat(react/settings): port LLM settings 2025-08-19 13:46:13 +03:00
Elian Doran
018a6cb84a chore(react/settings): add back some checks for MFA 2025-08-19 10:54:02 +03:00
Elian Doran
44825af0c0 feat(react/settings): port OAuth settings 2025-08-19 10:51:05 +03:00
Elian Doran
cfb3607052 feat(react/settings): port totp settings 2025-08-19 10:37:14 +03:00
Elian Doran
c5ec928aac fix(deps): update dependency preact to v10.27.1 (#6690) 2025-08-19 08:40:36 +03:00
Elian Doran
8d0183a9fb chore(deps): update svelte monorepo (#6691) 2025-08-19 08:38:55 +03:00
Elian Doran
ecd4079871 chore(deps): update typescript-eslint monorepo to v8.40.0 (#6692) 2025-08-19 08:38:24 +03:00
Elian Doran
3ed975f2e6 fix(deps): update dependency marked to v16.2.0 (#6693) 2025-08-19 08:35:28 +03:00
renovate[bot]
c6deb537d5 fix(deps): update dependency marked to v16.2.0 2025-08-19 01:29:40 +00:00
renovate[bot]
e7b3d806a7 chore(deps): update typescript-eslint monorepo to v8.40.0 2025-08-19 01:28:54 +00:00
renovate[bot]
d1a0778b48 chore(deps): update svelte monorepo 2025-08-19 01:27:47 +00:00
renovate[bot]
378634567f fix(deps): update dependency preact to v10.27.1 2025-08-19 01:27:13 +00:00
Elian Doran
ed56ed2be0 feat(quick_search): format multi-line results better (#6672) 2025-08-18 23:14:15 +03:00
Elian Doran
648aa7e3b0 fix(hotkeys): interpret shortcut in the user's locale (#6681) 2025-08-18 23:10:59 +03:00
Elian Doran
73ff41f2b2 fix(react/settings): hook leak after closing tabs 2025-08-18 22:15:47 +03:00
Elian Doran
3837466cb3 feat(react/settings): react to external changes 2025-08-18 20:41:33 +03:00
Elian Doran
b97a5ef888 chore(react/settings): reimplement reset shortcuts 2025-08-18 19:47:40 +03:00
Elian Doran
2ff1276ebb Translations update from Hosted Weblate (#6686) 2025-08-18 19:06:42 +03:00
Elian Doran
227cf5de85 feat(react/settings): port protected session timeout 2025-08-18 19:00:42 +03:00
Elian Doran
ccf52be431 feat(react/settings): port tray options 2025-08-18 18:47:18 +03:00
Elian Doran
07713e988c feat(react/settings): port search engine settings 2025-08-18 18:43:27 +03:00
Elian Doran
f934318625 feat(react/settings): port revision snapshot list 2025-08-18 18:27:12 +03:00
Elian Doran
6fb90abd75 feat(react/settings): port network connections 2025-08-18 18:22:07 +03:00
Elian Doran
27cc33888a feat(react/settings): port share settings 2025-08-18 18:19:48 +03:00
Elian Doran
95af901808 feat(react/settings): port HTML import tags 2025-08-18 18:07:58 +03:00
Elian Doran
c5a7f84250 feat(react/settings): port note revision snapshot interval 2025-08-18 17:51:45 +03:00
Elian Doran
a71d28500d feat(react/settings): port attachment erasure timeout 2025-08-18 17:42:39 +03:00
Elian Doran
436fd16f3a feat(react/settings): port note erasure timeout 2025-08-18 17:37:20 +03:00
Székely Miklós
ca34bf42f6 Added translation using Weblate (Hungarian) 2025-08-18 15:38:27 +02:00
Székely Miklós
fbf2315f57 Added translation using Weblate (Hungarian) 2025-08-18 15:38:26 +02:00
tomek7667
72f50dcb6b Translated using Weblate (Polish)
Currently translated at 16.4% (62 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/pl/
2025-08-18 15:38:25 +02:00
tomek7667
fd4c2f79a7 Translated using Weblate (Polish)
Currently translated at 0.6% (10 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pl/
2025-08-18 15:38:25 +02:00
acwr47
72f9335213 Translated using Weblate (Japanese)
Currently translated at 66.9% (1038 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-18 15:38:25 +02:00
Elian Doran
53d97047a3 feat(react/settings): port code read-only size 2025-08-18 16:10:05 +03:00
Elian Doran
2ba3666e23 feat(react/settings): port code mime types 2025-08-18 15:55:18 +03:00
Elian Doran
4a1d379ab4 feat(react/settings): port code editor appearance 2025-08-18 15:02:58 +03:00
Elian Doran
73167e1e30 feat(react/settings): port code editor settings 2025-08-18 14:27:45 +03:00
Elian Doran
ffc13f5de3 feat(react/settings): port date time format 2025-08-18 14:19:38 +03:00
tomek7667
9ba23d49d8 Added translation using Weblate (Polish) 2025-08-18 12:32:13 +02:00
tomek7667
222a6c48a7 Added translation using Weblate (Polish) 2025-08-18 12:32:13 +02:00
VortexP
e33208e6ec Translated using Weblate (Finnish)
Currently translated at 6.1% (95 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/fi/
2025-08-18 12:32:12 +02:00
acwr47
af8781eaa7 Translated using Weblate (Japanese)
Currently translated at 65.5% (1016 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-18 12:32:12 +02:00
Francis C
167b1a8d2e Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hant/
2025-08-18 12:32:12 +02:00
Francis C
0a7aff507c Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (1551 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hant/
2025-08-18 12:32:12 +02:00
Francis C
103532aad9 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (1551 of 1551 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hans/
2025-08-18 12:32:11 +02:00
Elian Doran
16939e9fd5 feat(react/settings): port auto read-only size 2025-08-18 12:14:38 +03:00
Elian Doran
4ef6169041 feat(react/settings): port highlight list settings 2025-08-18 12:11:29 +03:00
Elian Doran
9ebee42118 feat(react/settings): port TOC settings 2025-08-18 11:26:58 +03:00
Elian Doran
234d3997b1 feat(react/settings): port code block settings 2025-08-18 11:21:09 +03:00
Elian Doran
3ba0bcea4e feat(react/settings): port heading style 2025-08-18 09:47:18 +03:00
Elian Doran
701855344e feat(react/settings): port text features 2025-08-18 09:40:36 +03:00
Elian Doran
71b627fbc7 feat(react/settings): port text formatting toolbar 2025-08-18 09:34:16 +03:00
Elian Doran
5a4fc2c690 fix(deps): update dependency mind-elixir to v5.0.6 (#6682) 2025-08-18 09:07:10 +03:00
Elian Doran
0d67db52a2 chore(deps): update dependency chalk to v5.6.0 (#6683) 2025-08-18 09:06:25 +03:00
perf3ct
d971554201 feat(quick_search): also show the tags/attributes in quick search results 2025-08-18 03:20:04 +00:00
perf3ct
8fd7d7176e Merge branch 'main' into feat/quick-search-multiline-results 2025-08-18 00:30:58 +00:00
renovate[bot]
675575eed9 chore(deps): update dependency chalk to v5.6.0 2025-08-18 00:29:14 +00:00
renovate[bot]
2122cde293 fix(deps): update dependency mind-elixir to v5.0.6 2025-08-18 00:28:33 +00:00
Romain DEP.
b68a554bba fix(hotkeys): interpret shortcut in the user's locale
fixes #6547
2025-08-17 23:48:48 +02:00
Elian Doran
33043c7133 chore(call_to_action): add missing translation 2025-08-17 23:37:33 +03:00
Elian Doran
2e0f606a7a chore(release): prepare for v0.98.0 2025-08-17 22:46:16 +03:00
Elian Doran
87878dd6a7 Translations update from Hosted Weblate (#6679) 2025-08-17 22:20:39 +03:00
morteza rahvard
5296e073cc Translated using Weblate (Persian)
Currently translated at 0.7% (12 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/fa/
2025-08-17 19:17:36 +00:00
acwr47
7bfb7d6f6e Translated using Weblate (Japanese)
Currently translated at 65.4% (1014 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-17 19:17:35 +00:00
Elian Doran
b5069cc7c2 chore(call_to_action): rephrase 2025-08-17 22:17:21 +03:00
Elian Doran
3b6791f51a chore(call_to_action): disable background effects for now 2025-08-17 21:23:22 +03:00
Elian Doran
0b0be77e02 chore(deps): update dependency @sveltejs/kit to v2.31.1 (#6676) 2025-08-17 08:23:45 +03:00
renovate[bot]
60db10559e chore(deps): update dependency @sveltejs/kit to v2.31.1 2025-08-17 02:31:17 +00:00
Elian Doran
76b066ba4a Translations update from Hosted Weblate (#6673) 2025-08-16 23:27:47 +03:00
ali mohammadi
a28db32369 Translated using Weblate (Persian)
Currently translated at 1.5% (6 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/fa/
2025-08-16 20:02:07 +00:00
ali mohammadi
2523632391 Translated using Weblate (Persian)
Currently translated at 0.1% (3 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/fa/
2025-08-16 20:02:05 +00:00
neketos851
53548c356a Translated using Weblate (Ukrainian)
Currently translated at 2.1% (8 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/uk/
2025-08-16 20:02:03 +00:00
neketos851
565904ff5d Translated using Weblate (Ukrainian)
Currently translated at 3.1% (49 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/uk/
2025-08-16 20:02:01 +00:00
acwr47
e0c5545f8c Translated using Weblate (Japanese)
Currently translated at 65.2% (1012 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-16 20:01:59 +00:00
Aristide Bauchart
bc21285289 Translated using Weblate (French)
Currently translated at 81.7% (309 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/fr/
2025-08-16 20:01:57 +00:00
perf3ct
bbf8d757cd feat(quick_search): format multi-line results better 2025-08-16 19:16:27 +00:00
Elian Doran
318d504fad chore(deps): update dependency @types/node to v22.17.2 (#6665) 2025-08-16 08:55:02 +03:00
Elian Doran
fd5038148c Merge branch 'main' into renovate/node-22.x 2025-08-16 08:55:00 +03:00
renovate[bot]
693ca9291e chore(deps): update dependency @types/node to v22.17.2 2025-08-16 05:45:48 +00:00
Elian Doran
cfd8afc226 chore(deps): update dependency @sveltejs/kit to v2.31.0 (#6666) 2025-08-16 08:44:44 +03:00
Elian Doran
3e52ca7600 chore(deps): update dependency electron to v37.3.0 (#6667) 2025-08-16 08:44:09 +03:00
renovate[bot]
482522e802 chore(deps): update dependency electron to v37.3.0 2025-08-16 02:10:14 +00:00
renovate[bot]
8b5b6a01c6 chore(deps): update dependency @sveltejs/kit to v2.31.0 2025-08-16 02:09:37 +00:00
Elian Doran
5614891d92 fix(react/settings): unnecessary top margin 2025-08-16 00:22:18 +03:00
Elian Doran
b9b4961f3c fix(react/settings): shortcuts saved upon render 2025-08-16 00:13:18 +03:00
Elian Doran
7b83b20339 feat(react/settings): port shortcuts 2025-08-16 00:08:51 +03:00
Elian Doran
e4403dd316 Translations update from Hosted Weblate (#6664) 2025-08-15 23:04:33 +03:00
ali mohammadi
3f267fe6c9 Added translation using Weblate (Persian) 2025-08-15 21:31:45 +02:00
ali mohammadi
3229471485 Added translation using Weblate (Persian) 2025-08-15 21:31:44 +02:00
neketos851
62bac1adf9 Translated using Weblate (Ukrainian)
Currently translated at 0.7% (3 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/uk/
2025-08-15 21:31:43 +02:00
neketos851
82becfd52a Translated using Weblate (Ukrainian)
Currently translated at 0.5% (9 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/uk/
2025-08-15 21:31:43 +02:00
Elian Doran
92f035545b Translations update from Hosted Weblate (#6663) 2025-08-15 21:49:49 +03:00
neketos851
74d8ea7dcb Added translation using Weblate (Ukrainian) 2025-08-15 20:45:02 +02:00
neketos851
ac3f087279 Added translation using Weblate (Ukrainian) 2025-08-15 20:45:02 +02:00
VortexP
1cc4eb98c1 Translated using Weblate (Finnish)
Currently translated at 1.5% (6 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/fi/
2025-08-15 20:45:01 +02:00
VortexP
e99bdf8f24 Translated using Weblate (Finnish)
Currently translated at 6.0% (94 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/fi/
2025-08-15 20:45:01 +02:00
acwr47
b4f521a141 Translated using Weblate (Japanese)
Currently translated at 60.8% (943 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-15 20:45:01 +02:00
VortexP
1e23bc09f1 Translated using Weblate (Finnish)
Currently translated at 1.3% (5 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/fi/
2025-08-15 16:07:51 +00:00
VortexP
e3ec90405d Translated using Weblate (Finnish)
Currently translated at 1.6% (25 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/fi/
2025-08-15 16:07:51 +00:00
acwr47
41c87794a4 Translated using Weblate (Japanese)
Currently translated at 60.7% (942 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-15 16:07:50 +00:00
VortexP
e62d2d4fda Added translation using Weblate (Finnish) 2025-08-15 16:07:50 +00:00
VortexP
93adaa0f52 Added translation using Weblate (Finnish) 2025-08-15 16:07:49 +00:00
Excal
263a5d2067 Translated using Weblate (Russian)
Currently translated at 7.9% (30 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ru/
2025-08-15 16:07:48 +00:00
acwr47
f0a5005794 Translated using Weblate (Japanese)
Currently translated at 60.3% (936 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-15 16:07:48 +00:00
Elian Doran
577457c8ab fix(docs): Update links to Trilium repo files in advanced config docs (#6662) 2025-08-15 19:07:39 +03:00
Jon Fuller
c0c450c444 fix(docs): Update links to Trilium repo files in advanced config docs 2025-08-15 08:39:40 -07:00
Elian Doran
1e1e0b0f51 Fix (Update): No update notification in the global menu (#6657) 2025-08-15 16:56:12 +03:00
Elian Doran
a19204a1d5 Translations update from Hosted Weblate (#6661) 2025-08-15 16:55:35 +03:00
Flowerlywind
1d139bfdfe Translated using Weblate (Vietnamese)
Currently translated at 2.1% (33 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/vi/
2025-08-15 14:02:12 +02:00
Excal
75072decec Translated using Weblate (Russian)
Currently translated at 1.8% (7 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ru/
2025-08-15 14:02:09 +02:00
Francis C
0cf2ad6901 Translated using Weblate (Japanese)
Currently translated at 96.8% (366 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-15 14:02:08 +02:00
acwr47
ccbd57a0c0 Translated using Weblate (Japanese)
Currently translated at 54.5% (845 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-15 14:02:07 +02:00
Francis C
92e6c8c445 Translated using Weblate (Japanese)
Currently translated at 54.5% (845 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-15 14:02:06 +02:00
Francis C
1e966f1d59 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hant/
2025-08-15 14:02:05 +02:00
Francis C
6872c2194e Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (1550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hant/
2025-08-15 14:02:03 +02:00
Bruno MARGUERIN
5b6a0216db Translated using Weblate (French)
Currently translated at 71.1% (269 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/fr/
2025-08-15 14:02:01 +02:00
Elian Doran
e9a7194cd6 Translated using Weblate (Romanian)
Currently translated at 100.0% (1550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ro/
2025-08-15 14:01:59 +02:00
Bruno MARGUERIN
26898b9122 Translated using Weblate (French)
Currently translated at 82.3% (1277 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/fr/
2025-08-15 14:01:58 +02:00
Elian Doran
3e00e490cf chore(react/settings): start porting protected session timeout 2025-08-15 14:23:54 +03:00
Elian Doran
c02ed17ebc feat(react/settings): port change password 2025-08-15 14:19:49 +03:00
Elian Doran
fb559d66fe feat(react/settings): port spellcheck 2025-08-15 13:52:52 +03:00
Elian Doran
25dce64c3b feat(react/settings): port backup DB list 2025-08-15 13:16:57 +03:00
Elian Doran
6f19fde76e feat(react/settings): port backup DB now 2025-08-15 12:52:59 +03:00
Elian Doran
33ae91f49c feat(backup): display full path to the database 2025-08-15 12:52:50 +03:00
Elian Doran
99c179e29a feat(react/settings): port automatic backup 2025-08-15 12:47:35 +03:00
Elian Doran
1dbcb5a027 fix(react/dialogs): unable to chain prompts 2025-08-15 12:33:23 +03:00
Elian Doran
54d613e00e fix(react/dialogs): prompt not setting default value properly 2025-08-15 12:15:29 +03:00
Elian Doran
1f8aa90482 fix(react/settings): etapi list not always reacting to changes 2025-08-15 12:11:40 +03:00
Elian Doran
c9dcbef014 feat(react/settings): port etapi tokens 2025-08-15 12:00:11 +03:00
Elian Doran
68086ec3f1 feat(react/settings): port sync test 2025-08-15 11:30:48 +03:00
Elian Doran
f62078d02b feat(react/settings): port sync options 2025-08-15 11:21:19 +03:00
SiriusXT
ab1d8594ea Fix (Update): No update notification in the global menu 2025-08-15 16:04:59 +08:00
Elian Doran
c368ec3c38 feat(react/settings): port content languages 2025-08-15 10:26:25 +03:00
Elian Doran
1a15782686 fix(deps): update dependency i18next to v25.3.6 (#6652) 2025-08-15 09:05:12 +03:00
Elian Doran
3bd0aeef77 chore(deps): update svelte monorepo (#6654) 2025-08-15 09:04:48 +03:00
Elian Doran
b463baedd2 chore(deps): update dependency tsx to v4.20.4 (#6632) 2025-08-15 09:04:22 +03:00
Elian Doran
ae77c41dab chore(deps): update tailwindcss monorepo to v4.1.12 (#6651) 2025-08-15 09:03:58 +03:00
Elian Doran
807d909acd chore(deps): update dependency @anthropic-ai/sdk to v0.60.0 (#6653) 2025-08-15 09:03:36 +03:00
Elian Doran
fa4f5f526e chore(deps): update dependency turndown to v7.2.1 (#6650) 2025-08-15 09:03:13 +03:00
renovate[bot]
edff43cdb3 chore(deps): update dependency tsx to v4.20.4 2025-08-15 05:51:01 +00:00
renovate[bot]
46fe45528c chore(deps): update svelte monorepo 2025-08-15 02:17:16 +00:00
renovate[bot]
b4b53da6a4 chore(deps): update dependency @anthropic-ai/sdk to v0.60.0 2025-08-15 02:16:43 +00:00
renovate[bot]
41fd270080 fix(deps): update dependency i18next to v25.3.6 2025-08-15 02:16:06 +00:00
renovate[bot]
410bb3cdca chore(deps): update tailwindcss monorepo to v4.1.12 2025-08-15 02:15:22 +00:00
renovate[bot]
bc6fc24fbd chore(deps): update dependency turndown to v7.2.1 2025-08-15 02:14:46 +00:00
Elian Doran
c039f06c2b chore(react/settings): fix a margin between radios 2025-08-15 00:19:37 +03:00
Elian Doran
520effbbb7 chore(react/settings): bring back style 2025-08-15 00:08:43 +03:00
Elian Doran
a42d780724 refactor(react/settings): fix type errors 2025-08-14 23:58:58 +03:00
Elian Doran
da92255dd6 refactor(react/settings): use better option mechanism 2025-08-14 23:54:32 +03:00
Elian Doran
cce3d3bce8 chore(react/settings): port date settings 2025-08-14 23:51:27 +03:00
Elian Doran
f524e99290 chore(react/settings): port first day of the week 2025-08-14 23:37:25 +03:00
Elian Doran
ba19fc7cf3 chore(react/settings): port formatting locale 2025-08-14 23:32:44 +03:00
Elian Doran
22c3de582f chore(react/settings): port language selection 2025-08-14 23:25:44 +03:00
Elian Doran
48896e67cb chore(react/settings): remove unnecessary ribbon settings 2025-08-14 23:11:13 +03:00
Elian Doran
16cd91eb02 feat(react/settings): port database anonymization 2025-08-14 23:10:53 +03:00
Elian Doran
7e03774b8e feat(react/settings): port vacuum database 2025-08-14 22:42:49 +03:00
Elian Doran
a04f6e3858 feat(react/settings): port integrity check 2025-08-14 22:40:54 +03:00
Elian Doran
96eb1be556 feat(react/settings): port advanced sync options 2025-08-14 22:35:58 +03:00
Jon Fuller
f8e20a1405 Update README.md (#6648) 2025-08-14 12:31:35 -07:00
Elian Doran
c67c3a6861 feat(react/settings): port images 2025-08-14 22:27:07 +03:00
Elian Doran
d04897e011 feat(react/settings): port related settings 2025-08-14 22:05:45 +03:00
MeIchthys
558ae1a2ea Update README.md
- Update links to point to new TriliumNext/Trilium repo
- Update a couple broken links
2025-08-14 14:59:08 -04:00
Elian Doran
64bffb82b1 feat(react/settings): port max content width 2025-08-14 21:55:16 +03:00
Elian Doran
81ac390eab feat(react/settings): port electron integration 2025-08-14 21:44:30 +03:00
Elian Doran
0db556fac2 feat(react/settings): port font size 2025-08-14 21:31:09 +03:00
Elian Doran
2793df06c4 fix(react/settings): useTriliumEvent not cleaning up properly 2025-08-14 21:05:24 +03:00
Elian Doran
e7b448e2bc fix(react/settings): event leak in useOption 2025-08-14 19:55:45 +03:00
Elian Doran
d2bc72d54f chore(react/settings): port font family settings 2025-08-14 19:25:22 +03:00
Elian Doran
83b22b4861 chore(react/settings): allow combo to have any possible object structure 2025-08-14 18:51:32 +03:00
Elian Doran
d42a949602 refactor(react/settings): use separate components inside same file 2025-08-14 18:29:08 +03:00
Elian Doran
83e1512b59 feat(react/settings): port override theme fonts 2025-08-14 18:26:40 +03:00
Elian Doran
ba6a1ec584 feat(react/settings): port theme switch 2025-08-14 18:18:45 +03:00
Elian Doran
6685e583f2 chore(react/settings): make layout switch functional 2025-08-14 17:59:17 +03:00
Elian Doran
d6032c912e chore(react/settings): improve layout 2025-08-14 17:54:52 +03:00
Elian Doran
25527ecc21 fix(react/settings): not working properly when side-by-side in split 2025-08-14 17:53:24 +03:00
Elian Doran
e0e7bd42cc feat(react/settings): react to property change 2025-08-14 17:47:45 +03:00
Elian Doran
fbc1af56ed feat(react/settings): basic hook to read Trilium option 2025-08-14 17:36:11 +03:00
Elian Doran
8ff108db9e feat(react/settings): basic rendering of React content widgets 2025-08-14 17:19:38 +03:00
Elian Doran
1dfcf960d3 fix(client): missing calendar view language support 2025-08-14 15:20:08 +03:00
Elian Doran
9bdc51a3fb feat(i18n): add Japanese language 2025-08-14 14:51:57 +03:00
Elian Doran
dbf3bcfacf Merge remote-tracking branch 'weblate/main' 2025-08-14 14:34:30 +03:00
Elian Doran
3d5b269315 chore(docs): fix file 2025-08-14 14:23:37 +03:00
Elian Doran
48f97da9cc chore(forge/rpm): rename key properly 2025-08-14 14:10:33 +03:00
Elian Doran
9c954fbd81 Create CNAME 2025-08-14 13:53:25 +03:00
Elian Doran
c6bd41654f chore(forge/rpm): add public key 2025-08-14 13:40:23 +03:00
Francis C
d65a74bb23 Translated using Weblate (Japanese)
Currently translated at 96.8% (366 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-14 12:30:37 +02:00
acwr47
ff08bca042 Translated using Weblate (Japanese)
Currently translated at 41.6% (646 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-14 12:30:36 +02:00
Francis C
a5d3d2e3b4 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (1550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hant/
2025-08-14 12:30:35 +02:00
Bruno MARGUERIN
496a0667ee Translated using Weblate (French)
Currently translated at 71.1% (269 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/fr/
2025-08-14 12:30:34 +02:00
Bruno MARGUERIN
9be688b667 Translated using Weblate (French)
Currently translated at 80.7% (1252 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/fr/
2025-08-14 12:30:33 +02:00
Elian Doran
f3d9008c61 feat(forge): rpm signing (#6646) 2025-08-14 13:30:26 +03:00
Elian Doran
649a43c978 fix(forge): RPM signing not done on the right file 2025-08-14 12:45:18 +03:00
Elian Doran
50568704ca feat(forge): minor improvements to RPM signing 2025-08-14 12:40:19 +03:00
Elian Doran
b66b4dec83 feat(forge): proper rpm signing 2025-08-14 12:04:12 +03:00
Francis C
8d0e807435 Translated using Weblate (Japanese)
Currently translated at 96.8% (366 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-14 09:02:31 +00:00
acwr47
bf05ed7caf Translated using Weblate (Japanese)
Currently translated at 96.8% (366 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-14 09:02:29 +00:00
Elian Doran
b5080eff00 Translated using Weblate (Russian)
Currently translated at 55.6% (863 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-14 09:02:28 +00:00
Francis C
c474769dd6 Translated using Weblate (Japanese)
Currently translated at 35.4% (550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-14 09:02:27 +00:00
acwr47
a6ae01da0b Translated using Weblate (Japanese)
Currently translated at 35.4% (550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-14 09:02:25 +00:00
Francis C
2bf4c44dbf Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hant/
2025-08-14 09:02:24 +00:00
Francis C
5ca0fbba13 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (1550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hant/
2025-08-14 09:02:22 +00:00
Elian Doran
4cd84b2019 Translated using Weblate (Romanian)
Currently translated at 99.0% (1536 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ro/
2025-08-14 09:02:19 +00:00
Marcelo Popper Costa
c502a45cf5 Translated using Weblate (Portuguese (Brazil))
Currently translated at 22.3% (346 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-14 09:02:17 +00:00
Francis C
9e66914306 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (1550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hans/
2025-08-14 09:02:15 +00:00
Elian Doran
d33d27ee82 feat(forge): validate rpm signing 2025-08-14 11:45:59 +03:00
Elian Doran
e2b13573ae feat(forge): rpm signing 2025-08-14 10:43:38 +03:00
Elian Doran
ec74f5f1de feat(logs): provide an option to keep all logs (#6644) 2025-08-14 08:51:46 +03:00
Elian Doran
5dee56debc Add Traditional Chinese translation for README file & fix Docker Hub URL (#6645) 2025-08-14 08:43:08 +03:00
Francis C.
5623fc992d Update README-ZH_TW.md (tiny fix) 2025-08-14 12:04:45 +08:00
Francis C.
1d28bfc570 Update README-ZH_TW.md (tiny fix) 2025-08-14 11:25:53 +08:00
Francis C.
084327e973 Revise some words for Simplified Chinese translation 2025-08-14 11:20:32 +08:00
Francis C.
b2885efdc1 Update README-ZH_CN.md 2025-08-14 10:56:54 +08:00
Francis C.
b65a75f138 fix relative path for URLs 2025-08-14 10:27:41 +08:00
Francis C.
0ee7f50bb4 Move readme to docs folder 2025-08-14 10:15:03 +08:00
Francis C.
02ce21bc18 Add readme file translation for Traditional Chinese & fix Docker Hub URL 2025-08-14 10:12:14 +08:00
Romain DEP.
3ba487bb00 feat(logs): provide an option to keep all logs 2025-08-13 23:35:31 +02:00
Elian Doran
384a89b0e3 feat(etapi): also save note revision via etapi if needed too (#6602) 2025-08-13 19:45:56 +03:00
Elian Doran
e7fd9371b6 test(etapi): variable shadowing causing spurious error 2025-08-13 19:22:48 +03:00
Elian Doran
aa83429816 feat(logs): cleanup physical log files after 90 days by default (#6609) 2025-08-13 16:12:11 +03:00
Elian Doran
221ab02c24 docs(help): document backend logs retention 2025-08-13 16:10:11 +03:00
Elian Doran
0c4b751e8f Merge branch 'main' into feat/snapshot-etapi-notes-too 2025-08-13 15:17:27 +03:00
Elian Doran
43fd0924a1 feat(log): read from config.ini instead of options 2025-08-13 15:10:19 +03:00
Elian Doran
7a036fc777 fix(log): cyclic dependency to options breaking tests 2025-08-13 14:39:26 +03:00
Elian Doran
54efa6b38c Merge branch 'main' into feat/cleanup-logs 2025-08-13 13:26:52 +03:00
Elian Doran
6e37c9ee5a feat(search): improve search weights and operators (#6536) 2025-08-13 13:10:30 +03:00
Elian Doran
963f4586f3 docs: ✏️ Improve OIDC docs (#6628) 2025-08-13 13:03:37 +03:00
Elian Doran
4d0edebed3 Translations update from Hosted Weblate (#6627) 2025-08-13 12:03:28 +03:00
acwr47
cb39e8d0f8 Translated using Weblate (Japanese)
Currently translated at 72.4% (274 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-13 08:33:02 +00:00
Francis C
a336f472b8 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (1550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hans/
2025-08-13 08:33:01 +00:00
acwr47
0a097e72be Translated using Weblate (Japanese)
Currently translated at 63.7% (241 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-13 08:33:01 +00:00
acwr47
077f10af7b Translated using Weblate (Japanese)
Currently translated at 61.1% (231 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-13 08:33:00 +00:00
acwr47
9317658fc7 Translated using Weblate (Japanese)
Currently translated at 60.8% (230 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-13 08:32:59 +00:00
acwr47
21a13f2124 Translated using Weblate (Japanese)
Currently translated at 8.3% (130 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-13 08:32:59 +00:00
acwr47
db6658c05f Translated using Weblate (Japanese)
Currently translated at 55.0% (208 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-13 08:32:58 +00:00
acwr47
653af0bc06 Translated using Weblate (Japanese)
Currently translated at 20.6% (78 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-13 08:32:57 +00:00
acwr47
93c5281af7 Translated using Weblate (Japanese)
Currently translated at 20.3% (77 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-13 08:32:57 +00:00
Francis C
ce28fbc968 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (1550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hant/
2025-08-13 08:32:56 +00:00
Marcelo Popper Costa
eb41c45711 Translated using Weblate (Portuguese (Brazil))
Currently translated at 22.0% (342 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-13 08:32:56 +00:00
Francis C
17ab14e098 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (1550 of 1550 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hans/
2025-08-13 08:32:55 +00:00
Hosted Weblate
a42f7b4ece Update translation files
Updated by "Remove blank strings" add-on in Weblate.

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/
2025-08-13 08:32:54 +00:00
Elian Doran
c7d69fa66b chore(deps): update dependency copy-webpack-plugin to v13.0.1 (#6630) 2025-08-13 11:32:44 +03:00
renovate[bot]
1da5c083ee chore(deps): update dependency copy-webpack-plugin to v13.0.1 2025-08-13 08:13:22 +00:00
Elian Doran
4fb911da40 chore(deps): update dependency vite to v7.1.2 (#6633) 2025-08-13 11:09:38 +03:00
Elian Doran
881417f860 Revert "fix(print): table captions not displayed properly (closes #6483)"
This reverts commit 3e0ef10b25.
2025-08-13 11:06:53 +03:00
renovate[bot]
9748b8bf94 chore(deps): update dependency vite to v7.1.2 2025-08-13 08:01:05 +00:00
Elian Doran
337326da2b fix(deps): update ckeditor monorepo to v46.0.1 (#6635) 2025-08-13 10:58:17 +03:00
Elian Doran
a088134d9b fix(deps): update dependency tsx to v4.20.4 (#6636) 2025-08-13 10:58:07 +03:00
renovate[bot]
e49100f3f4 fix(deps): update dependency tsx to v4.20.4 2025-08-13 07:30:57 +00:00
renovate[bot]
3c638e1574 fix(deps): update ckeditor monorepo to v46.0.1 2025-08-13 07:30:22 +00:00
Elian Doran
9131edf021 chore(deps): update dependency esbuild to v0.25.9 (#6631) 2025-08-13 10:24:19 +03:00
Elian Doran
52a1318475 chore(deps): update svelte monorepo (#6639) 2025-08-13 10:22:30 +03:00
renovate[bot]
5a7483d7c7 chore(deps): update svelte monorepo 2025-08-13 05:32:46 +00:00
renovate[bot]
41f2748829 chore(deps): update dependency esbuild to v0.25.9 2025-08-13 05:29:40 +00:00
Elian Doran
66bd5268ca chore(deps): update typescript-eslint monorepo to v8.39.1 (#6634) 2025-08-13 08:27:52 +03:00
Elian Doran
ebef134af7 chore(deps): update dependency typedoc-plugin-missing-exports to v4.1.0 (#6637) 2025-08-13 08:27:30 +03:00
Elian Doran
1173bf22ab chore(deps): update dependency webdriverio to v9.19.1 (#6638) 2025-08-13 08:26:34 +03:00
Elian Doran
e8f6828168 chore(deps): update dependency @types/tabulator-tables to v6.2.10 (#6629) 2025-08-13 08:26:10 +03:00
Elian Doran
02c9339f9c chore(deps): update actions/checkout action to v5 (#6640) 2025-08-13 08:25:51 +03:00
renovate[bot]
c72bf42684 chore(deps): update actions/checkout action to v5 2025-08-13 01:52:37 +00:00
renovate[bot]
f42eeb7ee8 chore(deps): update dependency webdriverio to v9.19.1 2025-08-13 01:51:53 +00:00
renovate[bot]
3d876121cc chore(deps): update dependency typedoc-plugin-missing-exports to v4.1.0 2025-08-13 01:51:12 +00:00
renovate[bot]
f9bcd7d90a chore(deps): update typescript-eslint monorepo to v8.39.1 2025-08-13 01:49:16 +00:00
renovate[bot]
b3af14fccb chore(deps): update dependency @types/tabulator-tables to v6.2.10 2025-08-13 01:10:44 +00:00
Jin
d224f33913 docs: ✏️ Improve OIDC docs 2025-08-12 22:03:36 +02:00
Elian Doran
3a5f33ba91 Merge remote-tracking branch 'weblate/main' 2025-08-12 22:54:06 +03:00
Elian Doran
e1ae8701b2 feat(client): rename themes 2025-08-12 22:39:03 +03:00
Hosted Weblate
aff5a4d0d5 Update translation files
Updated by "Cleanup translation files" add-on in Weblate.

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/
2025-08-12 19:18:38 +00:00
Hosted Weblate
17467a9c29 Update translation files
Updated by "Cleanup translation files" add-on in Weblate.

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/
2025-08-12 19:18:33 +00:00
acwr47
ebed661863 Translated using Weblate (Japanese)
Currently translated at 15.6% (59 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-12 19:07:14 +00:00
Elian Doran
c2e9f4764b Call to action (switch to Next theme, enable background effects) (#6625) 2025-08-12 22:07:04 +03:00
Elian Doran
7e5b87f00a feat(desktop): enable background effects by default for new users 2025-08-12 22:06:19 +03:00
Elian Doran
70182e863c test: enable background effects in integration DB 2025-08-12 21:41:46 +03:00
Elian Doran
f0d30c4e34 fix(canvas): links not working on desktop (fixes #6606) 2025-08-12 21:31:04 +03:00
Elian Doran
013e7a6aa4 refactor(canvas): use new rendering mechanism 2025-08-12 21:04:57 +03:00
Elian Doran
1b25b18d9e refactor(canvas): use tsx where appropriate 2025-08-12 20:59:45 +03:00
Elian Doran
72ff384187 refactor(call_to_action): clean up 2025-08-12 20:12:06 +03:00
Elian Doran
bac048f60f feat(call_to_action): allow dismissal 2025-08-12 19:37:32 +03:00
Elian Doran
d8d0a64134 Translations update from Hosted Weblate (#6624) 2025-08-12 19:15:08 +03:00
Elian Doran
b2db87db4e chore(call-to-action): add IDs for each call to action 2025-08-12 19:05:33 +03:00
Elian Doran
1baaee582e refactor(call-to-action): split into separate file & add translations 2025-08-12 18:42:55 +03:00
nejcmenard
9212b72351 Translated using Weblate (Slovenian)
Currently translated at 1.3% (5 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/sl/
2025-08-12 17:37:58 +02:00
nejcmenard
24af820477 Translated using Weblate (Slovenian)
Currently translated at 0.3% (5 of 1544 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/sl/
2025-08-12 17:37:58 +02:00
acwr47
6c4c2d22c6 Translated using Weblate (Japanese)
Currently translated at 15.3% (58 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/
2025-08-12 17:37:58 +02:00
acwr47
2e9b20be71 Translated using Weblate (Japanese)
Currently translated at 8.4% (130 of 1544 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-12 17:37:58 +02:00
Francis C
3216de5d89 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hant/
2025-08-12 17:37:57 +02:00
Francis C
4bf7cb8099 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 75.5% (1166 of 1544 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hant/
2025-08-12 17:37:57 +02:00
Elian Doran
4871dbd7ef feat(call_to_action): add actual functionality on action buttons 2025-08-12 17:48:44 +03:00
Elian Doran
e125809fe0 fix(call_to_action): error if no items 2025-08-12 17:42:18 +03:00
Elian Doran
27b80b573f feat(call_to_action): filter call to actions 2025-08-12 17:05:52 +03:00
Elian Doran
38d6ae87b6 feat(call-to-action): add support for multiple actions 2025-08-12 16:35:27 +03:00
Elian Doran
1a7cbc13e0 feat(call-to-action): basic dialog 2025-08-12 15:57:29 +03:00
Elian Doran
8e4691d4a4 fix(calendar): missing locale for Russian 2025-08-12 14:58:39 +03:00
Elian Doran
b371337ed2 Translations update from Hosted Weblate (#6623) 2025-08-12 10:55:28 +03:00
nejcmenard
4d4b76ce39 Added translation using Weblate (Slovenian) 2025-08-12 09:46:43 +02:00
nejcmenard
289d3e9882 Added translation using Weblate (Slovenian) 2025-08-12 09:46:42 +02:00
acwr47
a57eb8f27f Translated using Weblate (Japanese)
Currently translated at 1.4% (22 of 1544 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-12 09:46:42 +02:00
Elian Doran
27023f1fd5 only run nightly.yml on TriliumNext/Trilium (#6620) 2025-08-12 09:27:14 +03:00
Elian Doran
20a152993f feat(): Update codemirror-themes and add new Cobalt2 theme (#6621) 2025-08-12 09:26:14 +03:00
Elian Doran
ba7636db75 Translations update from Hosted Weblate (#6622) 2025-08-12 09:08:55 +03:00
Flowerlywind
e3e51a2e1f Translated using Weblate (Vietnamese)
Currently translated at 1.8% (29 of 1544 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/vi/
2025-08-12 07:46:18 +02:00
hulmgulm
93b601fe98 Translated using Weblate (German)
Currently translated at 80.4% (1242 of 1544 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/de/
2025-08-12 07:46:18 +02:00
hulmgulm
203ebb0e7a Update codemirror-themes and add new Cobalt2 theme 2025-08-12 07:09:14 +02:00
matt wilkie
041c2e5693 Merge branch 'main' into mhw-nightly 2025-08-11 21:11:17 -07:00
matt wilkie
258c0d511e only run nightly.yml on TriliumNext/Trilium
stops nightly CI/CD errors on forks without having to disable CI/CD entirely
2025-08-11 21:07:15 -07:00
Elian Doran
15705553c7 Adds a get/set to bNote to allow getting an Attribute by it's Id, or … (#6596) 2025-08-11 22:43:11 +03:00
Elian Doran
27f023e399 chore(deps): update dependency typedoc to v0.28.10 (#6611) 2025-08-11 22:31:27 +03:00
Elian Doran
0d2242171c fix(deps): update dependency i18next to v25.3.4 (#6612) 2025-08-11 22:30:56 +03:00
Elian Doran
0c62ecda65 Translations update from Hosted Weblate (#6619) 2025-08-11 22:30:32 +03:00
wild
7cd7fec93b Translated using Weblate (Serbian)
Currently translated at 27.8% (435 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/sr/
2025-08-11 19:28:12 +00:00
infaktor
cfab5e6217 Translated using Weblate (German)
Currently translated at 80.8% (1261 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/de/
2025-08-11 19:28:11 +00:00
Grant Zhu
0c313e8b8f Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (1560 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hans/
2025-08-11 19:28:10 +00:00
Grip
61366061e6 Translated using Weblate (Italian)
Currently translated at 35.1% (133 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/it/
2025-08-11 19:28:09 +00:00
Grip
b2c0685c09 Translated using Weblate (Italian)
Currently translated at 13.9% (218 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/it/
2025-08-11 19:28:09 +00:00
Elian Doran
e3ee284e91 fix(deps): update fullcalendar monorepo to v6.1.19 (#6613) 2025-08-11 22:27:58 +03:00
Elian Doran
58901855af React modals (#6544) 2025-08-11 22:26:14 +03:00
Elian Doran
c7f8a49c47 docs(readme): wrong link to the latest release 2025-08-11 15:09:26 +03:00
renovate[bot]
10685fe183 fix(deps): update fullcalendar monorepo to v6.1.19 2025-08-11 02:03:23 +00:00
renovate[bot]
9e514fe95e fix(deps): update dependency i18next to v25.3.4 2025-08-11 02:02:51 +00:00
renovate[bot]
f28a319e26 chore(deps): update dependency typedoc to v0.28.10 2025-08-11 02:02:15 +00:00
perf3ct
decfb58142 feat(logs): cleanup physical log files after 90 days by default
asdf
2025-08-11 00:50:40 +00:00
perf3ct
415bbc3b0a feat(docs): also update documentation for search updates 2025-08-10 23:16:37 +00:00
perf3ct
5b669ca287 feat(search): also implement defensive checks for undefined notes 2025-08-10 21:59:20 +00:00
Elian Doran
1700217241 fix(react/dialogs): broken test in cheatsheet 2025-08-10 23:37:05 +03:00
Elian Doran
f00c0d5d73 chore(deps): update dependency @anthropic-ai/sdk to v0.59.0 (#6594) 2025-08-10 23:11:36 +03:00
Elian Doran
64ce0d2911 Translations update from Hosted Weblate (#6603) 2025-08-10 23:01:39 +03:00
Elian Doran
82dce7a0d3 fix(react/dialogs): restore jump to note text 2025-08-10 22:41:20 +03:00
Elian Doran
b94f67aa72 fix(react/dialogs): entering command palette 2025-08-10 21:53:21 +03:00
Elian Doran
1ff77a1464 fix(react/dialogs): jump to note not supporting spaces 2025-08-10 21:07:41 +03:00
Elian Doran
adb0e1e844 chore(react/dialogs): remove unnecessary close translation 2025-08-10 20:39:41 +03:00
Elian Doran
2043a06a48 chore(react/dialogs): remove empty translations 2025-08-10 20:32:08 +03:00
Elian Doran
738ebb66ac Merge remote-tracking branch 'origin/main' into react/modals 2025-08-10 20:28:51 +03:00
Elian Doran
abf1f6c041 fix(react/dialogs): revision list not full height 2025-08-10 20:24:20 +03:00
Flowerlywind
7db0e90506 Translated using Weblate (Vietnamese)
Currently translated at 0.5% (2 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/vi/
2025-08-10 19:07:49 +02:00
Flowerlywind
400f9cf911 Translated using Weblate (Vietnamese)
Currently translated at 1.0% (17 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/vi/
2025-08-10 19:07:48 +02:00
Elian Doran
2d3b99c959 fix(react/dialogs): restore focus after modal is dismissed 2025-08-10 20:06:05 +03:00
Elian Doran
fd1ea05c78 fix(react/dialogs): add link default text not working 2025-08-10 19:51:56 +03:00
Elian Doran
d7c4b8f530 fix(react/dialogs): undelete note not working 2025-08-10 19:19:48 +03:00
Elian Doran
238f358d6a fix(react/dialogs): bring back keyboard navigation for note list 2025-08-10 18:56:37 +03:00
Elian Doran
50afdca150 fix(react/dialogs): autocomplete not reacting to clear 2025-08-10 18:19:39 +03:00
Elian Doran
b5555d94f5 fix(react/dialogs): note autocomplete not restoring note 2025-08-10 18:01:36 +03:00
Elian Doran
3d81633214 fix(react/dialogs): add back selection in revisions list 2025-08-10 17:53:45 +03:00
Elian Doran
5db7997a17 fix(react/dialogs): revisions not refreshing after deleting an item 2025-08-10 17:48:17 +03:00
Elian Doran
71dd428919 fix(react/dialogs): conform dialog not reporting properly 2025-08-10 17:41:31 +03:00
Elian Doran
a20d66a6b5 fix(react/dialogs): some dialogs are not displayed on top 2025-08-10 17:37:48 +03:00
Elian Doran
3caefa5409 refactor(react): use memoization where appropriate 2025-08-10 17:19:39 +03:00
Elian Doran
a6e56be55a refactor(react): move effects outside conditional 2025-08-10 17:15:38 +03:00
Flowerlywind
6d582f09be Added translation using Weblate (Vietnamese) 2025-08-10 15:58:52 +02:00
Flowerlywind
40cd46cd09 Added translation using Weblate (Vietnamese) 2025-08-10 15:58:51 +02:00
renovate[bot]
3cc59149cf chore(deps): update dependency @anthropic-ai/sdk to v0.59.0 2025-08-10 12:44:22 +00:00
Elian Doran
e659266d62 refactor(react): remove use of any 2025-08-10 15:28:52 +03:00
Elian Doran
14e09f5ea0 refactor(react): normalize imports 2025-08-10 15:21:49 +03:00
Elian Doran
11f6462a31 fix(react/dialogs): events triggering even when modal is hidden 2025-08-10 15:11:43 +03:00
Elian Doran
48eebbe2fe refactor(react/dialogs): don't render modals unless they are actually shown 2025-08-10 14:55:41 +03:00
Elian Doran
f7093c035b refactor(react/dialogs): add documentation & enforce some properties 2025-08-10 14:49:58 +03:00
Elian Doran
b25e9cdee6 fix(react/dialogs): delete notes not properly reporting state 2025-08-10 14:46:40 +03:00
Elian Doran
5cd7e4707a fix(react/dialogs): dollar signs in help tooltips 2025-08-10 14:07:54 +03:00
Elian Doran
861374bb87 fix(react/dialogs): bulk actions not working in search notes 2025-08-10 14:06:14 +03:00
Elian Doran
d3519b3059 refactor(react/dialogs): solve client errors 2025-08-10 13:02:17 +03:00
Elian Doran
da1f18c60f refactor(react/dialogs): integrate proper closing of modal 2025-08-10 12:22:11 +03:00
Elian Doran
b7482f2a6a refactor(react/dialogs): use shown everywhere 2025-08-10 11:38:12 +03:00
Elian Doran
fd616cafca fix(deps): update eslint monorepo to v9.33.0 (#6595) 2025-08-10 09:22:13 +03:00
Elian Doran
b262a5181f fix(deps): update dependency mind-elixir to v5.0.5 (#6598) 2025-08-10 09:21:52 +03:00
Elian Doran
adb54a9054 fix(deps): update dependency eslint-linter-browserify to v9.33.0 (#6599) 2025-08-10 09:21:21 +03:00
Elian Doran
5eb05f5550 Translations update from Hosted Weblate (#6600) 2025-08-10 09:20:37 +03:00
perf3ct
2950c5eaa4 feat(etapi): also save note revision via etapi if needed too
asdf
2025-08-10 05:06:48 +00:00
infaktor
16fd67c070 Translated using Weblate (German)
Currently translated at 69.0% (261 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/de/
2025-08-10 05:38:12 +02:00
Marcelo Nolasco
9e3559f97c Translated using Weblate (Portuguese (Brazil))
Currently translated at 23.2% (363 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-10 05:38:12 +02:00
infaktor
83eea30ea0 Translated using Weblate (German)
Currently translated at 80.8% (1261 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/de/
2025-08-10 05:38:11 +02:00
renovate[bot]
6ceccf1c7a fix(deps): update dependency eslint-linter-browserify to v9.33.0 2025-08-10 01:33:44 +00:00
renovate[bot]
31e1c4c712 fix(deps): update dependency mind-elixir to v5.0.5 2025-08-10 01:32:47 +00:00
Elian Doran
fa97ec6c72 refactor(react/dialogs): integrate self-triggering modal in more dialogs 2025-08-10 00:32:26 +03:00
Elian Doran
cd5467bf5c refactor(react/bulk_actions): set up way to self-enable modal 2025-08-09 23:12:27 +03:00
Elian Doran
899f85f4e7 chore(react/bulk_actions): clean up 2025-08-09 20:37:45 +03:00
Elian Doran
7c79fbefa6 feat(react/bulk_actions): port execute script 2025-08-09 20:34:33 +03:00
Elian Doran
18c6fe7ebd feat(react/bulk_actions): port update relation target 2025-08-09 20:26:21 +03:00
Elian Doran
6f6643d758 feat(react/bulk_actions): port rename relation 2025-08-09 20:09:27 +03:00
Elian Doran
356adebbce feat(react/bulk_actions): improve delete relation 2025-08-09 20:01:48 +03:00
Elian Doran
5c8e4fd6fd feat(react/bulk_actions): improve note auto complete handling 2025-08-09 19:49:32 +03:00
Elian Doran
5be9bb47a7 feat(react/bulk_actions): port add relation 2025-08-09 19:41:49 +03:00
Elian Doran
60c5dc525b feat(react/bulk_actions): port rename note 2025-08-09 19:30:35 +03:00
Elian Doran
abfffcec07 feat(react/bulk_actions): clear autocomplete selection 2025-08-09 19:10:40 +03:00
Elian Doran
09b12052f0 feat(react/bulk_actions): port move note 2025-08-09 18:45:39 +03:00
Elian Doran
78bb0ab016 Added zen mode to mobile layout (#6584) 2025-08-09 18:00:03 +03:00
Papierkorb2292
4cd4c2f607 Apply suggestions from code review
Use `mobile` class on body to determine the style of `CloseZenButton` instead of an extra class

Co-authored-by: Elian Doran <contact@eliandoran.me>
2025-08-09 16:31:56 +02:00
Elian Doran
f95b5d6f14 feat(react/bulk_actions): port delete revisions 2025-08-09 16:55:51 +03:00
Elian Doran
4a53be1e33 feat(react/bulk_actions): port delete note 2025-08-09 16:47:05 +03:00
Elian Doran
cbbe845d7b fix: remove unnecessary idea directory (#6554) 2025-08-09 13:37:41 +03:00
Elian Doran
b2b52e92a4 Added Simple Update/Autoupdate Script (#6568) 2025-08-09 13:35:39 +03:00
renovate[bot]
15a97a4675 fix(deps): update eslint monorepo to v9.33.0 2025-08-09 10:31:41 +00:00
Elian Doran
a01f25ec12 chore(deps): update dependency @sveltejs/vite-plugin-svelte to v6.1.1 (#6590) 2025-08-09 13:31:16 +03:00
Elian Doran
2f175765ec chore(deps): update dependency lint-staged to v16.1.5 (#6592) 2025-08-09 13:31:00 +03:00
Elian Doran
6a7ae72b1b chore(deps): update dependency tmp to v0.2.5 (#6593) 2025-08-09 13:30:31 +03:00
Elian Doran
e396bb1641 chore(deps): update dependency @types/node to v22.17.1 (#6591) 2025-08-09 13:30:10 +03:00
Elian Doran
baedac4746 chore(deps): update dependency @stylistic/eslint-plugin to v5.2.3 (#6589) 2025-08-09 13:28:05 +03:00
Elian Doran
268ef626ca chore(deps): update dependency @eslint/compat to v1.3.2 (#6588) 2025-08-09 13:27:37 +03:00
Elian Doran
40c7ad4b46 fix(react/bulk_actions): delete button not working 2025-08-09 10:12:26 +03:00
Elian Doran
54f9ce87f9 feat(react/bulk_actions): port delete/rename label 2025-08-09 10:04:58 +03:00
Elian Doran
12b8a70e5c feat(react/bulk_actions): port update label value 2025-08-09 09:28:48 +03:00
Elian Doran
acf204d0e3 fix(react/bulk_actions): spaced update triggering too fast 2025-08-09 09:15:54 +03:00
Geekswordsman
ee19f9ccaa Adds a get/set to bNote to allow getting an Attribute by it's Id, or setting an Attribute's value by it's Id 2025-08-08 21:47:20 -04:00
renovate[bot]
34c0cf33b9 chore(deps): update dependency tmp to v0.2.5 2025-08-09 00:41:34 +00:00
renovate[bot]
34ec624e46 chore(deps): update dependency lint-staged to v16.1.5 2025-08-09 00:40:50 +00:00
renovate[bot]
056d3f9f36 chore(deps): update dependency @types/node to v22.17.1 2025-08-09 00:40:21 +00:00
renovate[bot]
040673af0b chore(deps): update dependency @sveltejs/vite-plugin-svelte to v6.1.1 2025-08-09 00:39:45 +00:00
renovate[bot]
48fb0c5e21 chore(deps): update dependency @stylistic/eslint-plugin to v5.2.3 2025-08-09 00:39:01 +00:00
renovate[bot]
4c1a55708f chore(deps): update dependency @eslint/compat to v1.3.2 2025-08-09 00:38:56 +00:00
Elian Doran
6e1951b356 feat(react/bulk_actions): port add_label 2025-08-08 23:23:07 +03:00
Elian Doran
3dd6b05d2e fix(react/dialog): react to adding new bulk actions 2025-08-08 22:01:30 +03:00
Elian Doran
05f1ae01f3 Merge remote-tracking branch 'origin/main' into react/modals 2025-08-08 21:37:13 +03:00
Elian Doran
3975041798 feat(react): set up hook for reacting to events 2025-08-08 20:08:06 +03:00
serossi
3a29d65777 Merge branch 'TriliumNext:main' into patch-1 2025-08-08 15:29:44 +02:00
Elian Doran
eeeecb3988 chore(deps): update dependency electron to v37.2.6 (#6573) 2025-08-08 13:18:24 +03:00
Elian Doran
28ababcbb9 chore(deps): update dependency vite to v7.1.1 (#6583) 2025-08-08 13:18:17 +03:00
Elian Doran
f382943af3 Translations update from Hosted Weblate (#6585) 2025-08-08 13:17:42 +03:00
renovate[bot]
fa38332a6c chore(deps): update dependency vite to v7.1.1 2025-08-08 09:46:23 +00:00
renovate[bot]
5a58fcde96 chore(deps): update dependency electron to v37.2.6 2025-08-08 09:45:02 +00:00
Doğukan Çağatay
62d048433b Translated using Weblate (Turkish)
Currently translated at 1.6% (26 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/tr/
2025-08-08 09:42:50 +00:00
Doğukan Çağatay
db4ba53449 Added translation using Weblate (Turkish) 2025-08-08 09:42:50 +00:00
Doğukan Çağatay
da20916767 Added translation using Weblate (Turkish) 2025-08-08 09:42:49 +00:00
Marcelo Nolasco
b1e12182ce Translated using Weblate (Portuguese (Brazil))
Currently translated at 22.3% (348 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-08 09:42:48 +00:00
Elian Doran
80b2061935 chore(deps): update dependency stylelint to v16.23.1 (#6582) 2025-08-08 12:42:41 +03:00
Elian Doran
8ce92f8c93 chore(deps): update dependency ollama to v0.5.17 (#6580) 2025-08-08 12:42:32 +03:00
Elian Doran
05cd8cb547 chore(deps): update svelte monorepo (#6575) 2025-08-08 12:42:23 +03:00
Elian Doran
6e7d0bc51b chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.3 (#6574) 2025-08-08 12:42:15 +03:00
renovate[bot]
b9aede23e6 chore(deps): update svelte monorepo 2025-08-08 09:42:12 +00:00
renovate[bot]
1d52988826 chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.3 2025-08-08 09:41:29 +00:00
Elian Doran
ebe29f41f9 chore(deps): update dependency tmp to v0.2.4 [security] (#6572) 2025-08-08 12:40:01 +03:00
Elian Doran
598591a2da chore(deps): update electron-forge monorepo to v7.8.3 (#6564) 2025-08-08 12:39:06 +03:00
Elian Doran
32c2860b68 chore(deps): update dependency lint-staged to v16.1.4 (#6550) 2025-08-08 12:38:43 +03:00
Papierkorb2292
d975790e79 Added zen mode for mobile layout (useful on tablets) 2025-08-08 09:15:01 +02:00
renovate[bot]
3e1f74ae93 chore(deps): update electron-forge monorepo to v7.8.3 2025-08-08 06:51:40 +00:00
renovate[bot]
81a8908b98 chore(deps): update dependency stylelint to v16.23.1 2025-08-08 06:51:11 +00:00
renovate[bot]
892dfe2340 chore(deps): update dependency ollama to v0.5.17 2025-08-08 06:49:34 +00:00
renovate[bot]
fd175eb8a8 chore(deps): update dependency lint-staged to v16.1.4 2025-08-08 06:49:02 +00:00
renovate[bot]
c98f6d96d5 chore(deps): update dependency tmp to v0.2.4 [security] 2025-08-08 06:47:58 +00:00
Elian Doran
35b628e799 refactor(i18n): add type safety for Electron locale IDs 2025-08-08 08:35:02 +03:00
Elian Doran
49b79c016d Translations update from Hosted Weblate (#6579) 2025-08-08 08:11:08 +03:00
serossi
4d28df7a89 Merge branch 'main' into patch-1 2025-08-07 23:31:59 +02:00
Languages add-on
25a9a8a724 Added translation using Weblate (Serbian) 2025-08-07 22:58:31 +02:00
Languages add-on
313a61ec48 Added translation using Weblate (Japanese) 2025-08-07 22:58:29 +02:00
Languages add-on
a2eab03ee2 Added translation using Weblate (Russian) 2025-08-07 22:58:28 +02:00
Languages add-on
a563b1c9a0 Added translation using Weblate (Greek) 2025-08-07 22:58:27 +02:00
Elian Doran
20018b9c21 Adds duplicateSubtree to backend API. (#6577) 2025-08-07 23:57:28 +03:00
Geekswordsman
0a9bd5f6d1 Merge branch 'main' into geek-api-duplicate-subtree 2025-08-07 16:54:46 -04:00
Geekswordsman
911fee0213 Updated documentation for the duplicateSubtree, and removed commented out code per request. 2025-08-07 16:54:21 -04:00
Elian Doran
ffe4b53eee Translations update from Hosted Weblate (#6578) 2025-08-07 23:51:49 +03:00
Antonio Liccardo (TuxmAL)
cd5a68d230 Translated using Weblate (Italian)
Currently translated at 33.0% (125 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/it/
2025-08-07 22:44:23 +02:00
Elian Doran
95a2a69e0a feat(i18n): add Russian 2025-08-07 23:44:11 +03:00
Elian Doran
360b5d6de4 e2e(server): broken test after translations were introduced 2025-08-07 23:34:28 +03:00
Elian Doran
bf50883e40 Translations update from Hosted Weblate (#6569) 2025-08-07 23:17:43 +03:00
Geekswordsman
8e04690568 Adds duplicateSubtree to backend API. 2025-08-07 15:33:43 -04:00
Elian Doran
bd6c690160 chore(react/dialog): improve recent changes 2025-08-07 22:31:51 +03:00
Elian Doran
c0d7278827 refactor(react/dialogs): deduplicate raw HTML component 2025-08-07 22:00:37 +03:00
Elian Doran
f9eb0a20f7 feat(react/dialogs): port bulk actions 2025-08-07 21:58:47 +03:00
Elian Doran
8d27a5aa39 feat(react/dialogs): port import 2025-08-07 19:20:35 +03:00
Elian Doran
90f9416524 feat(react/modals): port export dialog 2025-08-07 18:52:39 +03:00
Kuzma Simonov
ae0af8b9c7 Translated using Weblate (Russian)
Currently translated at 56.8% (887 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-07 06:20:12 +00:00
Eduard Frigola
a03a0f8a75 Translated using Weblate (Catalan)
Currently translated at 18.5% (70 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ca/
2025-08-07 06:20:11 +00:00
Eduard Frigola
f0f27a9065 Translated using Weblate (Catalan)
Currently translated at 8.3% (130 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ca/
2025-08-07 06:20:11 +00:00
Antonio Liccardo (TuxmAL)
181d5ee36a Translated using Weblate (Italian)
Currently translated at 22.4% (85 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/it/
2025-08-07 06:20:10 +00:00
Antonio Liccardo (TuxmAL)
2758a230ac Translated using Weblate (Italian)
Currently translated at 13.7% (214 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/it/
2025-08-07 06:20:10 +00:00
Marcelo Nolasco
a46d32ed75 Translated using Weblate (Portuguese (Brazil))
Currently translated at 17.4% (272 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-07 06:20:09 +00:00
J. Lavoie
b2bcae8b74 Translated using Weblate (French)
Currently translated at 81.6% (1273 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/fr/
2025-08-07 06:20:08 +00:00
Elian Doran
49d662afba feat(ci): add way to reset signing 2025-08-07 09:19:54 +03:00
Elian Doran
a593ce7c40 fix(react/dialog): delete note not working properly 2025-08-06 23:11:53 +03:00
Elian Doran
31fbf2cb57 fix(react/dialogs): port recent_changes 2025-08-06 23:11:31 +03:00
Elian Doran
c0d3027e65 fix(react/dialogs): unnecessary listeners on modal render 2025-08-06 20:54:29 +03:00
Elian Doran
bde270b73f fix(react/dialogs): some type errors 2025-08-06 20:29:19 +03:00
Elian Doran
edd18b53d0 refactor(react/dialogs): solve some type errors 2025-08-06 18:10:02 +03:00
Elian Doran
2ad4b26c9e chore(react/dialogs): reintroduce footer in note revisions 2025-08-06 18:01:26 +03:00
serossi
f39a5c55ba Update Packaged version for Linux.md
Updated the Script for Version check
2025-08-06 16:30:39 +02:00
Elian Doran
0af5feab79 refactor(react/dialogs): deduplicate data types 2025-08-06 17:11:01 +03:00
serossi
68dd54a100 Update Packaged version for Linux.md
Added Autoupdate Script for Server from Github releases
2025-08-06 16:07:27 +02:00
Elian Doran
7a0f148d28 chore(react/dialogs): add back content buttons to note revision 2025-08-06 17:01:32 +03:00
Elian Doran
958b1592f8 chore(react/dialogs): add back rendering in revisions 2025-08-06 16:53:58 +03:00
Elian Doran
7ac0828ae7 feat(react/dialogs): port note revisions 2025-08-06 16:16:30 +03:00
Elian Doran
f7e7b38551 chore(react/dialogs): add back badges for choose note type 2025-08-06 12:13:38 +03:00
Elian Doran
33e3112290 feat(react/dialog): port note_type_chooser 2025-08-06 12:08:17 +03:00
Elian Doran
2a27666c53 Update actions/download-artifact action to v5 (#6567) 2025-08-06 09:36:36 +03:00
Elian Doran
f2d45cb780 Update dependency @anthropic-ai/sdk to v0.58.0 (#6565) 2025-08-06 09:36:01 +03:00
Elian Doran
c4b91c9777 Update dependency fs-extra to v11.3.1 (#6563) 2025-08-06 09:35:50 +03:00
Elian Doran
fa06f56f5d Update dependency openai to v5.12.0 (#6566) 2025-08-06 08:44:06 +03:00
Elian Doran
519b962af3 Merge branch 'main' into renovate/openai-5.x 2025-08-06 08:43:56 +03:00
Elian Doran
31e6ac2349 Update dependency @sveltejs/kit to v2.27.1 (#6562) 2025-08-06 08:43:33 +03:00
renovate[bot]
ed3ba2745f Update actions/download-artifact action to v5 2025-08-06 02:33:21 +00:00
renovate[bot]
f5b7648d6d Update dependency openai to v5.12.0 2025-08-06 02:33:15 +00:00
renovate[bot]
2d537b82f6 Update dependency @anthropic-ai/sdk to v0.58.0 2025-08-06 02:32:25 +00:00
renovate[bot]
073354fe04 Update dependency fs-extra to v11.3.1 2025-08-06 02:31:08 +00:00
renovate[bot]
165d093928 Update dependency @sveltejs/kit to v2.27.1 2025-08-06 02:30:30 +00:00
Elian Doran
e8cf3f4a10 Translations update from Hosted Weblate (#6552) 2025-08-06 00:02:25 +03:00
Elian Doran
2a40d6bb7e feat(react/dialogs): port upload attachments 2025-08-05 23:03:38 +03:00
Elian Doran
f196a78728 feat(react/checkbox): use bootstrap tooltip 2025-08-05 22:34:45 +03:00
Elian Doran
523c7ac273 chore(react/dialogs): improve display of description 2025-08-05 22:11:16 +03:00
Eduard Frigola
c36b00994b Added translation using Weblate (Catalan) 2025-08-05 21:09:05 +02:00
Eduard Frigola
76b856bfe5 Added translation using Weblate (Catalan) 2025-08-05 21:09:04 +02:00
Antonio Liccardo (TuxmAL)
7b084035a3 Translated using Weblate (Italian)
Currently translated at 9.6% (150 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/it/
2025-08-05 21:09:03 +02:00
Vincent
59fbdaa879 Translated using Weblate (French)
Currently translated at 63.7% (241 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/fr/
2025-08-05 21:09:03 +02:00
Elian Doran
ce324586f8 fix(react/dialogs): missing autocomplete opts 2025-08-05 21:15:02 +03:00
Elian Doran
35bd210062 fix(react/dialogs): recent notes not triggered in autocomplete 2025-08-05 21:15:02 +03:00
Elian Doran
0cfe3351bb feat(react/dialogs): port include_note 2025-08-05 21:15:02 +03:00
Elian Doran
7202f47716 feat(react/dialogs): port cheatsheet 2025-08-05 21:15:02 +03:00
Elian Doran
bde4545afc feat(react/dialogs): port prompt 2025-08-05 21:15:02 +03:00
Elian Doran
b3c81ce5f2 feat(react/dialogs): port password_not_set 2025-08-05 21:15:02 +03:00
Elian Doran
02b0d1fb5e refactor(react/dialogs): separate alert component 2025-08-05 21:15:02 +03:00
Elian Doran
87d9ea06f3 feat(react/dialogs): port delete_notes 2025-08-05 21:15:02 +03:00
Adorian Doran
a4e6a964c9 feat(react/dialogs): fix broken class name 2025-08-05 20:00:39 +03:00
Elian Doran
79c5d479fc feat(react/dialogs): port incorrect_cpu_arch 2025-08-05 15:39:49 +03:00
Elian Doran
8f0a9f91c1 feat(react/dialogs): port the rest of confirm 2025-08-05 15:13:09 +03:00
Elian Doran
93fae9cc8c feat(react/dialogs): port confirm dialog partially 2025-08-05 14:25:21 +03:00
Aris Kallergis
1046321117 Translated using Weblate (Greek)
Currently translated at 0.7% (11 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/el/
2025-08-05 13:22:12 +02:00
Antonio Liccardo (TuxmAL)
00fc92764b Translated using Weblate (Italian)
Currently translated at 7.1% (111 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/it/
2025-08-05 13:22:12 +02:00
Aris Kallergis
dea8bc307e Added translation using Weblate (Greek) 2025-08-05 11:11:45 +02:00
Kuzma Simonov
18a4fbaa4b Translated using Weblate (Russian)
Currently translated at 53.7% (838 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-05 11:11:44 +02:00
Hosted Weblate
3efc4b13d5 Update translation files
Updated by "Remove blank strings" add-on in Weblate.

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/
2025-08-05 07:41:24 +02:00
Kuzma Simonov
952456a69c Translated using Weblate (Russian)
Currently translated at 53.6% (837 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-05 07:41:24 +02:00
Marcelo Nolasco
bde8e17fe6 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/pt_BR/
2025-08-05 07:41:24 +02:00
Grant Zhu
9023ba1d0a Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hans/
2025-08-05 07:41:24 +02:00
Marcelo Nolasco
61f9a86685 Translated using Weblate (Portuguese (Brazil))
Currently translated at 11.7% (184 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-05 07:41:24 +02:00
Grant Zhu
5520cfed5d Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (1560 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hans/
2025-08-05 07:41:24 +02:00
Antonio Liccardo (TuxmAL)
43df984732 Translated using Weblate (Italian)
Currently translated at 3.1% (49 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/it/
2025-08-05 07:41:24 +02:00
wild
3f398c1a00 Translated using Weblate (Serbian)
Currently translated at 27.8% (435 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/sr/
2025-08-05 07:41:24 +02:00
Antonio Liccardo (TuxmAL)
ad35e3b48f Added translation using Weblate (Italian) 2025-08-05 07:41:24 +02:00
Antonio Liccardo (TuxmAL)
73ee44e177 Added translation using Weblate (Italian) 2025-08-05 07:41:23 +02:00
Hosted Weblate
18414cd155 Update translation files
Updated by "Remove blank strings" add-on in Weblate.

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/
2025-08-05 07:41:23 +02:00
Kuzma Simonov
652d78ac68 Translated using Weblate (Russian)
Currently translated at 36.7% (573 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-05 07:41:23 +02:00
wild
9a3ab05d73 Translated using Weblate (Serbian)
Currently translated at 22.4% (350 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/sr/
2025-08-05 07:41:23 +02:00
Kuzma Simonov
fe238b8afd Translated using Weblate (Russian)
Currently translated at 2.3% (36 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ru/
2025-08-05 07:41:23 +02:00
Kuzma Simonov
94492c7535 Added translation using Weblate (Russian) 2025-08-05 07:41:23 +02:00
Hosted Weblate
47caf970a1 Update translation files
Updated by "Remove blank strings" add-on in Weblate.

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/
2025-08-05 07:41:23 +02:00
Marcelo Nolasco
3e75ab39c2 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 43.3% (164 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hant/
2025-08-05 07:41:23 +02:00
Marcelo Nolasco
72aacdbf6f Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/pt_BR/
2025-08-05 07:41:23 +02:00
Marcelo Nolasco
5461dafe02 Translated using Weblate (Portuguese (Brazil))
Currently translated at 5.5% (87 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-05 07:41:23 +02:00
repilac
30f9f66b8b Translated using Weblate (Japanese)
Currently translated at 0.8% (13 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/
2025-08-05 07:41:23 +02:00
Marcelo Nolasco
19de803142 Translated using Weblate (Portuguese (Brazil))
Currently translated at 75.3% (285 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/pt_BR/
2025-08-05 07:41:23 +02:00
Marcelo Nolasco
11b247fe07 Translated using Weblate (Portuguese (Brazil))
Currently translated at 3.8% (60 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/pt_BR/
2025-08-05 07:41:23 +02:00
Elian Doran
faa40494d8 chore(deps): update typescript-eslint monorepo to v8.39.0 (#6560) 2025-08-05 08:41:14 +03:00
Elian Doran
796802aea0 chore(deps): update node.js to v22.18.0 (#6559) 2025-08-05 08:40:46 +03:00
Elian Doran
06af5cf6d5 chore(deps): update dependency chalk to v5.5.0 (#6558) 2025-08-05 08:40:29 +03:00
Elian Doran
81a99c1e44 fix(deps): update dependency marked to v16.1.2 (#6557) 2025-08-05 08:39:23 +03:00
Elian Doran
1b384f35d2 chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.2 (#6556) 2025-08-05 08:38:56 +03:00
renovate[bot]
c1259f2ea2 chore(deps): update typescript-eslint monorepo to v8.39.0 2025-08-05 02:00:27 +00:00
renovate[bot]
92d9c82d97 chore(deps): update node.js to v22.18.0 2025-08-05 01:58:57 +00:00
renovate[bot]
064f0ef921 chore(deps): update dependency chalk to v5.5.0 2025-08-05 01:58:52 +00:00
renovate[bot]
e9a9b462d4 fix(deps): update dependency marked to v16.1.2 2025-08-05 01:57:55 +00:00
renovate[bot]
98888d5f1d chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.2 2025-08-05 01:57:06 +00:00
Elian Doran
134c869b07 feat(react/dialog): port protected session password 2025-08-04 23:22:45 +03:00
Elian Doran
beb0487513 feat(react): port move to 2025-08-04 22:37:31 +03:00
Elian Doran
aa9ffb8f6b feat(react/dialogs): port clone_to 2025-08-04 21:17:35 +03:00
Elian Doran
18eb704b81 feat(react/widgets): set up form group 2025-08-04 20:41:25 +03:00
Elian Doran
83fb62d4df fix(react/dialogs): listener leak in modal 2025-08-04 19:54:59 +03:00
Elian Doran
cb650b70cb fix(react/dialogs): autocomplete not displayed if list is empty 2025-08-04 19:27:53 +03:00
Elian Doran
d5e42318dd feat(dialogs): port jump to note partially 2025-08-04 18:54:56 +03:00
grantzhu
24ed474c8c fix: remove unnecessary idea directory, this will affect other developers using jetbrains ide from opening this project 2025-08-04 21:24:38 +08:00
Elian Doran
a9c25b4edd chore(react): bring back focus to add_link 2025-08-04 16:05:04 +03:00
Elian Doran
c89737ae7b feat(vscode): integrate i18n with react 2025-08-04 12:59:13 +03:00
Elian Doran
e619a6ef7c feat(react): port add_link 2025-08-04 12:58:42 +03:00
Elian Doran
6a2a096348 chore(deps): update svelte monorepo (#6551) 2025-08-04 10:35:50 +03:00
renovate[bot]
bf34ef2009 chore(deps): update svelte monorepo 2025-08-04 03:00:44 +00:00
perf3ct
583ab8dc92 feat(quick_search): make sure that we rank exact matches higher when merging results with fuzzy search 2025-08-03 21:29:18 +00:00
perf3ct
db1619af31 feat(quick_search): change the results to use the warning accent color? 2025-08-03 21:22:41 +00:00
Elian Doran
9cddb9ac1d fix(docs): fix notes -> trilium for docker install (#6543) 2025-08-04 00:15:09 +03:00
Elian Doran
d72d3db2a0 Translations update from Hosted Weblate (#6540) 2025-08-04 00:09:02 +03:00
perf3ct
22740a6c8d feat(quick_search): add tests for updated fuzzy search progressive fuzzy search functionality 2025-08-03 21:02:56 +00:00
perf3ct
e9409577db feat(quick_search): only "fallback" to fuzzy search, if there aren't that many search results found from user's query 2025-08-03 20:43:16 +00:00
perf3ct
9cef8c8e70 feat(quick_search): try using another color so that matches stand out more? might change back 2025-08-03 20:42:52 +00:00
perf3ct
53bcec602d feat(quick_search): result titles are now aligned, inline with result text 2025-08-03 20:22:30 +00:00
Elian Doran
a62f12b427 feat(react): port info modal 2025-08-03 23:20:32 +03:00
perf3ct
e20816a7ce feat(quick_search): getting closer to how we want the quick search results to look with the spacing... 2025-08-03 19:49:43 +00:00
perf3ct
58535df676 feat(quick_search): within the quick search, allow for "infinite" scrolling of results 2025-08-03 19:49:43 +00:00
perf3ct
057040af06 feat(quick_search): limit the size of the Notes to search through, to 2MB 2025-08-03 19:49:43 +00:00
perf3ct
c603783a44 feat(quick_search): show the "matched" text in the search results, even if "edit distance" (misspelling) occurs 2025-08-03 19:49:43 +00:00
perf3ct
1928356ad5 feat(quick_search): edit distance searching in quick search works 2025-08-03 19:49:43 +00:00
Elian Doran
e53ad2c62a chore(react): reintroduce max width 2025-08-03 21:39:25 +03:00
Elian Doran
bca397e3e4 feat(react): port sort child notes 2025-08-03 21:18:18 +03:00
repilac
14b3bea203 Added translation using Weblate (Japanese) 2025-08-03 20:05:49 +02:00
Aitanuqui
05c26d17d3 Translated using Weblate (Spanish)
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/es/
2025-08-03 20:05:49 +02:00
KeSch
51360d855a Translated using Weblate (German)
Currently translated at 61.6% (233 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/de/
2025-08-03 20:05:48 +02:00
Aitanuqui
ae7d03e3c7 Translated using Weblate (Spanish)
Currently translated at 100.0% (1560 of 1560 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/es/
2025-08-03 20:05:48 +02:00
Elian Doran
164feaa3ec fix(react): button not working as submit 2025-08-03 20:01:54 +03:00
Elian Doran
4d09fabad8 feat(react): slightly faster about 2025-08-03 20:00:30 +03:00
Jon Fuller
87e1ce64d1 fix(docs): fix notes -> trilium for docker install 2025-08-03 09:55:50 -07:00
Elian Doran
04913394c6 chore(react): clean up 2025-08-03 19:50:39 +03:00
Elian Doran
f8b563704f feat(react): add hlep page to branch prefix 2025-08-03 19:48:44 +03:00
Elian Doran
5d9bd0f6d3 feat(react): port branch prefix 2025-08-03 19:44:15 +03:00
Elian Doran
1229c26098 chore(react): add back Ctrl+Enter for markdown import 2025-08-03 19:06:21 +03:00
Elian Doran
77818d5453 feat(react): port markdown_import partially 2025-08-03 18:06:06 +03:00
liqiuchen1988
f9c7c5637b Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (378 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hans/
2025-08-03 13:33:38 +00:00
liqiuchen1988
5d55b0b0a8 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 84.6% (1320 of 1559 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hans/
2025-08-03 13:33:37 +00:00
Aitanuqui
b2d7fbbcad Translated using Weblate (Spanish)
Currently translated at 96.8% (366 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/es/
2025-08-03 13:33:37 +00:00
liqiuchen1988
fbc6734e08 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 84.6% (320 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hans/
2025-08-03 13:33:36 +00:00
Aitanuqui
a83172390f Translated using Weblate (Spanish)
Currently translated at 100.0% (1559 of 1559 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/es/
2025-08-03 13:33:35 +00:00
Elian Doran
4b1fd5e4a0 Basic React wrapper (#6542) 2025-08-03 16:33:29 +03:00
Elian Doran
51495b282f fix(board): items not displayed recursively 2025-08-03 16:23:18 +03:00
Elian Doran
b645d21fcd refactor(client): deduplicate app info type 2025-08-03 16:22:54 +03:00
Elian Doran
8f99ce7d14 fix(react): type errors 2025-08-03 16:04:19 +03:00
Elian Doran
6eb650bb22 chore(deps): update package lock 2025-08-03 15:30:01 +03:00
Elian Doran
a7f5702221 feat(react): port about dialog 2025-08-03 15:29:57 +03:00
Elian Doran
efeb9b90ca feat(react): basic integration for basic widget & modal 2025-08-03 13:39:23 +03:00
Elian Doran
3361a2e4ab feat(react): set up client to support Preact with JSX 2025-08-03 13:28:40 +03:00
Elian Doran
425ade5212 fix(hidden_subtree): launcher branches created both in visible & available (closes #6537) 2025-08-03 11:12:21 +03:00
Elian Doran
384ab1d1f3 feat(docs): update doc references from triliumnext/notes to triliumnext/trilium (#6535) 2025-08-03 10:48:37 +03:00
Elian Doran
70b1a37285 docs: sync changes to repo URL 2025-08-03 10:48:06 +03:00
Elian Doran
61a878e2a0 chore(deps): update dependency typescript to v5.9.2 (#6526) 2025-08-03 10:15:10 +03:00
Elian Doran
319cb8384c Translations update from Hosted Weblate (#6534) 2025-08-03 10:12:50 +03:00
perfectra1n
2d358342c5 feat(client): try to stylize the quick search even further in the client 2025-08-02 23:44:51 -07:00
renovate[bot]
dd7ee05388 chore(deps): update dependency typescript to v5.9.2 2025-08-03 05:28:24 +00:00
perf3ct
6c79be881d feat(search): allow for search through very large notes 2025-08-03 01:44:55 +00:00
perf3ct
51a8937c64 feat(quick_search): also try to show the "matched" text in quick search results and not just note titles 2025-08-03 00:29:21 +00:00
perf3ct
c436455b32 feat(tests): implement tests for updated fuzzy search operators, and text_utils used in search 2025-08-03 00:16:47 +00:00
perf3ct
f740edae91 fix(docs): revert references that were full URLs to old Notes repo 2025-08-03 00:10:02 +00:00
perf3ct
18f89b979d feat(search): normalize search text (fonts, etc.) 2025-08-02 23:59:45 +00:00
perf3ct
8094259c78 feat(search): implement edit_distances (misspelling tolerances) into fulltext search 2025-08-02 23:59:21 +00:00
perf3ct
b4f503b81e feat(search): implement additional operators (with bounds) for search comparison 2025-08-02 23:59:11 +00:00
perf3ct
4db04519bd feat(search): implement additional weights for search_results, normalize text as well 2025-08-02 23:56:23 +00:00
perf3ct
464c2bdf28 feat(docs): update doc references from triliumnext/notes to triliumnext/trilium 2025-08-02 23:48:39 +00:00
wild
8007bac8b8 Translated using Weblate (Serbian)
Currently translated at 20.5% (320 of 1559 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/sr/
2025-08-03 01:01:53 +02:00
Elian Doran
7a1ec266ad chore(release): prepare for v0.97.2 2025-08-02 23:34:39 +03:00
Elian Doran
42fedaa241 chore(deps): update nx monorepo to v21.3.11 (#6523) 2025-08-02 10:38:29 +03:00
renovate[bot]
4387bd4c6f chore(deps): update nx monorepo to v21.3.11 2025-08-02 07:22:22 +00:00
Elian Doran
51e1367b82 chore(deps): update dependency typescript to v5.9.2 (#6525) 2025-08-02 10:17:05 +03:00
renovate[bot]
8bea3f4422 chore(deps): update dependency typescript to v5.9.2 2025-08-02 07:00:23 +00:00
Elian Doran
0eb2e405ff chore(deps): update node.js to v22.18.0 (#6527) 2025-08-02 09:57:18 +03:00
Elian Doran
5dbd4a765f fix(deps): update dependency @codemirror/lang-markdown to v6.3.4 (#6524) 2025-08-02 09:57:04 +03:00
Elian Doran
f6961c7e06 chore(deps): update dependency typedoc to v0.28.9 (#6522) 2025-08-02 09:56:38 +03:00
Elian Doran
8d3ba90072 chore(deps): update dependency electron to v37.2.5 (#6521) 2025-08-02 09:55:22 +03:00
Elian Doran
3772412d82 chore(deps): update dependency @playwright/test to v1.54.2 (#6520) 2025-08-02 09:55:05 +03:00
Elian Doran
84389f467e chore(deps): update pnpm to v10.14.0 (#6528) 2025-08-02 09:54:42 +03:00
Elian Doran
eb41e0f96f chore(deps): update svelte monorepo (#6529) 2025-08-02 09:53:44 +03:00
renovate[bot]
2d44dff997 chore(deps): update svelte monorepo 2025-08-02 02:29:36 +00:00
renovate[bot]
1483bf3d46 chore(deps): update pnpm to v10.14.0 2025-08-02 02:28:49 +00:00
renovate[bot]
064cf6a3ee chore(deps): update node.js to v22.18.0 2025-08-02 02:28:39 +00:00
renovate[bot]
0c0d5eaa0a fix(deps): update dependency @codemirror/lang-markdown to v6.3.4 2025-08-02 02:27:03 +00:00
renovate[bot]
afecb33b5c chore(deps): update dependency typedoc to v0.28.9 2025-08-02 02:25:23 +00:00
renovate[bot]
fbb1e3a302 chore(deps): update dependency electron to v37.2.5 2025-08-02 02:25:17 +00:00
renovate[bot]
8704350359 chore(deps): update dependency @playwright/test to v1.54.2 2025-08-02 02:24:27 +00:00
Elian Doran
d09e725d98 fix(note_list): copy to clipboard button also opening note 2025-08-01 13:07:58 +03:00
Elian Doran
8be5b149c4 fix(note_list): note tooltip showing up 2025-08-01 13:05:17 +03:00
Elian Doran
faeea6af18 Merge branch 'main' of github.com:TriliumNext/trilium 2025-08-01 00:23:13 +03:00
Elian Doran
3fa5ea1010 docs(readme): mention translations 2025-08-01 00:23:09 +03:00
Elian Doran
6aa31ae125 Translations update from Hosted Weblate (#6516) 2025-08-01 00:13:50 +03:00
wild
27f2e9c286 Translated using Weblate (Serbian)
Currently translated at 9.1% (142 of 1559 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/sr/
2025-07-31 21:05:37 +00:00
Aitanuqui
67cc36fdd2 Translated using Weblate (Spanish)
Currently translated at 89.4% (338 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/es/
2025-07-31 21:05:36 +00:00
Aitanuqui
ef7297e03b Translated using Weblate (Spanish)
Currently translated at 96.4% (1503 of 1559 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/es/
2025-07-31 21:05:35 +00:00
wild
97a5314cdb Added translation using Weblate (Serbian) 2025-07-31 21:05:34 +00:00
Elian Doran
a1195a2856 feat(search): support doc notes (closes #6515) 2025-08-01 00:05:17 +03:00
Elian Doran
81419c6fe3 Translations update from Hosted Weblate (#6514) 2025-07-31 11:52:22 +03:00
Elian Doran
b8da793353 Translated using Weblate (Romanian)
Currently translated at 99.7% (377 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ro/
2025-07-31 10:51:13 +02:00
Adorian Doran
8140fa79cc Translated using Weblate (Romanian)
Currently translated at 99.7% (377 of 378 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ro/
2025-07-31 10:51:12 +02:00
Elian Doran
abff4fe67d Translated using Weblate (Romanian)
Currently translated at 100.0% (1559 of 1559 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ro/
2025-07-31 10:51:12 +02:00
Elian Doran
ec8f737eba Translations update from Hosted Weblate (#6513) 2025-07-31 09:22:49 +03:00
Hosted Weblate
cc6688ea00 Update translation files
Updated by "Remove blank strings" add-on in Weblate.

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/
2025-07-31 08:09:52 +02:00
Elian Doran
c448b29be7 chore(deps): update nx monorepo to v21.3.10 (#6511) 2025-07-31 08:04:27 +03:00
Elian Doran
61bde294b3 chore(deps): update dependency openai to v5.11.0 (#6512) 2025-07-31 08:03:35 +03:00
Elian Doran
acab81c61e chore(deps): update dependency eslint-plugin-playwright to v2.2.2 (#6510) 2025-07-31 08:03:20 +03:00
Elian Doran
1dd965973b chore(deps): update dependency @types/tabulator-tables to v6.2.9 (#6509) 2025-07-31 08:03:07 +03:00
renovate[bot]
d61981033f chore(deps): update dependency openai to v5.11.0 2025-07-31 01:17:46 +00:00
renovate[bot]
30197ba7ce chore(deps): update nx monorepo to v21.3.10 2025-07-31 01:17:03 +00:00
renovate[bot]
1b6c957334 chore(deps): update dependency eslint-plugin-playwright to v2.2.2 2025-07-31 01:16:19 +00:00
renovate[bot]
fb7a397bf9 chore(deps): update dependency @types/tabulator-tables to v6.2.9 2025-07-31 01:15:39 +00:00
Elian Doran
133c9c5a7b Remove unmaintained hotkeys dependency (#6507) 2025-07-31 00:02:29 +03:00
Elian Doran
8a587d4d21 chore(client): fix typecheck issues 2025-07-30 23:46:43 +03:00
Elian Doran
29b813fa3b Merge remote-tracking branch 'origin/main' into feature/replace_hotkeys_library 2025-07-30 23:29:16 +03:00
Elian Doran
1dfe27d3df feat(web_view): open externally from note preview 2025-07-30 23:18:05 +03:00
Elian Doran
cda8fc7146 style(next): improve border for pdf notes preview 2025-07-30 23:05:46 +03:00
Elian Doran
acb16f751b style(next): improve border for image notes preview 2025-07-30 23:03:02 +03:00
Elian Doran
a1ac276be5 feat(web_view): hide attribute from attribute preview 2025-07-30 22:58:42 +03:00
Elian Doran
54e3ab5139 fix(command_palette): full screen not working on the browser 2025-07-30 22:50:08 +03:00
Elian Doran
baf341b312 fix(command_palette): find in text not shown 2025-07-30 22:47:11 +03:00
Elian Doran
5b074c2e22 fix(command_palette): some note context-aware commands not working 2025-07-30 22:45:31 +03:00
Elian Doran
11d086ef12 fix(command_palette): text editor-based issues not working 2025-07-30 22:39:37 +03:00
Elian Doran
0e6b10e400 feat(command_palette): active tab-related commands on browser 2025-07-30 22:33:22 +03:00
Elian Doran
0240222998 chore(command_palette): disable two unsupported commands 2025-07-30 19:54:19 +03:00
Elian Doran
7fc739487f chore(command_palette): hide jump to note / command palette 2025-07-30 19:50:07 +03:00
Elian Doran
f6e275709f fix(command_palette): sort child notes not working 2025-07-30 19:47:01 +03:00
Elian Doran
7e01dfd220 fix(sort): refresh when sorting notes via dialog 2025-07-30 19:45:01 +03:00
Elian Doran
d5866a99ec test(hotkeys): add some basic tests 2025-07-30 19:30:27 +03:00
Elian Doran
5289d41b12 fix(hotkeys): shortcuts with number keys not working 2025-07-30 14:43:37 +03:00
Elian Doran
030178cad2 fix(hotkeys): errors on mouse clicks 2025-07-30 14:29:59 +03:00
Elian Doran
5d00630452 refactor(hotkeys): simplify normalization 2025-07-30 14:26:51 +03:00
Elian Doran
eb805bfa2a refactor(hotkeys): remove no longer necessary library 2025-07-30 14:19:02 +03:00
Elian Doran
ee3a8e105e refactor(hotkeys): remove unnecessary initialization code 2025-07-30 14:18:09 +03:00
Elian Doran
97fb273e7f fix(hotkeys): tree not using the right API 2025-07-30 14:15:29 +03:00
Elian Doran
2ef9009384 refactor(hotkeys): use own (rough) implementation 2025-07-30 14:11:41 +03:00
Elian Doran
27c7888628 fix(deps): update dependency @maplibre/maplibre-gl-leaflet to v0.1.3 (#6503) 2025-07-30 11:04:07 +03:00
Elian Doran
b4de37a9f4 chore(deps): update electron-forge monorepo to v7.8.2 (#6501) 2025-07-30 11:03:43 +03:00
Elian Doran
1c5ebb54f8 chore(deps): update nx monorepo to v21.3.9 (#6502) 2025-07-30 11:03:31 +03:00
Elian Doran
f3e69dd6bd Merge branch 'main' of github.com:TriliumNext/trilium 2025-07-30 11:03:17 +03:00
Elian Doran
66364f5ce0 test(server/e2e): add more assertions to try to avoid flaky test 2025-07-30 11:03:12 +03:00
renovate[bot]
f25a1fb865 chore(deps): update electron-forge monorepo to v7.8.2 2025-07-30 07:43:22 +00:00
renovate[bot]
62c5b8b1fc chore(deps): update nx monorepo to v21.3.9 2025-07-30 07:41:02 +00:00
Elian Doran
2b0de37fc0 chore(deps): update dependency @types/express-http-proxy to v1.6.7 (#6497) 2025-07-30 10:38:55 +03:00
Elian Doran
23ef73fe2f chore(deps): update dependency @types/node to v22.17.0 (#6504) 2025-07-30 10:38:23 +03:00
Elian Doran
92ac3ee4ef chore(deps): update dependency stylelint to v16.23.0 (#6505) 2025-07-30 10:36:12 +03:00
Elian Doran
a3ba5ca109 test(server/e2e): flaky test 2025-07-30 10:34:38 +03:00
renovate[bot]
5b4e81cf18 chore(deps): update dependency stylelint to v16.23.0 2025-07-30 06:53:17 +00:00
renovate[bot]
772e6f5ebc chore(deps): update dependency @types/node to v22.17.0 2025-07-30 06:52:25 +00:00
renovate[bot]
60a9428b8b fix(deps): update dependency @maplibre/maplibre-gl-leaflet to v0.1.3 2025-07-30 06:51:34 +00:00
renovate[bot]
a7752a8421 chore(deps): update dependency @types/express-http-proxy to v1.6.7 2025-07-30 06:48:57 +00:00
Elian Doran
aefa2315b7 fix(server/test): yet another cyclic import issue due to becca_loader 2025-07-30 09:19:02 +03:00
Elian Doran
37a79aeeab fix(server/test): non-platform agnostic test 2025-07-30 08:42:51 +03:00
Elian Doran
5bc4bdaeef fix(server/test): problematic cyclic dependency 2025-07-30 08:38:06 +03:00
Elian Doran
5e28df883d fix(server): migration failing due to geomap in protected mode (closes #6489) 2025-07-29 23:26:03 +03:00
Elian Doran
0a57748075 fix(deps): update dependency preact to v10.27.0 (#6500) 2025-07-29 08:49:15 +03:00
Elian Doran
45e3eee642 chore(deps): update dependency svelte to v5.37.1 (#6498) 2025-07-29 08:48:56 +03:00
Elian Doran
d724a80c2a chore(deps): update nx monorepo to v21.3.8 (#6499) 2025-07-29 08:48:31 +03:00
renovate[bot]
5ea8c94d18 fix(deps): update dependency preact to v10.27.0 2025-07-29 01:29:37 +00:00
renovate[bot]
769bc760b3 chore(deps): update nx monorepo to v21.3.8 2025-07-29 01:28:50 +00:00
renovate[bot]
f04f45ea62 chore(deps): update dependency svelte to v5.37.1 2025-07-29 01:28:09 +00:00
Elian Doran
a5cab6a2a2 Command palette (#6491) 2025-07-28 21:20:19 +03:00
Elian Doran
138611beaf chore(client): remove unnecessary log 2025-07-28 21:18:06 +03:00
Elian Doran
e1b608057a chore(deps): update dependency eslint-plugin-playwright to v2.2.1 (#6495) 2025-07-28 20:16:40 +03:00
Elian Doran
fed6d8329f chore(deps): update dependency typedoc to v0.28.8 (#6496) 2025-07-28 20:03:19 +03:00
Elian Doran
9d03d52f28 fix(hidden_subtree): unable to change language 2025-07-28 20:02:46 +03:00
Elian Doran
055e11174d refactor(hidden_subtree): deduplicate restoring title 2025-07-28 19:59:10 +03:00
Elian Doran
8fda2dd7f1 test(client): fix error due to JQuery 2025-07-28 18:58:26 +03:00
renovate[bot]
ea03695c75 chore(deps): update dependency typedoc to v0.28.8 2025-07-28 15:47:13 +00:00
renovate[bot]
17b206fc72 chore(deps): update dependency eslint-plugin-playwright to v2.2.1 2025-07-28 15:47:07 +00:00
Elian Doran
4ec8c5963a docs(guide): document command palette 2025-07-28 18:21:04 +03:00
Elian Doran
ab2d8accf5 chore(command_palette): hide system tray from web 2025-07-28 17:20:02 +03:00
Elian Doran
de8b7e9ebe feat(command_palette): sort commands by name 2025-07-28 17:17:11 +03:00
Elian Doran
18d11523a6 chore(server): add entry point for circular-deps 2025-07-28 15:19:15 +03:00
Elian Doran
7a0ab3c025 feat(command_palette): enforce title names 2025-07-28 15:19:05 +03:00
Elian Doran
3575a7dc93 fix(hidden_subtree): bring back enforcing branches for help 2025-07-28 13:15:12 +03:00
Elian Doran
bb9e7b1c6e fix(hidden_subtree): visible launchers broken due to branch enforcement 2025-07-28 12:20:14 +03:00
Elian Doran
115e9e0202 chore(test): undefined import when running under vitest 2025-07-28 12:16:31 +03:00
Elian Doran
e341de70c0 chore(command_palette): change placeholder 2025-07-28 11:21:18 +03:00
Elian Doran
1d1a0ac4fd fix(command_palette): print command showing modal 2025-07-28 11:15:48 +03:00
Elian Doran
d48470ffb1 Merge remote-tracking branch 'origin/main' into feature/command_palette 2025-07-28 11:12:47 +03:00
Elian Doran
6574ca42a3 chore(deps): update dependency svelte to v5.37.0 (#6492) 2025-07-28 10:52:11 +03:00
renovate[bot]
303ff35a76 chore(deps): update dependency svelte to v5.37.0 2025-07-28 00:38:54 +00:00
Elian Doran
e0850958b0 chore(client): type errors 2025-07-27 23:21:07 +03:00
Elian Doran
13115b9ed1 fix(keyboard_actions): missing keyboard action descriptions 2025-07-27 22:22:17 +03:00
Elian Doran
933a11e9db chore(command_palette): add translations 2025-07-27 22:16:04 +03:00
Elian Doran
6915993a35 feat(command_palette): remove duplicate actions 2025-07-27 22:12:08 +03:00
Elian Doran
237a4e9a74 feat(command_palette): hide electron-only actions on web 2025-07-27 22:05:24 +03:00
Elian Doran
1565a0fd80 feat(command_palette): differentiate tree-based operations 2025-07-27 21:47:30 +03:00
Elian Doran
e8b16287e0 refactor(command_palette): reduce duplication 2025-07-27 21:39:55 +03:00
Elian Doran
c09e124805 fix(command_palette): command title not updated while navigating 2025-07-27 21:36:42 +03:00
Elian Doran
b6f55b0e1a refactor(command_palette): unnecessary icon mapping 2025-07-27 21:18:00 +03:00
Elian Doran
964bc74b83 refactor(command_palette): use declarative command approach 2025-07-27 21:16:23 +03:00
Elian Doran
fa9b142cb7 fix(command_palette): triggering note tree actions 2025-07-27 21:03:31 +03:00
Elian Doran
7e3f412c84 fix(command_palette): missing icon 2025-07-27 20:41:01 +03:00
Elian Doran
82e16a5624 fix(command_palette): not showing after re-entering 2025-07-27 20:31:13 +03:00
Elian Doran
757488a95b feat(command_palette): improve dialog margins 2025-07-27 18:15:54 +03:00
Elian Doran
d7f154cfd1 feat(command_palette): improve layout 2025-07-27 18:11:43 +03:00
Elian Doran
3517715aab feat(command_palette): add icons to all actions 2025-07-27 17:41:00 +03:00
Elian Doran
d10bbdd7a7 feat(settings/keyboard_actions): display friendly name 2025-07-27 17:04:29 +03:00
Elian Doran
c4ec27bb1e chore(keyboard_actions): use translations for friendly names 2025-07-27 17:04:05 +03:00
Elian Doran
0b24553ace feat(keyboard_actions): add friendly names to all actions 2025-07-27 16:50:02 +03:00
Elian Doran
793867269b refactor(command_palette): separate model for keyboard shortcuts 2025-07-27 16:40:48 +03:00
Elian Doran
9508e92676 feat(command_palette): integrate all keyboard actions 2025-07-27 16:32:39 +03:00
Elian Doran
89378eae7b feat(command_palette): improve keyboard shortcut 2025-07-27 16:15:14 +03:00
Elian Doran
ace166a925 feat(command_palette): hide search in full text 2025-07-27 15:59:33 +03:00
Elian Doran
d59d544c0f style(command_palette): improve layout slightly 2025-07-27 15:49:12 +03:00
Elian Doran
37461d0eb3 refactor(command_palette): use CSS for styles 2025-07-27 15:44:47 +03:00
Elian Doran
126152ff63 feat(command_palette): display commands immediately 2025-07-27 15:42:44 +03:00
Elian Doran
60e19de0d1 feat(command_palette): add keyboard shortcut 2025-07-27 15:34:51 +03:00
Elian Doran
3247a9facc feat(command_palette): hide on command execution 2025-07-27 15:30:27 +03:00
Elian Doran
7b114bed26 feat(command_palette): basic implementation 2025-07-27 15:27:13 +03:00
Elian Doran
30ffbc760e Merge branch 'main' of https://github.com/TriliumNext/trilium 2025-07-27 12:17:21 +03:00
Elian Doran
4420913049 fix(export/markdown): superscript and subscript not preserved (closes #4307) 2025-07-27 12:17:13 +03:00
Elian Doran
3762690c5f Merge branch 'main' of github.com:TriliumNext/trilium 2025-07-27 11:04:03 +03:00
Elian Doran
d684ac40d8 fix(forge): nightly failing due to minimatch 2025-07-27 10:55:27 +03:00
Elian Doran
d217379644 chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.1 (#6487) 2025-07-27 09:14:18 +03:00
renovate[bot]
d5f7fa2fe5 chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.1 2025-07-27 01:36:11 +00:00
Elian Doran
3e0ef10b25 fix(print): table captions not displayed properly (closes #6483) 2025-07-26 23:25:04 +03:00
Elian Doran
28f88f2407 chore(deps): update dependency dotenv to v17.2.1 (#6476) 2025-07-26 15:48:30 +03:00
Elian Doran
e525a7a0ff chore(deps): update dependency svelte to v5.36.17 (#6484) 2025-07-26 15:48:12 +03:00
Elian Doran
3415f38e0a fix(deps): update dependency eslint-linter-browserify to v9.32.0 (#6485) 2025-07-26 15:47:54 +03:00
Elian Doran
910c0faade chore(deps): update dependency cross-env to v10 (#6486) 2025-07-26 15:47:41 +03:00
renovate[bot]
4ad1bb5e3a chore(deps): update dependency cross-env to v10 2025-07-26 10:38:57 +00:00
renovate[bot]
97f6f0a945 fix(deps): update dependency eslint-linter-browserify to v9.32.0 2025-07-26 10:38:01 +00:00
renovate[bot]
bc78c17a11 chore(deps): update dependency svelte to v5.36.17 2025-07-26 10:37:05 +00:00
Elian Doran
b8e813f7bd feat(promoted_attributes): better indicate no value 2025-07-26 10:12:46 +03:00
Elian Doran
db3581eb26 feat(promoted_attributes): improve color picker aspect 2025-07-26 09:53:26 +03:00
Elian Doran
d23230df68 feat(promoted_attributes): support removing color 2025-07-26 09:49:32 +03:00
Elian Doran
b29781b614 feat(promoted_attributes): add color type 2025-07-26 09:29:27 +03:00
Elian Doran
7d7c3e7cdb fix(ws): new attachments' title not decrypted (closes #6473) 2025-07-25 23:21:44 +03:00
Elian Doran
cbd8cb80ab chore(deps): update nx monorepo to v21.3.7 (#6479) 2025-07-25 23:20:55 +03:00
renovate[bot]
bfcdc34faf chore(deps): update nx monorepo to v21.3.7 2025-07-25 20:20:42 +00:00
Elian Doran
c728e6047d chore(deps): update dependency jiti to v2.5.1 (#6478) 2025-07-25 23:18:45 +03:00
renovate[bot]
4c53a9ba8c chore(deps): update dependency jiti to v2.5.1 2025-07-25 19:47:38 +00:00
Elian Doran
e10a7da7e3 chore(deps): update dependency @sveltejs/kit to v2.26.1 (#6475) 2025-07-25 22:42:39 +03:00
Elian Doran
5cc431b1bf chore(deps): update dependency dotenv to v17.2.1 (#6477) 2025-07-25 22:42:22 +03:00
Elian Doran
734aa2fcb5 fix(deps): update dependency mind-elixir to v5.0.4 (#6480) 2025-07-25 22:42:06 +03:00
Elian Doran
5e37319d9b fix(deps): update eslint monorepo to v9.32.0 (#6481) 2025-07-25 22:41:56 +03:00
renovate[bot]
2e9eb6e3e9 fix(deps): update eslint monorepo to v9.32.0 2025-07-25 19:13:01 +00:00
renovate[bot]
9ce57b123a fix(deps): update dependency mind-elixir to v5.0.4 2025-07-25 19:11:23 +00:00
renovate[bot]
e793168afa chore(deps): update dependency dotenv to v17.2.1 2025-07-25 19:08:36 +00:00
renovate[bot]
d1513424e7 chore(deps): update dependency dotenv to v17.2.1 2025-07-25 19:07:41 +00:00
renovate[bot]
1436a01dbe chore(deps): update dependency @sveltejs/kit to v2.26.1 2025-07-25 19:06:44 +00:00
Elian Doran
b9b936b92a chore(client): change book type to collection (closes #6471) 2025-07-25 19:09:03 +03:00
Elian Doran
adf14bec31 fix(views/board): unable to scroll vertically 2025-07-25 19:00:12 +03:00
Elian Doran
ca1403ffea docs(guide): creating collections & adding a description 2025-07-25 18:06:40 +03:00
Elian Doran
06672e439e docs(guide): board view 2025-07-25 17:57:34 +03:00
Elian Doran
e851701a9e fix(views/board): unable to click while editing column 2025-07-25 16:29:25 +03:00
Elian Doran
9589164008 fix(views/board): column duplication after batch rename 2025-07-25 16:20:33 +03:00
Elian Doran
a88b067081 refactor(views/board): use in-memory model 2025-07-25 16:17:54 +03:00
Elian Doran
b3777e6900 fix(views/board): column desynchronising due to API management 2025-07-25 16:11:26 +03:00
Elian Doran
d2646e291d chore(views/board): remove unnecessary highlight 2025-07-25 15:16:17 +03:00
Elian Doran
99ab9ee66b chore(views/board): set up context menu on the header 2025-07-25 15:15:10 +03:00
Elian Doran
08678e74e6 refactor(views/board): unnecessary fields 2025-07-25 14:57:51 +03:00
Elian Doran
62de52ab17 refactor(views/board): unnecessary API to manually refresh the board 2025-07-25 14:56:50 +03:00
Elian Doran
d9820d9725 fix(views/board): column not clickable after dragging 2025-07-25 14:54:50 +03:00
Elian Doran
fe8a8eeac9 feat(views/board): react to icon and color changes 2025-07-25 14:42:05 +03:00
Elian Doran
dfeb414aff feat(views/board): reintroduce one-click title edit 2025-07-25 12:00:04 +03:00
Elian Doran
69f12a2916 feat(views/board): drag columns by the title and not by a handle 2025-07-25 11:56:44 +03:00
Elian Doran
2b062e938e chore(views/board): use translations 2025-07-25 11:46:18 +03:00
Elian Doran
e0299bd1ae style(views/board): improve new buttons 2025-07-25 11:42:44 +03:00
Elian Doran
ac2f1b56fe style(views/board): shorter cards and smaller gaps 2025-07-25 11:35:07 +03:00
Elian Doran
06d98f6fcf refactor(views/board): unnecessary imports 2025-07-25 11:31:57 +03:00
Elian Doran
bb660d15b2 style(next): improve excalidraw dropdown fit 2025-07-25 11:06:20 +03:00
Elian Doran
4d73cdefef style(client): fix checkboxes override causing issues for canvas (closes #6463) 2025-07-25 10:08:14 +03:00
Elian Doran
313ba3df80 chore(deps): update dependency vite to v7.0.6 (#6465) 2025-07-25 08:24:18 +03:00
renovate[bot]
15377c32c2 chore(deps): update dependency vite to v7.0.6 2025-07-24 20:42:01 +00:00
Elian Doran
22b52f7c4a Merge branch 'main' of github.com:TriliumNext/trilium 2025-07-24 23:39:48 +03:00
Elian Doran
7055f77c91 docs(guide): document new features for geomap 2025-07-24 23:39:25 +03:00
Elian Doran
051fe67176 feat(views/geo): react to icon changes 2025-07-24 22:46:36 +03:00
Elian Doran
90accfcc48 chore(client): fix type errors 2025-07-24 22:26:29 +03:00
Elian Doran
4f99db0c90 refactor(views/geo): use a different attribute 2025-07-24 22:18:30 +03:00
Elian Doran
aeb356bf54 feat(views/geo): allow displaying scale 2025-07-24 22:14:51 +03:00
Elian Doran
0dffa0f333 feat(book_properties): group dark map styles 2025-07-24 21:54:57 +03:00
Elian Doran
d17f5b8447 feat(book_properties): group map style into vector & raster 2025-07-24 21:49:55 +03:00
Elian Doran
b5a57b3c66 style(book_properties): align label properly 2025-07-24 21:32:02 +03:00
Elian Doran
987a3404a9 chore(deps): update ckeditor5 config packages to v12.1.0 (#6466) 2025-07-24 21:24:43 +03:00
Elian Doran
eddc30769f chore(deps): update svelte monorepo (#6467) 2025-07-24 21:23:49 +03:00
Elian Doran
4d455650ba refactor(views/board): split row/column handling 2025-07-24 21:18:49 +03:00
Elian Doran
e2157aab26 fix(views/board): reordering same column not working 2025-07-24 21:18:49 +03:00
Elian Doran
b277f4bf3f feat(views/board): basic refresh after column change 2025-07-24 21:18:48 +03:00
Elian Doran
4047452b0f feat(views/board): drag works in between columns 2025-07-24 21:18:48 +03:00
Elian Doran
cb37724879 feat(views/board): basic column drag support 2025-07-24 21:18:48 +03:00
renovate[bot]
8890893412 chore(deps): update svelte monorepo 2025-07-24 18:01:27 +00:00
renovate[bot]
d0cbda7c0d chore(deps): update ckeditor5 config packages to v12.1.0 2025-07-24 18:00:32 +00:00
Elian Doran
60e7b9ffb0 feat(views/geo): set default theme 2025-07-24 15:52:01 +03:00
Elian Doran
45457c6f76 feat(views/geo): invert marker label on dark themes 2025-07-24 15:46:11 +03:00
Elian Doran
737f41d92b refactor(views/geo): get rid of empty theme 2025-07-24 15:36:06 +03:00
Elian Doran
180841f364 refactor(views/geo): remove dependency to leaflet in map layer 2025-07-24 15:35:03 +03:00
Elian Doran
bea40d4c2f feat(views/geo): add the rest of the map layers 2025-07-24 15:33:39 +03:00
Elian Doran
5f9a054441 refactor(book_properties): use translations 2025-07-24 15:20:32 +03:00
Elian Doran
f90bf1ce7c feat(views/geo): add combobox to adjust style 2025-07-24 15:14:43 +03:00
Elian Doran
8c4ed2d4da feat(views/geo): support vector maps 2025-07-24 15:07:47 +03:00
Elian Doran
0e590a1bbf chore(views/geo): add versatiles vector styles 2025-07-24 15:07:34 +03:00
Elian Doran
218a096135 chore(nx): update instructions 2025-07-24 13:57:41 +03:00
Elian Doran
8407bce370 chore(package): add output style to server:start 2025-07-24 13:57:23 +03:00
Elian Doran
43229f0b99 chore(deps): update nx monorepo to v21.3.5 (#6455) 2025-07-24 10:53:08 +03:00
renovate[bot]
84fa0002b9 chore(deps): update nx monorepo to v21.3.5 2025-07-24 07:22:18 +00:00
Elian Doran
e79c705b20 chore(deps): update dependency webdriverio to v9.18.4 (#6459) 2025-07-24 10:20:10 +03:00
Elian Doran
894d7ce15d chore(deps): update dependency express-openid-connect to v2.19.2 (#6456) 2025-07-24 10:05:07 +03:00
renovate[bot]
5830880582 chore(deps): update dependency webdriverio to v9.18.4 2025-07-24 06:52:40 +00:00
renovate[bot]
caab0f70ff chore(deps): update dependency express-openid-connect to v2.19.2 2025-07-24 06:51:51 +00:00
Elian Doran
641966fcdd chore(deps): update dependency @ckeditor/ckeditor5-package-tools to v4.0.2 (#6449) 2025-07-24 09:48:34 +03:00
renovate[bot]
24c22e9bbf chore(deps): update dependency @ckeditor/ckeditor5-package-tools to v4.0.2 2025-07-24 06:24:28 +00:00
Elian Doran
795f597bda chore(deps): update dependency jiti to v2.5.0 (#6457) 2025-07-24 09:22:19 +03:00
renovate[bot]
2228663a7e chore(deps): update dependency jiti to v2.5.0 2025-07-24 06:10:37 +00:00
Elian Doran
0c97df357d chore(deps): update dependency eslint-config-prettier to v10.1.8 (#6453) 2025-07-24 09:03:52 +03:00
Elian Doran
19f63f1be0 chore(deps): update dependency esbuild to v0.25.8 (#6452) 2025-07-24 09:03:26 +03:00
Elian Doran
fc000caf73 chore(deps): update svelte monorepo (#6436) 2025-07-24 09:03:08 +03:00
renovate[bot]
78929e0293 chore(deps): update svelte monorepo 2025-07-24 05:49:14 +00:00
renovate[bot]
71e22da987 chore(deps): update dependency esbuild to v0.25.8 2025-07-24 05:45:25 +00:00
renovate[bot]
24e99d9654 chore(deps): update dependency eslint-config-prettier to v10.1.8 2025-07-24 05:39:35 +00:00
Elian Doran
98299da424 chore(deps): update dependency @types/tabulator-tables to v6.2.8 (#6450) 2025-07-24 08:39:04 +03:00
Elian Doran
7014af66b6 chore(deps): update dependency electron to v37.2.4 (#6451) 2025-07-24 08:38:36 +03:00
Elian Doran
659bd90027 chore(deps): update dependency vite to v7.0.5 (#6454) 2025-07-24 08:37:54 +03:00
Elian Doran
146b0c284b chore(deps): update dependency stylelint to v16.22.0 (#6458) 2025-07-24 08:36:59 +03:00
Elian Doran
4a0ac8807f chore(deps): update typescript-eslint monorepo to v8.38.0 (#6460) 2025-07-24 08:36:20 +03:00
renovate[bot]
d67734832e chore(deps): update typescript-eslint monorepo to v8.38.0 2025-07-24 02:16:52 +00:00
renovate[bot]
1673bf026a chore(deps): update dependency stylelint to v16.22.0 2025-07-24 02:14:32 +00:00
renovate[bot]
1f29b000a9 chore(deps): update dependency vite to v7.0.5 2025-07-24 02:10:42 +00:00
renovate[bot]
a6d024123e chore(deps): update dependency electron to v37.2.4 2025-07-24 02:08:10 +00:00
renovate[bot]
fb1a7239ce chore(deps): update dependency @types/tabulator-tables to v6.2.8 2025-07-24 02:07:19 +00:00
Elian Doran
4f71d508cb chore(deps): audit 2025-07-23 22:32:49 +03:00
Elian Doran
2072bd61d1 fix(mermaid): lag during editing (closes #6443) 2025-07-23 22:28:15 +03:00
Elian Doran
6021178b7d feat(hidden_subtree): enforce original title in help 2025-07-23 21:22:58 +03:00
Elian Doran
179b0be2bb chore(deps): update dependency axios to v1.11.0 [security] (#6446) 2025-07-23 21:19:12 +03:00
renovate[bot]
bf2b45dd4a chore(deps): update dependency axios to v1.11.0 [security] 2025-07-23 16:53:39 +00:00
Elian Doran
513561234c chore(deps): update nx monorepo to v21.3.2 (#6438) 2025-07-23 08:57:04 +03:00
renovate[bot]
33da990ae7 chore(deps): update nx monorepo to v21.3.2 2025-07-23 05:43:38 +00:00
Elian Doran
4003946e68 chore(deps): fix pnpm-lock 2025-07-23 08:40:44 +03:00
Elian Doran
21f8d40789 chore(deps): update dependency @stylistic/eslint-plugin to v5.2.2 (#6432) 2025-07-23 08:30:28 +03:00
Elian Doran
d6c698e1d6 chore(deps): update dependency cheerio to v1.1.2 (#6433) 2025-07-23 08:30:04 +03:00
Elian Doran
6c227852ae chore(deps): update dependency openai to v5.10.2 (#6434) 2025-07-23 08:29:50 +03:00
Elian Doran
29cb22c4fd chore(deps): update dependency supertest to v7.1.4 (#6435) 2025-07-23 08:29:32 +03:00
Elian Doran
d040bc9e2d chore(deps): update dependency webdriverio to v9.18.3 (#6437) 2025-07-23 08:29:07 +03:00
Elian Doran
abb92f23a6 fix(deps): update dependency mind-elixir to v5.0.3 (#6439) 2025-07-23 08:28:47 +03:00
Elian Doran
da5c86bb69 chore(deps): update dependency @anthropic-ai/sdk to v0.57.0 (#6440) 2025-07-23 08:28:33 +03:00
Elian Doran
a0d428b12c chore(deps): update dependency express-openid-connect to v2.19.2 (#6441) 2025-07-23 08:28:20 +03:00
Elian Doran
e22fe20e23 chore(deps): update typescript-eslint monorepo to v8.38.0 (#6442) 2025-07-23 08:27:59 +03:00
renovate[bot]
1e6659aff9 chore(deps): update typescript-eslint monorepo to v8.38.0 2025-07-23 02:37:13 +00:00
renovate[bot]
60b32d5b05 chore(deps): update dependency express-openid-connect to v2.19.2 2025-07-23 02:35:35 +00:00
renovate[bot]
e2ee9053a0 chore(deps): update dependency @anthropic-ai/sdk to v0.57.0 2025-07-23 02:34:45 +00:00
renovate[bot]
d2f0422ecc fix(deps): update dependency mind-elixir to v5.0.3 2025-07-23 02:33:49 +00:00
renovate[bot]
bfd97da626 chore(deps): update dependency webdriverio to v9.18.3 2025-07-23 02:32:01 +00:00
renovate[bot]
1fd163f0bb chore(deps): update dependency supertest to v7.1.4 2025-07-23 02:30:18 +00:00
renovate[bot]
d15ce575df chore(deps): update dependency openai to v5.10.2 2025-07-23 02:29:21 +00:00
renovate[bot]
9999ff5a89 chore(deps): update dependency cheerio to v1.1.2 2025-07-23 02:28:26 +00:00
renovate[bot]
4653941082 chore(deps): update dependency @stylistic/eslint-plugin to v5.2.2 2025-07-23 02:27:33 +00:00
Elian Doran
fa509661ab Add grid to canvas (#6429) 2025-07-22 23:53:22 +03:00
Elian Doran
d9a289bf18 refactor(views/board): unnecessary re-render 2025-07-22 23:40:12 +03:00
Papierkorb2292
98c76b713d Save gridModeEnabled in CanvasContent 2025-07-22 19:12:08 +02:00
Papierkorb2292
05ed917a56 Removed disabling grid mode in ExcalidrawTypeWidget 2025-07-22 19:12:08 +02:00
Elian Doran
b833806ec7 feat(share): render inline mermaid (closes #5438) 2025-07-22 20:05:29 +03:00
Elian Doran
7fdef3418a refactor(share): check note type 2025-07-22 19:54:01 +03:00
Elian Doran
49e14ec542 feat(hidden_subtree): remove unexpected branches 2025-07-22 19:19:46 +03:00
Elian Doran
efd9244684 fix(help): missing branches if it was relocated 2025-07-22 18:52:39 +03:00
Elian Doran
318f2d1f8c docs(guide): relocate note list documentation 2025-07-22 18:33:46 +03:00
Elian Doran
92fa1cf052 fix(quick_edit): read-only notes not editable (closes #6425) 2025-07-22 17:30:03 +03:00
Elian Doran
17c6eb1680 fix(export/markdown): simple tables rendered as HTML (closes #6366) 2025-07-22 09:09:50 +03:00
Elian Doran
7c6af568d8 fix(share): ck text on dark theme not visible (closes #6427) 2025-07-22 08:44:45 +03:00
Elian Doran
23c9c6826e chore(env): add some instructions 2025-07-21 19:41:29 +03:00
Elian Doran
b08fda5e10 Kanban board (#6402) 2025-07-21 18:45:41 +03:00
Elian Doran
5ec3a49377 Merge remote-tracking branch 'origin/main' into feature/kanban_board 2025-07-21 18:24:36 +03:00
Elian Doran
1c728ae432 Merge branch 'release/v0.97.1' 2025-07-21 17:52:57 +03:00
Elian Doran
fd25c735c1 chore(release): bump version 2025-07-21 17:52:08 +03:00
Elian Doran
7de33907c5 docs(release): add change log for v0.97.1 2025-07-21 17:51:13 +03:00
Elian Doran
ec021be16c feat(views/board): display even if no children 2025-07-21 15:02:44 +03:00
Elian Doran
8b6826ffa4 feat(views/board): react to changes in "groupBy" 2025-07-21 15:02:38 +03:00
Elian Doran
00cc1ffe74 feat(views/board): add into view type switcher 2025-07-21 15:02:34 +03:00
Elian Doran
2384fdbaad chore(views/board): fix type errors 2025-07-21 15:02:31 +03:00
Elian Doran
08a93d81d7 feat(views/board): allow changing group by attribute 2025-07-21 15:02:28 +03:00
Elian Doran
86911100df refactor(views/board): use single point for obtaining status attribute 2025-07-21 15:02:22 +03:00
Elian Doran
ff01656268 chore(vscode): set up NX LLM integration 2025-07-21 15:02:20 +03:00
Elian Doran
d0ea6d9e8d feat(views/board): use same note title editing mechanism for insert above/below 2025-07-21 15:02:15 +03:00
Elian Doran
96ca3d5e38 fix(views/board): creating new notes would render as HTML 2025-07-21 13:14:07 +03:00
Elian Doran
3a569499cb feat(views/board): edit the note title inline on new 2025-07-21 11:28:46 +03:00
Elian Doran
545b19f978 fix(views/board): drop indicator remaining stuck 2025-07-21 11:19:14 +03:00
Elian Doran
d98be19c9a feat(views/board): set up differential renderer 2025-07-21 11:13:41 +03:00
Elian Doran
4826898c55 refactor(views/board): move drag logic to separate file 2025-07-21 11:01:49 +03:00
Elian Doran
482b592f77 feat(views/board): add drag preview when using touch 2025-07-21 11:01:49 +03:00
Elian Doran
939ebfe47b chore(deps): update dependency cheerio to v1.1.1 (#6417) 2025-07-21 10:07:37 +03:00
Elian Doran
c6dee1339b chore(deps): update dependency svelte to v5.36.12 (#6418) 2025-07-21 10:07:27 +03:00
Elian Doran
23f8c3ad3c chore(deps): update nx monorepo to v21.3.1 (#6419) 2025-07-21 10:06:25 +03:00
renovate[bot]
81c1b88376 chore(deps): update nx monorepo to v21.3.1 2025-07-21 02:58:10 +00:00
renovate[bot]
c4a85db698 chore(deps): update dependency svelte to v5.36.12 2025-07-21 02:57:09 +00:00
renovate[bot]
e6eda45c04 chore(deps): update dependency cheerio to v1.1.1 2025-07-21 02:56:06 +00:00
Elian Doran
a3014434cf chore(release): update version number 2025-07-20 23:39:58 +03:00
Elian Doran
3ebab2c126 docs(release): add changelog 2025-07-20 21:30:17 +03:00
Elian Doran
954619bd36 fix(views/table): note ID column being editable 2025-07-20 21:21:01 +03:00
Elian Doran
eb76362de4 chore(views/board): improve header 2025-07-20 20:55:41 +03:00
Elian Doran
1cde14859b feat(views/board): touch support 2025-07-20 20:31:07 +03:00
Elian Doran
c752b98995 chore(views/board): smaller add new column 2025-07-20 20:22:41 +03:00
Elian Doran
1f792ca418 feat(views/board): add new column 2025-07-20 20:06:54 +03:00
Elian Doran
b22e08b1eb refactor(views/board): use bulk API for renaming columns 2025-07-20 19:59:21 +03:00
Elian Doran
2b5029cc38 chore(views/board): delete values when deleting column 2025-07-20 19:52:16 +03:00
Elian Doran
9e936cb57b feat(views/board): delete empty columns 2025-07-20 19:52:10 +03:00
Elian Doran
e8fd2c1b3c fix(views/board): old column not removed when changing it 2025-07-20 19:52:06 +03:00
Elian Doran
977fbf54ee refactor(views/board): delegate storage to API 2025-07-20 19:52:01 +03:00
Elian Doran
3e5c91415d feat(views/board): rename columns 2025-07-20 19:51:56 +03:00
Elian Doran
d60b855f74 chore(views/board): disable move to for the current column 2025-07-20 19:51:52 +03:00
Elian Doran
4146192b6d chore(views/board): add icon to menu item 2025-07-20 19:51:46 +03:00
Elian Doran
26ee0ff48f feat(views/board): insert above/below 2025-07-20 17:35:52 +03:00
Elian Doran
6995fbfd06 chore(deps): update dependency esbuild to v0.25.8 (#6404) 2025-07-20 16:07:54 +03:00
Elian Doran
1763d80d5f feat(views/board): add move to in context menu 2025-07-20 13:24:22 +03:00
Elian Doran
a594e5147c feat(views/board): set up open in context menu 2025-07-20 12:42:19 +03:00
Elian Doran
e51ea1a619 feat(views/board): add context menu with delete 2025-07-20 12:40:30 +03:00
Elian Doran
83b72eafa6 Merge branch 'main' into renovate/esbuild-0.x-lockfile 2025-07-20 11:31:50 +03:00
Elian Doran
757a6777be chore(deps): update dependency svelte to v5.36.10 (#6405) 2025-07-20 11:30:49 +03:00
Elian Doran
37c9260dca feat(views/board): keep empty columns 2025-07-20 10:50:26 +03:00
Elian Doran
e1a8f4f5db chore(views/board): hide promoted attributes of collection 2025-07-20 10:50:13 +03:00
Elian Doran
b7b0b39afc feat(views/board): add preset notes 2025-07-20 10:36:36 +03:00
Elian Doran
af797489e8 feat(views/board): set up template 2025-07-20 10:30:48 +03:00
renovate[bot]
d003e91b89 chore(deps): update dependency svelte to v5.36.10 2025-07-20 01:09:12 +00:00
renovate[bot]
4a35df745a chore(deps): update dependency esbuild to v0.25.8 2025-07-20 01:08:07 +00:00
Elian Doran
b1b756b179 feat(views/board): store new columns into config 2025-07-19 22:21:24 +03:00
Elian Doran
9e3372df72 feat(views/board): react to changes in note title 2025-07-19 21:50:57 +03:00
Elian Doran
657df7a728 feat(views/board): add new item 2025-07-19 21:45:48 +03:00
Elian Doran
944f0b694b feat(views/board): open in popup 2025-07-19 21:09:55 +03:00
Elian Doran
efd409da17 fix(views/board): some runtime errors 2025-07-19 21:07:29 +03:00
Elian Doran
08d60c554c feat(views/board): set up reordering for same column 2025-07-19 20:44:54 +03:00
Elian Doran
a428ea7beb refactor(views/board): store both branch and note 2025-07-19 20:34:54 +03:00
Elian Doran
f69878b082 refactor(views/board): use branches instead of notes 2025-07-19 20:30:05 +03:00
Elian Doran
c5ffc2882b feat(views/board): react to changes 2025-07-19 19:57:02 +03:00
Elian Doran
765691751a feat(views/board): bypass horizontal scroll if column needs scrolling 2025-07-19 19:53:48 +03:00
Elian Doran
f19e5977c2 feat(views/board): set up dragging 2025-07-19 19:48:03 +03:00
Elian Doran
8f8b9af862 feat(views/board): set up scroll via mouse wheel 2025-07-19 19:31:13 +03:00
Elian Doran
3e7dc71995 feat(views/board): make scrollable 2025-07-19 19:23:42 +03:00
Elian Doran
2a25cd8686 feat(views/board): fixed column size 2025-07-19 19:20:32 +03:00
Elian Doran
7664839135 feat(views/board): display note icon 2025-07-19 19:16:39 +03:00
Elian Doran
47daebc65a feat(views/board): improve display of the notes 2025-07-19 19:03:09 +03:00
Elian Doran
0d18b944b6 feat(views/board): display columns 2025-07-19 18:44:50 +03:00
Elian Doran
951b5384a3 chore(views/board): prepare to group by attribute 2025-07-19 18:39:24 +03:00
Elian Doran
11547ecaa3 chore(views/board): create empty board 2025-07-19 18:29:31 +03:00
Adorian Doran
713a0f5b09 Merge branch 'main' of https://github.com/TriliumNext/Trilium 2025-07-19 16:28:56 +03:00
Adorian Doran
2cf9c98b43 style/table view: tweak table footer 2025-07-19 16:28:52 +03:00
Elian Doran
d7af196a0c feat(views/table): hide multiplicity when adding a new column 2025-07-19 16:03:58 +03:00
Adorian Doran
c363be57b7 client/table view: tweak icons 2025-07-19 16:02:11 +03:00
Adorian Doran
10645790de Merge branch 'main' of https://github.com/TriliumNext/Trilium 2025-07-19 15:55:06 +03:00
Adorian Doran
8b18cf382c style(next)/dropdown menus: fix rotated icons 2025-07-19 15:54:56 +03:00
Elian Doran
7a131e0bcc feat(views/table): support color class for title 2025-07-19 15:44:43 +03:00
Elian Doran
3d264379cc fix(views/table): color no longer shown for reference links 2025-07-19 15:44:42 +03:00
Elian Doran
f405682ec1 Merge branch 'main' of https://github.com/TriliumNext/trilium 2025-07-19 14:56:21 +03:00
Elian Doran
3debf3ce1c fix(views/calendar): not refreshing on note title change 2025-07-19 14:53:27 +03:00
Adorian Doran
5a76883969 Merge branch 'main' of https://github.com/TriliumNext/Trilium 2025-07-19 14:41:51 +03:00
Adorian Doran
6f51c5e0cc style/attribute detail dialog: fix stretched close button 2025-07-19 14:41:48 +03:00
Elian Doran
2c730d1f0b Merge branch 'main' of https://github.com/TriliumNext/trilium 2025-07-19 14:24:12 +03:00
Elian Doran
d487da0b2f feat(views/table): update new column in context menu to support relations also 2025-07-19 14:23:42 +03:00
Elian Doran
cb8a5cbb62 chore(views/table): add icons to add new column/row context menu 2025-07-19 14:06:00 +03:00
Elian Doran
ceb08593d8 chore(views/table): use translations for new label/relation 2025-07-19 14:04:25 +03:00
Elian Doran
9dd0eb7b9b fix(views/table): not reacting to external attribute changes 2025-07-19 14:02:19 +03:00
Elian Doran
ebff644d24 fix(views/table): changing column inheritability not working 2025-07-19 13:31:46 +03:00
Elian Doran
beb1c15fa5 fix(views/table): inheritable checkbox not respected 2025-07-19 13:25:54 +03:00
Elian Doran
40a5eee211 docs(views/table): describe exactly how to remove relation 2025-07-19 13:00:08 +03:00
Elian Doran
8f393d0bae refactor(bulk_action): fix type error 2025-07-19 12:57:58 +03:00
Elian Doran
94dad49e2f refactor(bulk_action): full type safety for client 2025-07-19 12:56:37 +03:00
Elian Doran
409638151c refactor(bulk_action): add basic type safety for client 2025-07-19 12:54:16 +03:00
Elian Doran
0d3de92890 refactor(views/table): move bulk action implementation in service 2025-07-19 12:46:38 +03:00
Elian Doran
5d619131ec fix(views/table): bulk actions sometimes not working 2025-07-19 12:44:55 +03:00
Elian Doran
e2c8443778 refactor(bulk_action): remake types & change method signature 2025-07-19 12:32:47 +03:00
Elian Doran
daa4743967 refactor(server): add some type safety to bulk actions 2025-07-19 12:15:33 +03:00
Elian Doran
56553078ef docs(views/table): update documentation 2025-07-19 09:47:10 +03:00
Elian Doran
5584a06cb3 chore(deps): update nx monorepo to v21.3.0 (#6398) 2025-07-19 09:28:55 +03:00
renovate[bot]
cfeb69ace6 chore(deps): update nx monorepo to v21.3.0 2025-07-19 06:03:54 +00:00
Elian Doran
b0c8f110de chore(deps): update dependency @types/node to v22.16.5 (#6392) 2025-07-19 09:00:33 +03:00
Elian Doran
aba1266c45 chore(deps): update svelte monorepo (#6395) 2025-07-19 08:59:56 +03:00
Elian Doran
c331e0103d chore(deps): update dependency eslint-config-prettier to v10.1.8 (#6394) 2025-07-19 08:56:51 +03:00
Elian Doran
13978574e0 chore(deps): update dependency stylelint to v16.22.0 (#6397) 2025-07-19 08:56:25 +03:00
renovate[bot]
be85963558 chore(deps): update dependency stylelint to v16.22.0 2025-07-19 05:55:03 +00:00
Elian Doran
8c19261ced fix(deps): update dependency marked to v16.1.1 (#6396) 2025-07-19 08:53:07 +03:00
Elian Doran
7ca17fa609 chore(deps): update dependency esbuild to v0.25.7 (#6393) 2025-07-19 08:52:36 +03:00
renovate[bot]
3d107572df fix(deps): update dependency marked to v16.1.1 2025-07-19 01:52:34 +00:00
renovate[bot]
f7488655a7 chore(deps): update svelte monorepo 2025-07-19 01:51:41 +00:00
renovate[bot]
876e0a29d4 chore(deps): update dependency eslint-config-prettier to v10.1.8 2025-07-19 01:50:50 +00:00
renovate[bot]
af74375695 chore(deps): update dependency esbuild to v0.25.7 2025-07-19 01:50:00 +00:00
renovate[bot]
896965fec5 chore(deps): update dependency @types/node to v22.16.5 2025-07-19 01:49:07 +00:00
Elian Doran
ba5ef93c1a fix(views/table): wrong type when renaming relations 2025-07-18 21:07:29 +03:00
Elian Doran
ef1153d336 fix(views/table): insert direction no longer working 2025-07-18 20:37:16 +03:00
Elian Doran
0d347f8823 feat(views/table): allow creating relations 2025-07-18 16:52:13 +03:00
Elian Doran
897cdc26ae chore(deps): update dependency express-session to v1.18.2 (#6372) 2025-07-18 11:53:17 +03:00
Elian Doran
aba621c099 fix(deps): update dependency mermaid to v11.9.0 (#6384) 2025-07-18 11:53:03 +03:00
renovate[bot]
839813ebde fix(deps): update dependency mermaid to v11.9.0 2025-07-18 08:35:57 +00:00
renovate[bot]
545e2ddbfc chore(deps): update dependency express-session to v1.18.2 2025-07-18 08:35:17 +00:00
Elian Doran
1d63a5903a fix(deps): update dependency marked to v16.1.0 (#6383) 2025-07-18 11:31:35 +03:00
Elian Doran
2b34c00a0c chore(deps): update dependency openai to v5.10.1 (#6378) 2025-07-18 11:31:17 +03:00
Elian Doran
123068062a chore(deps): update dependency @stylistic/eslint-plugin to v5.2.0 (#6376) 2025-07-18 11:31:01 +03:00
Elian Doran
9a668e8709 chore(deps): update node.js to v22.17.1 (#6374) 2025-07-18 11:30:51 +03:00
Elian Doran
f6f8937d64 chore(deps): update dependency express-rate-limit to v8.0.1 (#6371) 2025-07-18 11:30:24 +03:00
Elian Doran
c9f53a2880 chore(deps): update dependency compression to v1.8.1 (#6369) 2025-07-18 11:30:17 +03:00
Elian Doran
2887e712c3 chore(deps): update dependency multer to v2.0.2 [security] (#6368) 2025-07-18 11:29:21 +03:00
renovate[bot]
5d3a0ed1b4 fix(deps): update dependency marked to v16.1.0 2025-07-18 08:06:03 +00:00
renovate[bot]
334b6319de chore(deps): update dependency openai to v5.10.1 2025-07-18 08:05:15 +00:00
renovate[bot]
4c118c0fd4 chore(deps): update dependency @stylistic/eslint-plugin to v5.2.0 2025-07-18 08:04:29 +00:00
renovate[bot]
db00d60684 chore(deps): update node.js to v22.17.1 2025-07-18 08:04:25 +00:00
renovate[bot]
25b74af363 chore(deps): update dependency express-rate-limit to v8.0.1 2025-07-18 08:03:31 +00:00
renovate[bot]
eb57cf97ad chore(deps): update dependency compression to v1.8.1 2025-07-18 08:02:36 +00:00
renovate[bot]
c92e24363f chore(deps): update dependency multer to v2.0.2 [security] 2025-07-18 08:01:44 +00:00
Elian Doran
8d5d00ac0f chore(deps): update nx monorepo to v21.2.4 (#6375) 2025-07-18 10:59:33 +03:00
renovate[bot]
8b457384ba chore(deps): update nx monorepo to v21.2.4 2025-07-18 07:27:59 +00:00
Elian Doran
fab2d53ece chore(deps): update dependency vite to v7.0.5 (#6373) 2025-07-18 10:25:50 +03:00
renovate[bot]
774f27d8d2 chore(deps): update dependency vite to v7.0.5 2025-07-18 07:10:21 +00:00
Elian Doran
d7f02ef1b3 chore(deps): update dependency webdriverio to v9.18.1 (#6380) 2025-07-18 10:07:52 +03:00
renovate[bot]
97eaa6294c chore(deps): update dependency webdriverio to v9.18.1 2025-07-18 06:44:57 +00:00
Elian Doran
dc02bb0850 chore(deps): update svelte monorepo (#6382) 2025-07-18 09:41:49 +03:00
renovate[bot]
2c8c041e1c chore(deps): update svelte monorepo 2025-07-18 06:04:00 +00:00
Elian Doran
874b1c6654 chore(deps): update dependency electron to v37.2.3 (#6370) 2025-07-18 09:02:15 +03:00
Elian Doran
fb982c7097 fix(views/table): regression in restoring column width 2025-07-18 09:01:24 +03:00
Elian Doran
b7f5ce600e chore(renovate): add more packages to svelte monorepo 2025-07-18 08:58:35 +03:00
renovate[bot]
91604c9e26 chore(deps): update dependency electron to v37.2.3 2025-07-18 01:55:54 +00:00
Elian Doran
c874333a37 chore(client): fix type errors 2025-07-17 22:38:00 +03:00
Elian Doran
1298b968f2 fix(views/table): relation display sometimes not showing up 2025-07-17 22:31:54 +03:00
Elian Doran
6fe5a854a7 feat(views/table): allow deleting relations 2025-07-17 21:44:09 +03:00
Elian Doran
aba3b5cb19 feat(views/table): hide all buttons in relation editor 2025-07-17 21:07:44 +03:00
Elian Doran
282aed22b5 feat(views/geomap): support recursive notes 2025-07-17 20:51:15 +03:00
Elian Doran
669a3d9dcf feat(views/table): automatic index col width 2025-07-17 20:44:31 +03:00
Elian Doran
9d7455d28a fix(views/table): expander style affecting row number 2025-07-17 20:44:00 +03:00
Elian Doran
4f0c8b081c feat(views): improve style in collections properties 2025-07-17 19:56:14 +03:00
Elian Doran
a5db5298a0 feat(views/table): integrate depth limit into collection properties 2025-07-17 19:44:34 +03:00
Elian Doran
876c6e9252 feat(views/table): allow limiting depth 2025-07-17 19:34:29 +03:00
Elian Doran
aef824d262 feat(views/table): add a context menu for the header outside columns 2025-07-17 15:36:33 +03:00
Elian Doran
a25ce42490 feat(views/table): allow hiding number row & title 2025-07-17 15:00:19 +03:00
Elian Doran
8b0fdaccf4 feat(views/table): improve alignment for first level + increase indentation 2025-07-17 14:45:38 +03:00
Elian Doran
bd840a2421 feat(views/table): align items expanders 2025-07-17 14:40:44 +03:00
Elian Doran
27d515f289 refactor(views/table): use builtin way of disabling branch elements 2025-07-17 14:34:40 +03:00
Elian Doran
df3b9faf8d fix(client): tree operations no longer working due to loss of focus 2025-07-17 14:05:19 +03:00
Elian Doran
0f129734ae fix(link): popup triggering with bare right click 2025-07-17 11:19:29 +03:00
Elian Doran
275aacfba9 chore(vscode): add search excludes 2025-07-16 21:40:14 +03:00
Elian Doran
e7f47a0663 feat(views/table): delete column definition as well 2025-07-16 21:40:01 +03:00
Elian Doran
66486541fe feat(client): batch delete column values 2025-07-16 21:30:16 +03:00
Elian Doran
34f1a84769 fix(views/table): wrong position when renaming column 2025-07-16 09:23:06 +03:00
Elian Doran
2244f0368f fix(views/table): index column ends up in the wrong position 2025-07-16 09:16:47 +03:00
Elian Doran
9d85005255 chore(deps): update dependency express-rate-limit to v8 (#6362) 2025-07-16 08:32:51 +03:00
Elian Doran
ad8629dca6 chore(deps): update typescript-eslint monorepo to v8.37.0 (#6361) 2025-07-16 08:31:56 +03:00
Elian Doran
cccfe0e05a chore(deps): update svelte monorepo (#6360) 2025-07-16 08:31:36 +03:00
Elian Doran
a8874257e8 fix(deps): update dependency @codemirror/view to v6.38.1 (#6359) 2025-07-16 08:29:40 +03:00
Elian Doran
f689c55f56 chore(deps): update node.js to v22.17.1 (#6358) 2025-07-16 08:28:48 +03:00
Elian Doran
853c7be8b8 chore(deps): update dependency openai to v5.9.2 (#6357) 2025-07-16 08:28:39 +03:00
Elian Doran
823df1e12d chore(deps): update dependency electron to v37.2.2 (#6356) 2025-07-16 08:14:56 +03:00
renovate[bot]
7570f818e9 chore(deps): update dependency express-rate-limit to v8 2025-07-16 02:39:01 +00:00
renovate[bot]
03aa5aea2c chore(deps): update typescript-eslint monorepo to v8.37.0 2025-07-16 02:38:09 +00:00
renovate[bot]
a4e86ac353 chore(deps): update svelte monorepo 2025-07-16 02:36:37 +00:00
renovate[bot]
cf6efc050a fix(deps): update dependency @codemirror/view to v6.38.1 2025-07-16 02:35:51 +00:00
renovate[bot]
3e0802176b chore(deps): update node.js to v22.17.1 2025-07-16 02:35:04 +00:00
renovate[bot]
697954d4d9 chore(deps): update dependency openai to v5.9.2 2025-07-16 02:34:06 +00:00
renovate[bot]
741f6c1114 chore(deps): update dependency electron to v37.2.2 2025-07-16 02:33:19 +00:00
Adorian Doran
b2237ffa51 style/collections/tables: tweak nested rows 2025-07-16 05:23:13 +03:00
Adorian Doran
7b6d11bffa style/collections/tables: fix frozen cells overlapping with the outline of the left-side cells 2025-07-16 05:04:06 +03:00
Adorian Doran
97565e8f36 style(next)/collection/tables: improve the color scheme 2025-07-16 04:22:43 +03:00
perf3ct
c0dfee8439 fix(metrics): don't assign a timestamp to Prometheus metrics, let the scraper assign the timestamp to the time series 2025-07-15 20:39:36 +00:00
Elian Doran
fc98240614 chore(client): fix type error 2025-07-15 22:36:30 +03:00
Elian Doran
169d1203c2 fix(views/table): some context menu items active when they shouldn't 2025-07-15 22:30:52 +03:00
Elian Doran
f3350bc8f5 refactor(views/table): better cleanup 2025-07-15 22:06:32 +03:00
Elian Doran
504a19275c feat(views/table): basic renaming of fields 2025-07-15 21:48:16 +03:00
Elian Doran
14cdc52670 feat(views/table): support renaming columns 2025-07-15 20:42:47 +03:00
Elian Doran
cf8063f311 feat(views/table): format note ID as monospace 2025-07-15 19:32:13 +03:00
Elian Doran
aa8902f5b9 fix(client): popup not displayed for existing attributes (closes #5718) 2025-07-15 18:55:29 +03:00
Elian Doran
7cd0e664ac feat(views/table): basic editing of columns (rename not supported) 2025-07-15 18:51:51 +03:00
Elian Doran
a04804d3fa fix(views/table): wrong specs when restoring columns 2025-07-15 18:39:20 +03:00
Elian Doran
86f90e6685 fix(api): also rate limit etapi docs endpoint (#6352) 2025-07-15 17:06:52 +03:00
Elian Doran
8131a4b3d2 fix(views/table): events/commands not well sent 2025-07-15 15:49:32 +03:00
Elian Doran
b91a3e13b0 refactor(views/table): move row editing to own component 2025-07-15 15:32:30 +03:00
Elian Doran
5a7a0d32d1 refactor(views/table): move col editing to own component 2025-07-15 14:53:18 +03:00
perf3ct
3f5df18d6c fix(api): also rate limit etapi docs endpoint 2025-07-14 21:12:00 +00:00
Elian Doran
df2cede075 fix(views/calendar): nested entries in calendar view 2025-07-14 23:12:55 +03:00
Elian Doran
4321c161ac fix(views/calendar): duplicate entries in calendar view 2025-07-14 23:07:26 +03:00
Elian Doran
b1f0c64ef2 chore(views/geo): typing issue 2025-07-14 22:52:37 +03:00
Elian Doran
c9b37dcc77 refactor(views/table): rename event 2025-07-14 21:06:44 +03:00
Elian Doran
ab093ed9a0 chore(views/table): add translations 2025-07-14 20:59:29 +03:00
Elian Doran
cf31367acd feat(views/table): insert column to the right 2025-07-14 20:42:37 +03:00
Elian Doran
e3d306cac3 fix(views/table): wrong insert position for insert left 2025-07-14 20:34:05 +03:00
Elian Doran
960d321019 fix(views/table): position not restored after new columns (closes #6285) 2025-07-14 20:32:24 +03:00
Elian Doran
2d4ac93221 feat(views/table): basic implementation for inserting columns at position 2025-07-14 19:14:10 +03:00
Elian Doran
d4a4f15416 refactor(views/table): move attribute detail widget to view 2025-07-14 17:29:20 +03:00
Elian Doran
504a842d37 feat(views/table): force a refresh if #sorted is changed 2025-07-14 17:02:07 +03:00
Elian Doran
ded5b1f5d2 feat(views/table): expand child notes by default 2025-07-14 17:00:01 +03:00
Elian Doran
fcbbc21a80 feat(views/table): force a refresh if data tree changes 2025-07-14 16:58:14 +03:00
Elian Doran
38fce25b86 fix(views/table): show/hide columns not always updated properly 2025-07-14 16:51:20 +03:00
Elian Doran
4cc2fa5300 fix(snippets): warning about missing note IDs when deleting 2025-07-14 16:49:42 +03:00
Elian Doran
4a82c3f65a fix(views/table): insert above/below not working in nested trees 2025-07-14 16:49:29 +03:00
Elian Doran
b255d70e18 fix(views/table): context menu remains active while clicking on an expand/collapse button 2025-07-14 16:24:54 +03:00
Elian Doran
caa842cd55 fix(views/table): unable to update state for newly created rows 2025-07-14 16:16:55 +03:00
Elian Doran
cd338085fb refactor(views/table): clean up 2025-07-14 15:52:21 +03:00
Elian Doran
e703ce92a8 refactor(views/table): simplify context menu handling 2025-07-14 15:46:22 +03:00
Elian Doran
84479a2c2a feat(views/table): focus if creating child note 2025-07-14 15:38:57 +03:00
Elian Doran
c13969217c feat(views/table): insert child note 2025-07-14 13:37:18 +03:00
Elian Doran
402540f483 feat(views/table): support recursive children update 2025-07-14 13:15:41 +03:00
Elian Doran
8c56315313 refactor(views): move full height detection to rendererer 2025-07-14 12:56:17 +03:00
Elian Doran
b29c3eff6e refactor(views): prepare for supporting subtrees 2025-07-14 12:53:11 +03:00
Elian Doran
ec7dacfc9b feat(views/table): improve expand/collapse button 2025-07-14 12:04:13 +03:00
Elian Doran
5f9a6a9f76 feat(views/table): integrate expander into note title section 2025-07-14 11:39:12 +03:00
Elian Doran
28f4aea3d5 refactor(views/table): use slightly more performant formatter for row number 2025-07-14 11:30:46 +03:00
Elian Doran
8d29c5fe1b feat(views/table): hide draggable rows if not supported 2025-07-14 11:29:14 +03:00
Elian Doran
ccd935b562 refactor(views/table): don't configure reordering rows if not available 2025-07-14 11:22:32 +03:00
Elian Doran
d77a49857b feat(views/table): basic nested tree support 2025-07-14 11:11:08 +03:00
Elian Doran
e30478e5d4 chore(views/table): disable menu module since it's no longer necessary 2025-07-14 10:45:01 +03:00
Elian Doran
71863752cd feat(views/table): display both promoted and non-promoted attributes 2025-07-14 10:38:45 +03:00
Elian Doran
e4a2a8e56d fix(text): selection and cursor not maintained properly when switching tabs 2025-07-14 09:58:58 +03:00
Elian Doran
0f1c505823 fix(tab): editor not focused after switching tabs 2025-07-14 09:58:58 +03:00
Elian Doran
1ecce11113 chore(deps): update dependency vite-plugin-static-copy to v3.1.1 (#6345) 2025-07-14 08:10:18 +03:00
renovate[bot]
2287d67fb5 chore(deps): update dependency vite-plugin-static-copy to v3.1.1 2025-07-13 19:16:04 +00:00
Elian Doran
5b4f17ef3d Update README.md (#6344) 2025-07-13 22:14:33 +03:00
Elian Doran
3720ab6df6 fix(views/table): not reacting to title changes 2025-07-13 21:38:23 +03:00
diyoyo
3c893d69e5 Update README.md
updating from `Notes` to `Trilium` in the `Contribute`section.
2025-07-13 20:29:02 +02:00
Elian Doran
b93a4a3e42 fix(views/table): booleans not working 2025-07-13 21:06:41 +03:00
Elian Doran
23cef0ab94 chore(views/table): translate row menu 2025-07-13 16:56:03 +03:00
Elian Doran
c8ffb8d694 chore(views/table): translate column menu 2025-07-13 16:52:29 +03:00
Elian Doran
08e08d8920 feat(views/table): improve column context menu 2025-07-13 16:45:04 +03:00
Elian Doran
7acd300163 feat(views/table): add option to clear sorting 2025-07-13 16:41:43 +03:00
Elian Doran
d8d95db4ec feat(views/table): add sort by 2025-07-13 16:37:45 +03:00
Elian Doran
af97d3ef1d feat(views/table): add back show/hide columns 2025-07-13 16:22:57 +03:00
Elian Doran
c65ec14943 feat(views/table): hide column in contetx menu 2025-07-13 14:37:13 +03:00
Elian Doran
adfdc7edb4 feat(views/table): drag handle to avoid editing issues 2025-07-13 14:24:12 +03:00
Elian Doran
8cced607eb feat(views/table): insert row before 2025-07-13 14:10:37 +03:00
Elian Doran
5dd5af90c2 feat(views/table): insert row below 2025-07-13 13:06:53 +03:00
Elian Doran
7a48333b4f chore(deps): update dependency @sveltejs/vite-plugin-svelte to v6 (#6341) 2025-07-13 08:22:24 +03:00
Elian Doran
7044533398 fix(deps): update dependency mind-elixir to v5.0.2 (#6340) 2025-07-13 08:21:06 +03:00
renovate[bot]
560aad8df6 chore(deps): update dependency @sveltejs/vite-plugin-svelte to v6 2025-07-13 01:34:38 +00:00
renovate[bot]
36c2099b2e fix(deps): update dependency mind-elixir to v5.0.2 2025-07-13 01:33:47 +00:00
Elian Doran
6c157675d7 feat(views/table): open in new tab/quick edit 2025-07-13 00:44:44 +03:00
Elian Doran
458d66cb21 feat(views/table): delete row from context menu (closes #6288) 2025-07-13 00:36:34 +03:00
Elian Doran
201e8911c5 chore: prefer short name 2025-07-12 23:48:42 +03:00
Elian Doran
1b1ed2408f feat(funding): add Buy Me a Coffee 2025-07-12 23:28:07 +03:00
Elian Doran
62487d21d8 feat(funding): add LiberaPay 2025-07-12 23:20:55 +03:00
Elian Doran
bc752bdb0b fix(popup_editor): note icon overlapping with classic editor 2025-07-12 22:38:20 +03:00
Elian Doran
9e00d421fb fix(ckeditor): color and font mismatch after update 2025-07-12 22:34:27 +03:00
Elian Doran
e7f02fe22b fix(deps): update ckeditor monorepo (major) (#6283) 2025-07-12 22:03:15 +03:00
Elian Doran
6d694f8e53 chore(client): update types 2025-07-12 20:20:41 +03:00
Elian Doran
977befd0a7 chore(ckeditor5): update ckeditor theme variable names 2025-07-12 20:00:01 +03:00
Elian Doran
1566ae4fbd chore(ckeditor5): fix references: DocumentSelection -> ModelDocumentSelection 2025-07-12 19:45:00 +03:00
Elian Doran
4e97490cc6 chore(ckeditor5): fix references: Selectable -> ModelSelectable 2025-07-12 19:44:38 +03:00
Elian Doran
446d5a0fcc chore(ckeditor5): fix references: Item -> ModelItem 2025-07-12 19:44:12 +03:00
Elian Doran
1fd6465012 chore(ckeditor5): fix references: NodeAttributes -> ModelNodeAttributes 2025-07-12 19:43:48 +03:00
Elian Doran
6cea8e3b87 chore(ckeditor5): fix references: Range -> ModelRange 2025-07-12 19:43:18 +03:00
Elian Doran
28a63e0326 chore(ckeditor5): fix references: DocumentFragment -> ModelDocumentFragment 2025-07-12 19:42:54 +03:00
Elian Doran
b73da46111 chore(ckeditor5): fix references: Writer -> ModelWriter 2025-07-12 19:42:26 +03:00
Elian Doran
abafa8c2d2 chore(ckeditor5): fix references: Position -> ModelPosition 2025-07-12 19:41:30 +03:00
Elian Doran
4ae3272cdf chore(ckeditor5): fix references: Element -> ModelElement 2025-07-12 19:40:24 +03:00
Elian Doran
6aa3b8dbd7 chore(ckeditor5-admonition): fix references 2025-07-12 19:38:36 +03:00
Elian Doran
395e9b2228 chore(ckeditor5-admonition): fix references: DocumentFragment -> ViewDocumentFragment 2025-07-12 19:29:51 +03:00
Elian Doran
be33f68c52 chore(ckeditor5-math): fix references: DowncastWriter -> ViewDowncastWriter 2025-07-12 19:28:28 +03:00
Elian Doran
29d96381fa chore(ckeditor5-math): fix references: LiveRange -> ModelLiveRange 2025-07-12 19:27:46 +03:00
Elian Doran
da8eecf774 chore(ckeditor5-math): fix references: LivePosition -> ModelLivePosition 2025-07-12 19:27:22 +03:00
Elian Doran
de91326c12 chore(ckeditor5-math): fix references: Element -> ModelElement 2025-07-12 19:26:52 +03:00
Elian Doran
ee1c3c35d7 chore(ckeditor5-mermaid): fix references: {Item,Node} -> Model{Item,Node} 2025-07-12 19:25:40 +03:00
Elian Doran
70eece1429 chore(ckeditor5-mermaid): fix references: Element -> ModelElement 2025-07-12 19:24:39 +03:00
Elian Doran
b4f2be332b chore(ckeditor5-footnotes): fix references: Schema -> ModelSchema 2025-07-12 19:23:44 +03:00
Elian Doran
23fe76989b chore(ckeditor5-footnotes): fix references: Writer -> ModelWriter 2025-07-12 19:23:40 +03:00
Elian Doran
275d07659d chore(ckeditor5-footnotes): fix references: Range -> ModelRange 2025-07-12 19:23:37 +03:00
Elian Doran
a901e92573 chore(ckeditor5-footnotes): fix references: Element -> ModelElement 2025-07-12 19:23:33 +03:00
Elian Doran
6ead31b45f chore(ckeditor5-footnotes): fix references: RootElement -> ModelRootElement 2025-07-12 19:23:30 +03:00
Elian Doran
d4ce12dca9 chore(ckeditor5-footnotes): fix references: TextProxy -> ModelTextProxy 2025-07-12 19:23:25 +03:00
Elian Doran
bb6e22cdb7 chore(ckeditor5-footnotes): fix references: Text -> ModelText 2025-07-12 19:23:13 +03:00
Elian Doran
2c9fc4812e chore(deps): update dependency electron to v37.2.1 (#6303) 2025-07-12 19:05:18 +03:00
Elian Doran
60f4554afa Merge branch 'main' of https://github.com/TriliumNext/trilium 2025-07-12 19:04:43 +03:00
Elian Doran
3c486bfd1b chore(ci): set personal access token for conflict checker 2025-07-12 19:04:41 +03:00
Elian Doran
26b9a95bb2 chore(deps): update svelte monorepo (#6316) 2025-07-12 19:00:30 +03:00
Elian Doran
f7c9217cea Table Collections: restyle (#6298) 2025-07-12 18:59:56 +03:00
Elian Doran
e92022b73c Tree Context Menu: relocate the "Duplicate subtree" menu item (#6299) 2025-07-12 18:52:35 +03:00
Elian Doran
61ff2353c8 docs(help): update documentation on duplicate subtree 2025-07-12 18:52:12 +03:00
Elian Doran
c8cca26ca4 Merge remote-tracking branch 'origin/main' into feat/tree-context-menu/relocate-duplicate-note-command 2025-07-12 18:41:58 +03:00
Elian Doran
aa556ed4d5 Merge branch 'main' of https://github.com/TriliumNext/trilium 2025-07-12 18:40:28 +03:00
Elian Doran
5d694a7bdf chore(ci): permissions issue with merge checker 2025-07-12 18:40:25 +03:00
renovate[bot]
c4787dae23 fix(deps): update ckeditor monorepo 2025-07-12 10:57:11 +00:00
renovate[bot]
9f5f329c53 chore(deps): update dependency electron to v37.2.1 2025-07-12 10:55:36 +00:00
Elian Doran
f82b96fcc4 chore(deps): update dependency @types/node to v22.16.3 (#6302) 2025-07-12 13:53:21 +03:00
renovate[bot]
d4b24fa427 chore(deps): update svelte monorepo 2025-07-12 10:41:27 +00:00
renovate[bot]
c852f67c59 chore(deps): update dependency @types/node to v22.16.3 2025-07-12 10:39:43 +00:00
Elian Doran
92c228a3c9 chore(deps): update nx monorepo to v21.2.3 (#6306) 2025-07-12 13:17:34 +03:00
renovate[bot]
42f948e2b3 chore(deps): update nx monorepo to v21.2.3 2025-07-12 08:59:08 +00:00
Elian Doran
13e8932117 chore(deps): update dependency @playwright/test to v1.54.1 (#6308) 2025-07-12 11:55:42 +03:00
renovate[bot]
910d34bd42 chore(deps): update dependency @playwright/test to v1.54.1 2025-07-12 07:57:58 +00:00
Elian Doran
b204ba29e7 fix(deps): update eslint monorepo to v9.31.0 (#6311) 2025-07-12 10:54:00 +03:00
Elian Doran
d49244cbc8 Merge branch 'main' of https://github.com/TriliumNext/trilium 2025-07-12 10:08:35 +03:00
Elian Doran
ef2f2f17b4 feat(ci): mark PRs with merge conflicts 2025-07-12 10:08:33 +03:00
renovate[bot]
b9f21dcf4c fix(deps): update eslint monorepo to v9.31.0 2025-07-12 07:03:21 +00:00
Elian Doran
808fe690cc chore(deps): update dependency openai to v5.9.0 (#6309) 2025-07-12 10:01:18 +03:00
Elian Doran
901eec04e5 chore(deps): update dependency vite to v7.0.4 (#6305) 2025-07-12 10:01:02 +03:00
Elian Doran
9272394ada fix(deps): update dependency eslint-linter-browserify to v9.31.0 (#6310) 2025-07-12 09:59:19 +03:00
Elian Doran
4457982fae chore(deps): update ckeditor5 config packages to v12 (major) (#6312) 2025-07-12 09:59:05 +03:00
Elian Doran
7f67b2b461 chore(deps): update dependency dotenv to v17.2.0 (#6279) 2025-07-12 09:58:05 +03:00
Elian Doran
7f3934f4c3 chore(renovate): group svelte as monorepo 2025-07-12 09:57:29 +03:00
renovate[bot]
a3b80a2cc4 chore(deps): update ckeditor5 config packages to v12 2025-07-12 01:37:21 +00:00
renovate[bot]
6d967e5e51 fix(deps): update dependency eslint-linter-browserify to v9.31.0 2025-07-12 01:34:54 +00:00
renovate[bot]
b674ca90d1 chore(deps): update dependency openai to v5.9.0 2025-07-12 01:34:03 +00:00
renovate[bot]
95edb60a84 chore(deps): update dependency vite to v7.0.4 2025-07-12 01:29:46 +00:00
Adorian Doran
40add78ccb client/tree context menu: update translations 2025-07-12 02:22:00 +03:00
Adorian Doran
1029c24c06 client/tree context menu: relocate the "Duplicate subtree" menu item 2025-07-12 02:21:22 +03:00
Adorian Doran
94d94fe8fb Merge branch 'main' of https://github.com/TriliumNext/Trilium into feat/style/collections/table 2025-07-12 01:56:04 +03:00
Adorian Doran
49489c0f45 style/table collections: refactor 2025-07-12 01:55:07 +03:00
Adorian Doran
215833a2c9 style/table collections: tweak table footer 2025-07-12 01:40:18 +03:00
Adorian Doran
a7471a3d47 style/table collections: tweak checkbox cells 2025-07-12 01:34:22 +03:00
Adorian Doran
909aaefbd7 style/table collections: restyle context menus 2025-07-12 01:17:09 +03:00
Elian Doran
15c2f56bf2 fix(options): display a less ambiguous/scary message after performing… (#6284) 2025-07-12 00:34:23 +03:00
Elian Doran
84cdfec415 Popup editor (#6292) 2025-07-12 00:30:33 +03:00
Elian Doran
91572ab8b9 fix(popup_editor): use cmd on macos 2025-07-11 22:53:14 +03:00
Adorian Doran
ed758f4c92 style/table collections: tweak appearance 2025-07-11 22:39:49 +03:00
Elian Doran
f1fc15e115 fix(link): popup menu no longer triggering 2025-07-11 22:34:41 +03:00
Adorian Doran
22300e8151 style/table collections: tweak appearance 2025-07-11 21:52:35 +03:00
Elian Doran
292646e14a fix(popup_editor): styles showing up when classic toolbar is shown 2025-07-11 20:46:48 +03:00
Elian Doran
b4921a20d8 fix(client): type errors 2025-07-11 20:08:35 +03:00
Elian Doran
54be79a725 feat(in-app-help): link grid/list book types 2025-07-11 19:43:12 +03:00
Elian Doran
4fc47370fe docs(help): fix some old references to books 2025-07-11 19:42:19 +03:00
Elian Doran
9e30bcf233 docs(help): improve documentation on collections 2025-07-11 19:40:54 +03:00
Elian Doran
e5712c54e6 docs(help): add a section on feature highlights 2025-07-11 19:09:42 +03:00
Elian Doran
2a4fe21a39 docs(help): document keyboard shortcuts for note tree 2025-07-11 18:50:56 +03:00
Elian Doran
b259558f0f docs(help): document note tooltip 2025-07-11 18:33:16 +03:00
Elian Doran
e2f6d9e0d6 docs(help): document quick edit 2025-07-11 18:27:55 +03:00
Elian Doran
4fc2b0fa5e feat(popup_editor): focus on editor automatically for easier editing 2025-07-11 16:52:13 +03:00
Elian Doran
8dca79ecf2 fix(popup_editor): block toolbar from behind modal interfering 2025-07-11 16:52:13 +03:00
Elian Doran
c7f49f0e21 chore(popup_editor): switch keyboard combo to Ctrl+right click 2025-07-11 16:52:13 +03:00
Elian Doran
bce2094fb2 fix(tree): middle click triggering paste 2025-07-11 16:52:13 +03:00
renovate[bot]
65c33e1aa0 chore(deps): update dependency webdriverio to v9.17.0 2025-07-11 16:52:13 +03:00
renovate[bot]
8e108bc5e2 chore(deps): update dependency svelte to v5.35.5 2025-07-11 16:52:13 +03:00
renovate[bot]
4e75ce7fdb chore(deps): update pnpm to v10.13.1 2025-07-11 16:52:13 +03:00
renovate[bot]
1e42574d28 fix(deps): update dependency i18next to v25.3.2 2025-07-11 16:52:13 +03:00
renovate[bot]
85ebaf6afa chore(deps): update dependency dotenv to v17.2.0 2025-07-11 16:52:13 +03:00
renovate[bot]
661c7e4056 chore(deps): update dependency @sveltejs/kit to v2.22.4 2025-07-11 16:52:13 +03:00
Elian Doran
1e8ea54dbc feat(popup_editor): smoother operation 2025-07-11 12:16:56 +03:00
Elian Doran
ddbe7e9936 chore(popup_editor): clean up after closing modal 2025-07-11 12:00:32 +03:00
Elian Doran
cab86175ef fix(file): pdf having a 10px margin at the bottom 2025-07-11 11:28:10 +03:00
Elian Doran
ec7414b174 fix(popup_editor): collections being displayed under a full empty screen 2025-07-11 10:47:06 +03:00
Elian Doran
8343a5d1dd feat(popup_editor): add mobile support 2025-07-11 09:06:06 +03:00
Adorian Doran
18c55784c7 style/table collections: add a placeholder style for rows and cells 2025-07-11 00:16:15 +03:00
Elian Doran
39eac83d38 fix(popup_editor): mermaid not rendering properly 2025-07-10 23:21:37 +03:00
Elian Doran
55bd6fb57d feat(popup_editor): properly support file note types 2025-07-10 22:55:16 +03:00
Elian Doran
6fdec52332 fix(popup_editor): mind map not rendering properly 2025-07-10 22:48:33 +03:00
Adorian Doran
824a3c5fcc style/table collections: fix an issue with column headers 2025-07-10 21:54:32 +03:00
Adorian Doran
87da644027 style/table collections: add a placeholder style for column headers 2025-07-10 21:52:09 +03:00
Adorian Doran
4f42f543d8 style/table collections: create a stylesheet dedicated to the table view 2025-07-10 21:20:48 +03:00
Elian Doran
97ea3ac3fc fix(popup_editor): block popup not working 2025-07-10 20:54:50 +03:00
Elian Doran
f04b75fd36 feat(popup_editor): add shortcut in links 2025-07-10 19:56:13 +03:00
Elian Doran
f5bffc38f1 feat(popup_editor): add shortcut in note tree 2025-07-10 19:54:51 +03:00
Elian Doran
27738acefc feat(popup_editor): support collections 2025-07-10 19:39:08 +03:00
Elian Doran
59ce2072c5 feat(popup_editor): display promoted attributes 2025-07-10 19:19:44 +03:00
Elian Doran
ed68dda70b feat(popup_editor): integrate with note tooltip 2025-07-10 18:57:13 +03:00
Elian Doran
892ab02f06 feat(popup_editor): integrate with geomap 2025-07-10 18:21:12 +03:00
Elian Doran
7d9196d5e1 feat(popup_editor): integrate with calendar for day notes 2025-07-10 18:14:23 +03:00
Elian Doran
dccdb5ceb7 feat(popup_editor): integrate with calendar for existing notes 2025-07-10 17:54:27 +03:00
Elian Doran
f961698e44 feat(popup_editor): improve fit for wider notes 2025-07-10 17:40:57 +03:00
Elian Doran
278fe3262e feat(popup_editor): improve fit for full-height note types 2025-07-10 17:33:00 +03:00
Elian Doran
1fc860b052 feat(popup_editor): integrate with tree context menu 2025-07-10 17:26:40 +03:00
Elian Doran
88a8311173 feat(popup_editor): integrate with note link context menu 2025-07-10 17:19:10 +03:00
Elian Doran
63dc5697dd fix(popup_editor): classic editor toolbar displayed when it shouldn't 2025-07-10 16:37:34 +03:00
Elian Doran
b595d1fade fix(popup_editor): ckeditor modals not showing 2025-07-10 16:35:44 +03:00
Elian Doran
d91c59b7d0 feat(popup_editor): floating classic toolbar 2025-07-10 16:16:09 +03:00
Elian Doran
aa2ab0da31 feat(popup_editor): limit max height & reduce padding 2025-07-10 16:12:38 +03:00
Elian Doran
91f94106fb feat(popup_editor): integrate classic editor toolbar 2025-07-10 16:09:34 +03:00
Elian Doran
308f319138 feat(popup_editor): normalize paddings 2025-07-10 15:28:55 +03:00
Elian Doran
fa0c01591a feat(popup_editor): integrate note title + icon into modal header 2025-07-10 15:25:07 +03:00
Elian Doran
cb5a771490 feat(popup_editor): add editable note title and icon 2025-07-10 15:07:48 +03:00
Elian Doran
0c17a13462 fix(popup_editor): current tab events interfering 2025-07-10 14:57:32 +03:00
Romain DEP.
04593cb2d7 fix(options): display a less ambiguous/scary message after performing a consistency check.
The current message could easily be misinterpreted as an instruction for the user to go fix issues
2025-07-10 13:15:41 +02:00
Elian Doran
b6f50b6af0 chore(deps): update dependency webdriverio to v9.17.0 (#6281) 2025-07-10 13:57:25 +03:00
renovate[bot]
fc454cba03 chore(deps): update dependency webdriverio to v9.17.0 2025-07-10 09:54:03 +00:00
Elian Doran
6f165df29e chore(deps): update dependency svelte to v5.35.5 (#6277) 2025-07-10 12:49:50 +03:00
Elian Doran
d16468071d chore(deps): update pnpm to v10.13.1 (#6282) 2025-07-10 12:49:38 +03:00
renovate[bot]
20a492523f chore(deps): update dependency svelte to v5.35.5 2025-07-10 07:43:08 +00:00
Elian Doran
1216f51c78 fix(deps): update dependency i18next to v25.3.2 (#6278) 2025-07-10 10:42:16 +03:00
Elian Doran
ea3ac1041b chore(deps): update dependency dotenv to v17.2.0 (#6280) 2025-07-10 10:41:45 +03:00
Elian Doran
d838e8baf0 chore(deps): update dependency @sveltejs/kit to v2.22.4 (#6276) 2025-07-10 10:41:01 +03:00
renovate[bot]
60a7347d7d chore(deps): update pnpm to v10.13.1 2025-07-10 02:40:45 +00:00
renovate[bot]
4e05e79426 chore(deps): update dependency dotenv to v17.2.0 2025-07-10 02:39:34 +00:00
renovate[bot]
aa872f47f2 chore(deps): update dependency dotenv to v17.2.0 2025-07-10 02:38:39 +00:00
renovate[bot]
fbd833ad86 fix(deps): update dependency i18next to v25.3.2 2025-07-10 02:37:42 +00:00
renovate[bot]
bee65ed32c chore(deps): update dependency @sveltejs/kit to v2.22.4 2025-07-10 02:35:48 +00:00
Elian Doran
5adca76a9a refactor(popup_editor): better error handling 2025-07-09 21:56:11 +03:00
Elian Doran
e7467f6446 feat(popup_editor): get editor to show up if note is open somewhere else 2025-07-09 21:44:42 +03:00
Elian Doran
e49473fbd3 refactor(client): unused import 2025-07-09 21:20:24 +03:00
Elian Doran
bfec44aa5a refactor(popup_editor): inject note detail widget 2025-07-09 21:20:16 +03:00
Elian Doran
55b3bf6036 feat(popup_editor): create an empty modal with auto-trigger 2025-07-09 21:12:18 +03:00
Elian Doran
c9c07f0cb0 chore(book_properties): add config for all note types 2025-07-09 20:53:35 +03:00
Elian Doran
e25727441d chore(book_properties): add translations 2025-07-09 20:40:04 +03:00
Elian Doran
51b7955ccd refactor(book_properties): move rendering to book_properties 2025-07-09 20:37:05 +03:00
Elian Doran
196bba9cda refactor(book_properties): list buttons are now declarative 2025-07-09 20:29:58 +03:00
Elian Doran
430ed78d85 feat(book_properties): improve layout & accessibility 2025-07-09 20:14:42 +03:00
Elian Doran
2d11ed805d feat(book_properties): react to external changes 2025-07-09 20:13:08 +03:00
Elian Doran
f55426bdb0 feat(collections): basic properties for calendar 2025-07-09 20:10:25 +03:00
Elian Doran
87b5068fec chore(collections): rename references to book 2025-07-09 19:40:35 +03:00
Elian Doran
9ddd1a4ae2 feat(collections): add i18n 2025-07-09 19:37:10 +03:00
Elian Doran
736bc9c9bd chore(insert_note): improve layout slightly 2025-07-09 19:32:29 +03:00
Elian Doran
5a2da62992 feat(collections): hide book default note type 2025-07-09 19:28:44 +03:00
Elian Doran
1a72eb91ee feat(collections): display grid/view in collections list 2025-07-09 19:22:12 +03:00
Elian Doran
0d3c5b06e2 feat(collections): add calendar as a standalone template 2025-07-09 19:05:05 +03:00
Elian Doran
035b72a08d feat(insert_note): add dedicated section for collections 2025-07-09 18:55:08 +03:00
Elian Doran
fc4a595725 feat(insert_note): display on two columns 2025-07-09 18:37:09 +03:00
Elian Doran
444969bcf4 chore(deps): update dependency @types/node to v22.16.2 (#6267) 2025-07-09 08:47:37 +03:00
renovate[bot]
2cb6b14eca chore(deps): update dependency @types/node to v22.16.2 2025-07-09 05:23:39 +00:00
Elian Doran
468b5022a4 chore(deps): update dependency @types/express-serve-static-core to v5.0.7 (#6265) 2025-07-09 08:20:41 +03:00
Elian Doran
c1897563ca chore(deps): update dependency @types/leaflet to v1.9.20 (#6266) 2025-07-09 08:20:28 +03:00
Elian Doran
5e533896b9 chore(deps): update dependency openai to v5.8.3 (#6268) 2025-07-09 08:20:11 +03:00
Elian Doran
d3ceb7cfc1 chore(deps): update dependency vite to v7.0.3 (#6269) 2025-07-09 08:19:59 +03:00
Elian Doran
731f74f421 chore(deps): update dependency is-svg to v6.1.0 (#6270) 2025-07-09 08:19:40 +03:00
renovate[bot]
46d82651a3 chore(deps): update dependency is-svg to v6.1.0 2025-07-09 02:08:18 +00:00
renovate[bot]
b3108c7e2b chore(deps): update dependency vite to v7.0.3 2025-07-09 02:07:23 +00:00
renovate[bot]
0cb988470e chore(deps): update dependency openai to v5.8.3 2025-07-09 02:06:29 +00:00
renovate[bot]
5a030014b0 chore(deps): update dependency @types/leaflet to v1.9.20 2025-07-09 02:04:53 +00:00
renovate[bot]
2a43ef4dae chore(deps): update dependency @types/express-serve-static-core to v5.0.7 2025-07-09 02:04:03 +00:00
Elian Doran
6b5f9fc6ff Merge branch 'main' of https://github.com/TriliumNext/trilium 2025-07-08 22:33:44 +03:00
Elian Doran
b3a156c20d Update docker-compose.yml with new container image (#6263) 2025-07-08 21:33:51 +03:00
Elian Doran
24340d3a8e refactor(next): remove use of :has for performance reasons 2025-07-08 21:24:18 +03:00
Elian Doran
2fac2a8c5e chore(next): improve performance of a specific selector 2025-07-08 21:09:13 +03:00
Elian Doran
decb0c702d chore(nx): disable cache for rebuild-deps 2025-07-08 20:54:14 +03:00
Elian Doran
d45ff6cca5 fix(next): another non-performant CSS selector 2025-07-08 20:53:06 +03:00
DeveloperCrocodiles
83833e668c Update docker-compose.yml with new container image
Update docker-compose.yml to use the new container image triliumnext/trilium rather than triliumnext/notes.
2025-07-08 16:51:10 +01:00
Elian Doran
2cc181d1ac fix(tree): pasting in editor on middle click (closes #5812) 2025-07-08 15:51:19 +03:00
Elian Doran
a946ce3534 chore(deps): update dependency dotenv to v17.1.0 (#6255) 2025-07-08 09:05:40 +03:00
renovate[bot]
3e9f476b37 chore(deps): update dependency dotenv to v17.1.0 2025-07-08 05:21:18 +00:00
Elian Doran
de65c748a4 chore(deps): update dependency esbuild to v0.25.6 (#6249) 2025-07-08 08:18:57 +03:00
Elian Doran
8a2bfb9d7b chore(deps): update dependency supertest to v7.1.3 (#6250) 2025-07-08 08:18:20 +03:00
Elian Doran
a1ced31fea chore(deps): update dependency svelte to v5.35.4 (#6251) 2025-07-08 08:18:08 +03:00
Elian Doran
989a9f506e fix(deps): update dependency @electron/remote to v2.1.3 (#6252) 2025-07-08 08:17:58 +03:00
Elian Doran
59d55e2489 fix(deps): update dependency mermaid to v11.8.1 (#6253) 2025-07-08 08:17:47 +03:00
Elian Doran
2b312a9234 chore(deps): update typescript-eslint monorepo to v8.36.0 (#6256) 2025-07-08 08:17:31 +03:00
Elian Doran
16d9b982c2 chore(deps): update dependency dotenv to v17.1.0 (#6254) 2025-07-08 08:17:19 +03:00
renovate[bot]
a5600e75f5 chore(deps): update typescript-eslint monorepo to v8.36.0 2025-07-08 02:01:43 +00:00
renovate[bot]
f91dea62b6 chore(deps): update dependency dotenv to v17.1.0 2025-07-08 01:59:19 +00:00
renovate[bot]
4915ffcf2a fix(deps): update dependency mermaid to v11.8.1 2025-07-08 01:58:31 +00:00
renovate[bot]
9dbea2aa18 fix(deps): update dependency @electron/remote to v2.1.3 2025-07-08 01:57:38 +00:00
renovate[bot]
45f6a70fb8 chore(deps): update dependency svelte to v5.35.4 2025-07-08 01:56:42 +00:00
renovate[bot]
96b4c611cc chore(deps): update dependency supertest to v7.1.3 2025-07-08 01:55:48 +00:00
renovate[bot]
4e559d6594 chore(deps): update dependency esbuild to v0.25.6 2025-07-08 01:54:54 +00:00
Elian Doran
db1a599f95 fix(deps): update dependency mind-elixir to v5 (#6239) 2025-07-07 22:12:14 +03:00
Elian Doran
040964bbb7 chore(env): add variable for inspector 2025-07-07 22:10:07 +03:00
Elian Doran
dc6a303154 fix(mindmap): update deps to reintegrate features 2025-07-07 20:59:31 +03:00
Elian Doran
f88f14c983 Merge remote-tracking branch 'origin/main' into renovate/mind-elixir-5.x 2025-07-07 20:50:23 +03:00
Elian Doran
f870649256 Geomap improvements & conversion to book type (#6241) 2025-07-07 20:27:07 +03:00
Elian Doran
ed4dc30a6e refator(client): type error 2025-07-07 20:07:04 +03:00
Elian Doran
ce9010ff13 chore(client): add some documentation 2025-07-07 20:04:17 +03:00
Elian Doran
994e9fa852 docs(views/geomap): update user manual to reflect newly added features 2025-07-07 19:54:06 +03:00
Elian Doran
9df7d6227e Merge branch 'feature/geomap_collection' of https://github.com/TriliumNext/trilium into feature/geomap_collection 2025-07-07 19:20:24 +03:00
Elian Doran
242a576548 refactor(views/geomap): solve type errors 2025-07-07 19:15:38 +03:00
Elian Doran
c1a5808f37 feat(views/geomap): allow disabling editing 2025-07-07 19:04:47 +03:00
Elian Doran
5c6bb99d78 refactor(views/geomap): integrate drag into editing 2025-07-07 18:04:17 +03:00
Elian Doran
63c408c45b feat(views/geomap): dragging notes that are not children 2025-07-07 18:02:32 +03:00
Elian Doran
2a665dffbc feat(views/geomap): dragging notes that are children 2025-07-07 17:55:16 +03:00
Elian Doran
6509acd6ee feat(views/geomap): add open location to blank item as well 2025-07-07 17:24:42 +03:00
Elian Doran
4853d45609 chore(nix): switch to master for electron 37 (closes #6217) 2025-07-07 14:28:50 +03:00
Jon Fuller
fe78c1fee3 fix(api): implement better rate limiting controls for pre-auth endpoints (#6243) 2025-07-06 14:15:24 -07:00
Elian Doran
8102172557 feat(views/geomap): display geolocation in both context menus 2025-07-06 23:48:51 +03:00
Elian Doran
a1341e6036 feat(views/geomap): display geolocation in empty menu 2025-07-06 23:48:29 +03:00
Elian Doran
d31af2ddc2 feat(views/geomap): add a context menu for empty area 2025-07-06 23:34:07 +03:00
Elian Doran
a563330136 feat(import/zip): improve geomap compatibility 2025-07-06 23:05:21 +03:00
Elian Doran
a58e5789bc feat(import/zip): backward compatibility 2025-07-06 22:33:19 +03:00
Elian Doran
68e258f23b fix(views/geomap): unable to change note type to geomap 2025-07-06 22:32:24 +03:00
Elian Doran
dd18866156 refactor(server): convert to switch 2025-07-06 22:22:19 +03:00
Elian Doran
1b1f1957c3 chore(views/help): reintroduce help button 2025-07-06 22:11:03 +03:00
Elian Doran
ff6b4effbd fix(views/geomap): tooltip not showing 2025-07-06 21:29:42 +03:00
Elian Doran
06fa59239c chore(views/geomap): remove old files 2025-07-06 21:12:05 +03:00
Elian Doran
557bfbd1d6 feat(views/geomap): remove old geo map type 2025-07-06 20:23:50 +03:00
Elian Doran
f5a6dfa629 feat(views/geomap): migrate db to new collection type 2025-07-06 20:17:15 +03:00
Elian Doran
ce33dfb003 feat(views): delete duplicate attachments 2025-07-06 20:16:47 +03:00
Elian Doran
7b1c058d29 feat(views/geomap): add template 2025-07-06 19:21:53 +03:00
perf3ct
04c8f8a123 fix(api): implement better rate limiting controls for pre-auth endpoints 2025-07-06 16:19:08 +00:00
Elian Doran
d15fccb1d8 chore(views/geomap): integrate context menu options 2025-07-06 18:36:36 +03:00
Elian Doran
229dd9cd18 chore(views/geomap): integrate touchbar 2025-07-06 18:25:53 +03:00
Elian Doran
a4faaa406b fix(views/geomap): proper refresh 2025-07-06 17:54:13 +03:00
Elian Doran
b6d2de54b2 chore(views/geomap): reintroduce adding notes 2025-07-06 17:51:57 +03:00
Elian Doran
d5e81d77a2 refactor(views/geomap): move context menu 2025-07-06 12:28:24 +03:00
Elian Doran
939e99637f chore(views/geomap): reintroduce moving markers 2025-07-06 12:22:51 +03:00
Elian Doran
579a261612 chore(views/geomap): reintroduce display of tracks 2025-07-06 12:19:09 +03:00
Elian Doran
6d03304cbb chore(views/geomap): reintroduce display of markers 2025-07-06 12:12:59 +03:00
Elian Doran
b8d41b3421 chore(views/geomap): reintroduce viewport storage 2025-07-06 11:47:37 +03:00
Elian Doran
6a5bb1f5c8 chore(views/geomap): reintroduce map init 2025-07-06 11:36:59 +03:00
Elian Doran
cd742a4617 chore(views/geomap): basic initialization 2025-07-06 11:30:24 +03:00
Elian Doran
54063b97ad feat(views/geomap): display even if empty 2025-07-06 11:22:49 +03:00
Elian Doran
7abb67e737 feat(views/geomap): display in view type 2025-07-06 11:21:25 +03:00
Elian Doran
00fd1ba137 feat(views/geomap): make full-height 2025-07-06 11:15:28 +03:00
Elian Doran
7ea37b9eb9 feat(views/geomap): create empty view type 2025-07-06 11:13:17 +03:00
Elian Doran
b749de8fe1 fix(mind_map): styles no longer loading after major update 2025-07-06 10:08:45 +03:00
Elian Doran
8efef6842d Note Type Badges (#6229) 2025-07-06 09:54:27 +03:00
renovate[bot]
dc206f38d5 fix(deps): update dependency mind-elixir to v5 2025-07-06 01:15:10 +00:00
Elian Doran
29a00a6c0e Merge branch 'main' of github.com:TriliumNext/trilium 2025-07-05 22:31:08 +03:00
Elian Doran
fe678230a8 feat(webview): allow popups (closes #5698) 2025-07-05 22:31:04 +03:00
Adorian Doran
9cdbeb061f Merge branch 'main' of https://github.com/TriliumNext/Trilium into feat/context-menu/menu-items-badge-support 2025-07-05 22:06:39 +03:00
Adorian Doran
6c308f35c1 style(next)/badges: tweak appearance 2025-07-05 21:35:00 +03:00
Adorian Doran
34b89cf2e8 style/badges: tweak appearance 2025-07-05 20:46:45 +03:00
Elian Doran
b566a188dc chore(client): crash during serialization for CKEditor errors 2025-07-05 20:31:48 +03:00
Elian Doran
998432e236 chore(deps): update dependency @ckeditor/ckeditor5-package-tools to v4.0.1 (#6178) 2025-07-05 20:20:02 +03:00
Adorian Doran
1af8edfe4d client/note type chooser: add support for badges 2025-07-05 19:31:59 +03:00
Adorian Doran
5bf01106c5 client/context menus/insert note: refactor 2025-07-05 19:13:34 +03:00
Adorian Doran
a45289e385 client/context menus/insert note: fix a typo again 2025-07-05 18:54:22 +03:00
Adorian Doran
4ffd005b09 client/context menus/insert note: fix a typo 2025-07-05 18:53:40 +03:00
Adorian Doran
e6ca89fea8 client/context menus/insert note: fix a comment 2025-07-05 18:53:03 +03:00
Adorian Doran
2225aea756 client/context menus/insert note: fix a console log 2025-07-05 18:49:22 +03:00
Adorian Doran
bfc4a84020 client/context menus/insert note: avoid highlighting predefined templates as "new" 2025-07-05 18:46:52 +03:00
Elian Doran
5390bfdcab fix(help): ligatures in code causing confusion (closes #6224) 2025-07-05 18:32:55 +03:00
Elian Doran
301211ff41 chore(client): remove comment 2025-07-05 18:25:52 +03:00
renovate[bot]
64139e4e08 chore(deps): update dependency @ckeditor/ckeditor5-package-tools to v4.0.1 2025-07-05 15:22:56 +00:00
Elian Doran
e6485cde92 chore(deps): update dependency webdriverio to v9.16.2 (#6193) 2025-07-05 18:20:30 +03:00
Adorian Doran
891f6ba66f client/context menus/insert note: highlight new templates based on their creation date 2025-07-05 18:10:36 +03:00
Elian Doran
5d3c1e3fec chore(client,website): bypass issue with plugins 2025-07-05 17:58:36 +03:00
Elian Doran
087e755390 Revert "chore(client): bypass issue with plugins"
This reverts commit 025dc1ce75.
2025-07-05 17:48:53 +03:00
Elian Doran
025dc1ce75 chore(client): bypass issue with plugins 2025-07-05 17:44:54 +03:00
Elian Doran
703200338d Merge remote-tracking branch 'origin/main' into renovate/webdriverio-monorepo 2025-07-05 17:15:39 +03:00
Elian Doran
377c93ca0b chore(deps): update dependency @anthropic-ai/sdk to v0.56.0 (#6211) 2025-07-05 14:50:20 +03:00
renovate[bot]
69394ffe29 chore(deps): update dependency webdriverio to v9.16.2 2025-07-05 11:38:36 +00:00
renovate[bot]
f85231d74a chore(deps): update dependency @anthropic-ai/sdk to v0.56.0 2025-07-05 11:37:47 +00:00
Elian Doran
b93d8b0159 chore(deps): update dependency @types/tabulator-tables to v6.2.7 (#6220) 2025-07-05 10:16:45 +03:00
Elian Doran
67b9329903 chore(deps): update dependency vite to v7.0.2 (#6221) 2025-07-05 10:16:10 +03:00
Elian Doran
c0edd4ea4f fix(deps): update dependency i18next to v25.3.1 (#6222) 2025-07-05 10:15:41 +03:00
renovate[bot]
8eaf2786e8 fix(deps): update dependency i18next to v25.3.1 2025-07-05 02:42:27 +00:00
renovate[bot]
25622df464 chore(deps): update dependency vite to v7.0.2 2025-07-05 02:41:34 +00:00
renovate[bot]
a48900e178 chore(deps): update dependency @types/tabulator-tables to v6.2.7 2025-07-05 02:40:46 +00:00
Elian Doran
ac8b0535d2 Introduce the table view (#6097) 2025-07-04 23:34:34 +03:00
Elian Doran
6ce25a825b feat(help): link table note type 2025-07-04 23:19:33 +03:00
Elian Doran
b3f56851b8 docs(guide): document table functionality 2025-07-04 23:03:50 +03:00
Elian Doran
4b86fedce1 Merge remote-tracking branch 'origin/main' into feature/table_view
; Conflicts:
;	pnpm-lock.yaml
2025-07-04 21:47:26 +03:00
Elian Doran
1ebb70c4d2 fix(views/table): refresh when relation changes 2025-07-04 21:43:56 +03:00
Elian Doran
3de7b81be8 refactor(views/table): fix some type errors 2025-07-04 21:31:43 +03:00
Elian Doran
d08225339c style(views/table): reintroduce horizontal padding 2025-07-04 21:27:45 +03:00
Elian Doran
ba22d0706f chore(views/table): unnecessary code 2025-07-04 21:25:27 +03:00
Elian Doran
ef80f104c0 fix(views/table): scroll lost when updating data 2025-07-04 21:22:13 +03:00
Elian Doran
af296a1e4e refactor(views/table): split column & rows into separate file 2025-07-04 21:18:52 +03:00
Elian Doran
28a755306a feat(views/table): deduplicate columns 2025-07-04 21:15:10 +03:00
Elian Doran
461e085eff fix(views/table): column width or visibility lost after adding new column 2025-07-04 21:11:50 +03:00
Elian Doran
fbda049c32 fix(views/table): column context menu disappearing after update 2025-07-04 20:57:39 +03:00
Elian Doran
4ded5e2b98 feat(views/table): hide footer in search 2025-07-04 20:56:10 +03:00
Elian Doran
63537aff20 feat(views/table): disable reordering in search 2025-07-04 20:43:16 +03:00
Elian Doran
0f7a2adf15 feat(views/table): improve layout 2025-07-04 20:38:48 +03:00
Elian Doran
60963abe2c refactor(views/table): reduce duplication 2025-07-04 20:33:48 +03:00
Elian Doran
08cf95aa38 feat(views/table): merge open note and icon into title 2025-07-04 20:22:55 +03:00
Elian Doran
e5b10ab16a feat(views/table): set up relations not as a link 2025-07-04 20:08:41 +03:00
Elian Doran
7f5a1ee45a feat(ribbon): stop focusing book tab by default 2025-07-04 19:47:52 +03:00
Elian Doran
15c593f68e feat(views/table): automatically focus on title when creating new row 2025-07-04 19:46:37 +03:00
Elian Doran
5f8ef0395b feat(views/table): improve default layout 2025-07-04 19:37:05 +03:00
Elian Doran
513636e1e0 feat(views/table): hide column titles for small ones 2025-07-04 19:32:22 +03:00
Elian Doran
ae9b2c08a9 feat(views/table): hide context menu for small columns 2025-07-04 19:29:33 +03:00
Elian Doran
d5327b3b4a feat(views/table): get rid of note position column 2025-07-04 19:26:06 +03:00
Elian Doran
323e3d3cac feat(views/table): hide note ID by default 2025-07-04 19:25:08 +03:00
Elian Doran
01b2257063 feat(views/table): relocate new row/column buttons 2025-07-04 19:23:26 +03:00
Elian Doran
c69ef611a0 feat(views/table): basic reordering mechanism 2025-07-04 18:53:31 +03:00
Elian Doran
dcad23316d style(views/table): improve autocomplete styling 2025-07-04 18:26:24 +03:00
Elian Doran
e411f9932f feat(views/table): display note title when editing relation 2025-07-04 18:13:07 +03:00
Elian Doran
854969e1b8 feat(views/table): react to external attribute changes 2025-07-04 18:05:24 +03:00
Elian Doran
4ac7b6e9e8 feat(views/table): allow creation of new notes 2025-07-04 17:17:39 +03:00
Elian Doran
ac70908c5a feat(views/table): integrate reference-like for relations 2025-07-04 16:14:14 +03:00
Elian Doran
45ac70b78f feat(views/table): proper storage of relations 2025-07-04 15:07:40 +03:00
Elian Doran
a4664576fe feat(views/table): separate data model for relations 2025-07-04 15:05:00 +03:00
Elian Doran
b293643398 feat(views/table): basic formatter for relations 2025-07-04 15:02:10 +03:00
Elian Doran
a2e197facd feat(views/table): set up relation editor 2025-07-04 14:50:07 +03:00
Elian Doran
8614d39ef4 chore(views/table): remove unnecessary log 2025-07-04 14:42:04 +03:00
Elian Doran
6456bb34ae chore(views/table): start implementing a relation editor 2025-07-04 14:29:40 +03:00
Elian Doran
f5dc4de1c1 feat(views/table): parse relations 2025-07-04 14:12:36 +03:00
Adorian Doran
d869056910 client/note types mapping: add a way to highlight newly introduced types 2025-07-04 13:47:50 +03:00
Adorian Doran
821e4b17cb client/refactor: de-duplicate the note type mapping 2025-07-04 13:38:02 +03:00
Elian Doran
d8cb5efd2d Merge remote-tracking branch 'origin/main' into feature/table_view 2025-07-04 12:59:03 +03:00
Adorian Doran
f90e2fb484 client/tree context menu/insert note: mark the beta note types with a badge 2025-07-04 11:46:10 +03:00
Adorian Doran
2c9a7144da Merge branch 'main' of https://github.com/TriliumNext/Trilium into feat/context-menu/menu-items-badge-support 2025-07-04 11:36:43 +03:00
Adorian Doran
88d1af7210 style/refactor: make the current badge style to be global 2025-07-04 11:33:29 +03:00
Elian Doran
300e5a5528 chore(deps): update dependency svelte to v5.35.2 (#6209) 2025-07-04 09:36:34 +03:00
renovate[bot]
4418fefe4b chore(deps): update dependency svelte to v5.35.2 2025-07-04 06:15:18 +00:00
Elian Doran
fe5d1cac9a Feature/note map filter (#6104) 2025-07-04 09:12:20 +03:00
Elian Doran
49d17fff9b chore(deps): update dependency globals to v16.3.0 (#6190) 2025-07-04 09:11:53 +03:00
Elian Doran
557c6d2d8b chore(deps): update dependency stylelint to v16.21.1 (#6208) 2025-07-04 09:11:40 +03:00
Elian Doran
45fc62357d chore(deps): update dependency vite to v7.0.1 (#6210) 2025-07-04 09:11:26 +03:00
Elian Doran
840e3cc22f fix(deps): update dependency force-graph to v1.50.1 (#6212) 2025-07-04 09:11:16 +03:00
Elian Doran
c158c7fc88 fix(deps): update dependency mermaid to v11.8.0 (#6213) 2025-07-04 09:09:37 +03:00
renovate[bot]
bc6f8fc2dd fix(deps): update dependency mermaid to v11.8.0 2025-07-04 01:40:34 +00:00
renovate[bot]
117730acb2 fix(deps): update dependency force-graph to v1.50.1 2025-07-04 01:39:40 +00:00
renovate[bot]
595a7dac83 chore(deps): update dependency vite to v7.0.1 2025-07-04 01:38:08 +00:00
renovate[bot]
64a4d70df4 chore(deps): update dependency stylelint to v16.21.1 2025-07-04 01:36:34 +00:00
renovate[bot]
be36199fe1 chore(deps): update dependency globals to v16.3.0 2025-07-03 21:26:15 +00:00
Elian Doran
e46ad25677 Merge branch 'main' into feat/note-map-filter 2025-07-04 00:20:44 +03:00
Elian Doran
d5ee663922 Tree context menu: reorder the note types of "Insert (child) note..." (#6206) 2025-07-04 00:16:52 +03:00
Elian Doran
a7ab4be055 chore(deps): update vitest monorepo to v3.2.4 (#6186) 2025-07-03 23:39:37 +03:00
Elian Doran
6bbf29e75a Merge branch 'main' into renovate/vitest-monorepo 2025-07-03 23:39:08 +03:00
Adorian Doran
0a06c60cb7 client/context menus: add support to display badges for menu items 2025-07-03 23:27:02 +03:00
Adorian Doran
03658575eb client/context menu/insert note: reorder note types 2025-07-03 22:45:49 +03:00
Adorian Doran
38114bddb9 style(next)/ribbon/file & image properties: tweak the vertical alignment of properties 2025-07-03 21:36:37 +03:00
Adorian Doran
0711a197db style(next): tweak the "Delete notes preview" dialog width 2025-07-03 20:52:38 +03:00
Adorian Doran
f8f818b211 style(next): fix a performance-heavy selector 2025-07-03 20:00:46 +03:00
Elian Doran
988932209c chore(deps): update dependency svelte to v5.35.1 (#6192) 2025-07-03 11:53:59 +03:00
Elian Doran
2aa56cec30 chore(deps): update typescript-eslint monorepo to v8.35.1 (#6194) 2025-07-03 11:53:45 +03:00
renovate[bot]
93d493650c chore(deps): update typescript-eslint monorepo to v8.35.1 2025-07-03 08:25:21 +00:00
renovate[bot]
c6162ddcb4 chore(deps): update dependency svelte to v5.35.1 2025-07-03 08:24:09 +00:00
renovate[bot]
038517eda4 chore(deps): update vitest monorepo to v3.2.4 2025-07-03 08:23:31 +00:00
Elian Doran
30a9db73ab chore(deps): update dependency stylelint to v16.21.0 (#6191) 2025-07-03 11:21:09 +03:00
Elian Doran
a50aa41bdb fix(deps): update eslint monorepo to v9.30.1 (#6198) 2025-07-03 11:20:43 +03:00
renovate[bot]
cbb322fdb8 fix(deps): update eslint monorepo to v9.30.1 2025-07-03 06:23:39 +00:00
renovate[bot]
026e2a020d chore(deps): update dependency stylelint to v16.21.0 2025-07-03 06:20:49 +00:00
Elian Doran
07aab1d005 chore(deps): update ckeditor5 config packages to v11 (major) (#6199) 2025-07-03 09:14:38 +03:00
Elian Doran
26f0f7b188 fix(deps): update dependency tsx to v4.20.3 (#6197) 2025-07-03 09:13:57 +03:00
Elian Doran
1efde3b86b fix(deps): update dependency better-sqlite3 to v12.2.0 (#6196) 2025-07-03 09:13:23 +03:00
Elian Doran
8c1318f379 fix(deps): update dependency @inlang/paraglide-js to v2.2.0 (#6195) 2025-07-03 09:13:10 +03:00
Elian Doran
40e67e8e17 chore(deps): update dependency eslint-plugin-svelte to v3.10.1 (#6189) 2025-07-03 09:12:33 +03:00
Elian Doran
04466f52fd chore(deps): update dependency electron to v37.2.0 (#6188) 2025-07-03 09:11:59 +03:00
Elian Doran
06baa5fb57 chore(deps): update dependency @sveltejs/kit to v2.22.2 (#6187) 2025-07-03 09:11:23 +03:00
Elian Doran
04e1657628 chore(deps): update tailwindcss monorepo to v4.1.11 (#6185) 2025-07-03 09:10:31 +03:00
Elian Doran
7816c8cab0 chore(deps): update nx monorepo to v21.2.2 (#6184) 2025-07-03 09:10:18 +03:00
Elian Doran
6636e658a4 chore(deps): update dependency svelte-check to v4.2.2 (#6183) 2025-07-03 09:09:59 +03:00
Elian Doran
2a06f0daef chore(deps): update dependency lint-staged to v16.1.2 (#6182) 2025-07-03 09:09:43 +03:00
Elian Doran
883cfa588c chore(deps): update dependency dotenv to v17.0.1 (#6181) 2025-07-03 09:09:23 +03:00
Elian Doran
68011a0b5a Merge pull request #6180 from TriliumNext/renovate/mime-types-3.x-lockfile
chore(deps): update dependency @types/mime-types to v3.0.1
2025-07-03 09:08:59 +03:00
Elian Doran
5247d1a371 Merge pull request #6179 from TriliumNext/renovate/eslint-compat-1.x-lockfile
chore(deps): update dependency @eslint/compat to v1.3.1
2025-07-03 09:08:20 +03:00
renovate[bot]
cabdd528d4 chore(deps): update ckeditor5 config packages to v11 2025-07-03 00:19:09 +00:00
renovate[bot]
2bacbb796b fix(deps): update dependency tsx to v4.20.3 2025-07-03 00:17:08 +00:00
renovate[bot]
aa0ed6434a fix(deps): update dependency better-sqlite3 to v12.2.0 2025-07-03 00:16:25 +00:00
renovate[bot]
5b2215d646 fix(deps): update dependency @inlang/paraglide-js to v2.2.0 2025-07-03 00:15:46 +00:00
renovate[bot]
0e760e25f2 chore(deps): update dependency eslint-plugin-svelte to v3.10.1 2025-07-03 00:10:18 +00:00
renovate[bot]
acbb85b409 chore(deps): update dependency electron to v37.2.0 2025-07-03 00:09:29 +00:00
renovate[bot]
ea1d4b97ad chore(deps): update dependency @sveltejs/kit to v2.22.2 2025-07-03 00:08:38 +00:00
renovate[bot]
a81839c13f chore(deps): update tailwindcss monorepo to v4.1.11 2025-07-03 00:06:48 +00:00
renovate[bot]
b9d4668d4d chore(deps): update nx monorepo to v21.2.2 2025-07-03 00:05:55 +00:00
renovate[bot]
42b27f5965 chore(deps): update dependency svelte-check to v4.2.2 2025-07-03 00:05:03 +00:00
renovate[bot]
9cc8222b1c chore(deps): update dependency lint-staged to v16.1.2 2025-07-03 00:04:08 +00:00
renovate[bot]
e8479338df chore(deps): update dependency dotenv to v17.0.1 2025-07-03 00:03:19 +00:00
renovate[bot]
fa9e6c9fc0 chore(deps): update dependency @types/mime-types to v3.0.1 2025-07-03 00:02:32 +00:00
renovate[bot]
5366173b52 chore(deps): update dependency @eslint/compat to v1.3.1 2025-07-03 00:01:45 +00:00
Elian Doran
63520c55b3 Merge branch 'main' into feat/note-map-filter 2025-07-02 23:37:56 +03:00
Elian Doran
86f6d9b14a feat(export/zip): handle empty title for archive 2025-07-02 22:28:19 +03:00
Elian Doran
5270cf6284 feat(export/zip): handle empty notes for subtree 2025-07-02 22:28:03 +03:00
Elian Doran
4f46d81e1b fix(export/zip): missing note meta for empty file (closes #6146) 2025-07-02 21:59:58 +03:00
Elian Doran
294a2e6fdb feat(export/zip): improve error handling 2025-07-02 21:56:22 +03:00
Elian Doran
b20a8bc90b chore(backend_api): document week note behaviour 2025-07-02 21:41:12 +03:00
Elian Doran
68bdd1336f Merge pull request #6168 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.16.0
2025-07-02 20:35:02 +03:00
renovate[bot]
e62ccd932d chore(deps): update dependency @types/node to v22.16.0 2025-07-02 13:54:50 +00:00
Elian Doran
d6c188df6e Merge pull request #6170 from TriliumNext/renovate/i18next-25.x 2025-07-02 16:53:00 +03:00
Elian Doran
004000b5d2 Merge pull request #6171 from TriliumNext/renovate/eslint-monorepo 2025-07-02 16:52:25 +03:00
renovate[bot]
633c8a3444 fix(deps): update eslint monorepo to v9.30.1 2025-07-02 08:28:18 +00:00
renovate[bot]
2f59a20b6b fix(deps): update dependency i18next to v25.3.0 2025-07-02 08:27:21 +00:00
Elian Doran
593c435f75 Merge pull request #6172 from TriliumNext/renovate/multer-2.x
chore(deps): update dependency @types/multer to v2
2025-07-02 11:24:18 +03:00
Elian Doran
20ec45be57 Merge pull request #6169 from TriliumNext/renovate/globals-16.x
fix(deps): update dependency globals to v16.3.0
2025-07-02 11:23:17 +03:00
Elian Doran
d2a0e12409 Merge pull request #6167 from TriliumNext/renovate/fullcalendar-monorepo
fix(deps): update fullcalendar monorepo to v6.1.18
2025-07-02 11:22:51 +03:00
Elian Doran
33eebe117b Merge pull request #6166 from TriliumNext/renovate/eslint-linter-browserify-9.x
fix(deps): update dependency eslint-linter-browserify to v9.30.1
2025-07-02 11:22:29 +03:00
Elian Doran
ef0cfc2e7c Merge pull request #6165 from TriliumNext/renovate/dotenv-17.x
chore(deps): update dependency dotenv to v17.0.1
2025-07-02 11:22:07 +03:00
Elian Doran
b6e17ae543 Merge pull request #6164 from TriliumNext/renovate/playwright-monorepo
chore(deps): update dependency @playwright/test to v1.53.2
2025-07-02 11:21:51 +03:00
Elian Doran
8a33e2be89 Merge pull request #6163 from TriliumNext/renovate/anthropic-ai-sdk-0.x
chore(deps): update dependency @anthropic-ai/sdk to v0.55.1
2025-07-02 11:21:36 +03:00
renovate[bot]
5f91097987 chore(deps): update dependency @types/multer to v2 2025-07-02 02:56:29 +00:00
renovate[bot]
0fd4f02951 fix(deps): update dependency globals to v16.3.0 2025-07-02 02:52:17 +00:00
renovate[bot]
106e78ed62 fix(deps): update fullcalendar monorepo to v6.1.18 2025-07-02 02:47:34 +00:00
renovate[bot]
8855868b27 fix(deps): update dependency eslint-linter-browserify to v9.30.1 2025-07-02 02:46:36 +00:00
renovate[bot]
bfc3e8a907 chore(deps): update dependency dotenv to v17.0.1 2025-07-02 02:44:43 +00:00
renovate[bot]
154371e052 chore(deps): update dependency @playwright/test to v1.53.2 2025-07-02 02:43:47 +00:00
renovate[bot]
ab4a4d3d72 chore(deps): update dependency @anthropic-ai/sdk to v0.55.1 2025-07-02 02:42:29 +00:00
Elian Doran
5a4de02db7 Merge pull request #6105 from TriliumNext/renovate/ckeditor-monorepo
chore(deps): update dependency @ckeditor/ckeditor5-package-tools to v4.0.1
2025-07-01 22:22:05 +03:00
renovate[bot]
43cbc8c6e8 chore(deps): update dependency @ckeditor/ckeditor5-package-tools to v4.0.1 2025-07-01 19:09:31 +00:00
Elian Doran
5938aa7b50 Merge pull request #6110 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.8.2
2025-07-01 22:06:06 +03:00
Elian Doran
a49252b2f5 Merge pull request #6121 from TriliumNext/renovate/codemirror
fix(deps): update dependency @codemirror/view to v6.38.0
2025-07-01 22:05:55 +03:00
Elian Doran
0be885d9bf Merge pull request #6123 from TriliumNext/renovate/eslint-linter-browserify-9.x
fix(deps): update dependency eslint-linter-browserify to v9.30.0
2025-07-01 22:05:14 +03:00
renovate[bot]
ae1e8353f2 fix(deps): update dependency eslint-linter-browserify to v9.30.0 2025-07-01 18:50:46 +00:00
renovate[bot]
98fe88581f fix(deps): update dependency @codemirror/view to v6.38.0 2025-07-01 18:49:50 +00:00
renovate[bot]
d66475576f chore(deps): update dependency openai to v5.8.2 2025-07-01 18:48:54 +00:00
Elian Doran
65ff7be776 Merge pull request #6093 from TriliumNext/renovate/vite-7.x
chore(deps): update dependency vite to v7
2025-07-01 21:31:57 +03:00
Elian Doran
190b079494 fix(website): typecheck dependency not well set 2025-07-01 21:30:59 +03:00
renovate[bot]
b020a30bd4 chore(deps): update dependency vite to v7 2025-07-01 18:08:46 +00:00
Elian Doran
81f8453c38 fix(client): type error due to use of intersection 2025-07-01 21:01:54 +03:00
Elian Doran
533e3cf42d Merge pull request #6125 from TriliumNext/renovate/eslint-monorepo
fix(deps): update eslint monorepo to v9.30.0
2025-07-01 20:55:26 +03:00
Elian Doran
69ee73492d Merge pull request #6142 from TriliumNext/renovate/rollup-plugin-webpack-stats-2.x
chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.0
2025-07-01 20:55:16 +03:00
renovate[bot]
4a902d04b2 fix(deps): update eslint monorepo to v9.30.0 2025-07-01 17:18:00 +00:00
renovate[bot]
2e48e316c2 chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.0 2025-07-01 17:16:31 +00:00
Elian Doran
bbe5dddb83 Merge pull request #6131 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.15.34
2025-07-01 20:14:23 +03:00
Elian Doran
7c943fe4ac chore(view/table): leftover files 2025-07-01 12:10:01 +03:00
Elian Doran
2cbb49681a fix(view/table): most type errors 2025-07-01 12:09:13 +03:00
Elian Doran
84db4ed57c docs(release): fix link 2025-07-01 11:56:05 +03:00
Elian Doran
e155642ce4 Merge remote-tracking branch 'origin/main' into feature/table_view 2025-07-01 11:55:45 +03:00
Elian Doran
87c4df60d3 Merge pull request #6126 from TriliumNext/renovate/major-ckeditor5-config-packages
chore(deps): update ckeditor5 config packages to v11 (major)
2025-07-01 11:45:01 +03:00
Elian Doran
ff412835e4 Merge pull request #6119 from TriliumNext/renovate/webdriverio-monorepo
chore(deps): update dependency webdriverio to v9.16.2
2025-07-01 11:44:39 +03:00
Elian Doran
ad15828157 Merge pull request #6111 from TriliumNext/renovate/svelte-5.x-lockfile
chore(deps): update dependency svelte to v5.34.9
2025-07-01 11:43:34 +03:00
renovate[bot]
b2fc7f934e chore(deps): update dependency @types/node to v22.15.34 2025-07-01 08:43:30 +00:00
Elian Doran
2fac4d91d6 Merge pull request #6112 from TriliumNext/renovate/svelte-check-4.x-lockfile
chore(deps): update dependency svelte-check to v4.2.2
2025-07-01 11:43:22 +03:00
Elian Doran
125cd96354 Merge pull request #6113 from TriliumNext/renovate/typedoc-0.x
chore(deps): update dependency typedoc to v0.28.7
2025-07-01 11:43:03 +03:00
Elian Doran
af02e6b714 Merge pull request #6116 from TriliumNext/renovate/dotenv-16.x-lockfile
chore(deps): update dependency dotenv to v16.6.1
2025-07-01 11:42:55 +03:00
Elian Doran
0c87b25244 Merge pull request #6117 from TriliumNext/renovate/eslint-plugin-svelte-3.x-lockfile
chore(deps): update dependency eslint-plugin-svelte to v3.10.1
2025-07-01 11:42:41 +03:00
Elian Doran
e87ada6e79 Merge pull request #6118 from TriliumNext/renovate/stylelint-16.x-lockfile
chore(deps): update dependency stylelint to v16.21.0
2025-07-01 11:42:33 +03:00
Elian Doran
282c8e58bd Merge pull request #6120 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update typescript-eslint monorepo to v8.35.1
2025-07-01 11:42:17 +03:00
Elian Doran
475b66b115 Merge pull request #6122 from TriliumNext/renovate/better-sqlite3-12.x-lockfile
fix(deps): update dependency better-sqlite3 to v12.2.0
2025-07-01 11:42:02 +03:00
Elian Doran
5bb971e61a Merge pull request #6124 from TriliumNext/renovate/tsx-4.x-lockfile
fix(deps): update dependency tsx to v4.20.3
2025-07-01 11:41:36 +03:00
Elian Doran
ebad9ba723 Merge pull request #6127 from TriliumNext/renovate/dotenv-17.x
chore(deps): update dependency dotenv to v17
2025-07-01 11:41:20 +03:00
Elian Doran
6ece2a839e Merge pull request #6128 from TriliumNext/renovate/marked-16.x
fix(deps): update dependency marked to v16
2025-07-01 11:40:55 +03:00
Elian Doran
8d6527fb75 Merge pull request #6132 from TriliumNext/renovate/ws-8.x
chore(deps): update dependency ws to v8.18.3
2025-07-01 11:40:27 +03:00
Elian Doran
6bfff38182 Merge pull request #6115 from TriliumNext/renovate/sveltejs-kit-2.x-lockfile
chore(deps): update dependency @sveltejs/kit to v2.22.2
2025-07-01 11:39:54 +03:00
Elian Doran
9e446717fa Merge pull request #6114 from TriliumNext/renovate/tailwindcss-monorepo
chore(deps): update tailwindcss monorepo to v4.1.11
2025-07-01 11:39:42 +03:00
Elian Doran
408b48f606 Merge pull request #6133 from TriliumNext/renovate/better-sqlite3-12.x
fix(deps): update dependency better-sqlite3 to v12.2.0
2025-07-01 11:39:32 +03:00
renovate[bot]
8d077ad46d chore(deps): update dependency dotenv to v17 2025-07-01 08:39:18 +00:00
Elian Doran
db72465e0b Merge pull request #6140 from TriliumNext/renovate/mind-elixir-4.x
fix(deps): update dependency mind-elixir to v4.6.2
2025-07-01 11:38:22 +03:00
Elian Doran
ba9f5e1688 Merge pull request #6141 from TriliumNext/renovate/eslint-stylistic-monorepo
chore(deps): update dependency @stylistic/eslint-plugin to v5.1.0
2025-07-01 11:37:57 +03:00
Elian Doran
caf40cd272 Merge pull request #6109 from TriliumNext/renovate/lint-staged-16.x-lockfile
chore(deps): update dependency lint-staged to v16.1.2
2025-07-01 11:37:02 +03:00
Elian Doran
3edccd224a Merge pull request #6107 from TriliumNext/renovate/mime-types-3.x-lockfile
chore(deps): update dependency @types/mime-types to v3.0.1
2025-07-01 11:36:28 +03:00
Elian Doran
f48931a969 Merge pull request #6106 from TriliumNext/renovate/eslint-compat-1.x-lockfile
chore(deps): update dependency @eslint/compat to v1.3.1
2025-07-01 11:36:12 +03:00
Elian Doran
84f23aa997 Merge pull request #6092 from TriliumNext/renovate/electron-37.x
chore(deps): update dependency electron to v37
2025-07-01 11:35:46 +03:00
Elian Doran
1965da6a85 docs(release): mention docker image changing 2025-07-01 10:15:10 +03:00
Elian Doran
57649d47ec fix(release): discussion category name 2025-07-01 10:13:35 +03:00
Elian Doran
089ae04542 chore(release): prepare for v0.96.0 2025-06-30 23:02:31 +03:00
renovate[bot]
441ae3e25b chore(deps): update typescript-eslint monorepo to v8.35.1 2025-06-30 18:35:19 +00:00
Elian Doran
1016f98867 docs(release): v0.96.0 2025-06-30 21:29:48 +03:00
Elian Doran
1f022aea4e chore(rebrand): update GitHub repo in source files 2025-06-30 20:39:29 +03:00
renovate[bot]
7f612711a0 chore(deps): update dependency typedoc to v0.28.7 2025-06-30 04:54:36 +00:00
renovate[bot]
92eb4aa822 chore(deps): update dependency @stylistic/eslint-plugin to v5.1.0 2025-06-30 01:36:17 +00:00
renovate[bot]
08ec522ae7 fix(deps): update dependency mind-elixir to v4.6.2 2025-06-30 01:36:11 +00:00
Elian Doran
c5cc1fcc1e feat(views/table): introduce hiding of columns 2025-06-29 22:26:25 +03:00
Elian Doran
cedf91ea1a chore(views/table): reintroduce column reordering 2025-06-29 16:56:34 +03:00
Elian Doran
51b462f043 chore(views/table): bring back restore state 2025-06-29 16:16:15 +03:00
Elian Doran
727eeb6c74 chore(views/table): bring back persistence 2025-06-29 16:08:27 +03:00
Elian Doran
a114fba062 chore(views/table): set up frozen columns 2025-06-29 15:11:09 +03:00
Elian Doran
cf322b5c2a chore(views/table): back to bootstrap5 theme 2025-06-29 10:09:39 +03:00
renovate[bot]
92116f1671 fix(deps): update dependency better-sqlite3 to v12.2.0 2025-06-29 00:37:40 +00:00
renovate[bot]
bc479248d7 chore(deps): update dependency ws to v8.18.3 2025-06-29 00:35:22 +00:00
Elian Doran
8ee12f2950 chore(views/table): bring back resizing columns 2025-06-28 23:50:54 +03:00
Elian Doran
dcea4c30ef chore(views/table): improve editing for date types 2025-06-28 23:33:52 +03:00
Elian Doran
e7ca56e061 chore(views/table): support more data types 2025-06-28 23:29:31 +03:00
Elian Doran
09b800b9ad chore(views/table): bring back editing attributes 2025-06-28 23:23:29 +03:00
Elian Doran
9a6a8580de chore(views/table): bring back editing title 2025-06-28 23:19:54 +03:00
Elian Doran
a31ac17792 chore(views/table): set row ID as index 2025-06-28 22:49:40 +03:00
Elian Doran
0e27cd0801 feat(views/table): add row number 2025-06-28 22:47:49 +03:00
Elian Doran
bc36676fa1 chore(views/table): disable sorting for note action button 2025-06-28 17:45:11 +03:00
Elian Doran
3d2db23f33 fix(views/table): use a more stable loading mechanism 2025-06-28 17:24:18 +03:00
Elian Doran
56d366a286 feat(views/table): add column to open note 2025-06-28 17:23:42 +03:00
Elian Doran
4a26f30d65 feat(views/table): render note icon 2025-06-28 17:07:11 +03:00
Elian Doran
8e51469de5 chore(views/table): re-enable sorting 2025-06-28 16:56:36 +03:00
Elian Doran
50ebcd552c fix(views/table): error when adding a new column 2025-06-28 16:51:24 +03:00
Elian Doran
ada39cd3c7 fix(views/table): error when adding a new row 2025-06-28 16:48:01 +03:00
Elian Doran
b2d20af51a fix(views/table): refreshing of columns 2025-06-28 16:39:24 +03:00
Elian Doran
f528fa25d1 feat(views/table): switch to bootstrap theme 2025-06-28 12:51:19 +03:00
Elian Doran
e09a7fb6e0 chore(views/table): reintroduce rows 2025-06-28 12:24:40 +03:00
Elian Doran
30f7939616 chore(views/table): reintroduce column definitions 2025-06-28 12:18:24 +03:00
Elian Doran
16b9375b9d chore(views/table): add types 2025-06-28 12:18:17 +03:00
Elian Doran
4ef93569a1 refactor(views/table): start switching to tabulator 2025-06-28 12:00:50 +03:00
renovate[bot]
1ce2aaeaf1 fix(deps): update dependency marked to v16 2025-06-28 02:47:26 +00:00
renovate[bot]
6bfe8dfcf0 chore(deps): update ckeditor5 config packages to v11 2025-06-28 02:45:32 +00:00
renovate[bot]
8d8f4795e2 fix(deps): update dependency tsx to v4.20.3 2025-06-28 02:42:36 +00:00
renovate[bot]
6f6d06377b fix(deps): update dependency better-sqlite3 to v12.1.1 2025-06-28 02:40:39 +00:00
renovate[bot]
f22823fcf6 chore(deps): update dependency webdriverio to v9.16.2 2025-06-28 02:37:40 +00:00
renovate[bot]
93ce57ee1a chore(deps): update dependency stylelint to v16.21.0 2025-06-28 02:36:39 +00:00
renovate[bot]
97dd747252 chore(deps): update dependency eslint-plugin-svelte to v3.10.1 2025-06-28 02:35:40 +00:00
renovate[bot]
bc8c136458 chore(deps): update dependency dotenv to v16.6.1 2025-06-28 02:34:42 +00:00
renovate[bot]
0774252dc1 chore(deps): update dependency @sveltejs/kit to v2.22.2 2025-06-28 02:33:38 +00:00
renovate[bot]
ae30ae4be6 chore(deps): update tailwindcss monorepo to v4.1.11 2025-06-28 02:32:27 +00:00
renovate[bot]
a2b8935763 chore(deps): update dependency svelte-check to v4.2.2 2025-06-28 02:31:19 +00:00
renovate[bot]
703efb74d3 chore(deps): update dependency svelte to v5.34.8 2025-06-28 02:30:18 +00:00
renovate[bot]
b2c6062e9a chore(deps): update dependency lint-staged to v16.1.2 2025-06-28 02:28:22 +00:00
renovate[bot]
c9e7e461b1 chore(deps): update dependency @types/mime-types to v3.0.1 2025-06-28 02:26:47 +00:00
renovate[bot]
6aaddfc5a4 chore(deps): update dependency @eslint/compat to v1.3.1 2025-06-28 02:25:51 +00:00
Elian Doran
7f2c41940d feat(views/table): add basic row creation mechanism 2025-06-28 00:07:14 +03:00
Elian Doran
d31ba39a91 feat(views/table): basic dark mode support 2025-06-27 23:40:00 +03:00
Elian Doran
c058673e33 feat(views/table): smooth column update 2025-06-27 23:01:15 +03:00
Elian Doran
44ce6a5169 feat(views/table): refresh on attribute change 2025-06-27 22:50:27 +03:00
Elian Doran
0fb0be4ffc feat(views/table): actually add attributes 2025-06-27 22:43:29 +03:00
Kieran
e70ba00929 docs(map): document relation filtering 2025-06-27 20:25:09 +01:00
Elian Doran
fe1dbb4cbf feat(views/table): display a dialog to add a new column 2025-06-27 22:19:09 +03:00
Kieran
31df2341c3 feat(map): add mapIncludeRelation and mapExcludeRelation to builtin_attributes 2025-06-27 20:18:28 +01:00
Kieran
9d99da14e1 feat(map): add mapIncludeRelation and mapExcludeRelation to include only or exclude specific relation types 2025-06-27 20:15:59 +01:00
Elian Doran
f8e10f36db refactor(note_list): use object for constructor arg 2025-06-27 21:51:38 +03:00
Elian Doran
bb0f384a39 feat(views/table): disable drag if sorted 2025-06-27 20:30:36 +03:00
Elian Doran
6a0b24f032 chore(views/table): remove logs 2025-06-27 20:08:41 +03:00
Elian Doran
80d5536503 feat(views/table): basic drag support 2025-06-27 19:53:40 +03:00
Elian Doran
9dcd79bd94 feat(views/table): add debouncing 2025-06-27 17:58:25 +03:00
Elian Doran
c5020b8884 refactor(views/table): move table view into its own folder 2025-06-27 17:44:29 +03:00
Elian Doran
0b74de275c refactor(views/table): integrate parser into data 2025-06-27 17:43:19 +03:00
Elian Doran
e66aef17df refactor(views/table): merge storage into table view 2025-06-27 17:40:56 +03:00
Elian Doran
19eff5e6d6 refactor(views/table): merge renderer into table view 2025-06-27 17:39:57 +03:00
Elian Doran
88b4fc73de chore(views/table): remove placeholder text 2025-06-27 17:22:47 +03:00
Elian Doran
70694542eb feat(views/table): allow in search 2025-06-27 17:18:52 +03:00
Elian Doran
360e5e3102 Merge remote-tracking branch 'origin/main' into feature/table_view 2025-06-27 17:08:23 +03:00
Elian Doran
06b507fdc5 Merge pull request #6085 from TriliumNext/renovate/ckeditor-monorepo
fix(deps): update ckeditor monorepo
2025-06-27 16:00:17 +03:00
Elian Doran
256ffe39f2 fix(server): saving revision of note with empty title not supported (closes #6103) 2025-06-27 14:22:08 +03:00
renovate[bot]
6e89a232e6 chore(deps): update dependency electron to v37 2025-06-27 06:48:15 +00:00
Elian Doran
45a3fb15e6 Merge pull request #6101 from TriliumNext/renovate/electron-36.x
chore(deps): update dependency electron to v36.6.0
2025-06-27 09:45:39 +03:00
renovate[bot]
4139a401e6 chore(deps): update dependency electron to v36.6.0 2025-06-27 06:30:28 +00:00
Elian Doran
4d617ccdb3 Merge pull request #6099 from TriliumNext/renovate/pnpm-10.x
chore(deps): update pnpm to v10.12.4
2025-06-27 09:28:51 +03:00
Elian Doran
57039ae8f2 Merge pull request #6102 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.8.1
2025-06-27 09:28:26 +03:00
Elian Doran
9a4dcda985 Merge pull request #6100 from TriliumNext/renovate/dotenv-16.x
chore(deps): update dependency dotenv to v16.6.0
2025-06-27 09:27:59 +03:00
renovate[bot]
c13ae40ea4 chore(deps): update dependency openai to v5.8.1 2025-06-27 01:57:11 +00:00
renovate[bot]
0b963db405 chore(deps): update dependency dotenv to v16.6.0 2025-06-27 01:53:59 +00:00
renovate[bot]
78b946b208 chore(deps): update pnpm to v10.12.4 2025-06-27 01:51:41 +00:00
JYC333
4e8ddef915 Merge branch 'main' into renovate/ckeditor-monorepo 2025-06-26 23:17:52 +02:00
Elian Doran
0aa08cd297 Merge pull request #6091 from TriliumNext/renovate/node-22.x
chore(deps): update node.js to v22.17.0
2025-06-26 22:10:39 +03:00
Elian Doran
a89ce5d931 chore(rebrand): adjust artifact names 2025-06-26 20:18:31 +03:00
Elian Doran
fe3350f39f feat(server/script): enable a few dayjs plugins (closes #6080) 2025-06-26 20:13:01 +03:00
Elian Doran
f32f9d4326 test(server/script): dayjs is available 2025-06-26 18:34:00 +03:00
renovate[bot]
2ed24e8f9c fix(deps): update ckeditor monorepo 2025-06-26 08:48:14 +00:00
Elian Doran
537c282156 chore(renovate): mark premium features of ckeditor as group 2025-06-26 11:45:31 +03:00
renovate[bot]
61f253787a chore(deps): update node.js to v22.17.0 2025-06-26 06:52:50 +00:00
Elian Doran
ddad800771 Merge pull request #6090 from TriliumNext/renovate/eslint-monorepo
chore(deps): update eslint monorepo to v9.29.0
2025-06-26 09:48:47 +03:00
Elian Doran
69c24ef806 Merge pull request #6089 from TriliumNext/renovate/vite-plugin-static-copy-3.x
chore(deps): update dependency vite-plugin-static-copy to v3.1.0
2025-06-26 09:48:32 +03:00
Elian Doran
df7fe2bf13 Merge pull request #6088 from TriliumNext/renovate/anthropic-ai-sdk-0.x
chore(deps): update dependency @anthropic-ai/sdk to v0.55.0
2025-06-26 09:47:45 +03:00
Elian Doran
c47d3514be Merge pull request #6086 from TriliumNext/renovate/better-sqlite3-12.x
fix(deps): update dependency better-sqlite3 to v12.1.1
2025-06-26 09:47:25 +03:00
Elian Doran
2b979f46ab Merge pull request #6084 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.2.4
2025-06-26 09:45:36 +03:00
Elian Doran
edc47eba05 Merge pull request #6083 from TriliumNext/renovate/pnpm-10.x
chore(deps): update pnpm to v10.12.3
2025-06-26 09:44:49 +03:00
Elian Doran
f3b46d6bc7 Merge pull request #6082 from TriliumNext/renovate/leaflet-1.x
chore(deps): update dependency @types/leaflet to v1.9.19
2025-06-26 09:44:26 +03:00
renovate[bot]
69d6d6a4fd chore(deps): update eslint monorepo to v9.29.0 2025-06-26 01:24:05 +00:00
renovate[bot]
5916b7d2a3 chore(deps): update dependency vite-plugin-static-copy to v3.1.0 2025-06-26 01:23:00 +00:00
renovate[bot]
fbb2c67edb chore(deps): update dependency @anthropic-ai/sdk to v0.55.0 2025-06-26 01:21:27 +00:00
renovate[bot]
7e1712712e fix(deps): update dependency better-sqlite3 to v12.1.1 2025-06-26 01:20:15 +00:00
renovate[bot]
aa846e9703 chore(deps): update vitest monorepo to v3.2.4 2025-06-26 01:18:54 +00:00
renovate[bot]
6ed9ec0851 chore(deps): update pnpm to v10.12.3 2025-06-26 01:18:05 +00:00
renovate[bot]
3a0a79119d chore(deps): update dependency @types/leaflet to v1.9.19 2025-06-26 01:14:26 +00:00
Elian Doran
ecd3b7039f feat(book/table): add template 2025-06-25 19:31:25 +03:00
Elian Doran
4a22e3d2d4 feat(book/table): hide promoted attributes 2025-06-25 19:25:01 +03:00
Elian Doran
dcb4ebe5d9 feat(book/table): display even if empty 2025-06-25 18:31:45 +03:00
Elian Doran
dd379bf18d refactor(book/table): fix some lack of generics 2025-06-25 18:30:44 +03:00
Elian Doran
c9b556160f feat(book/table): support changing note title 2025-06-25 17:56:47 +03:00
Elian Doran
168e224d3e refactor(book/table): make clear what kind of attribute is being changed 2025-06-25 17:54:00 +03:00
Elian Doran
9e57c14130 feat(attachments): add pretty formatting to JSON 2025-06-25 17:45:11 +03:00
Elian Doran
9c137a1c48 feat(book/table): display attachment JSON 2025-06-25 17:43:58 +03:00
Elian Doran
ccb9b7e5fb feat(book/table): store hidden columns 2025-06-25 16:18:34 +03:00
Elian Doran
c7b16cd043 feat(book/table): allow show/hide columns 2025-06-25 13:52:53 +03:00
Elian Doran
7e20e41521 feat(book/table): allow editing cell values 2025-06-25 13:06:38 +03:00
Elian Doran
66761a69d3 refactor(book/table): clean up 2025-06-25 12:10:08 +03:00
Elian Doran
fb32d26479 feat(book/table): support boolean type 2025-06-25 12:05:10 +03:00
Elian Doran
b6398fdb5d refactor(book/table): extract gathering definitions 2025-06-25 12:03:17 +03:00
Elian Doran
d9443527ee feat(book/table): support date type 2025-06-25 11:56:30 +03:00
Elian Doran
7c175da9f1 chore(book/table): ignore multi attributes 2025-06-25 11:45:46 +03:00
Elian Doran
05aa087851 feat(book/table): support basic text columns 2025-06-25 11:23:34 +03:00
Elian Doran
592e968f9f feat(book/table): display note titles 2025-06-25 11:06:49 +03:00
Elian Doran
894a26cc67 feat(book/table): set up sample grid 2025-06-25 10:49:33 +03:00
Elian Doran
1b5dd4638d chore(book/table): install ag-grid 2025-06-25 10:40:11 +03:00
Elian Doran
a19186c508 feat(book/table): set full height 2025-06-25 10:40:04 +03:00
Elian Doran
5450bdeae9 feat(book/table): hide no children warning 2025-06-25 10:34:03 +03:00
Elian Doran
fcd71957ff feat(book/table): create new view type 2025-06-25 10:31:41 +03:00
Elian Doran
1ff7228ca5 feat(scripts): add script to port discussions 2025-06-24 23:18:34 +03:00
Elian Doran
f0f79b65e2 Merge pull request #5860 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.7.0
2025-06-24 09:06:32 +03:00
Elian Doran
63610fd579 chore(deps): sync package lock 2025-06-24 08:54:09 +03:00
Elian Doran
eab84bd34e Merge branch 'main' into renovate/openai-5.x 2025-06-24 08:52:59 +03:00
Elian Doran
72f4c40a8a Merge pull request #5862 from TriliumNext/renovate/better-sqlite3-12.x
fix(deps): update dependency better-sqlite3 to v12.1.0
2025-06-24 08:52:00 +03:00
Elian Doran
482356206b chore(deps): remove override 2025-06-24 08:51:41 +03:00
Elian Doran
5aa09fd881 Merge pull request #5861 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update typescript-eslint monorepo to v8.35.0
2025-06-24 08:50:14 +03:00
renovate[bot]
81f50c46ed fix(deps): update dependency better-sqlite3 to v12.1.0 2025-06-24 02:10:12 +00:00
renovate[bot]
938dfe7f38 chore(deps): update typescript-eslint monorepo to v8.35.0 2025-06-24 02:08:32 +00:00
renovate[bot]
ea71439f27 chore(deps): update dependency openai to v5.7.0 2025-06-24 02:04:04 +00:00
Elian Doran
9dc157b970 chore(options): use translations 2025-06-23 23:30:13 +03:00
Elian Doran
b7f5c0e07a feat(mention): disable auto-completion 2025-06-23 23:20:51 +03:00
Elian Doran
3988bb5321 feat(emoji): disable auto-completion only 2025-06-23 22:40:57 +03:00
Elian Doran
ba94616b87 feat(emoji): add an option to disable them (closes #5852) 2025-06-23 22:10:41 +03:00
Elian Doran
1ac086b88e fix(release): build on ubuntu-22.04 for compatibility 2025-06-23 15:33:37 +03:00
Elian Doran
3b4efef4f0 Merge pull request #5850 from TriliumNext/renovate/pnpm-10.x
chore(deps): update pnpm to v10.12.2
2025-06-23 14:08:43 +03:00
Elian Doran
9dc0807f78 Merge pull request #5851 from TriliumNext/renovate/major-eslint-stylistic-monorepo
chore(deps): update dependency @stylistic/eslint-plugin to v5
2025-06-23 14:08:04 +03:00
renovate[bot]
22783662c5 chore(deps): update dependency @stylistic/eslint-plugin to v5 2025-06-23 09:56:52 +00:00
renovate[bot]
64086592ef chore(deps): update pnpm to v10.12.2 2025-06-23 09:50:30 +00:00
Elian Doran
2bebed1b0f fix(desktop): share theme not loaded 2025-06-23 12:17:47 +03:00
Elian Doran
2262d300f7 e2e(desktop): sharing 2025-06-23 08:43:05 +03:00
Elian Doran
dba98d6fc1 test(desktop): test onboarding 2025-06-23 08:43:04 +03:00
Elian Doran
d8b85aad7c chore(rebrand): change product name 2025-06-23 08:43:04 +03:00
Elian Doran
5a3503c577 Merge pull request #5840 from TriliumNext/renovate/express-rate-limit-7.x
chore(deps): update dependency express-rate-limit to v7.5.1
2025-06-22 14:29:06 +03:00
Elian Doran
18c96cd2bc Merge branch 'main' into renovate/express-rate-limit-7.x 2025-06-22 14:12:21 +03:00
Elian Doran
b1bb1ed9af Merge pull request #5841 from TriliumNext/renovate/mermaid-js-layout-elk-0.x
fix(deps): update dependency @mermaid-js/layout-elk to v0.1.8
2025-06-22 14:11:44 +03:00
renovate[bot]
bc1ea98827 fix(deps): update dependency @mermaid-js/layout-elk to v0.1.8 2025-06-22 11:11:20 +00:00
Elian Doran
b984d612fd Merge pull request #5842 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.6.0
2025-06-22 14:10:20 +03:00
Elian Doran
f53eecbf88 Merge pull request #5843 from TriliumNext/renovate/mermaid-11.x
fix(deps): update dependency mermaid to v11.7.0
2025-06-22 14:08:50 +03:00
Elian Doran
1a2c2dbfb8 Merge pull request #5844 from TriliumNext/renovate/better-sqlite3-12.x
fix(deps): update dependency better-sqlite3 to v12
2025-06-22 14:05:10 +03:00
renovate[bot]
78a0637283 fix(deps): update dependency better-sqlite3 to v12 2025-06-22 08:23:25 +00:00
renovate[bot]
e01858c86b fix(deps): update dependency mermaid to v11.7.0 2025-06-22 08:21:46 +00:00
renovate[bot]
ee080638be chore(deps): update dependency openai to v5.6.0 2025-06-22 08:20:13 +00:00
renovate[bot]
6db7ef415d chore(deps): update dependency express-rate-limit to v7.5.1 2025-06-22 08:15:35 +00:00
Elian Doran
cf171ff0b1 chore(ci): disable RelativeCI until project switch 2025-06-22 10:15:26 +03:00
Elian Doran
fdddc29092 fix(ci): don't run failing electron-based tests 2025-06-22 09:31:44 +03:00
Elian Doran
d6545e1280 Merge branch 'main' of https://github.com/TriliumNext/trilium 2025-06-22 09:17:57 +03:00
Elian Doran
759fe04e37 fix(docker): repository name 2025-06-22 09:17:50 +03:00
Elian Doran
e0c5f15480 Merge remote-tracking branch 'next/develop' 2025-06-21 23:21:48 +03:00
Elian Doran
f529cfd928 chore(i18n): update Spanish translation (#2371) 2025-06-21 23:18:28 +03:00
Elian Doran
2a1a099dc9 feat(scripts): add script used to migrate releases 2025-06-21 22:18:09 +03:00
hasecilu
26d0ba04ab chore(i18n): update Spanish translation 2025-06-21 11:19:57 -06:00
hasecilu
f85ef444f4 fix(script): paths on translation script 2025-06-21 11:19:55 -06:00
Elian Doran
87aa4422c0 chore(rebrand): change references from develop to main 2025-06-21 17:52:47 +03:00
Elian Doran
f497b71d37 chore(rebrand): change references from master to main 2025-06-21 17:51:34 +03:00
Elian Doran
24ba17b3f3 docs(readme): fix leftover merge marker 2025-06-21 17:24:06 +03:00
Elian Doran
e8cbce855e Merge remote-tracking branch 'old/develop' 2025-06-21 17:22:40 +03:00
Elian Doran
f97bd77117 Update README.md 2025-06-21 17:11:25 +03:00
Elian Doran
962066fd60 chore(scripts): add script used to port issues 2025-06-21 16:38:22 +03:00
Elian Doran
ff917e93c9 e2e(desktop): fix process leak 2025-06-21 14:28:57 +03:00
Elian Doran
a7091779b7 e2e(desktop): create empty project 2025-06-21 14:23:47 +03:00
Elian Doran
520b862551 Revert "feat(ci): experiment with building Windows on same runner"
This reverts commit ce305f0f45.
2025-06-21 14:18:41 +03:00
Elian Doran
5fbd34c7c1 Revert "chore(forge): add an arbitrary wait to see if it solves some CI errors"
This reverts commit 4f6729857b.
2025-06-21 14:18:36 +03:00
Elian Doran
c827b20e26 Revert "chore(forge): add a pre-make wait as well"
This reverts commit a150047432.
2025-06-21 14:18:31 +03:00
Elian Doran
a150047432 chore(forge): add a pre-make wait as well 2025-06-21 13:40:47 +03:00
Elian Doran
4f6729857b chore(forge): add an arbitrary wait to see if it solves some CI errors 2025-06-21 13:19:35 +03:00
Elian Doran
ce305f0f45 feat(ci): experiment with building Windows on same runner 2025-06-21 10:57:45 +03:00
Elian Doran
3a50ffede1 refactor(forge): add types to config 2025-06-21 10:46:12 +03:00
Elian Doran
41e88614d7 docs(guide): improve and update supported syntax for Markdown import 2025-06-21 09:49:26 +03:00
Elian Doran
002c567ae9 feat(ci): display trace if playwright fails in docker 2025-06-21 09:26:05 +03:00
Elian Doran
a9c07af402 fix(client): failing with duplicate modules 2025-06-21 09:00:07 +03:00
Elian Doran
3048c39877 Revert "chore(env): remove 4GB override"
This reverts commit 3280123414.
2025-06-21 01:20:41 +03:00
Elian Doran
a95dc14d24 test(import/zip): test silverbullet import 2025-06-21 01:09:03 +03:00
Elian Doran
24c82fa7b6 fix(import/zip): regression in normal import 2025-06-20 22:13:36 +03:00
Elian Doran
02a0624e8f feat(import/zip): support image with absolute path 2025-06-20 21:59:11 +03:00
Elian Doran
e6e276a0cf feat(import/markdown): support image via wikilink 2025-06-20 21:40:23 +03:00
Elian Doran
8d90231f76 fix(import/markdown): support wikilinks in other elements other than paragraphs 2025-06-20 21:00:39 +03:00
Elian Doran
4a40b22c9a feat(import/zip): support root-relative paths 2025-06-20 20:56:25 +03:00
Elian Doran
79b3b92ec9 chore(client): skip dynamic imports in cyclic check 2025-06-20 18:32:32 +03:00
Elian Doran
ae1a4fbbf6 fix(client): cyclic dependency server <-> ws 2025-06-20 18:32:20 +03:00
Elian Doran
3190aa6fe6 feat(import/markdown): start parsing wikilinks 2025-06-20 18:28:08 +03:00
Elian Doran
1c3cd9e7ca chore(deps): update vitest monorepo to v3.2.4 (#2364) 2025-06-20 15:52:42 +03:00
Elian Doran
c61713333d Merge remote-tracking branch 'origin/develop' into renovate/vitest-monorepo 2025-06-20 15:35:27 +03:00
Elian Doran
a861defbee feat(server): lint for trailing slashes in sync URL and extra slashes… (#2345) 2025-06-20 10:55:46 +03:00
Elian Doran
ea0b570910 chore(deps): update dependency @playwright/test to v1.53.1 (#2362) 2025-06-20 09:51:22 +03:00
renovate[bot]
8d46ab3806 chore(deps): update dependency @playwright/test to v1.53.1 2025-06-20 06:28:12 +00:00
Elian Doran
058b3f8241 chore(deps): update nx monorepo to v21.2.1 (#2363) 2025-06-20 08:27:22 +03:00
Elian Doran
57a688b6b6 fix(deps): update codemirror to v6.0.2 (#2365) 2025-06-20 08:26:16 +03:00
Elian Doran
ad18d853e2 chore(deps): update dependency electron to v36.5.0 (#2366) 2025-06-20 08:25:12 +03:00
renovate[bot]
8f5be936a7 chore(deps): update dependency electron to v36.5.0 2025-06-20 02:47:20 +00:00
renovate[bot]
f2c02f869e fix(deps): update codemirror to v6.0.2 2025-06-20 02:46:24 +00:00
renovate[bot]
cf28777119 chore(deps): update nx monorepo to v21.2.1 2025-06-20 02:43:32 +00:00
Elian Doran
cca8504796 refactor(client): circular dep in utils 2025-06-19 22:44:02 +03:00
Elian Doran
09391a92e5 refactor(client): circular dep: toast <-> ws 2025-06-19 22:29:44 +03:00
Elian Doran
50db8ef9c3 refactor(client): circular dependency in fnote 2025-06-19 22:23:17 +03:00
Elian Doran
8ab21f3bab chore(client): add tool to view circular deps 2025-06-19 22:03:01 +03:00
Elian Doran
efdf79feaa refactor(client): circular dependency causing test failure 2025-06-19 22:01:01 +03:00
Elian Doran
9418055b69 chore(test): fix imports 2025-06-19 21:30:42 +03:00
Elian Doran
5070633257 refactor(client): remove unnecessary files 2025-06-19 21:30:26 +03:00
Elian Doran
764917562e chore(test): fix set up 2025-06-19 21:30:10 +03:00
Elian Doran
54290a1373 chore(tsconfig): remove src for forge config 2025-06-19 21:01:23 +03:00
Elian Doran
0325bee425 feat(ckeditor): fallback to GPL if license key fails 2025-06-19 19:38:10 +03:00
Elian Doran
e280968271 feat(ckeditor): allow use of GPL license 2025-06-19 18:55:02 +03:00
Elian Doran
b809137c93 refactor(text): move license key management to config 2025-06-19 18:47:41 +03:00
Elian Doran
248f6d6a7d refactor(forge): switch to TypeScript 2025-06-19 15:45:39 +03:00
Elian Doran
0744a85421 feat(flake): handle StartupWMClass 2025-06-19 15:34:09 +03:00
Elian Doran
e5a6f53f98 Revert "feat(flake); set up overlay"
This reverts commit 751de1d43c.
2025-06-19 12:55:04 +03:00
Elian Doran
751de1d43c feat(flake); set up overlay 2025-06-19 12:49:26 +03:00
perf3ct
2704b1546b feat(server): fix lint type errors for normalizing server URLs 2025-06-18 21:07:12 +00:00
perf3ct
acd68817e9 feat(server): fix lint type errors for normalizing server URLs 2025-06-18 20:46:11 +00:00
Elian Doran
8b841c5aa7 feat(autocomplete): support specifying path when creating a new note (#2342) 2025-06-18 23:14:46 +03:00
Elian Doran
a37af29c6c fix(client): link to API documentation (#2356) 2025-06-18 23:10:00 +03:00
Elian Doran
ade0d4bb1a fix(website): update README.md instructions (#2357) 2025-06-18 23:08:56 +03:00
Arne Keller
d79c491777 fix(website): update README.md instructions 2025-06-18 19:08:24 +02:00
FliegendeWurst
f9cf542e66 fix(client): link to API documentation
Fixes https://github.com/TriliumNext/Notes/issues/1779
2025-06-18 17:58:29 +02:00
Elian Doran
609ed6274e fix(code): respect user font selection 2025-06-18 17:42:03 +03:00
Elian Doran
7faaefee20 feat(help): display contextual button text snippets 2025-06-18 15:35:56 +03:00
Elian Doran
578310a1c0 test(ckeditor5): add check for translation override 2025-06-18 14:44:56 +03:00
Elian Doran
93f544a221 feat(text-snippets): rewrite CKEditor translations 2025-06-18 13:13:59 +03:00
Elian Doran
9c80ab22af chore(client): use production ckeditor key for dev as well 2025-06-18 11:06:57 +03:00
Elian Doran
7decbc34c7 chore(deps): update dependency @types/node to v22.15.32 (#2347) 2025-06-18 11:02:07 +03:00
Elian Doran
e606276f19 chore(deps): update typescript-eslint monorepo to v8.34.1 (#2348) 2025-06-18 11:01:42 +03:00
SiriusXT
a78e4d7a58 chore(i18n): update path selection prompt 2025-06-18 14:28:43 +08:00
renovate[bot]
426c9a377a chore(deps): update typescript-eslint monorepo to v8.34.1 2025-06-18 06:16:35 +00:00
renovate[bot]
d2a3ae2a6f chore(deps): update dependency @types/node to v22.15.32 2025-06-18 06:15:35 +00:00
renovate[bot]
fbd6b7d22b chore(deps): update vitest monorepo to v3.2.4 2025-06-18 06:11:31 +00:00
Elian Doran
a42375931f chore(deps): update vitest monorepo to v3.2.4 (#2349) 2025-06-18 09:08:41 +03:00
Elian Doran
d894bff2a0 fix(deps): update dependency bootstrap to v5.3.7 (#2350) 2025-06-18 09:07:48 +03:00
Elian Doran
4515ed600c fix(deps): update dependency mind-elixir to v4.6.1 (#2351) 2025-06-18 09:07:10 +03:00
Elian Doran
4df3cdd975 chore(deps): update dependency openai to v5.5.1 (#2352) 2025-06-18 09:06:31 +03:00
SiriusXT
5fc0a0460d Merge branch 'develop' into note-create 2025-06-18 11:21:32 +08:00
renovate[bot]
74851a859b chore(deps): update dependency openai to v5.5.1 2025-06-18 02:56:07 +00:00
renovate[bot]
9bb94513ca fix(deps): update dependency mind-elixir to v4.6.1 2025-06-18 02:55:10 +00:00
renovate[bot]
bb74aa7976 fix(deps): update dependency bootstrap to v5.3.7 2025-06-18 02:54:19 +00:00
renovate[bot]
12318b38ee chore(deps): update vitest monorepo to v3.2.4 2025-06-18 02:53:25 +00:00
Jon Fuller
bb70c2a3fa Merge branch 'develop' into fix/lint-server-url 2025-06-17 16:00:36 -07:00
perf3ct
b47180a219 feat(server): create unit tests for normalizing server URL, and fix logic based on feedback 2025-06-17 21:32:27 +00:00
Elian Doran
4eb64357a1 chore(website): add macos screenshots 2025-06-17 23:39:25 +03:00
perf3ct
0fe89115d1 feat(server): lint for trailing slashes in sync URL and extra slashes in customRequestHandler 2025-06-17 19:37:40 +00:00
Elian Doran
330932adde fix(website): script errors due to double body 2025-06-17 22:08:34 +03:00
Elian Doran
b9daca5b9c website: favicon / dark mode / more content (#2343) 2025-06-17 21:38:24 +03:00
Elian Doran
c6c48d84ab flake: fix Electron version, fix Wayland support, fix source filter (#2329) 2025-06-17 21:33:45 +03:00
Elian Doran
2c87721953 docs(guide): premium features 2025-06-17 21:01:01 +03:00
Elian Doran
45a446d0f6 chore(text): set up production key 2025-06-17 20:55:38 +03:00
Elian Doran
40086434ec refactor(subtree): duplicate bx in icon name 2025-06-17 20:55:38 +03:00
Elian Doran
bde3f0a55c fix(nx): revert infinite watching causing severe issues with the daemon
See https://github.com/TriliumNext/Notes/pull/2285#issuecomment-2981118813
2025-06-17 20:55:37 +03:00
Elian Doran
9adae105e2 docs: regex search / Nix flake / restore dev docs (#2341) 2025-06-17 20:53:43 +03:00
Elian Doran
60dbf9dd67 Text snippets (#2344) 2025-06-17 19:29:53 +03:00
Elian Doran
374309a40c fix(templates): description displayed on separate lines 2025-06-17 19:21:21 +03:00
Elian Doran
dcccb5ad30 feat(builtin_templates): add icon for text snippets 2025-06-17 19:21:21 +03:00
Elian Doran
47eaee8b70 feat(builtin_templates): add description field for text snippets 2025-06-17 19:21:21 +03:00
Elian Doran
9687a9d8ff refactor(note_types): separate user templates into own method 2025-06-17 19:21:21 +03:00
Elian Doran
fa11295693 feat(templates): add support for built-in templates 2025-06-17 19:21:21 +03:00
Elian Doran
7e399cc10c feat(text-snippets): support description 2025-06-17 19:21:20 +03:00
Elian Doran
59e0857bb5 feat(text-snippets): add default icon for templates 2025-06-17 19:21:20 +03:00
Elian Doran
4f9bd970af feat(text-snippets): better reaction to removing templates 2025-06-17 19:21:20 +03:00
Elian Doran
3e40a35c19 feat(text-snippets): reload when a new template is added 2025-06-17 19:21:20 +03:00
Elian Doran
97799bfacc feat(text-snippets): handle renames by refreshing the editor 2025-06-17 19:21:20 +03:00
Elian Doran
fb1a74a96d feat(text-snippets): debounce updates to avoid duplication 2025-06-17 19:21:20 +03:00
Elian Doran
9f82e0a6d6 refactor(text-snippets): use a map instead of an object 2025-06-17 19:21:20 +03:00
Elian Doran
421e125882 feat(text-snippets): handle content changes 2025-06-17 19:21:20 +03:00
Elian Doran
17ede00fb2 feat(text-snippets): reload editors when templates change 2025-06-17 19:21:20 +03:00
Elian Doran
502638bae7 feat(text-snippets): add toolbar entry 2025-06-17 19:21:20 +03:00
Elian Doran
af8a905150 feat(text-snippets): basic integration 2025-06-17 19:21:20 +03:00
FliegendeWurst
6c2a228267 fix(website): feature block descriptions 2025-06-17 18:10:56 +02:00
FliegendeWurst
f9ecfd1ad0 feat(website): dark mode 2025-06-17 18:10:56 +02:00
FliegendeWurst
2c3cbcb1f9 website: refactor feature blocks, add more 2025-06-17 18:10:56 +02:00
FliegendeWurst
d1583ca091 fix(website): normal link styling 2025-06-17 18:10:56 +02:00
FliegendeWurst
3c21d97a8a fix(website): page titles 2025-06-17 18:10:56 +02:00
FliegendeWurst
8f7468cd60 website: link to distribution packages 2025-06-17 18:10:56 +02:00
FliegendeWurst
6668e639d5 fix(website): proper favicon 2025-06-17 18:10:56 +02:00
SiriusXT
bcc689cae3 Merge branch 'develop' into note-create 2025-06-17 21:18:06 +08:00
SiriusXT
20173d544b feat(autocomple): support specifying path when creating a new note 2025-06-17 20:41:23 +08:00
Arne Keller
e90d4cf86f docs: add section on Nix flake 2025-06-17 13:05:20 +02:00
Arne Keller
1de02b85b3 chore(docs): restore dev docs 2025-06-17 13:05:20 +02:00
FliegendeWurst
dab43d9372 docs: mention escaped backslashes in regex search 2025-06-17 13:05:20 +02:00
Elian Doran
3b579a3b7b Slash commands (#2336) 2025-06-17 12:49:26 +03:00
Elian Doran
a4a5e0bdf0 refactor(ckeditor5): class name 2025-06-16 23:52:16 +03:00
Elian Doran
9cb227c1ca fix(context menu): not auto-closing on mobile (#2331) 2025-06-16 23:49:41 +03:00
Elian Doran
c4c7321f60 fix(slash): layout on legacy theme 2025-06-16 23:06:34 +03:00
Elian Doran
cce27900b8 feat(slash): add a few aliases 2025-06-16 22:57:47 +03:00
Elian Doran
32f4d7be39 fix(slash): adding links not focusing box 2025-06-16 22:52:54 +03:00
Elian Doran
bbeb4e25f3 refactor(ckeditor): use vite environment variables for inspector 2025-06-16 22:01:05 +03:00
Elian Doran
88f78f3e32 feat(slash): better icons for admonitions 2025-06-16 21:42:31 +03:00
Adorian Doran
36581ba882 style(next)/dialogs/note type chooser: stop highlighting the default item 2025-06-16 21:30:34 +03:00
Elian Doran
1a64b3ce8e feat(slash): alignment 2025-06-16 21:21:42 +03:00
Elian Doran
32ee75ea43 feat(slash): markdown import 2025-06-16 21:14:46 +03:00
Elian Doran
06ebe0a9b3 feat(slash): include page break 2025-06-16 21:11:03 +03:00
Elian Doran
6069518749 feat(slash): include note 2025-06-16 20:58:42 +03:00
Elian Doran
c09a9aa7d3 feat(slash): insert math 2025-06-16 20:55:02 +03:00
Elian Doran
13afcb8a49 feat(slash): insert internal link 2025-06-16 20:48:01 +03:00
Elian Doran
9bfff03cff feat(slash): insert date/time 2025-06-16 20:42:55 +03:00
Adorian Doran
8780debc90 style(next)/dialogs/note type chooser: improve appearance 2025-06-16 20:31:57 +03:00
Elian Doran
6f386f50ff chore(slash): change title of admonitions 2025-06-16 20:22:37 +03:00
Elian Doran
43eff08004 feat(slash): insert footnote command 2025-06-16 20:21:54 +03:00
Elian Doran
3a0b616800 feat(slash): admonition types 2025-06-16 20:15:44 +03:00
Adorian Doran
cb65d02dc6 style(next)/quick search: avoid text shadow for the focused search result items 2025-06-16 20:11:38 +03:00
Adorian Doran
bef485c676 style: switch to the new link style 2025-06-16 20:01:41 +03:00
Adorian Doran
9e4d350848 style(next)/launcher calendar: fix the hover state for the month field 2025-06-16 19:46:20 +03:00
Adorian Doran
ccc7a8010e style(next)/combo box: properly handle the hover state when the dropdown arrow is not defined 2025-06-16 19:44:07 +03:00
Adorian Doran
7269c46de3 style(next): note attachments page: tweak header font size 2025-06-16 19:32:05 +03:00
Elian Doran
178df38377 chore(text): increase mention list max height 2025-06-16 19:25:06 +03:00
Elian Doran
1201f7138a style(next): slash commands layout 2025-06-16 19:24:42 +03:00
Elian Doran
9ff4be8871 feat(text): set up slash commands 2025-06-16 19:24:23 +03:00
Adorian Doran
0a17fb586c Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-06-16 19:08:08 +03:00
Adorian Doran
1f8713f57e style(next): tweak the note icon selection button 2025-06-16 19:07:56 +03:00
Elian Doran
507fc17701 feat(text): set up license key for development 2025-06-16 18:38:06 +03:00
Elian Doran
26ad428b24 Merge branch 'jshprentz/develop' into develop 2025-06-16 17:51:22 +03:00
Elian Doran
26af3a9d68 Highlight Elixir in code notes (#2327) 2025-06-16 17:50:51 +03:00
Elian Doran
8ecf6ad78e feat(codemirror): add elixir support 2025-06-16 17:48:20 +03:00
SiriusXT
45977efd5f fix(context menu): not auto-closing on mobile 2025-06-16 17:21:44 +08:00
FliegendeWurst
c0b746e03f fix(desktop): proper icon path
The previous value points to a file that no longer exists in the
release builds. This file also only exists in the flake build.
2025-06-16 08:34:46 +02:00
FliegendeWurst
a13e4d5d79 fix(flake): set resourceDir explicitly 2025-06-16 08:28:44 +02:00
FliegendeWurst
e8f2f0f577 feat(flake): Wayland support 2025-06-16 08:08:04 +02:00
FliegendeWurst
f56ba7295a chore(flake): note differences to electron-forge build 2025-06-16 08:04:43 +02:00
FliegendeWurst
8cdb1859e3 fix(flake): use same Electron version as normal build
Also fix the source filtering logic to work properly.
2025-06-16 07:51:26 +02:00
Joel Shprentz
6bfc78e148 Merge branch 'develop' of https://github.com/jshprentz/TriliumNextNotes into develop 2025-06-16 02:28:50 +00:00
Joel Shprentz
cc97ec332d Codemirror does not support Elixir. Remove Elixir from the list. 2025-06-16 02:25:57 +00:00
Joel Shprentz
f2e4dad318 Merge branch 'TriliumNext:develop' into develop 2025-06-15 22:12:08 -04:00
Joel Shprentz
9c45e9fa1a Support highlighting Elixir code notes. 2025-06-16 01:54:31 +00:00
Elian Doran
e1e2afc3cd docs(release): sync description with GitHub 2025-06-16 00:14:52 +03:00
Elian Doran
b9ae226569 chore(release): bump version 2025-06-15 23:32:26 +03:00
Elian Doran
e23e5227a4 docs(user): improve documentation on sharing 2025-06-15 23:32:26 +03:00
Elian Doran
dd647dbb0b docs(release): v0.95.0 2025-06-15 23:32:26 +03:00
Elian Doran
04794c38d8 fix(forge): locales with dash on non-mac 2025-06-15 21:27:53 +03:00
Elian Doran
8d868b77d0 feat(forge): English locale on Linux 2025-06-15 21:16:02 +03:00
Elian Doran
3435f20baa feat(forge): remove unused locales on macOS 2025-06-15 21:06:01 +03:00
Elian Doran
7427507aca fix(forge): adapt removing lproj on macOS 2025-06-15 20:49:07 +03:00
Elian Doran
3d7784ca18 Revert "fix(desktop): use plugin to clean up languages"
This reverts commit cbcc219f1f.
2025-06-15 19:57:48 +03:00
Elian Doran
0414500c17 Revert "fix(forge): English locale still missing"
This reverts commit 385ebb486e.
2025-06-15 19:57:37 +03:00
Elian Doran
385ebb486e fix(forge): English locale still missing 2025-06-15 19:30:22 +03:00
Elian Doran
cbcc219f1f fix(desktop): use plugin to clean up languages 2025-06-15 19:06:06 +03:00
Elian Doran
58e2bc2b6c Merge pull request #2324 from TriliumNext/renovate/major-ckeditor5-config-packages
chore(deps): update ckeditor5 config packages to v11 (major)
2025-06-15 18:51:19 +03:00
Elian Doran
c1e53c09d6 Merge pull request #2305 from TriliumNext/renovate/mime-types-3.x-lockfile
chore(deps): update dependency @types/mime-types to v3.0.1
2025-06-15 18:50:20 +03:00
Elian Doran
f7a6a10c7a Merge branch 'develop' into renovate/mime-types-3.x-lockfile 2025-06-15 18:08:24 +03:00
Elian Doran
e739aee95f Merge pull request #2318 from TriliumNext/renovate/eslint-monorepo
chore(deps): update eslint monorepo to v9.29.0
2025-06-15 18:01:49 +03:00
Elian Doran
1b6c2cdad1 Merge pull request #2320 from TriliumNext/renovate/tsx-4.x-lockfile
fix(deps): update dependency tsx to v4.20.3
2025-06-15 18:01:16 +03:00
Elian Doran
e56d7e3aa0 Merge pull request #2306 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update dependency @typescript-eslint/parser to v8.34.0
2025-06-15 18:00:34 +03:00
Elian Doran
354c4ff8db Merge pull request #2317 from TriliumNext/renovate/axios-1.x
chore(deps): update dependency axios to v1.10.0
2025-06-15 17:59:39 +03:00
Elian Doran
681b61e166 Merge pull request #2316 from TriliumNext/renovate/vite-plugin-static-copy-3.x
chore(deps): update dependency vite-plugin-static-copy to v3.0.2
2025-06-15 17:59:11 +03:00
Elian Doran
74c6c5d8cf Merge pull request #2315 from TriliumNext/renovate/svelte-5.x-lockfile
chore(deps): update dependency svelte to v5.34.3
2025-06-15 17:57:53 +03:00
Elian Doran
8746df4907 Merge pull request #2314 from TriliumNext/renovate/lint-staged-16.x-lockfile
chore(deps): update dependency lint-staged to v16.1.2
2025-06-15 17:57:02 +03:00
Elian Doran
acbd4c5c3e Merge pull request #2288 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.2.3
2025-06-15 17:56:34 +03:00
renovate[bot]
edd1571c4e chore(deps): update ckeditor5 config packages to v11 2025-06-15 14:43:06 +00:00
renovate[bot]
8289dff3e8 fix(deps): update dependency tsx to v4.20.3 2025-06-15 14:42:18 +00:00
renovate[bot]
d654bb5d16 chore(deps): update eslint monorepo to v9.29.0 2025-06-15 14:41:28 +00:00
renovate[bot]
b985796139 chore(deps): update dependency axios to v1.10.0 2025-06-15 14:40:40 +00:00
renovate[bot]
99fd7b275b chore(deps): update dependency @typescript-eslint/parser to v8.34.0 2025-06-15 14:39:53 +00:00
renovate[bot]
161671e112 chore(deps): update vitest monorepo to v3.2.3 2025-06-15 14:39:00 +00:00
renovate[bot]
02a0173c91 chore(deps): update dependency vite-plugin-static-copy to v3.0.2 2025-06-15 14:38:03 +00:00
renovate[bot]
4f7069a7c3 chore(deps): update dependency svelte to v5.34.3 2025-06-15 14:37:15 +00:00
renovate[bot]
fa4e17c273 chore(deps): update dependency lint-staged to v16.1.2 2025-06-15 14:36:22 +00:00
renovate[bot]
7edd20d179 chore(deps): update dependency @types/mime-types to v3.0.1 2025-06-15 14:35:27 +00:00
Elian Doran
f423d3a145 Merge pull request #2322 from TriliumNext/feature/fix_nx_ignore
Feature/fix nx ignore
2025-06-15 17:10:54 +03:00
Elian Doran
3aba961f5e Revert "test(server): skip failing test"
This reverts commit 82be37b4af.
2025-06-15 17:09:23 +03:00
Elian Doran
d2cfb5e94f chore(nx): have website:typecheck depend on build 2025-06-15 17:03:02 +03:00
Elian Doran
cb22c2cc7f chore(pnpm): align only built dependencies 2025-06-15 16:42:18 +03:00
Elian Doran
3280123414 chore(env): remove 4GB override 2025-06-15 16:11:39 +03:00
Elian Doran
82be37b4af test(server): skip failing test 2025-06-15 16:03:12 +03:00
Elian Doran
0e51a35842 feat(ci): run test-build in affected 2025-06-15 15:42:33 +03:00
Elian Doran
86dc3762b6 fix(nx): patch asset copying to ignore .gitignore 2025-06-15 15:41:10 +03:00
Elian Doran
edc341f024 test(server): ensure build artifacts exist 2025-06-15 15:40:54 +03:00
Elian Doran
f2bef879ce chore(nx): remove dist & node_modules from .nxignore 2025-06-15 14:52:27 +03:00
Elian Doran
a5c6a8e0a9 Revert "test(server): disable file parallelism to avoid CI failures"
This reverts commit 17f27e520c.
2025-06-15 14:41:51 +03:00
Elian Doran
641d2b0527 test(server): skip streaming tests 2025-06-15 14:41:29 +03:00
Elian Doran
e7d129f2f7 chore(renovate): disable bun 2025-06-15 14:41:29 +03:00
Elian Doran
bfc778f002 chore(test): use verbose reporter 2025-06-15 14:28:47 +03:00
Elian Doran
8d2d5504dd test(server): skip memory leak test to see if it breaks the CI 2025-06-15 14:17:18 +03:00
Elian Doran
17f27e520c test(server): disable file parallelism to avoid CI failures 2025-06-15 14:00:54 +03:00
Elian Doran
f8c1dabfd5 Revert "chore(test): skip test breaking the CI"
This reverts commit f3b6817aa7.
2025-06-15 13:59:56 +03:00
Elian Doran
f3b6817aa7 chore(test): skip test breaking the CI 2025-06-15 13:46:13 +03:00
Elian Doran
61d405da68 chore(ci): run server in sequential tests 2025-06-15 13:01:37 +03:00
Elian Doran
d4be6b1de0 chore(renovate): disable HTML manager
Hopefully to reduce the time it takes for renovate to process the repo.
2025-06-15 12:49:08 +03:00
Elian Doran
d199fc322e refactor(client): set up manual chunk for CKEditor 2025-06-15 12:41:03 +03:00
Elian Doran
42ccdd1646 test(server): try to use threads instead of forks to avoid ELIFECYCLE issues in the CI 2025-06-15 12:40:53 +03:00
Elian Doran
185652fb6e chore(deps): sync package lock 2025-06-15 12:06:43 +03:00
Elian Doran
4a579863d1 refactor(deps): remove unnecessary root dependencies 2025-06-15 12:00:59 +03:00
Elian Doran
882b2418d6 chore(renovate): group ckeditor5 config packages 2025-06-15 11:59:52 +03:00
Elian Doran
1dce202d21 test(server): try to reduce number to avoid CI crashing 2025-06-15 11:58:03 +03:00
Elian Doran
2d5754c005 refactor(client,server): remove redundant libraries directory 2025-06-15 11:56:50 +03:00
Elian Doran
9f694fad8b fix(forge): missing English locale on Windows 2025-06-15 11:38:14 +03:00
Elian Doran
9a2264c7f6 chore(forge): make the removed locales list more compact 2025-06-15 11:20:18 +03:00
Elian Doran
77497dbc28 chore(forge): fail build if locale is missing 2025-06-15 11:12:01 +03:00
Elian Doran
1848d5dc96 chore(types): type missing in the CI 2025-06-14 23:54:19 +03:00
Elian Doran
6f5c66f324 chore(types): fix errors in website 2025-06-14 23:40:41 +03:00
Elian Doran
296c95e800 chore(nx): configure for SvelteKit 2025-06-14 22:40:45 +03:00
Elian Doran
6416c6b947 Merge branch 'feature/landing_page' into develop 2025-06-14 21:41:19 +03:00
Elian Doran
30320f6d84 fix(website): download links for server 2025-06-14 21:39:22 +03:00
Elian Doran
b58d0f6663 style(website): slight adjustments to sizes 2025-06-14 18:02:10 +03:00
Elian Doran
56dc1b7e49 feat(website): bigger download button 2025-06-14 17:59:43 +03:00
Elian Doran
cef832fda4 fix(website/download): fix URLs for download 2025-06-14 17:55:38 +03:00
Elian Doran
7066fc3092 feat(website/download): section for paid hosting 2025-06-14 17:14:33 +03:00
Elian Doran
235f7c8aec feat(website/download): section for server downloads 2025-06-14 17:06:51 +03:00
Elian Doran
f0ce728982 refactor(website): improve types 2025-06-14 16:40:50 +03:00
Elian Doran
be7fe9610f feat(website/download): improved descriptions 2025-06-14 16:38:26 +03:00
Elian Doran
49cd0d44ac feat(website/download): improved platform titles 2025-06-14 16:34:51 +03:00
Elian Doran
45a053dfbf feat(website/download): reorganize desktop downloads 2025-06-14 16:29:40 +03:00
Elian Doran
cf47abe849 refactor(website/download): read version number from package.json 2025-06-14 14:34:31 +03:00
Elian Doran
6e97b08256 fix(website/download): use proper download links 2025-06-14 14:33:17 +03:00
Elian Doran
668706a6d9 feat(website/download): integrate architecture selector 2025-06-14 14:24:59 +03:00
Elian Doran
68dc81ac96 feat(website): integrate download matrix for server 2025-06-14 14:14:58 +03:00
Elian Doran
58a099dbc7 Merge pull request #2312 from TriliumNext/doc
docs: ✏️ Fix MFA Readme link
2025-06-14 14:14:10 +03:00
JYC333
740e65a791 Merge pull request #2307 from TriliumNext/renovate/tsx-4.x-lockfile
fix(deps): update dependency tsx to v4.20.3
2025-06-14 13:09:24 +02:00
JYC333
d3aabadb66 Merge branch 'develop' into renovate/tsx-4.x-lockfile 2025-06-14 12:58:08 +02:00
JYC333
571c93c610 Merge pull request #2266 from TriliumNext/renovate/eslint-monorepo
fix(deps): update eslint monorepo to v9.29.0
2025-06-14 12:57:37 +02:00
Jin
168f9b54ba docs: ✏️ Fix MFA Readme link 2025-06-14 12:54:58 +02:00
Elian Doran
65e207648b feat(website): basic platform detection 2025-06-14 13:45:44 +03:00
Elian Doran
cb6cb97326 feat(website): place download now button in header as well 2025-06-14 13:35:31 +03:00
Elian Doran
450fa5311c feat(website/download): add basic server section 2025-06-14 13:31:52 +03:00
Elian Doran
4edd701c29 feat(website/download): add a basic architecture selector 2025-06-14 13:25:19 +03:00
Elian Doran
630aade97a feat(website): start a download section 2025-06-14 13:18:34 +03:00
Elian Doran
c97098d60d chore(website): change hero section 2025-06-14 12:45:34 +03:00
Elian Doran
7d0a555999 fix(website): z-index of header 2025-06-14 12:38:31 +03:00
Elian Doran
2c4d0d800c feat(website): simplify features highlights section 2025-06-14 12:36:32 +03:00
Elian Doran
c7ed63a0e3 fix(website): alignment of footer 2025-06-14 12:31:41 +03:00
Elian Doran
3cc69849db feat(website): add a nice gradient 2025-06-14 12:24:23 +03:00
Elian Doran
32ef25a868 feat(website): add a basic final call-to-action 2025-06-14 12:17:37 +03:00
Elian Doran
437e8875d8 feat(website): move screenshot to the right 2025-06-14 12:15:08 +03:00
Elian Doran
652e91586e feat(website): add a basic intro into the features 2025-06-14 12:13:23 +03:00
Elian Doran
4946a50ebd chore(vscode): add tailwind extension to recommendations 2025-06-14 12:02:43 +03:00
Elian Doran
c69ecb768b feat(website): add a basic feature highlights section 2025-06-14 12:02:22 +03:00
Elian Doran
88abb895ff feat(website): add a basic copyright footer 2025-06-14 11:59:11 +03:00
Elian Doran
09dd8f9828 feat(website): slight improvements to header 2025-06-14 11:49:45 +03:00
Elian Doran
7dd6c1a6cc feat(website): basic screenshot 2025-06-14 11:42:02 +03:00
Elian Doran
9eda9b1399 feat(website): basic hero section 2025-06-14 11:30:13 +03:00
Elian Doran
e66e70f7f2 feat(website): very simple header 2025-06-14 11:13:40 +03:00
Elian Doran
77213a0dbe chore(website): add inlang to ignore 2025-06-14 11:13:30 +03:00
Elian Doran
73b1aa7c6c chore(vscode): add svelte to recommendations 2025-06-14 11:12:49 +03:00
Elian Doran
c43a7df781 chore(website): create empty SvelteKit project 2025-06-14 11:05:38 +03:00
renovate[bot]
97d6d1a5d2 fix(deps): update eslint monorepo to v9.29.0 2025-06-14 07:45:46 +00:00
Elian Doran
925a674de6 Merge pull request #2311 from TriliumNext/renovate/eslint-linter-browserify-9.x
fix(deps): update dependency eslint-linter-browserify to v9.29.0
2025-06-14 10:39:41 +03:00
Elian Doran
297aef788c Merge pull request #2298 from TriliumNext/renovate/codemirror
fix(deps): update codemirror
2025-06-14 10:36:34 +03:00
renovate[bot]
6ecc67c8cf fix(deps): update dependency eslint-linter-browserify to v9.29.0 2025-06-14 07:24:48 +00:00
renovate[bot]
0f4b26fa6f fix(deps): update codemirror 2025-06-14 07:23:54 +00:00
Elian Doran
8704b01f4c Merge pull request #2299 from TriliumNext/renovate/nx-monorepo
chore(deps): update nx monorepo to v21.2.0
2025-06-14 10:19:53 +03:00
Elian Doran
5c3a69984a Merge remote-tracking branch 'origin/develop' into renovate/tsx-4.x-lockfile 2025-06-14 10:15:47 +03:00
renovate[bot]
1dec510120 chore(deps): update nx monorepo to v21.2.0 2025-06-13 13:28:06 +00:00
Elian Doran
4da7fd2c87 Merge pull request #2297 from TriliumNext/renovate/tsx-4.x
chore(deps): update dependency tsx to v4.20.3
2025-06-13 16:23:51 +03:00
renovate[bot]
143209307f chore(deps): update dependency tsx to v4.20.3 2025-06-13 12:45:44 +00:00
renovate[bot]
e300f9087a fix(deps): update dependency tsx to v4.20.3 2025-06-13 12:42:01 +00:00
Elian Doran
26afab03ce Merge pull request #2303 from TriliumNext/sirius_patch
fix(image): ensure images opened in a new tab can be activated
2025-06-13 15:31:27 +03:00
Elian Doran
2f3275474f Merge pull request #2304 from TriliumNext/sirius_patch2
fix(ckeditor): restore focus after importing markdown
2025-06-13 15:28:04 +03:00
SiriusXT
41eff6de17 fix(ckeditor): restore focus after importing markdown 2025-06-13 19:40:49 +08:00
SiriusXT
07bb0644b2 fix(image): ensure images opened in a new tab can be activated 2025-06-13 18:08:15 +08:00
Elian Doran
5b6c003888 Merge pull request #2300 from TriliumNext/renovate/tsx-4.x-lockfile
fix(deps): update dependency tsx to v4.20.2
2025-06-13 09:21:05 +03:00
renovate[bot]
d93e66665c fix(deps): update dependency tsx to v4.20.2 2025-06-13 00:42:33 +00:00
Elian Doran
f0c696d6fd Merge pull request #2281 from TriliumNext/fix/show-warning-when-rosetta-2
fix(client): show warning/error when app is using Rosetta 2 translation (running wrong arch)
2025-06-12 23:05:54 +03:00
Elian Doran
9713864bb6 refactor(cpu_dialog): more mentions of rosetta 2025-06-12 22:53:15 +03:00
Elian Doran
c6c59c63bb feat(cpu_dialog): add actual Windows CPU detection 2025-06-12 22:49:31 +03:00
Elian Doran
0a81e26e7e feat(cpu_dialog): fix icon alignment & add message for windows 2025-06-12 22:43:30 +03:00
Elian Doran
2c032d54c1 chore(cpu_dialog): simplify the dialog 2025-06-12 22:30:33 +03:00
Elian Doran
a635131f47 style(cpu_dialog): use modal-footer 2025-06-12 22:23:37 +03:00
Elian Doran
8edbbe27f8 refactor(client,server): rebrand to CPU arch warnings 2025-06-12 22:16:57 +03:00
Elian Doran
db3c008c07 fix(server): headers sent twice 2025-06-12 22:07:50 +03:00
Elian Doran
a20a06c994 refactor(client): simplify DOM 2025-06-12 22:06:34 +03:00
Elian Doran
fe1f4a4294 refactor(client): remove contrasting title bar 2025-06-12 22:03:22 +03:00
Elian Doran
b4d2d21620 refactor(client): relocate architecture mismatch checks 2025-06-12 22:00:51 +03:00
Elian Doran
f6bba436f4 Revert "fix(client): also move the logic from the server to the client lol"
This reverts commit e401c8c930.
2025-06-12 21:46:27 +03:00
Elian Doran
79aae8fb43 Merge remote-tracking branch 'origin/develop' into fix/show-warning-when-rosetta-2 2025-06-12 21:32:50 +03:00
Elian Doran
c34c0c49db Merge pull request #2293 from TriliumNext/tree
fix(tree): Unexpected collapse after hoisting a note
2025-06-12 18:34:09 +03:00
Elian Doran
59296f3045 fix(server): crashes due to req.body being undefined 2025-06-12 15:01:35 +03:00
SiriusXT
df68ed33bc Merge branch 'develop' into tree 2025-06-12 19:46:11 +08:00
SiriusXT
369eb7844d fix(tree): Unexpected collapse after hoisting a note 2025-06-12 19:36:54 +08:00
Elian Doran
b3270ae7c8 chore(server): enable source map for serve 2025-06-12 12:08:45 +03:00
Elian Doran
995de2b740 feat(editor): hide balloon toolbar when in code block 2025-06-12 10:12:17 +03:00
Elian Doran
be718ce4e0 refactor(client): remove unnecessary widget 2025-06-12 09:23:30 +03:00
Elian Doran
63ce62a67d Merge pull request #2290 from TriliumNext/renovate/anthropic-ai-sdk-0.x
chore(deps): update dependency @anthropic-ai/sdk to v0.54.0
2025-06-12 09:20:42 +03:00
Elian Doran
fc84c06346 Merge pull request #2292 from TriliumNext/renovate/tsx-4.x-lockfile
fix(deps): update dependency tsx to v4.20.1
2025-06-12 09:20:30 +03:00
renovate[bot]
3ccd5b52fa fix(deps): update dependency tsx to v4.20.1 2025-06-12 05:54:46 +00:00
renovate[bot]
bd3f74c17b chore(deps): update dependency @anthropic-ai/sdk to v0.54.0 2025-06-12 05:53:56 +00:00
Elian Doran
10e063b39e Merge pull request #2285 from werererer/fix/nx-project-discovery
fix(build): fix Nx project discovery issue caused by parent .gitignore
2025-06-12 08:46:17 +03:00
Elian Doran
6876337f5f Merge pull request #2289 from TriliumNext/renovate/preact-10.x
fix(deps): update dependency preact to v10.26.9
2025-06-12 08:45:58 +03:00
Elian Doran
c43a654f8e Merge pull request #2291 from TriliumNext/renovate/tsx-4.x
chore(deps): update dependency tsx to v4.20.1
2025-06-12 08:44:54 +03:00
Elian Doran
40a7890b45 Merge pull request #2287 from TriliumNext/renovate/mime-types-3.x-lockfile
chore(deps): update dependency @types/mime-types to v3.0.1
2025-06-12 08:44:32 +03:00
renovate[bot]
b8115fed70 chore(deps): update dependency tsx to v4.20.1 2025-06-12 01:16:04 +00:00
renovate[bot]
b1f7a8e932 fix(deps): update dependency preact to v10.26.9 2025-06-12 01:14:34 +00:00
renovate[bot]
5514fbd113 chore(deps): update dependency @types/mime-types to v3.0.1 2025-06-12 01:12:47 +00:00
Elian Doran
2fe34b1b0d Merge branch 'develop' into fix/nx-project-discovery 2025-06-11 23:58:47 +03:00
Jakob Schlanstedt
efb0050e57 fix(build): ensure projects are discovered by ignoring parent .gitignore rules 2025-06-11 22:43:42 +02:00
Elian Doran
cfd68f41eb Merge pull request #2220 from TriliumNext/moveupdown
fix(move_block): move multiple lines up/down
2025-06-11 22:42:10 +03:00
Elian Doran
5090b38f9c Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-06-11 22:33:18 +03:00
Elian Doran
57ad6065d8 Merge pull request #2282 from TriliumNext/feat/add-llm-model-unit-tests
feat(unit): add unit tests around LLM model names within outgoing req…
2025-06-11 22:10:36 +03:00
Elian Doran
65b7c2d82f Merge pull request #2249 from TriliumNext/odic
MFA docs improve
2025-06-11 22:08:21 +03:00
Elian Doran
7863a5e09c chore: disable source maps 2025-06-11 22:03:25 +03:00
Jin
94e3586555 refactor: 💡 add link in MFA option point to help page 2025-06-11 20:52:07 +02:00
Jin
ac14a22a43 chore: 🤖 align the same structure with option page 2025-06-11 20:52:07 +02:00
Jin
14179f3bd3 docs: ✏️ show MFA in-app help page 2025-06-11 20:52:07 +02:00
Jin
988a2b8d29 docs: ✏️ Add custom OAuth issuer docs 2025-06-11 20:52:07 +02:00
JYC333
9c38398ae3 Merge pull request #2278 from TriliumNext/renovate/major-typescript-eslint-monorepo
chore(deps): update typescript-eslint monorepo to v8 (major)
2025-06-11 20:51:13 +02:00
renovate[bot]
c4226ea454 chore(deps): update typescript-eslint monorepo to v8 2025-06-11 18:11:06 +00:00
Elian Doran
19668d1931 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-06-11 21:08:37 +03:00
Elian Doran
23c45ee219 feat(forge): remove unused locales 2025-06-11 21:08:02 +03:00
Elian Doran
ed5505e093 Merge pull request #2271 from TriliumNext/renovate/softprops-action-gh-release-2.x
chore(deps): update softprops/action-gh-release action to v2.3.2
2025-06-11 20:09:52 +03:00
Elian Doran
fb9f5a7584 Merge branch 'develop' into renovate/softprops-action-gh-release-2.x 2025-06-11 20:09:30 +03:00
Elian Doran
825c2c1fe9 Merge pull request #2255 from TriliumNext/feature/client_size_optimisation
Client bundle size optimization
2025-06-11 20:06:31 +03:00
Elian Doran
7c2a29edce chore(deps): deduplicate roughjs 2025-06-11 19:45:36 +03:00
Elian Doran
26f44ea1f8 chore(deps): deduplicate preact 2025-06-11 19:42:44 +03:00
Jon Fuller
6dbdf336aa Merge branch 'develop' into feat/add-llm-model-unit-tests 2025-06-11 09:41:11 -07:00
Elian Doran
89d32db601 fix(canvas): loading of fonts under dev mode 2025-06-11 19:34:35 +03:00
Elian Doran
65f9b1c4ef Merge remote-tracking branch 'origin/develop' into feature/client_size_optimisation
; Conflicts:
;	pnpm-lock.yaml
2025-06-11 19:02:34 +03:00
Elian Doran
6596431154 chore(client): force mermaid to avoid double packaging 2025-06-11 18:59:46 +03:00
Elian Doran
9bab8f0bdb refactor(canvas): remove unnecessary env setup 2025-06-11 18:59:46 +03:00
Elian Doran
892c27c945 chore(canvas): set up cleanup 2025-06-11 18:59:45 +03:00
Elian Doran
bb762cfab6 refactor(canvas): remove use of any 2025-06-11 18:59:45 +03:00
Elian Doran
9d296dd692 refactor(canvas): use deferred promise instead of sleep 2025-06-11 18:59:45 +03:00
Elian Doran
0da05a7dbe refactor(canvas): don't expose API directly 2025-06-11 18:59:45 +03:00
Elian Doran
dab9b02990 refactor(canvas): remove unnecessary fragment 2025-06-11 18:59:45 +03:00
Elian Doran
5b4ceb27c5 refactor(canvas): remove unnecessary ref 2025-06-11 18:59:45 +03:00
Elian Doran
51d06ec40d chore(deps): fix lockfile 2025-06-11 18:59:45 +03:00
renovate[bot]
e7285573ac chore(deps): update dependency openai to v5.3.0 2025-06-11 18:59:45 +03:00
renovate[bot]
509e3284ed chore(deps): update vitest monorepo to v3.2.3 2025-06-11 18:59:45 +03:00
renovate[bot]
c8530bca75 chore(deps): update dependency serve-favicon to v2.5.1 2025-06-11 18:59:45 +03:00
renovate[bot]
b27d017174 chore(deps): update dependency @types/mime-types to v3.0.1 2025-06-11 18:59:45 +03:00
Elian Doran
963c7386b1 chore(ci): remove accidental workflow 2025-06-11 18:59:45 +03:00
Elian Doran
e032e6f217 refactor(deps): remove package lock from package 2025-06-11 18:59:45 +03:00
Elian Doran
00c5497d93 chore(cI): use pnpm exec instead of pnpx 2025-06-11 18:59:45 +03:00
JYC333
8ed62398fa Merge pull request #2276 from TriliumNext/renovate/major-happy-dom-monorepo
chore(deps): update dependency happy-dom to v18
2025-06-11 17:00:49 +02:00
renovate[bot]
fff87aec87 chore(deps): update dependency happy-dom to v18 2025-06-11 14:35:56 +00:00
JYC333
6ef71b9209 Merge pull request #2274 from TriliumNext/renovate/major-eslint-monorepo
chore(deps): update dependency eslint to v9
2025-06-11 16:32:50 +02:00
perf3ct
e401c8c930 fix(client): also move the logic from the server to the client lol 2025-06-11 14:30:33 +00:00
renovate[bot]
ba9f034694 chore(deps): update dependency eslint to v9 2025-06-11 16:17:30 +02:00
JYC333
adbc906f9e Merge pull request #2273 from TriliumNext/renovate/swagger-ui-5.x
chore(deps): update dependency @types/swagger-ui to v5
2025-06-11 16:17:04 +02:00
perf3ct
3041af7fe2 feat(client): also fix translations 2025-06-11 14:13:59 +00:00
perf3ct
23ce896681 feat(client): show warning when running through rosetta 2 2025-06-11 14:04:42 +00:00
renovate[bot]
5249624486 chore(deps): update dependency @types/swagger-ui to v5 2025-06-11 13:23:33 +00:00
JYC333
3f5024dc6d Merge pull request #2264 from TriliumNext/renovate/playwright-monorepo
chore(deps): update dependency @playwright/test to v1.53.0
2025-06-11 15:20:37 +02:00
renovate[bot]
1afb971877 chore(deps): update dependency @playwright/test to v1.53.0 2025-06-11 09:46:56 +00:00
JYC333
0d605cbc74 Merge pull request #2260 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.15.31
2025-06-11 11:35:06 +02:00
renovate[bot]
cc7c175b45 chore(deps): update dependency @types/node to v22.15.31 2025-06-11 09:10:55 +00:00
JYC333
c6f48d1dc0 Merge pull request #2269 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.3.0
2025-06-11 11:08:55 +02:00
renovate[bot]
3ddde700fb chore(deps): update dependency openai to v5.3.0 2025-06-11 08:59:30 +00:00
JYC333
22450519a4 Merge pull request #2263 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.2.3
2025-06-11 10:54:41 +02:00
renovate[bot]
9ece11ae9b chore(deps): update vitest monorepo to v3.2.3 2025-06-11 08:46:50 +00:00
JYC333
c3796dcdb0 Merge pull request #2262 from TriliumNext/renovate/serve-favicon-2.x
chore(deps): update dependency serve-favicon to v2.5.1
2025-06-11 10:43:18 +02:00
renovate[bot]
c0b9bb282c chore(deps): update dependency serve-favicon to v2.5.1 2025-06-11 08:34:14 +00:00
JYC333
97a904e4b4 Merge pull request #2259 from TriliumNext/renovate/mime-types-3.x-lockfile
chore(deps): update dependency @types/mime-types to v3.0.1
2025-06-11 10:22:37 +02:00
renovate[bot]
411875ac5f chore(deps): update dependency @types/mime-types to v3.0.1 2025-06-11 07:48:05 +00:00
Elian Doran
7b43cfc563 chore(ci): remove accidental workflow 2025-06-11 10:45:25 +03:00
Elian Doran
d6c250111a chore(ci): trigger nightly when workflow changes 2025-06-11 10:24:27 +03:00
renovate[bot]
fdd70e4403 chore(deps): update softprops/action-gh-release action to v2.3.2 2025-06-11 07:17:24 +00:00
Elian Doran
bcd7c29db4 refactor(deps): remove package lock from package 2025-06-11 10:07:39 +03:00
Elian Doran
d3c2315e2d chore(cI): use pnpm exec instead of pnpx 2025-06-11 09:24:07 +03:00
Elian Doran
a7c115cdf5 chore(canvas): solve type errors 2025-06-10 23:41:15 +03:00
Elian Doran
4bd5644258 refactor(canvas): access to wrapper 2025-06-10 23:40:14 +03:00
Elian Doran
5b98277f3c chore(canvas): bring back more options 2025-06-10 23:29:36 +03:00
Elian Doran
ddbd268a66 chore(canvas): bring back load/save 2025-06-10 23:25:43 +03:00
Elian Doran
dd58685455 chore(canvas): bring back scene API 2025-06-10 23:09:36 +03:00
Elian Doran
5ad3d7d077 chore(canvas): missing API endpoint 2025-06-10 22:50:39 +03:00
Elian Doran
3e0f420eec chore(canvas): reintroduce wrapper 2025-06-10 22:44:11 +03:00
Elian Doran
0f47a4988b refactor(canvas): proof of concept for preact-based canvas 2025-06-10 22:22:47 +03:00
Elian Doran
0f9fe0367a chore(client): fix excalidraw erroring out due to react 2025-06-10 21:23:46 +03:00
Elian Doran
b2b6654846 refactor(share): removing problematic build step 2025-06-10 21:09:24 +03:00
Elian Doran
83c136174e chore(client): build dependencies before serving 2025-06-10 21:09:10 +03:00
perf3ct
e1e1eb4f51 feat(unit): add unit tests around LLM model names within outgoing requests 2025-06-10 16:27:05 +00:00
Elian Doran
61958a35c2 fix(ci): release breaking due to upstream
See:
- https://github.com/softprops/action-gh-release/issues/627
- https://github.com/softprops/action-gh-release/issues/628
2025-06-10 14:16:42 +03:00
Elian Doran
5558d6e149 chore(ci): try to increase max heap size everywhere 2025-06-10 13:56:56 +03:00
SiriusXT
3a56a16a58 fix: moving tables/blockQuote 2025-06-10 18:50:32 +08:00
Elian Doran
e7ab96538c refactor(share): update package meta 2025-06-10 13:46:33 +03:00
Elian Doran
cbc57c3a77 Merge pull request #2243 from TriliumNext/open_in_new_window
fix(link): Unable to open notes in a new window
2025-06-10 13:35:00 +03:00
Elian Doran
2bcaf7d8a8 Merge pull request #2236 from TriliumNext/zen
fix(zen): Show fixed toolbar in Zen mode
2025-06-10 13:18:15 +03:00
Elian Doran
db80ebe6dd Merge pull request #2232 from TriliumNext/ckeditor5-alignment
feat(ckeditor): Add text alignment
2025-06-10 13:15:42 +03:00
Elian Doran
72217253be Merge pull request #2245 from TriliumNext/renovate/npm-esbuild-vulnerability
chore(deps): update dependency esbuild to ^0.25.0 [security]
2025-06-10 13:10:12 +03:00
Elian Doran
12ef314ab7 Merge pull request #2230 from TriliumNext/tab-row
Tab row scroll
2025-06-10 13:08:51 +03:00
renovate[bot]
ce38f47bee chore(deps): update dependency esbuild to ^0.25.0 [security] 2025-06-10 09:55:49 +00:00
Elian Doran
36f0de888e Merge pull request #2209 from TriliumNext/feat/llm-unit-tests
feat(llm): add unit tests
2025-06-10 12:52:29 +03:00
SiriusXT
e440f31cb5 Merge branch 'develop' into open_in_new_window 2025-06-10 17:51:54 +08:00
Elian Doran
94cd0fc5d1 Merge pull request #2222 from TriliumNext/feature/share_theme
Integrate Trilium Rocks share theme
2025-06-10 12:43:51 +03:00
SiriusXT
ee9267775e vitest(link): add Vitest test cases for parseNavigationStateFromUrl 2025-06-10 17:38:05 +08:00
SiriusXT
885cdc8c97 Fix: Unable to open in a new window 2025-06-10 17:25:10 +08:00
Elian Doran
9d347ecf74 Merge remote-tracking branch 'origin/develop' into feature/share_theme
; Conflicts:
;	pnpm-lock.yaml
2025-06-10 08:58:20 +03:00
Elian Doran
23238a6ca0 Merge pull request #2238 from TriliumNext/renovate/react-monorepo
chore(deps): update dependency @types/react to v19.1.7
2025-06-10 08:52:17 +03:00
Elian Doran
9dc067564e Merge pull request #2239 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.2.3
2025-06-10 08:51:54 +03:00
Elian Doran
7936e2d124 Merge pull request #2240 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.2.0
2025-06-10 08:51:33 +03:00
Elian Doran
3e73fc03e6 Merge pull request #2241 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update typescript-eslint monorepo to ~8.34.0
2025-06-10 08:51:08 +03:00
renovate[bot]
ff19bab496 chore(deps): update typescript-eslint monorepo to ~8.34.0 2025-06-10 01:13:09 +00:00
renovate[bot]
12c4ca5f08 chore(deps): update dependency openai to v5.2.0 2025-06-10 01:11:51 +00:00
renovate[bot]
7b0ab4ee83 chore(deps): update vitest monorepo to v3.2.3 2025-06-10 01:11:10 +00:00
renovate[bot]
1feb4d42b7 chore(deps): update dependency @types/react to v19.1.7 2025-06-10 01:10:24 +00:00
SiriusXT
17ff0e8afc Merge branch 'develop' into ckeditor5-alignment 2025-06-10 09:07:21 +08:00
Elian Doran
7fcbb83dbe chore(forge): increase heap space for CI 2025-06-09 23:31:56 +03:00
Elian Doran
8ee6c7114c test(server-e2e): remove test that was no longer relevant 2025-06-09 23:10:19 +03:00
Elian Doran
ceb6134af2 fix(client): uninitialized field 2025-06-09 22:40:45 +03:00
Elian Doran
0ff8b7edd8 chore(share): fix typecheck issues 2025-06-09 22:31:14 +03:00
Elian Doran
8e73c5906d fix(server): missing boxicons in desktop/mobile 2025-06-09 22:18:44 +03:00
Elian Doran
4216a71a85 fix(server): render share theme on prod 2025-06-09 21:58:56 +03:00
Elian Doran
64e857362f refactor(share): remove Swagger-specific CSS 2025-06-09 21:54:46 +03:00
Elian Doran
8e4bf1538d feat(share): render math 2025-06-09 21:35:29 +03:00
Elian Doran
0ea60fa9d7 fix(client): bring back toast for read-only notes 2025-06-09 21:31:04 +03:00
Elian Doran
6667167b26 chore(server): set implicit dependency to share 2025-06-09 21:19:54 +03:00
Elian Doran
fd06046be5 refactor(share): remove swagger integration 2025-06-09 21:17:04 +03:00
Elian Doran
f20d4cbed2 refactor(share): translate messages 2025-06-09 21:16:03 +03:00
Elian Doran
18e6981e9a refactor(share): don't load boxicons if not needed 2025-06-09 21:00:58 +03:00
Elian Doran
d68d0b5dd8 feat(share): disable search if single note 2025-06-09 20:53:48 +03:00
Elian Doran
3b81d00de7 fix(share): crash if sharing single note without tree 2025-06-09 20:52:02 +03:00
Elian Doran
dd6660a6cd chore(share): use locale-friendly date 2025-06-09 20:49:06 +03:00
Elian Doran
8cb7dc7a7e feat(share): integrate last updated date 2025-06-09 20:47:36 +03:00
Elian Doran
dc5bb627ed feat(share): integrate prev/next navigation 2025-06-09 20:36:04 +03:00
Elian Doran
4d5a0e7832 refactor(share): don't load jQuery if not needed 2025-06-09 20:15:55 +03:00
Elian Doran
0e88818220 refactor(share): don't load highlighting if not needed 2025-06-09 20:03:32 +03:00
Elian Doran
ea015bc2cf refactor(share): remove no longer necessary highlight module 2025-06-09 19:55:21 +03:00
Elian Doran
02fe7c97ca feat(share): automatic light/dark mode 2025-06-09 19:38:44 +03:00
Elian Doran
0cba323091 feat(share): display icons in note tree 2025-06-09 18:47:02 +03:00
Elian Doran
89e931bca6 feat(share): improve style of copy button 2025-06-09 18:31:02 +03:00
SiriusXT
ace7e67c00 fix(zen): Show fixed toolbar in Zen mode 2025-06-09 17:27:31 +02:00
Elian Doran
1bcb811835 feat(share): enable syntax highlighting 2025-06-09 18:22:30 +03:00
JYC333
fba29249b0 Merge pull request #2231 from TriliumNext/toolbar
chore(editor): relocate link icon in floating toolbar
2025-06-09 17:18:02 +02:00
SiriusXT
496c36fde8 chore(editor): relocate link icon in floating toolbar 2025-06-09 16:56:51 +02:00
Elian Doran
54ffeeaed9 refactor(share): remove experiment to precompile EJS 2025-06-09 16:24:21 +03:00
Elian Doran
828da2aabf refactor(share): relocate 404 template 2025-06-09 16:22:22 +03:00
Elian Doran
a61d76deed refactor(share): remove old templates 2025-06-09 16:13:11 +03:00
Elian Doran
2238fed1b7 style(share): remove superfluous padding 2025-06-09 16:06:30 +03:00
Elian Doran
50777faa02 feat(share): add the Trilium logo by default 2025-06-09 15:10:50 +03:00
Elian Doran
157b4f9398 feat(share): expand subchildren when in folder 2025-06-09 15:02:50 +03:00
Elian Doran
091ffdeb59 feat(share): allow viewing directories 2025-06-09 14:54:04 +03:00
Elian Doran
0b3846fc35 fix(share): reintroduce theme-specific scripts 2025-06-09 14:39:56 +03:00
Elian Doran
c2e0640ea8 chore(share): fix error in dev mode 2025-06-09 14:29:19 +03:00
Elian Doran
3cd4b1b67e chore(share): remove redundant script import 2025-06-09 14:28:13 +03:00
Elian Doran
41edab3857 fix(share): regressions in child preview due to base theme 2025-06-09 14:21:47 +03:00
Elian Doran
12dbf36358 fix(share): regressions in menu due to base theme 2025-06-09 14:21:07 +03:00
Elian Doran
d630d407ca refactor(share): integrate with base CSS 2025-06-09 14:20:50 +03:00
Elian Doran
8bdf3626f0 refactor(share): integrate with client 2025-06-09 14:13:35 +03:00
Elian Doran
3def1a1e57 chore(share): introduce theme script 2025-06-09 13:37:38 +03:00
Elian Doran
4fcb186022 chore(share): bring back original share.js 2025-06-09 13:35:14 +03:00
Elian Doran
7451c2701e chore(share): bring back CSS 2025-06-09 13:33:25 +03:00
Elian Doran
098cd19b18 chore(share): fall back to original EJS rendering mechanism 2025-06-09 13:20:41 +03:00
Elian Doran
2827126be7 chore(share): embed imports 2025-06-09 12:39:48 +03:00
SiriusXT
e6c2f729f4 Merge branch 'develop' into moveupdown 2025-06-09 16:41:31 +08:00
Elian Doran
7e443e7b8d refactor(share): use custom build plugin 2025-06-09 11:18:47 +03:00
Elian Doran
d6bb790e26 chore(share): use rendered template (missing include) 2025-06-09 11:12:02 +03:00
Elian Doran
2d3265136d chore(share): prebuilt template 2025-06-09 11:00:58 +03:00
Elian Doran
11853962b7 refactor(share): remove note uploading mechanism 2025-06-09 10:51:18 +03:00
Elian Doran
c6ffa53f0b chore(share): set nx name 2025-06-09 10:48:31 +03:00
SiriusXT
2544c9b483 feat(ckeditor): Add text alignment 2025-06-09 15:00:08 +08:00
Elian Doran
8557159273 Merge pull request #2229 from TriliumNext/renovate/stylelint-config-ckeditor5-11.x-lockfile
chore(deps): update dependency stylelint-config-ckeditor5 to v11
2025-06-09 09:43:54 +03:00
Elian Doran
a4192cf061 Merge pull request #2228 from TriliumNext/renovate/eslint-config-ckeditor5-11.x-lockfile
chore(deps): update dependency eslint-config-ckeditor5 to v11
2025-06-09 09:43:32 +03:00
Elian Doran
d37491e95a Merge pull request #2227 from TriliumNext/renovate/pnpm-10.x
chore(deps): update pnpm to v10.12.1
2025-06-09 09:43:11 +03:00
renovate[bot]
e93e32d01c chore(deps): update pnpm to v10.12.1 2025-06-09 06:23:50 +00:00
SiriusXT
ff1030332c Merge branch 'develop' into tab-row 2025-06-09 14:20:08 +08:00
SiriusXT
f48d17cb22 fix(tab-row): Make the default distance include margin 2025-06-09 14:06:15 +08:00
Elian Doran
ca4b8fa5ec Merge pull request #2226 from TriliumNext/renovate/cheerio-1.x
chore(deps): update dependency cheerio to v1.1.0
2025-06-09 09:03:20 +03:00
Elian Doran
c155b8651f Merge branch 'develop' into renovate/cheerio-1.x 2025-06-09 09:03:17 +03:00
Elian Doran
199c047c28 Merge pull request #2225 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.2.2
2025-06-09 09:02:37 +03:00
Elian Doran
ff603b2fab Merge pull request #2224 from TriliumNext/renovate/mime-types-3.x-lockfile
chore(deps): update dependency @types/mime-types to v3.0.1
2025-06-09 09:01:46 +03:00
SiriusXT
949ff17776 fix(tab-row): Simplify scrolling logic 2025-06-09 13:59:52 +08:00
SiriusXT
de4f0f7d6f fix(tab-row): Simplify scrolling logic 2025-06-09 11:33:16 +08:00
SiriusXT
a23b0c5ec9 fix(move_block): Make the object movable 2025-06-09 10:04:10 +08:00
renovate[bot]
96000a8a72 chore(deps): update dependency stylelint-config-ckeditor5 to v11 2025-06-09 01:03:54 +00:00
renovate[bot]
b2ccf126ed chore(deps): update dependency eslint-config-ckeditor5 to v11 2025-06-09 01:03:05 +00:00
renovate[bot]
b779577f9b chore(deps): update dependency cheerio to v1.1.0 2025-06-09 00:47:05 +00:00
renovate[bot]
21e2a7e2cd chore(deps): update vitest monorepo to v3.2.2 2025-06-09 00:46:25 +00:00
renovate[bot]
583356cf89 chore(deps): update dependency @types/mime-types to v3.0.1 2025-06-09 00:45:45 +00:00
perf3ct
e96fdbf72f fix(llm): fix logging type check 2025-06-09 00:23:02 +00:00
perf3ct
41906abaf9 feat(route): allow for routes to handle their own response 2025-06-09 00:08:06 +00:00
perf3ct
ca6277f6e9 feat(llm): handle error catching in streaming better 2025-06-09 00:07:00 +00:00
perf3ct
e98fabcc9d fix(unit): resolve auth error in llm unit test
keep working
2025-06-08 23:19:40 +00:00
perf3ct
f5ad5b875e fix(tests): resolve LLM streaming unit test failures
closer to fixing...

closer...

very close to passing...
2025-06-08 23:02:15 +00:00
perf3ct
daa32e4355 Revert "fix(unit): comment out this test for now to see if the rest pass"
This reverts commit 95a33ba3c0.
2025-06-08 22:02:56 +00:00
perf3ct
95a33ba3c0 fix(unit): comment out this test for now to see if the rest pass 2025-06-08 21:54:19 +00:00
perf3ct
b28387bada feat(llm): decrease the throttle on the chunking tests lol 2025-06-08 21:47:53 +00:00
perf3ct
93cf868dcf feat(llm): last test should be passing now 2025-06-08 21:38:57 +00:00
perf3ct
224cae6db2 fix(unit): resolve type errors 2025-06-08 21:03:07 +00:00
perf3ct
0c44dd0e63 fix(unit): alright I'm just going to get rid of this test to pick my battles 2025-06-08 20:55:27 +00:00
perf3ct
d60e795421 feat(llm): still working on fixing tests... 2025-06-08 20:39:35 +00:00
perf3ct
c6f2124e9d feat(llm): add tests for streaming 2025-06-08 20:30:33 +00:00
Elian Doran
04f4933e97 fix(share): fonts not loading 2025-06-08 23:23:21 +03:00
Elian Doran
fa5cd150d9 fix(share): loading of tree and table of contents 2025-06-08 23:22:59 +03:00
Elian Doran
9469433143 chore(share): basic integration of CSS 2025-06-08 23:12:09 +03:00
Elian Doran
881a015f68 chore(share): integrate root template 2025-06-08 22:57:24 +03:00
Elian Doran
8e27d877a1 chore(share): install packages 2025-06-08 22:16:21 +03:00
Elian Doran
eea3163f51 Add 'packages/share-theme/' from commit '2cdd2a0a543f0bced8284ca55bc94efadbc7c91f'
git-subtree-dir: packages/share-theme
git-subtree-mainline: d8f0709bce
git-subtree-split: 2cdd2a0a54
2025-06-08 22:06:45 +03:00
perf3ct
c1bcb73337 feat(llm): also improve the llm streaming service, to make it cooperate with unit tests better 2025-06-08 18:40:20 +00:00
Elian Doran
d8f0709bce fix(editor): white screen if CKEditor crashes a second time 2025-06-08 21:35:01 +03:00
perf3ct
40cad2e886 fix(unit): I believe it should pass now? 2025-06-08 18:20:30 +00:00
perf3ct
a8faf5d699 fix(unit): still working on getting the LLM unit tests to pass... 2025-06-08 18:13:27 +00:00
Elian Doran
d7f26fa27c fix(editor): data loss if updating while editor crashed 2025-06-08 20:39:31 +03:00
Elian Doran
b379f89a7a chore(client): fix logging errors with circular objects 2025-06-08 20:35:38 +03:00
Elian Doran
10abb50971 chore(text): remove duplicate error log 2025-06-08 20:31:09 +03:00
perf3ct
e011c56715 fix(unit): no more type errors hopefully 2025-06-08 16:33:26 +00:00
Jon Fuller
d7abd3a8ed Merge branch 'develop' into feat/llm-unit-tests 2025-06-08 08:49:08 -07:00
SiriusXT
be447b4139 fix(move_block): keep moved blocks in view 2025-06-08 16:49:02 +08:00
SiriusXT
48613da57f fix(move_block): move multiple lines up/down 2025-06-08 16:30:10 +08:00
Elian Doran
ef111c36c0 Merge pull request #2219 from hulmgulm/nginx
Doc: update Nginx reverse proxy documentation
2025-06-08 11:02:07 +03:00
hulmgulm
765601bb75 Merge branch 'TriliumNext:develop' into nginx 2025-06-08 09:52:18 +02:00
Elian Doran
e87789d92b Merge pull request #2208 from TriliumNext/fix/llm-chat-save-bug
fix(llm): save to the same note that the chat request was sent from
2025-06-08 10:45:58 +03:00
Elian Doran
a95acd5529 Merge pull request #2210 from TriliumNext/renovate/compression-1.x
chore(deps): update dependency @types/compression to v1.8.1
2025-06-08 10:45:39 +03:00
Elian Doran
34bc4c9c8c Merge pull request #2218 from hulmgulm/develop
Doc: Updated theme reference
2025-06-08 10:43:50 +03:00
renovate[bot]
e3d0a73459 chore(deps): update dependency @types/compression to v1.8.1 2025-06-08 07:43:23 +00:00
Elian Doran
93b5fc2236 Merge pull request #2206 from TriliumNext/fix/llm-embeddings-removal-increment-version
fix(server): increment SYNC_VERSION and APP_DB_VERSION for LLM embedd…
2025-06-08 10:42:59 +03:00
Elian Doran
8c25b59bed Merge pull request #2217 from TriliumNext/fix/llm-add-warning2
feat(llm): add warning to the top of LLM Chat Notes and LLM settings that the feature is experimental
2025-06-08 10:40:22 +03:00
Elian Doran
fb8f3d1d29 Merge pull request #2212 from TriliumNext/renovate/express-5.x-lockfile
chore(deps): update dependency @types/express to v5.0.3
2025-06-08 10:38:53 +03:00
renovate[bot]
3f1007e904 chore(deps): update dependency @types/express to v5.0.3 2025-06-08 07:36:36 +00:00
Elian Doran
916e855ed0 Merge pull request #2215 from TriliumNext/renovate/multer-1.x
chore(deps): update dependency @types/multer to v1.4.13
2025-06-08 10:33:11 +03:00
renovate[bot]
5b154d2544 chore(deps): update dependency @types/multer to v1.4.13 2025-06-08 07:31:57 +00:00
Elian Doran
6734dae956 chore(server): add serve-nodir 2025-06-08 10:29:20 +03:00
Elian Doran
6b844063b6 Merge pull request #2216 from TriliumNext/renovate/serve-static-1.x
chore(deps): update dependency @types/serve-static to v1.15.8
2025-06-08 10:28:11 +03:00
Elian Doran
5313ce7843 Merge pull request #2211 from TriliumNext/renovate/cookie-parser-1.x
chore(deps): update dependency @types/cookie-parser to v1.4.9
2025-06-08 10:27:33 +03:00
Elian Doran
34fa770748 Merge pull request #2213 from TriliumNext/renovate/express-session-1.x
chore(deps): update dependency @types/express-session to v1.18.2
2025-06-08 10:26:58 +03:00
Elian Doran
ee1e0da156 Merge pull request #2214 from TriliumNext/renovate/mime-types-3.x
chore(deps): update dependency @types/mime-types to v3.0.1
2025-06-08 10:26:27 +03:00
hulmgulm
48a310e0aa Update Nginx.md 2025-06-08 08:34:27 +02:00
hulmgulm
7ef610b702 Update Reference.md 2025-06-08 08:14:39 +02:00
perf3ct
29d9c9834a feat(llm): add warning to the top of LLM Chat Notes and LLM settings that the feature is experimental 2025-06-08 04:48:19 +00:00
perf3ct
055b34fb46 feat(llm): fix last unit tests 2025-06-08 04:33:33 +00:00
renovate[bot]
858801502d chore(deps): update dependency @types/serve-static to v1.15.8 2025-06-08 01:58:09 +00:00
renovate[bot]
f83d33754e chore(deps): update dependency @types/mime-types to v3.0.1 2025-06-08 01:56:48 +00:00
renovate[bot]
a3c655ffc5 chore(deps): update dependency @types/express-session to v1.18.2 2025-06-08 01:55:20 +00:00
renovate[bot]
cf9f59304c chore(deps): update dependency @types/cookie-parser to v1.4.9 2025-06-08 01:53:26 +00:00
perf3ct
cc089c245e fix(llm): save the chat to a specific note, not the currently active note 2025-06-08 00:02:40 +00:00
perf3ct
c6062f453a fix(llm): changing providers works now 2025-06-07 23:57:35 +00:00
perf3ct
414781936b fix(llm): always fetch the user's selected model 2025-06-07 23:36:53 +00:00
perf3ct
0ce5307c0b fix(llm): well this has been using the wrong value the whole time 2025-06-07 23:16:44 +00:00
perf3ct
313c624871 feat(e2e): more tests pass! 2025-06-07 23:15:30 +00:00
perf3ct
d8bbece02a feat(e2e): llm tests mostly pass 2025-06-07 23:07:54 +00:00
perf3ct
bb483558b0 feat(llm): add e2e tests for llm 2025-06-07 22:41:55 +00:00
perf3ct
b6b88dff86 fix(server): increment SYNC_VERSION and APP_DB_VERSION for LLM embeddings removal 2025-06-07 21:13:02 +00:00
perf3ct
7f9ad04b57 feat(llm): create unit tests for LLM services 2025-06-07 21:03:54 +00:00
perf3ct
c2eed44150 fix(llm): make sure that we're referencing the correct Note ID when saving 2025-06-07 20:15:11 +00:00
Elian Doran
ebb1654d0e Merge pull request #2205 from TriliumNext/feat/llm-remove-embeddings
Remove Embeddings from LLM feature
2025-06-07 22:54:05 +03:00
perf3ct
ff37050470 fix(llm): delete provider_manager for embeddings too 2025-06-07 19:33:19 +00:00
perf3ct
b0d804da08 fix(llm): remove the vectorSearch stage from the pipeline 2025-06-07 18:57:08 +00:00
perf3ct
4550c12c6e feat(llm): remove everything to do with embeddings, part 3 2025-06-07 18:30:46 +00:00
perf3ct
44a2e7df21 feat(llm): remove everything to do with embeddings, part 2 2025-06-07 18:20:06 +00:00
Elian Doran
bed3c61142 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-06-07 21:15:38 +03:00
perf3ct
44a45780b7 feat(llm): remove everything to do with embeddings 2025-06-07 18:11:12 +00:00
Elian Doran
cedf6cc631 Merge pull request #1888 from TriliumNext/renovate/express-5.x
fix(deps): update dependency express to v5
2025-06-07 20:17:10 +03:00
Elian Doran
7281233012 chore(build): enable source maps 2025-06-07 20:12:13 +03:00
Elian Doran
4def18e882 fix(desktop): query parameters not working 2025-06-07 18:46:29 +03:00
Elian Doran
03024ef7a9 chore(desktop): bypass query error 2025-06-07 15:59:17 +03:00
Elian Doran
9907f7f60f fix(desktop): CLS failing due to lack of listeners 2025-06-07 15:45:56 +03:00
Elian Doran
ebeabe2b54 fix(desktop): adapt request mocking to express 5 2025-06-07 14:58:07 +03:00
Panagiotis Papadopoulos
0bc91349f6 refactor(routes/custom): update path "/custom/*path" for express v5 2025-06-07 14:21:37 +03:00
Panagiotis Papadopoulos
23297c9860 fix(routes): remove unused wildcard in apiRoute "/api/options/:name/:value*"
the updateOption function that handles the req.param is just destructuring `const { name, value } = req.params;` and does nothing else with the path or any params.
The remaining parts of the wildcard (which can be accessed via req.param[0]) are just ignored here.

even with express v4, this would *always* just take and process the very first part of the path, in the exact wildcard's place, e.g.

`/api/options/locale/de` and
`/api/options/locale/de/test/whatever`
would *both* end up destructuring "value" from req.param as "de" (because it is in the exact place of the 'value' wildcard)

in express v5 the wildcard behaviour changes -> here req.param.value would return an array with the paths split into separate string.

but since the code previously regarded only the first part of the path -> we can just get rid of the wildcard and use a named route param

the only thing to keep in mind: if a request with more than one "value" is received, (e.g. `/api/options/locale/de/test/whatever`) -> since we don't have the wildcard anymore  -> this will turn to a 404.
IMHO that is actually desirable here though
2025-06-07 14:21:35 +03:00
renovate[bot]
086bd10f84 fix(deps): update dependency express to v5 2025-06-07 11:15:22 +00:00
Elian Doran
70cdc100d9 Merge pull request #2198 from TriliumNext/oidc
Support custom oidc server
2025-06-07 14:13:14 +03:00
Elian Doran
17c2ae1177 Merge pull request #2177 from TriliumNext/tab-row-scroll
fix(tab-row): ensure similar behavior between horizontal/vertical scrolling
2025-06-07 14:05:03 +03:00
Elian Doran
497a851ebe Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-06-07 13:52:00 +03:00
Elian Doran
9a48547232 Merge pull request #2194 from TriliumNext/renovate/eslint-config-ckeditor5-11.x-lockfile
chore(deps): update dependency eslint-config-ckeditor5 to v11
2025-06-07 13:42:36 +03:00
Elian Doran
97dfd454b8 Merge pull request #2195 from TriliumNext/renovate/stylelint-config-ckeditor5-11.x-lockfile
chore(deps): update dependency stylelint-config-ckeditor5 to v11
2025-06-07 13:42:14 +03:00
Elian Doran
2d8317887d chore(release): fix setting as prerelease 2025-06-07 13:35:29 +03:00
Elian Doran
5dc4f0eae6 docs(readme): add badge to relative CI for client 2025-06-07 13:30:21 +03:00
JYC333
8849d482b0 Merge pull request #2193 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.2.2
2025-06-07 12:15:23 +02:00
Jin
bffb47645c fix: 🐛 fix SSO icon loading 2025-06-07 12:10:41 +02:00
Jin
4cafd83c25 feat: 🎸 set SSO login page ui 2025-06-07 12:10:41 +02:00
Jin
db3bf4c12c feat: 🎸 set SSO login logic 2025-06-07 12:10:41 +02:00
Jin
fa44a5343b feat: 🎸 support custon oidc server 2025-06-07 12:10:41 +02:00
renovate[bot]
e5cc58b4e2 chore(deps): update dependency stylelint-config-ckeditor5 to v11 2025-06-07 10:06:51 +00:00
renovate[bot]
dbaee4d29b chore(deps): update dependency eslint-config-ckeditor5 to v11 2025-06-07 10:06:01 +00:00
renovate[bot]
a6d1fd3d9f chore(deps): update vitest monorepo to v3.2.2 2025-06-07 10:05:13 +00:00
Elian Doran
c8b3cdf01b feat(ci): introduce RelativeCI for the client 2025-06-07 13:02:37 +03:00
Elian Doran
5a53fbbb01 chore(ci): get rid of size reporters 2025-06-07 12:52:33 +03:00
Elian Doran
408dcf7713 chore(release): prepare for v0.94.1 2025-06-07 12:46:18 +03:00
Elian Doran
7cbff47078 docs(release): mention rebranding process 2025-06-07 12:45:07 +03:00
Elian Doran
d20386f8da chore(release): add changelog 2025-06-07 12:38:06 +03:00
Elian Doran
4fd99e1728 docs(user): describe session management 2025-06-07 12:38:06 +03:00
Elian Doran
af698550fd Merge pull request #2197 from TriliumNext/ck_patch
fix(ckeditor5): scroll to selection after undo/redo to keep cursor in view
2025-06-07 12:15:02 +03:00
Elian Doran
e50f5ce139 Merge branch 'develop' into ck_patch 2025-06-07 12:11:23 +03:00
Elian Doran
7a04c8a7fd Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-06-07 12:04:16 +03:00
Elian Doran
68631150af chore(test): adjust timeout 2025-06-07 12:04:14 +03:00
SiriusXT
9dd7f75ec0 fix(ckeditor5): scroll to selection after undo/redo to keep cursor in view 2025-06-07 16:51:10 +08:00
SiriusXT
e70b0d47c9 chore: fix incorrect comment in date/time 2025-06-07 16:49:10 +08:00
Elian Doran
9ead5abc62 Merge pull request #2181 from TriliumNext/feat/llm-change-to-single-provider
LLM integration, part 4
2025-06-07 11:38:30 +03:00
Elian Doran
a7f4bcda8f fix(test): wrong assertion after changing expiration interval 2025-06-07 11:38:18 +03:00
Elian Doran
5c87bab5a7 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-06-07 11:28:32 +03:00
Elian Doran
68163f90d1 fix(server): keep session cookies up to to 24h (closes #2196) 2025-06-07 11:28:30 +03:00
Elian Doran
dc35ad9ace fix(server): type errors due to session management 2025-06-07 11:27:07 +03:00
Elian Doran
244a162e42 feat(server): renew session when "Remember me" is off 2025-06-07 11:12:36 +03:00
JYC333
27b54fd7a4 Merge pull request #2192 from TriliumNext/renovate/nx-monorepo
chore(deps): update nx monorepo to v21.1.3
2025-06-07 10:10:07 +02:00
Elian Doran
f8ded7b171 test(server): sessions are cleaned up 2025-06-07 10:47:02 +03:00
Elian Doran
3cf35f9e0c refactor(test): group login tests 2025-06-07 10:33:02 +03:00
Elian Doran
8516df8f9b test(server): ensure session expiry date is well set 2025-06-07 10:10:04 +03:00
Elian Doran
e003ec3b6f test(server): ensure session info exists 2025-06-07 10:03:53 +03:00
Elian Doran
2ceab66b98 refactor(server): augment session data instead of replacing it at request level 2025-06-07 09:55:19 +03:00
perf3ct
6fdd0d021c fix(llm): don't show embedding models in the chat section 2025-06-07 04:23:18 +00:00
perf3ct
4732d7784f fix(llm): add missing translations 2025-06-07 04:13:57 +00:00
renovate[bot]
3bb84ee676 chore(deps): update nx monorepo to v21.1.3 2025-06-07 02:05:12 +00:00
perf3ct
cb3844e627 fix(llm): fix duplicated text when streaming responses 2025-06-07 00:27:56 +00:00
perf3ct
6bc9b3c184 feat(llm): resolve sending double headers in responses, and not being able to send requests to ollama 2025-06-07 00:02:26 +00:00
Elian Doran
941d0d45f8 feat(client): render tooltips for bookmarks 2025-06-07 00:03:30 +03:00
Elian Doran
6e67832416 fix(client): clicking on note list not working due to anchor management 2025-06-06 23:59:43 +03:00
Elian Doran
73cf828bc9 feat(client): one-click navigation to bookmarks (closes #2187) 2025-06-06 23:50:42 +03:00
Elian Doran
7007feabd8 chore(client): text notes not rendering in dev mode 2025-06-06 23:47:35 +03:00
perf3ct
20ec294774 feat(llm): still work on decomplicating provider creation 2025-06-06 20:30:24 +00:00
Elian Doran
acaaf1f1f4 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-06-06 23:26:34 +03:00
Elian Doran
c18451a378 fix(server): no longer working subdir due to assets (fixes #2098) 2025-06-06 23:26:30 +03:00
perf3ct
8f33f37de3 feat(llm): for sure overcomplicate what should be a very simple thing 2025-06-06 20:11:33 +00:00
perf3ct
85cfc8fbd4 feat(llm): have OpenAI provider not require API keys (for endpoints like LM Studio) 2025-06-06 19:22:39 +00:00
Elian Doran
4489f6c437 Merge pull request #1918 from TriliumNext/feat/note-edit-readonly-fix2
Store initial "automatic read-only" decision, so that actively edited Note doesn't transition to read-only
2025-06-06 19:42:15 +03:00
Elian Doran
a2a509d45c refactor(client): rename readOnlyDecision 2025-06-06 19:29:06 +03:00
Elian Doran
091cd7a18a fix(server): totp asked even if no authentication is enabled 2025-06-06 16:17:21 +03:00
SiriusXT
17885f6091 fix(tab-row): Remove smooth scrolling 2025-06-06 19:09:25 +08:00
SiriusXT
537ad1c1e5 fix(tab-row): Fix extra +1 when extraWidthRemaining is a decimal 2025-06-06 15:55:00 +08:00
Elian Doran
63a6f00a47 chore(server): add logs to debug missing session 2025-06-06 09:27:51 +03:00
Elian Doran
1a54a17b0d Merge pull request #2182 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.15.30
2025-06-06 09:24:25 +03:00
renovate[bot]
4eaeeaaaa1 chore(deps): update dependency @types/node to v22.15.30 2025-06-06 06:14:50 +00:00
Elian Doran
255c69b867 style(client): fix dropdown selection color 2025-06-06 09:13:43 +03:00
Elian Doran
f99a59359d Merge pull request #2183 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.1.1
2025-06-06 09:11:35 +03:00
Elian Doran
f25c6ec358 Merge pull request #2184 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.2.2
2025-06-06 09:11:13 +03:00
renovate[bot]
0b15dd7ad2 chore(deps): update vitest monorepo to v3.2.2 2025-06-06 01:31:34 +00:00
renovate[bot]
bc09c6f217 chore(deps): update dependency openai to v5.1.1 2025-06-06 01:30:50 +00:00
SiriusXT
a38c091d73 Merge branch 'develop' into tab-row-scroll 2025-06-06 09:09:56 +08:00
SiriusXT
f723ca65d1 fix(tab-row): Reduce animation frames 2025-06-06 09:08:17 +08:00
SiriusXT
6d416cfe65 fix(tab-row): Reduce animation frames 2025-06-06 09:06:14 +08:00
perf3ct
c26b74495c feat(llm): remove LLM deprecated functions 2025-06-05 22:34:20 +00:00
perf3ct
3a4bb47cc1 feat(llm): embeddings work and are created when launching for the first ever time 2025-06-05 21:03:15 +00:00
JYC333
0af1c8b3be Merge pull request #2083 from TriliumNext/date/time
feat: Add configurable date/time format for Alt+T shortcut
2025-06-05 21:48:14 +02:00
JYC333
96431fc581 Merge branch 'develop' into date/time 2025-06-05 21:29:39 +02:00
perf3ct
bb8a374ab8 feat(llm): transition from initializing LLM providers, to creating them on demand 2025-06-05 19:27:45 +00:00
perf3ct
c1b10d70b8 feat(llm): also add functions to clear/unregister embedding providers 2025-06-05 18:59:32 +00:00
perf3ct
49e123f399 feat(llm): create endpoints for starting/stopping embeddings 2025-06-05 18:47:25 +00:00
perf3ct
a084805762 Merge branch 'develop' into feat/llm-change-to-single-provider 2025-06-05 18:26:40 +00:00
Elian Doran
e56e3595a8 fix(client): context menu dismissing on mobile (closes #2128) 2025-06-05 19:14:50 +03:00
Elian Doran
f527b13973 Merge pull request #2179 from TriliumNext/demo
docs: ✏️ Fix Journal demo relation name
2025-06-05 18:22:51 +03:00
SiriusXT
ea1bce4e7b fix(tab-row): ensure similar behavior between horizontal/vertical scrolling 2025-06-05 23:19:00 +08:00
Jin
4770bdeb90 docs: ✏️ Fix Journal demo relation name 2025-06-05 17:16:37 +02:00
Elian Doran
818b7afeff feat(docker): try building linux/arm/v8
This is conceptually the same as as linux/arm64 but it is needed on some providers.
2025-06-05 18:13:59 +03:00
SiriusXT
6508ef4fce fix(tab-row): Avoid this.newTabOuterWidth being a decimal in Electron 2025-06-05 20:27:58 +08:00
SiriusXT
7b1c6807ba fix(tab-row): Remove shift+wheel tab switching 2025-06-05 20:20:29 +08:00
SiriusXT
be8ee350cb fix(tab-row): ensure similar behavior between horizontal/vertical scrolling 2025-06-05 19:54:37 +08:00
Elian Doran
b39119119b fix(share): custom share templates no longer working 2025-06-05 14:32:49 +03:00
Elian Doran
79dae44dbc feat(share): improve error logging for missing templates 2025-06-05 14:32:49 +03:00
Elian Doran
b81be8f8d7 feat(share): pass t for translations 2025-06-05 14:32:49 +03:00
SiriusXT
5d017f4524 Merge branch 'develop' into date/time 2025-06-05 18:57:19 +08:00
SiriusXT
99d26b794d Merge branch 'develop' into tab-row-scroll 2025-06-05 18:27:05 +08:00
Elian Doran
ccff7baf95 Merge pull request #2145 from TriliumNext/renovate/electron-36.x
chore(deps): update dependency electron to v36.4.0
2025-06-05 12:57:56 +03:00
Elian Doran
1911323033 Merge pull request #2146 from TriliumNext/renovate/ckeditor-monorepo
fix(deps): update ckeditor monorepo to v45.2.0
2025-06-05 12:56:57 +03:00
SiriusXT
b721bb4cfc fix(tab-row): ensure similar behavior between horizontal/vertical scrolling 2025-06-05 17:54:34 +08:00
renovate[bot]
f3d03be9a5 fix(deps): update ckeditor monorepo to v45.2.0 2025-06-05 09:24:58 +00:00
renovate[bot]
c06ca0dbf8 chore(deps): update dependency electron to v36.4.0 2025-06-05 09:24:16 +00:00
Elian Doran
14269fdfa5 Merge pull request #2143 from TriliumNext/renovate/eslint-stylistic-monorepo
chore(deps): update dependency @stylistic/eslint-plugin to v4.4.1
2025-06-05 12:21:58 +03:00
renovate[bot]
3fba17d73f chore(deps): update dependency @stylistic/eslint-plugin to v4.4.1 2025-06-05 09:18:08 +00:00
Elian Doran
9d477fcc8d Merge pull request #2171 from TriliumNext/renovate/ckeditor-ckeditor5-package-tools-4.x
chore(deps): update dependency @ckeditor/ckeditor5-package-tools to v4
2025-06-05 12:15:08 +03:00
Elian Doran
ca19268bd1 Merge pull request #2144 from TriliumNext/renovate/react-monorepo
chore(deps): update dependency @types/react-dom to v19.1.6
2025-06-05 12:13:56 +03:00
Elian Doran
a36178be03 Merge pull request #2174 from TriliumNext/renovate/anthropic-ai-sdk-0.x
chore(deps): update dependency @anthropic-ai/sdk to v0.53.0
2025-06-05 12:13:29 +03:00
renovate[bot]
5dc48a776c chore(deps): update dependency @types/react-dom to v19.1.6 2025-06-05 09:13:08 +00:00
Elian Doran
c787c870f4 Merge pull request #2175 from TriliumNext/renovate/codemirror-themes
fix(deps): update codemirror themes to v6.2.0
2025-06-05 12:10:58 +03:00
renovate[bot]
1eb53f448a fix(deps): update codemirror themes to v6.2.0 2025-06-05 08:45:23 +00:00
renovate[bot]
839369e253 chore(deps): update dependency @ckeditor/ckeditor5-package-tools to v4 2025-06-05 08:38:18 +00:00
renovate[bot]
446a38e861 chore(deps): update dependency @anthropic-ai/sdk to v0.53.0 2025-06-05 08:36:11 +00:00
Elian Doran
9e8a388592 chore(renovate): group codemirror themes into single PR 2025-06-05 11:32:59 +03:00
Elian Doran
8349204982 chore(docs): mention upcoming changes to branding 2025-06-05 09:03:57 +03:00
Elian Doran
0c8ea23345 Revert "chore: 🤖 Update docs"
This reverts commit 6caba39621.
2025-06-05 08:52:38 +03:00
perf3ct
5db514e245 fix(llm): fix the buggy embedding selection dropdown 2025-06-04 23:02:10 +00:00
perf3ct
5bc2c3ac18 feat(llm): also have the embedding provider settings be changeable 2025-06-04 22:58:20 +00:00
perf3ct
63722a28a2 feat(llm): also add embeddings options for embedding creation 2025-06-04 22:30:16 +00:00
perf3ct
3dee462476 feat(llm): automatically fetch models when provider settings change 2025-06-04 21:32:42 +00:00
perf3ct
fe15a0378a fix(llm): have the model_selection_stage use the instance of the aiServiceManager 2025-06-04 20:23:06 +00:00
JYC333
c40e224727 Merge pull request #2136 from TriliumNext/dateNote
Calendar template docs update
2025-06-04 22:15:05 +02:00
perf3ct
a20e36f4ee feat(llm): change from using precedence list to using a sing specified provider for either chat and/or embeddings 2025-06-04 20:13:13 +00:00
Elian Doran
9bfadd7799 Merge branch 'develop' into dateNote 2025-06-04 22:54:10 +03:00
Elian Doran
4475568d19 fix(server): migration not working due to change in becca loader 2025-06-04 22:36:51 +03:00
Elian Doran
f9d8bf26c4 test(server): migrate integration database to latest 2025-06-04 21:51:46 +03:00
Elian Doran
86689896a1 test(server): don't do automatic backup if migrating database 2025-06-04 21:44:27 +03:00
Elian Doran
c538b54947 Merge branch 'develop' of github.com:TriliumNext/Notes into develop 2025-06-04 20:21:10 +03:00
Elian Doran
a334e82eb0 chore(ci): switch to 22.04 for compatibility reasons 2025-06-04 20:21:07 +03:00
Elian Doran
1818ae1f72 fix(desktop): blank screen when starting (closes #2103) 2025-06-04 19:55:04 +03:00
Jin
3339b36e61 docs: ✏️ Fix day note docs error 2025-06-04 17:01:00 +02:00
Elian Doran
5fc8100c5d fix(build): not all entity types taken into consideration 2025-06-04 15:48:38 +03:00
Jin
f3aa6adb65 docs: ✏️ Update day note and template docs 2025-06-04 11:14:42 +02:00
Jin
6caba39621 chore: 🤖 Update docs 2025-06-04 11:00:14 +02:00
SiriusXT
a88815cf6b fix(insert time): resolve merge conflicts 2025-06-04 16:53:36 +08:00
Jin
deacd7f340 docs: ✏️ Update day note docs 2025-06-04 10:52:19 +02:00
SiriusXT
8b8969f6e9 feat(insert time):fix: resolve merge conflicts 2025-06-04 16:50:36 +08:00
SiriusXT
3cdee1ac86 Merge branch 'develop' into date/time 2025-06-04 16:48:37 +08:00
Elian Doran
df7f0d4099 Merge pull request #2110 from TriliumNext/feat/llm-integration-part3
LLM Integration, part 3
2025-06-04 11:41:49 +03:00
Elian Doran
6563601667 Merge pull request #2123 from FliegendeWurst/shortcuts-i18n
feat(i18n): description for all keyboard shortcuts
2025-06-04 11:39:47 +03:00
Elian Doran
8445ece231 Merge pull request #2106 from TriliumNext/fix/llm-becca-sync
fix(llm): Fix Note Embeddings not being synced correctly and causing sync loops
2025-06-04 11:38:49 +03:00
Elian Doran
dfed0d5f5b Merge pull request #2092 from TriliumNext/feature/grafana-dashboard
feat(metrics): add documentation for using grafana dashboard
2025-06-04 11:35:55 +03:00
Elian Doran
2e1ced38e4 Merge pull request #2127 from TriliumNext/fix/llm-model-names
fix(llm): don't filter for specific words when pulling models for openai
2025-06-04 11:34:47 +03:00
Jin
48ad381a50 refactor: 💡 Add typing 2025-06-04 10:33:40 +02:00
Elian Doran
4cab710dfd Merge pull request #2101 from TriliumNext/patch-theme-2
fix(theme): theme is not enabled on the phone
2025-06-04 11:28:22 +03:00
Elian Doran
869ebc8844 Merge pull request #2129 from TriliumNext/renovate/happy-dom-monorepo
chore(deps): update dependency happy-dom to v17.6.3
2025-06-04 11:13:26 +03:00
Elian Doran
c5662cae46 Merge pull request #2100 from TriliumNext/patch-style
fix(theme): missing --selection-background-color in theme
2025-06-04 11:12:08 +03:00
Elian Doran
aa6ad0b619 Merge pull request #2117 from TriliumNext/external_links
fix(link): Allow external links containing # to open
2025-06-04 11:10:08 +03:00
Elian Doran
555c596a0f Merge branch 'develop' into shortcuts-i18n 2025-06-04 11:04:41 +03:00
Elian Doran
5b9b51d905 Merge branch 'develop' into renovate/happy-dom-monorepo 2025-06-04 11:00:36 +03:00
Elian Doran
d61fe70f4e Merge branch 'develop' of github.com:TriliumNext/Notes into develop 2025-06-04 10:53:09 +03:00
Elian Doran
6405b6e7e4 chore(server): remove configuration for reporters 2025-06-04 10:52:52 +03:00
Jin
f650cca652 refactor: 💡 replace substr with substring 2025-06-04 09:47:05 +02:00
renovate[bot]
62161f6a5d chore(deps): update dependency happy-dom to v17.6.3 2025-06-04 07:37:20 +00:00
Elian Doran
ce570bf080 Merge branch 'develop' into feature/grafana-dashboard 2025-06-04 10:36:56 +03:00
Elian Doran
f4358f3dc1 Merge branch 'develop' into patch-style 2025-06-04 10:36:49 +03:00
Elian Doran
3ccc16ca19 Merge pull request #2130 from TriliumNext/renovate/multer-2.x
chore(deps): update dependency multer to v2.0.1
2025-06-04 10:33:37 +03:00
Elian Doran
75135b390b Merge pull request #2131 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.2.1
2025-06-04 10:33:08 +03:00
Elian Doran
853ad9fe25 Merge pull request #2132 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.1.0
2025-06-04 10:32:38 +03:00
Elian Doran
f781ded95e Merge pull request #2107 from FliegendeWurst/flake-incremental
refactor(flake): use pnpm2nix, add server package
2025-06-04 10:06:29 +03:00
renovate[bot]
93ea1e7cdb chore(deps): update dependency openai to v5.1.0 2025-06-04 07:05:07 +00:00
renovate[bot]
fd4bc922c1 chore(deps): update vitest monorepo to v3.2.1 2025-06-04 07:04:24 +00:00
renovate[bot]
e24b467801 chore(deps): update dependency multer to v2.0.1 2025-06-04 07:03:31 +00:00
SiriusXT
6a80bda335 vitest(link): add Vitest test cases for parseNavigationStateFromUrl 2025-06-04 14:58:11 +08:00
SiriusXT
69d1c1519f fix(link): Allow external links containing # to open 2025-06-04 14:57:13 +08:00
Elian Doran
dbeb4e1c87 fix(share): missing CK editor stylesheet (closes #2124) 2025-06-04 09:22:07 +03:00
Elian Doran
380cb62d2b chore(editor): relocate bookmark icon in floating toolbar 2025-06-04 08:54:18 +03:00
SiriusXT
0b3ebae59c fix(insert time): Remove unnecessary async 2025-06-04 09:07:15 +08:00
perf3ct
3050424d53 fix(llm): don't filter for specific words when pulling models for openai 2025-06-03 20:47:16 +00:00
Elian Doran
307af229ae fix(test): one more flaky test 2025-06-03 21:25:00 +03:00
Elian Doran
4a4c34e966 fix(test): some etapi tests failing 2025-06-03 20:16:39 +03:00
FliegendeWurst
12d018fdfc feat(i18n): description for all keyboard shortcuts 2025-06-03 19:10:12 +02:00
Elian Doran
cecbe5862c fix(etapi): some endpoints failing due to async (closes #2105) 2025-06-03 19:46:38 +03:00
Elian Doran
ff1a8d2280 test(etapi): port get-date-notes 2025-06-03 19:32:17 +03:00
Elian Doran
931f9e572a test(etapi): deduplicate cloning in delete-entities 2025-06-03 19:24:23 +03:00
Elian Doran
cd310119bc test(etapi): delete-entities not running properly due to missing await 2025-06-03 19:23:11 +03:00
Elian Doran
594e264eea test(etapi): port delete-note-with-all-branches 2025-06-03 19:21:02 +03:00
Elian Doran
9d1717ca9f test(etapi): port delete-cloned-branch 2025-06-03 19:16:59 +03:00
Elian Doran
94fd53db05 test(etapi): port delete-attribute 2025-06-03 19:11:27 +03:00
Elian Doran
fe19e05715 test(etapi): port delete-attachment 2025-06-03 19:08:50 +03:00
Elian Doran
3ec29b2e21 test(etapi): port get-inherited-attribute-cloned 2025-06-03 18:38:15 +03:00
FliegendeWurst
7c47cf420c fix(flake): remove pnpm version override 2025-06-03 17:37:57 +02:00
Elian Doran
9d24ed902c test(etapi): port get-inherited-attribute 2025-06-03 18:26:13 +03:00
FliegendeWurst
267facbaa0 fix(flake): remove not needed build artifacts 2025-06-03 17:15:00 +02:00
FliegendeWurst
d86337a993 refactor(flake): use pnpm2nix, add server package 2025-06-03 17:15:00 +02:00
Elian Doran
8b2d951ad1 test(etapi): port patch-attribute 2025-06-03 18:14:49 +03:00
JYC333
cf24308cb0 Merge pull request #2114 from TriliumNext/renovate/happy-dom-monorepo
chore(deps): update dependency happy-dom to v17.6.1
2025-06-03 16:56:59 +02:00
JYC333
815f087bcb Merge pull request #2115 from TriliumNext/renovate/vitest-monorepo
chore(deps): update dependency @vitest/coverage-v8 to v3.2.0
2025-06-03 16:51:23 +02:00
renovate[bot]
28b2454761 chore(deps): update dependency happy-dom to v17.6.1 2025-06-03 14:51:09 +00:00
JYC333
2e16a91cb4 Merge pull request #2113 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update typescript-eslint monorepo to v8.33.1
2025-06-03 16:48:51 +02:00
JYC333
9966413402 Merge pull request #2111 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5.0.2
2025-06-03 16:48:11 +02:00
Jin
ee478bf2d1 Remove packageManager in apps/desktop 2025-06-03 16:45:29 +02:00
Elian Doran
ee4f9b265e test(etapi): port patch branch 2025-06-03 12:07:44 +03:00
Elian Doran
cfe2bd135b test(etapi): port patch attachment 2025-06-03 12:07:44 +03:00
Elian Doran
2dd2adefae test(etapi): port import zip 2025-06-03 12:07:44 +03:00
Elian Doran
3dfe2ce066 test(etapi): port export note subtree 2025-06-03 12:07:44 +03:00
Elian Doran
94cb18589a test(etapi): port patch note 2025-06-03 12:07:44 +03:00
Elian Doran
842c8a5028 test(etapi): port post revision 2025-06-03 12:07:44 +03:00
Elian Doran
bef121239c test(etapi): port metrics 2025-06-03 12:07:44 +03:00
Elian Doran
dddbb9d4d1 test(etapi): port attachment content 2025-06-03 12:07:44 +03:00
Elian Doran
d75e86789d test(etapi): port note content 2025-06-03 12:07:44 +03:00
Jin
5b051db3eb update pnpm 2025-06-03 09:57:49 +02:00
SiriusXT
a5ba1b0489 fix(link): Allow external links containing # to navigate 2025-06-03 14:27:32 +08:00
perf3ct
b76166b0d5 fix(llm): always fetch the embedding model 2025-06-03 05:13:32 +00:00
perf3ct
336cd1fbda fix(llm): storing >1 message in a chat note works
fix(llm): storing >1 message in a chat note works
2025-06-03 03:15:17 +00:00
perf3ct
d4d55b20a8 fix(llm): get rid of a lot of log.info() statements that were spammy 2025-06-03 03:00:15 +00:00
Jon Fuller
36a1316612 Merge branch 'develop' into patch-style 2025-06-02 19:18:53 -07:00
renovate[bot]
7036616a51 chore(deps): update vitest monorepo to v3.2.0 2025-06-03 01:04:13 +00:00
renovate[bot]
6a69ce65d7 chore(deps): update typescript-eslint monorepo to v8.33.1 2025-06-03 01:02:38 +00:00
renovate[bot]
be3b72d6b0 chore(deps): update dependency openai to v5.0.2 2025-06-03 00:58:57 +00:00
perf3ct
d2ba270fdf fix(llm): sending messages no longer throws an error at first 2025-06-03 00:18:45 +00:00
perf3ct
ab3758c9b3 refactor(llm): resolve issue with headers being sent after request was sent 2025-06-02 23:54:38 +00:00
perf3ct
e7e04b7ccd refactor(llm): streamline chat response handling by simplifying content accumulation and removing unnecessary thinking content processing 2025-06-02 23:25:15 +00:00
perf3ct
aad92b57c7 fix(llm): prevent sent message duplication 2025-06-02 22:47:30 +00:00
perf3ct
0d305cd22c refactor(llm): optimize chat UI updates by checking for new content and preserving scroll position 2025-06-02 22:34:10 +00:00
perf3ct
7b498cf384 refactor(llm): update chat saving logic to prevent race conditions between client and server 2025-06-02 22:30:59 +00:00
perf3ct
ed64a5b4f7 refactor(llm): simplify chat handling by removing session store and directly integrating chat storage service 2025-06-02 22:09:59 +00:00
perf3ct
d8d5318ace refactor(llm): remove deprecated validateEmbeddingProviders method and update session handling in chat services 2025-06-02 21:55:52 +00:00
Jon Fuller
4aa936bd2b Merge branch 'develop' into fix/llm-becca-sync 2025-06-02 14:52:03 -07:00
perf3ct
3a55735cd5 refactor(llm): implement new configuration methods for provider order and validation, enhancing error handling and deprecating legacy functions 2025-06-02 21:49:35 +00:00
perf3ct
5a5a69ebb8 refactor(llm): streamline model selection by utilizing the new configuration system and enhance error handling 2025-06-02 21:44:43 +00:00
perf3ct
ce7c4a31a1 refactor(llm): enhance configuration handling to avoid default assumptions and improve error handling 2025-06-02 21:43:36 +00:00
perf3ct
45175b6af3 refactor(llm): integrate new configuration system for provider management and model selection 2025-06-02 21:36:19 +00:00
perf3ct
00ce765e96 Merge branch 'develop' into feat/llm-integration-part3 2025-06-02 20:24:18 +00:00
perf3ct
934efab533 refactor(llm): update handling of note embeddings and clean up LoadResults class 2025-06-02 19:10:47 +00:00
perf3ct
b0d60f8004 refactor(llm): update NoteEmbeddingRow structure and add handling in LoadResults class 2025-06-02 19:01:34 +00:00
Elian Doran
4ed30e0624 test(etapi): port basic-auth 2025-06-02 21:43:40 +03:00
Elian Doran
26fcc4fb24 feat(flake): support darwin 2025-06-02 21:25:25 +03:00
Elian Doran
95641a3b6d test(etapi): port search 2025-06-02 21:16:57 +03:00
Elian Doran
4e81be8c76 test(etapi): port other 2025-06-02 20:59:25 +03:00
Elian Doran
887a7f900c test(etapi): port create-entities 2025-06-02 20:36:53 +03:00
Elian Doran
6121fb0ad6 test(etapi): port create-backup 2025-06-02 19:30:06 +03:00
Elian Doran
9e6d78b625 test(etapi): port no-token 2025-06-02 19:26:36 +03:00
Elian Doran
f9f3f1983f test(etapi): port basic-auth 2025-06-02 19:16:48 +03:00
Elian Doran
b88af5e4b3 test(etapi): port api-metrics 2025-06-02 19:02:01 +03:00
Elian Doran
053ff0568d test(etapi): port app-info 2025-06-02 18:51:10 +03:00
perf3ct
cc0795f812 fix(llm): also add note_embeddings to froca and consistency tests 2025-06-02 15:49:45 +00:00
perf3ct
f3a21cda98 fix(llm): add the noteEmbedding object to all things becca to make it happy 2025-06-02 15:26:32 +00:00
perf3ct
dcab4caee3 feat(llm): redo chat storage, part 3 2025-06-02 15:12:08 +00:00
Elian Doran
d9249e3760 fix(server): webclipper not working due to import issue 2025-06-02 16:34:41 +03:00
Elian Doran
1af20bdb73 fix(vite): tests not runnable 2025-06-02 16:25:19 +03:00
Elian Doran
d7c6c8f5fd feat(geomap): the line of GPX traces now respects the #color attribute 2025-06-02 15:53:19 +03:00
SiriusXT
78626e67d2 fix(theme): When using next as the base for custom themes, the next theme is not enabled on the phone 2025-06-02 16:13:17 +08:00
Elian Doran
9ba49bdc5f Add 'apps/web-clipper/' from commit '786d249a6effe0262859d05e6cb1737e5fc8bdd8'
git-subtree-dir: apps/web-clipper
git-subtree-mainline: b0e5190718
git-subtree-split: 786d249a6e
2025-06-02 10:26:57 +03:00
SiriusXT
f4f593c2ba fix(theme): missing --selection-background-color in theme 2025-06-02 15:24:52 +08:00
Elian Doran
70fb610e8d Merge branch 'develop' into feature/grafana-dashboard 2025-06-02 09:11:38 +03:00
Elian Doran
b0e5190718 Merge pull request #2081 from TriliumNext/renovate/openai-5.x
chore(deps): update dependency openai to v5
2025-06-02 09:10:17 +03:00
Elian Doran
3819885370 Merge pull request #2078 from TriliumNext/renovate/eslint-linter-browserify-9.x
fix(deps): update dependency eslint-linter-browserify to v9.28.0
2025-06-02 09:09:26 +03:00
Elian Doran
1b72cff234 Merge pull request #2079 from TriliumNext/renovate/eslint-monorepo
fix(deps): update eslint monorepo to v9.28.0
2025-06-02 09:09:04 +03:00
Elian Doran
f4c74b5c7c Merge pull request #2080 from TriliumNext/renovate/mime-types-3.x
chore(deps): update dependency @types/mime-types to v3
2025-06-02 09:08:42 +03:00
Elian Doran
089bf75ee2 Merge pull request #2075 from TriliumNext/feature/nix_flake
Nix flake
2025-06-02 08:58:22 +03:00
perf3ct
f6af617f6b feat(llm): redo chat storage, part 2 2025-06-02 02:38:21 +00:00
perf3ct
03b8eff8f6 feat(metrics): also add metrics feature to readme 2025-06-01 19:18:04 -07:00
perf3ct
86d5e416b5 feat(metrics): add documentation for using grafana dashboard 2025-06-01 19:01:15 -07:00
Jon Fuller
c28edb674c Merge branch 'develop' into feat/note-edit-readonly-fix2 2025-06-01 18:51:28 -07:00
perf3ct
35f78aede9 feat(llm): redo chat storage, part 1 2025-06-02 00:56:19 +00:00
SiriusXT
3c23f5d43f fix(insert time): Improve translation 2025-06-01 21:23:11 +08:00
SiriusXT
7918f8f230 fix(insert time): Improve translation 2025-06-01 20:35:55 +08:00
SiriusXT
b973fc7748 feat(insert time): change file name 2025-06-01 20:16:56 +08:00
SiriusXT
8e56faf9f0 fix(insert time): restore editor focus after inserting time 2025-06-01 19:37:49 +08:00
SiriusXT
cef362c123 feat(insert time): Add inserting time via UI 2025-06-01 19:15:59 +08:00
SiriusXT
22586bfcc0 feat(insert time): Add configurable date/time format for Alt+T shortcut 2025-06-01 16:18:54 +08:00
SiriusXT
029d6df5ec Merge branch 'develop' into date/time 2025-06-01 15:41:46 +08:00
SiriusXT
a8c4b11c9f feat(insert time): Add configurable date/time format for Alt+T shortcut 2025-06-01 15:27:50 +08:00
renovate[bot]
7c2bb38182 chore(deps): update dependency openai to v5 2025-06-01 01:52:10 +00:00
renovate[bot]
2fb2fcf88b chore(deps): update dependency @types/mime-types to v3 2025-06-01 01:51:27 +00:00
renovate[bot]
3c6acc0681 fix(deps): update eslint monorepo to v9.28.0 2025-06-01 01:50:41 +00:00
renovate[bot]
f56804168d fix(deps): update dependency eslint-linter-browserify to v9.28.0 2025-06-01 01:49:10 +00:00
FliegendeWurst
381498433f fix(flake): copy app icon 2025-05-31 19:15:46 +02:00
FliegendeWurst
628c52eb04 fix(flake): don't double wrap output 2025-05-31 19:14:30 +02:00
FliegendeWurst
89e2d46088 fix(flake): handle sass updates better 2025-05-31 19:14:07 +02:00
Elian Doran
0e4ad86fbd Merge pull request #2076 from FliegendeWurst/flake-1
feat(flake): desktop item, wrapped binary
2025-05-31 20:00:52 +03:00
FliegendeWurst
d506283e48 feat(flake): desktop item, wrapped binary 2025-05-31 18:56:32 +02:00
Elian Doran
fc4ec9a045 refactor(flake): deduplicate environment variables 2025-05-31 19:24:43 +03:00
Elian Doran
7b577e31c4 chore(flake): build native dependencies 2025-05-31 19:16:23 +03:00
Elian Doran
93a9911727 chore(flake): actually copy the dist 2025-05-31 18:32:23 +03:00
Elian Doran
e2737d2d55 chore(flake): get build to succeed 2025-05-31 18:23:18 +03:00
Elian Doran
c365cdb6c6 chore(flake): patch dart 2025-05-31 18:21:08 +03:00
Elian Doran
e82567a33d chore(flake): get the build to run 2025-05-31 18:15:22 +03:00
Elian Doran
bbe3bd7107 chore(flake): ignore /result from repo 2025-05-31 18:09:45 +03:00
Elian Doran
5cd087f660 chore(flake): get dependencies to install 2025-05-31 18:08:06 +03:00
Elian Doran
27dd097394 chore(flake): start off with empty project 2025-05-31 17:41:56 +03:00
SngAbc
e2ac581b14 Merge pull request #2072 from vanndoublen/feature/custom-datetime-format
Feature/custom datetime format
2025-05-31 21:50:26 +08:00
vanndoublen
f640c9212e Merge branch 'develop' into feature/custom-datetime-format 2025-05-20 19:55:45 +08:00
iamvann
d1f8e651f4 fix: address the review feedback 2025-05-20 19:46:50 +08:00
iamvann
2e3a8dfacb fix/commet 2025-05-18 03:36:39 +08:00
iamvann
4fbfcefa94 feat: Implement configurable date/time format for Alt+T shortcut 2025-05-18 03:14:18 +08:00
perf3ct
caccbf49c0 feat(client): try a different approach to handling read-only threshold
feat(client): revert note_details.ts
2025-05-13 22:02:59 +00:00
perf3ct
f07ad03343 feat(client): support temporarily disabling read-only note when read-only threshold is triggered
feat(client): stop the cursor from going to the top of the note when note transitions to read-only but we're still editing

feat(client): stop the cursor from going to the top of the note when note transitions to read-only but we're still editing, take 2
2025-05-13 22:02:59 +00:00
Zerebos
2cdd2a0a54 Fix several accessibility issues 2024-06-10 02:17:50 -04:00
Zerebos
01a8d0f864 Make reloading in light theme less janky 2024-06-08 15:21:59 -04:00
Zerebos
81e986db30 Fix multiple cases of overflow 2024-06-08 14:42:39 -04:00
Zerebos
3dc3f1579b Fix theme switcher showing wrong value 2024-06-08 14:32:06 -04:00
Zerebos
a7ed566645 Improve page performance and rendering
- Moves expanding the tree navigation to the template so the rendering is already done before page load
- Adds a way to explicitly set the logo size to prevent the page moving after it loads in
2024-06-08 14:31:40 -04:00
Zerebos
2485f20d5c Minor fixes for new options 2024-06-06 19:10:56 -04:00
Zerebos
465468a5a3 Add more customization in template 2024-06-06 12:21:38 -04:00
Zerebos
930632e6fe Template bugfixes 2024-06-06 11:14:43 -04:00
zadam
786d249a6e Merge pull request #61 from contributor/master
Capture location.hash into pageUrl attribute
2024-05-18 06:12:10 +02:00
contributor
750d2fe3bb capture location.hash with save-selection (example.com/long-article#part10) 2024-05-10 14:10:41 +03:00
zadam
3140ed2302 Update README.md 2024-03-27 06:40:30 +01:00
Zack Rauen
0016b43c09 Update to Trilium 0.62.3 2023-12-05 20:50:29 -05:00
Zack Rauen
5391521c08 Enable sliding categories and extract TODOs 2023-09-30 00:13:37 -04:00
Zack Rauen
e7a3f6d17e Generate ToC in templates 2023-09-29 01:43:39 -04:00
Zack Rauen
074ac0b725 Make swagger load from trilium directly 2023-09-28 20:59:17 -04:00
Zack Rauen
bde6d83625 Fix css priority for mobile 2023-09-28 20:59:04 -04:00
Zack Rauen
bdfe86ba1a Remove dead code and reorganize slightly 2023-09-28 00:24:52 -04:00
Zack Rauen
a8bb2f110b Some important QoL changes 2023-09-28 00:14:44 -04:00
Zack Rauen
4147f2b8d8 Switch scripts to redesign 2023-09-27 23:18:03 -04:00
Zack Rauen
a7edc5e03e Slightly adjust page template 2023-09-27 22:54:13 -04:00
Zack Rauen
1a40658345 Rework css for new design 2023-09-27 22:53:59 -04:00
Zack Rauen
124fd480b7 Update build script for templates 2023-09-27 16:49:30 -04:00
Zack Rauen
667cd64f3b Rename main to scripts 2023-09-27 16:28:08 -04:00
Zack Rauen
2ae6d4c5a4 Add initial templates 2023-09-27 16:20:04 -04:00
Zack Rauen
d9e33270b0 Add README 2023-09-24 06:03:35 -04:00
Zack Rauen
ad59080307 Some more finishing touches 2023-09-23 22:39:38 -04:00
Zack Rauen
34fa9a1f01 Some final touches 2023-09-23 07:21:38 -04:00
Zack Rauen
cb19ed36bc Make mobile compatible 2023-09-23 02:56:59 -04:00
Zack Rauen
039a5ac2e3 Modularize more and add swagger-ui 2023-09-22 23:57:17 -04:00
Zack Rauen
568ea271a4 Modularize proof of concept 2023-09-21 03:18:11 -04:00
Zack Rauen
a584a5c296 Port from trilium notes 2023-09-20 03:38:55 -04:00
zadam
526eaa2749 Merge pull request #54 from manto89/feature/already-visited
Check if the current page is already saved in trilium
2023-07-09 23:02:09 +02:00
zadam
f57e97462f Merge pull request #52 from manto89/feature/keep-title
Keep the title when adding notes
2023-07-09 23:00:36 +02:00
manto89
1d6211c7fd Add already-section when pageurl matches existing note.
Trigger search note by url after connection to backend
2023-06-21 13:13:28 +02:00
manto89
82c1b21d64 add checkbox in popup and handle case in popup.js 2023-06-19 00:02:19 +02:00
zadam
b731a051f1 Merge pull request #49 from jrao1/add-published-date
Send published/modified date when saving whole page
2023-03-07 22:52:35 +01:00
J Rao
1434773572 Send published/modified date when saving whole page 2023-03-06 21:34:51 +08:00
zadam
71be9515b9 release 1.0.1 2022-10-29 15:25:37 +02:00
zadam
c9c10a90aa 1.0.1 2022-10-29 15:25:20 +02:00
zadam
9130980203 release 1.0.0 2022-10-29 14:59:05 +02:00
zadam
efb2436679 release 1.0.0 2022-10-29 14:56:00 +02:00
zadam
5007ec4703 remove username from options 2022-10-29 14:55:26 +02:00
zadam
711e4f8ebd Merge remote-tracking branch 'origin/master' 2022-10-29 14:41:00 +02:00
zadam
9ac8bc28ed rename saveCroppedScreenshot 2022-10-29 14:40:53 +02:00
zadam
ddbf933779 Create LICENSE 2022-08-05 19:19:15 +02:00
zadam
252263de38 add option to screenshot the whole page, kind of, #39 2022-02-19 19:38:01 +01:00
zadam
66c8891fbb make screenshot cancellable via escape key, closes #37 2022-02-19 19:37:23 +01:00
zadam
20a4e2eb08 upgrade readability 2022-02-19 19:35:39 +01:00
zadam
9cf88d9697 fixed release script 2021-11-21 10:29:00 +01:00
zadam
2ee147f625 release 0.3.1 2021-11-20 22:02:51 +01:00
zadam
b3d70aaf44 release 0.3.1 2021-11-20 22:00:36 +01:00
zadam
968f735adc update icons 2021-11-20 21:59:31 +01:00
zadam
611cdc3850 release 0.3.0 2021-04-10 11:22:26 +02:00
zadam
6cd9aadfca fix screenshot scaling issue on firefox, https://github.com/zadam/trilium/issues/1202 2021-04-10 11:18:01 +02:00
zadam
80e82b4fde Merge remote-tracking branch 'origin/master'
# Conflicts:
#	popup/popup.html
#	popup/popup.js
2021-03-31 22:25:16 +02:00
zadam
0811276fbb "save note" is now "save link with note" - i.e. we're saving a current URL together with the text note 2021-03-31 22:23:43 +02:00
zadam
e9825a4e50 Merge pull request #29 from alteist/close-tabs-after-saving-link
Add close tabs link in toast message after saving window's tabs
2021-02-22 21:43:17 +01:00
alteist
b42fd1a6c5 code cleanup 2021-02-22 15:30:12 +06:00
alteist
73d48d8dd5 Add close tabs link in toast message after saving window's tabs 2021-02-22 14:35:55 +06:00
alteist
6824eb21d4 removed close tabs function, added toast message after saving 2021-02-22 13:34:34 +06:00
alteist
9abee14beb reformat code 2021-02-22 13:24:46 +06:00
alteist
6952c467cd Add save, send and close current window's tabs feature 2021-02-22 01:40:07 +06:00
zadam
1c75ea89ad scan only one port instead of 10, https://github.com/zadam/trilium/issues/1503 2020-12-31 00:48:23 +01:00
zadam
2d814af7f1 fix FF release script 2020-10-20 23:22:41 +02:00
zadam
16b2ffe5d2 release 0.2.0 2020-10-20 23:13:28 +02:00
zadam
c67e1857e6 fix FF release script 2020-10-20 23:13:19 +02:00
zadam
1b880a8521 release 0.2.0 2020-10-20 23:09:57 +02:00
zadam
800aaa9f05 release 0.2.0 2020-10-20 23:09:40 +02:00
zadam
2a79ef0aa5 release 0.2.0 2020-10-20 23:09:01 +02:00
zadam
01525464a4 release 0.2.0 2020-10-20 22:57:37 +02:00
zadam
b46a16d153 release 0.2.0 2020-10-20 22:53:34 +02:00
zadam
89984a7d96 use correct active tab URL 2020-10-09 23:08:57 +02:00
zadam
097d319fca Merge pull request #6 from lgorence/better_errors
Improve error handling
2020-10-09 22:29:27 +02:00
zadam
28eb3f2aae clip screenshot crops correctly when HIDPI display is used 2020-10-09 22:07:26 +02:00
zadam
b61149382e Merge pull request #24 from siralmat/keyboard-shortcuts
Keyboard shortcuts
2020-10-09 08:52:20 +02:00
zadam
1d682b2389 Merge pull request #23 from siralmat/fixes
Library fix: browser-polyfill.js
2020-10-09 08:51:07 +02:00
Rebecca
111a12f881 Documentation updates 2020-10-09 11:00:16 +08:00
Rebecca
d9f6862978 Add support for keyboard shortcuts 2020-10-09 10:23:17 +08:00
Rebecca
dfaf6267d3 Replace browser-polyfill.js with compiled script 2020-10-08 15:18:26 +08:00
zadam
abc26a3867 Merge pull request #21 from meichthys/patch-1
Update Link to Joplin Web Clipper
2020-09-16 21:11:59 +02:00
MeIchthys
cc1ad73c68 Update Link to Joplin Web Clipper
The old link was broken as the project structure changed.
2020-09-16 15:10:07 -04:00
zadam
7a42d7e229 send along a local datetime so that the creation date is saved correctly including the timezone 2020-05-29 20:27:17 +02:00
zadam
d3539ec9d7 Readability.js update 2020-04-05 15:37:44 +02:00
zadam
338f01be01 fixes and library updates 2020-04-02 22:49:27 +02:00
Logan Gorence
b1bda646c4 Fix imageless posts when taking a screenshot on an internal page. 2019-10-06 20:59:46 -07:00
zadam
1a58026b23 Update README.md 2019-07-21 22:32:57 +02:00
zadam
372645f642 release 0.1.1 2019-07-20 15:53:10 +02:00
zadam
d5a0542703 Merge remote-tracking branch 'origin/master' 2019-07-20 15:52:41 +02:00
zadam
7e5f9f87a1 release 0.1.0 2019-07-20 15:48:26 +02:00
zadam
4a646ca5a7 release 0.0.5 2019-07-20 14:59:12 +02:00
zadam
6d57e49646 Update README.md 2019-07-20 14:42:48 +02:00
zadam
ab32a0f593 release 0.0.4 2019-07-20 14:40:56 +02:00
zadam
6b342d2fe7 fix repo name 2019-07-20 14:40:50 +02:00
zadam
56aef8b6ec release 0.0.3 2019-07-20 14:38:08 +02:00
zadam
ae5e632cbd release fixes 2019-07-20 14:38:06 +02:00
zadam
a952c1bf49 release 0.0.2 2019-07-20 12:19:53 +02:00
zadam
d839f86b49 fixes 2019-07-20 12:19:47 +02:00
zadam
8cf44780ce release scripts + check of version compatibility 2019-07-20 12:17:59 +02:00
zadam
94222e80cf fix dev detection 2019-07-19 23:34:54 +02:00
zadam
cf97c12516 sign firefox extension 2019-07-19 23:32:46 +02:00
zadam
4e21fc0c06 fix layout issue in chrome 2019-07-19 21:22:44 +02:00
zadam
c45bbd0fc9 add .gitignore for .idea 2019-07-19 21:12:38 +02:00
zadam
9359d9924c version can't contain beta suffix 2019-07-19 21:12:13 +02:00
zadam
4618520bf9 font family for popup, different clip types for notes and whole pages 2019-07-19 21:05:22 +02:00
zadam
d18045f905 gitignore 2019-07-19 20:40:31 +02:00
zadam
bc1dae516b gitignore 2019-07-19 20:39:25 +02:00
zadam
8d28c14133 initial import 2019-07-19 20:35:53 +02:00
1404 changed files with 175648 additions and 39109 deletions

1
.env Normal file
View File

@@ -0,0 +1 @@
NODE_OPTIONS=--max_old_space_size=4096

2
.github/FUNDING.yml vendored
View File

@@ -2,3 +2,5 @@
github: [eliandoran]
custom: ["https://paypal.me/eliandoran"]
liberapay: ElianDoran
buy_me_a_coffee: eliandoran

View File

@@ -85,7 +85,7 @@ runs:
APPLE_ID: ${{ env.APPLE_ID }}
APPLE_ID_PASSWORD: ${{ env.APPLE_ID_PASSWORD }}
WINDOWS_SIGN_EXECUTABLE: ${{ env.WINDOWS_SIGN_EXECUTABLE }}
TRILIUM_ARTIFACT_NAME_HINT: TriliumNextNotes-${{ github.ref_name }}-${{ inputs.os }}-${{ inputs.arch }}
TRILIUM_ARTIFACT_NAME_HINT: TriliumNotes-${{ github.ref_name }}-${{ inputs.os }}-${{ inputs.arch }}
run: pnpm nx --project=desktop electron-forge:make -- --arch=${{ inputs.arch }} --platform=${{ inputs.forge_platform }}
# Add DMG signing step
@@ -162,3 +162,25 @@ runs:
echo "Found ZIP: $zip_file"
echo "Note: ZIP files are not code signed, but their contents should be"
fi
- name: Sign the RPM
if: inputs.os == 'linux'
shell: ${{ inputs.shell }}
run: |
echo -n "$GPG_SIGNING_KEY" | base64 --decode | gpg --import
# Import the key into RPM for verification
gpg --export -a > pubkey
rpm --import pubkey
rm pubkey
# Sign the RPM
rpm_file=$(find ./apps/desktop/upload -name "*.rpm" -print -quit)
rpmsign --define "_gpg_name Trilium Notes Signing Key <triliumnotes@outlook.com>" --addsign "$rpm_file"
rpm -Kv "$rpm_file"
# Validate code signing
if ! rpm -K "$rpm_file" | grep -q "digests signatures OK"; then
echo .rpm file not signed
exit 1
fi

View File

@@ -30,4 +30,4 @@ runs:
mkdir -p upload
file=$(find ./apps/server/out -name '*.tar.xz' -print -quit)
name=${{ github.ref_name }}
cp "$file" "upload/TriliumNextNotes-Server-${name//\//-}-${{ inputs.os }}-${{ inputs.arch }}.tar.xz"
cp "$file" "upload/TriliumNotes-Server-${name//\//-}-${{ inputs.os }}-${{ inputs.arch }}.tar.xz"

View File

@@ -44,7 +44,7 @@ runs:
steps:
# Checkout branch to compare to [required]
- name: Checkout base branch
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
ref: ${{ inputs.branch }}
path: br-base

40
.github/instructions/nx.instructions.md vendored Normal file
View File

@@ -0,0 +1,40 @@
---
applyTo: '**'
---
// This file is automatically generated by Nx Console
You are in an nx workspace using Nx 21.3.9 and pnpm as the package manager.
You have access to the Nx MCP server and the tools it provides. Use them. Follow these guidelines in order to best help the user:
# General Guidelines
- When answering questions, use the nx_workspace tool first to gain an understanding of the workspace architecture
- For questions around nx configuration, best practices or if you're unsure, use the nx_docs tool to get relevant, up-to-date docs!! Always use this instead of assuming things about nx configuration
- If the user needs help with an Nx configuration or project graph error, use the 'nx_workspace' tool to get any errors
- To help answer questions about the workspace structure or simply help with demonstrating how tasks depend on each other, use the 'nx_visualize_graph' tool
# Generation Guidelines
If the user wants to generate something, use the following flow:
- learn about the nx workspace and any specifics the user needs by using the 'nx_workspace' tool and the 'nx_project_details' tool if applicable
- get the available generators using the 'nx_generators' tool
- decide which generator to use. If no generators seem relevant, check the 'nx_available_plugins' tool to see if the user could install a plugin to help them
- get generator details using the 'nx_generator_schema' tool
- you may use the 'nx_docs' tool to learn more about a specific generator or technology if you're unsure
- decide which options to provide in order to best complete the user's request. Don't make any assumptions and keep the options minimalistic
- open the generator UI using the 'nx_open_generate_ui' tool
- wait for the user to finish the generator
- read the generator log file using the 'nx_read_generator_log' tool
- use the information provided in the log file to answer the user's question or continue with what they were doing
# Running Tasks Guidelines
If the user wants help with tasks or commands (which include keywords like "test", "build", "lint", or other similar actions), use the following flow:
- Use the 'nx_current_running_tasks_details' tool to get the list of tasks (this can include tasks that were completed, stopped or failed).
- If there are any tasks, ask the user if they would like help with a specific task then use the 'nx_current_running_task_output' tool to get the terminal output for that task/command
- Use the terminal output from 'nx_current_running_task_output' to see what's wrong and help the user fix their problem. Use the appropriate tools if necessary
- If the user would like to rerun the task or command, always use `nx run <taskId>` to rerun in the terminal. This will ensure that the task will run in the nx context and will be run the same way it originally executed
- If the task was marked as "continuous" do not offer to rerun the task. This task is already running and the user can see the output in the terminal. You can use 'nx_current_running_task_output' to get the output of the task to verify the output.

18
.github/workflows/checks.yml vendored Normal file
View File

@@ -0,0 +1,18 @@
name: Checks
on:
push:
pull_request_target:
types: [synchronize]
jobs:
main:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Check if PRs have conflicts
uses: eps1lon/actions-label-merge-conflict@v3
if: github.repository == ${{ vars.REPO_MAIN }}
with:
dirtyLabel: "merge-conflicts"
repoToken: "${{ secrets.MERGE_CONFLICT_LABEL_PAT }}"

View File

@@ -13,9 +13,9 @@ name: "CodeQL Advanced"
on:
push:
branches: [ "develop" ]
branches: [ "main" ]
pull_request:
branches: [ "develop" ]
branches: [ "main" ]
schedule:
- cron: '20 7 * * 0'
@@ -57,7 +57,7 @@ jobs:
# your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v5
# Add any setup steps before running the `github/codeql-action/init` action.
# This includes steps like installing compilers or runtimes (`actions/setup-node`

View File

@@ -1,9 +1,9 @@
name: Dev
on:
push:
branches: [ develop ]
branches: [ main ]
pull_request:
branches: [ develop ]
branches: [ main ]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
@@ -12,8 +12,8 @@ concurrency:
env:
GHCR_REGISTRY: ghcr.io
DOCKERHUB_REGISTRY: docker.io
IMAGE_NAME: ${{ github.repository_owner }}/notes
TEST_TAG: ${{ github.repository_owner }}/notes:test
IMAGE_NAME: ${{ github.repository}}
TEST_TAG: ${{ github.repository}}:test
permissions:
pull-requests: write # for PR comments
@@ -24,7 +24,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
fetch-depth: 0 # needed for https://github.com/marketplace/actions/nx-set-shas
@@ -39,76 +39,7 @@ jobs:
- uses: nrwl/nx-set-shas@v4
- name: Check affected
run: pnpm nx affected --verbose -t typecheck build rebuild-deps
report-electron-size:
name: Report Electron size
runs-on: ubuntu-latest
needs:
- check-affected
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'pnpm'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Run the build
uses: ./.github/actions/build-electron
with:
os: linux
arch: x64
shell: bash
forge_platform: linux
- name: Run the Electron size report
uses: ./.github/actions/report-size
with:
paths: 'upload/**/*'
onlyDiff: 'true'
branch: 'develop'
header: 'Electron size report'
unit: "MB"
ghToken: ${{ secrets.GITHUB_TOKEN }}
report-server-size:
name: Report server size
runs-on: ubuntu-latest
needs:
- check-affected
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 22
cache: "pnpm"
- run: pnpm install --frozen-lockfile
- name: Run the build
uses: ./.github/actions/build-server
with:
os: linux
arch: x64
- name: Run the server size report
uses: ./.github/actions/report-size
with:
paths: 'upload/**/*'
onlyDiff: 'true'
branch: 'develop'
header: 'Server size report'
unit: "MB"
ghToken: ${{ secrets.GITHUB_TOKEN }}
run: pnpm nx affected --verbose -t typecheck build rebuild-deps test-build
test_dev:
name: Test development
@@ -117,7 +48,7 @@ jobs:
- check-affected
steps:
- name: Checkout the repository
uses: actions/checkout@v4
uses: actions/checkout@v5
- uses: pnpm/action-setup@v4
- name: Set up node & dependencies
@@ -137,13 +68,21 @@ jobs:
- test_dev
- check-affected
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: pnpm/action-setup@v4
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Update build info
run: pnpm run chore:update-build-info
- name: Trigger build
- name: Trigger client build
run: pnpm nx run client:build
- name: Send client bundle stats to RelativeCI
if: false
uses: relative-ci/agent-action@v3
with:
webpackStatsFile: ./apps/client/dist/webpack-stats.json
key: ${{ secrets.RELATIVE_CI_CLIENT_KEY }}
- name: Trigger server build
run: pnpm nx run server:build
- uses: docker/setup-buildx-action@v3
- uses: docker/build-push-action@v6
@@ -164,7 +103,7 @@ jobs:
- dockerfile: Dockerfile
steps:
- name: Checkout the repository
uses: actions/checkout@v4
uses: actions/checkout@v5
- uses: pnpm/action-setup@v4
- name: Install dependencies

View File

@@ -1,7 +1,7 @@
on:
push:
branches:
- "develop"
- "main"
- "feature/update**"
- "feature/server_esm**"
paths-ignore:
@@ -14,8 +14,8 @@ on:
env:
GHCR_REGISTRY: ghcr.io
DOCKERHUB_REGISTRY: docker.io
IMAGE_NAME: ${{ github.repository_owner }}/notes
TEST_TAG: ${{ github.repository_owner }}/notes:test
IMAGE_NAME: ${{ github.repository}}
TEST_TAG: ${{ github.repository}}:test
permissions:
contents: read
@@ -32,7 +32,7 @@ jobs:
- dockerfile: Dockerfile
steps:
- name: Checkout the repository
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Set IMAGE_NAME to lowercase
run: echo "IMAGE_NAME=${IMAGE_NAME,,}" >> $GITHUB_ENV
@@ -53,7 +53,7 @@ jobs:
run: pnpm install --frozen-lockfile
- name: Install Playwright Browsers
run: pnpx playwright install --with-deps
run: pnpm exec playwright install --with-deps
- name: Run the TypeScript build
run: pnpm run server:build
@@ -82,7 +82,15 @@ jobs:
require-healthy: true
- name: Run Playwright tests
run: TRILIUM_DOCKER=1 TRILIUM_PORT=8082 pnpx nx run server-e2e:e2e
run: TRILIUM_DOCKER=1 TRILIUM_PORT=8082 pnpm exec nx run server-e2e:e2e
- name: Upload Playwright trace
if: failure()
uses: actions/upload-artifact@v4
with:
name: Playwright trace (${{ matrix.dockerfile }})
path: test-output/playwright/output
- uses: actions/upload-artifact@v4
if: ${{ !cancelled() }}
with:
@@ -111,6 +119,9 @@ jobs:
- dockerfile: Dockerfile
platform: linux/arm/v7
image: ubuntu-24.04-arm
- dockerfile: Dockerfile
platform: linux/arm/v8
image: ubuntu-24.04-arm
runs-on: ${{ matrix.image }}
needs:
- test_docker
@@ -130,7 +141,7 @@ jobs:
run: echo "TEST_TAG=${TEST_TAG,,}" >> $GITHUB_ENV
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v5
- uses: pnpm/action-setup@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
@@ -212,7 +223,7 @@ jobs:
- build
steps:
- name: Download digests
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
path: /tmp/digests
pattern: digests-*

View File

@@ -11,7 +11,8 @@ on:
pull_request:
paths:
- .github/actions/build-electron/*
- forge.config.cjs
- .github/workflows/nightly.yml
- forge.config.ts
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
@@ -26,6 +27,7 @@ permissions:
jobs:
nightly-electron:
if: github.repository == ${{ vars.REPO_MAIN }}
name: Deploy nightly
strategy:
fail-fast: false
@@ -37,7 +39,7 @@ jobs:
shell: bash
forge_platform: darwin
- name: linux
image: ubuntu-latest
image: ubuntu-22.04
shell: bash
forge_platform: linux
- name: windows
@@ -46,7 +48,7 @@ jobs:
forge_platform: win32
runs-on: ${{ matrix.os.image }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: pnpm/action-setup@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
@@ -74,9 +76,10 @@ jobs:
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }}
WINDOWS_SIGN_EXECUTABLE: ${{ vars.WINDOWS_SIGN_EXECUTABLE }}
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGN_KEY }}
- name: Publish release
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v2.3.2
if: ${{ github.event_name != 'pull_request' }}
with:
make_latest: false
@@ -91,10 +94,11 @@ jobs:
uses: actions/upload-artifact@v4
if: ${{ github.event_name == 'pull_request' }}
with:
name: TriliumNextNotes ${{ matrix.os.name }} ${{ matrix.arch }}
name: TriliumNotes ${{ matrix.os.name }} ${{ matrix.arch }}
path: apps/desktop/upload
nightly-server:
if: github.repository == ${{ vars.REPO_MAIN }}
name: Deploy server nightly
strategy:
fail-fast: false
@@ -102,12 +106,12 @@ jobs:
arch: [x64, arm64]
include:
- arch: x64
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
- arch: arm64
runs-on: ubuntu-24.04-arm
runs-on: ${{ matrix.runs-on }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Run the build
uses: ./.github/actions/build-server
@@ -116,7 +120,7 @@ jobs:
arch: ${{ matrix.arch }}
- name: Publish release
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v2.3.2
if: ${{ github.event_name != 'pull_request' }}
with:
make_latest: false

View File

@@ -3,7 +3,7 @@ name: playwright
on:
push:
branches:
- master
- main
pull_request:
permissions:
@@ -14,7 +14,7 @@ jobs:
main:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
filter: tree:0
fetch-depth: 0
@@ -33,11 +33,11 @@ jobs:
- name: Install dependencies
run: pnpm install --frozen-lockfile
- run: pnpx playwright install --with-deps
- run: pnpm exec playwright install --with-deps
- uses: nrwl/nx-set-shas@v4
# Prepend any command with "nx-cloud record --" to record its logs to Nx Cloud
# - run: npx nx-cloud record -- echo Hello World
# Nx Affected runs only tasks affected by the changes in this PR/commit. Learn more: https://nx.dev/ci/features/affected
# When you enable task distribution, run the e2e-ci task instead of e2e
- run: pnpx nx affected -t e2e
- run: pnpm exec nx affected -t e2e --exclude desktop-e2e

View File

@@ -23,7 +23,7 @@ jobs:
shell: bash
forge_platform: darwin
- name: linux
image: ubuntu-latest
image: ubuntu-22.04
shell: bash
forge_platform: linux
- name: windows
@@ -32,7 +32,7 @@ jobs:
forge_platform: win32
runs-on: ${{ matrix.os.image }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: pnpm/action-setup@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
@@ -58,6 +58,7 @@ jobs:
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }}
WINDOWS_SIGN_EXECUTABLE: ${{ vars.WINDOWS_SIGN_EXECUTABLE }}
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGN_KEY }}
- name: Upload the artifact
uses: actions/upload-artifact@v4
@@ -73,12 +74,12 @@ jobs:
arch: [x64, arm64]
include:
- arch: x64
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
- arch: arm64
runs-on: ubuntu-24.04-arm
runs-on: ${{ matrix.runs-on }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Run the build
uses: ./.github/actions/build-server
@@ -101,26 +102,26 @@ jobs:
steps:
- run: mkdir upload
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
sparse-checkout: |
docs/Release Notes
- name: Download all artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
merge-multiple: true
pattern: release-*
path: upload
- name: Publish stable release
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v2.3.2
with:
draft: false
body_path: docs/Release Notes/Release Notes/${{ github.ref_name }}.md
fail_on_unmatched_files: true
files: upload/*.*
discussion_category_name: Announcements
discussion_category_name: Releases
make_latest: ${{ !contains(github.ref, 'rc') }}
prerelease: ${{ !contains(github.ref, 'rc') }}
prerelease: ${{ contains(github.ref, 'rc') }}
token: ${{ secrets.RELEASE_PAT }}

11
.github/workflows/unblock_signing.yml vendored Normal file
View File

@@ -0,0 +1,11 @@
name: Unblock signing
on:
workflow_dispatch:
jobs:
unblock-win-signing:
runs-on: win-signing
steps:
- run: |
cat ${{ vars.WINDOWS_SIGN_ERROR_LOG }}
rm ${{ vars.WINDOWS_SIGN_ERROR_LOG }}

6
.gitignore vendored
View File

@@ -10,6 +10,7 @@ node_modules
# IDEs and editors
/.idea
.idea
.project
.classpath
.c9/
@@ -43,4 +44,7 @@ apps/*/out
upload
.rollup.cache
*.tsbuildinfo
*.tsbuildinfo
/result
.svelte-kit

6
.idea/.gitignore generated vendored
View File

@@ -1,6 +0,0 @@
# Default ignored files
/workspace.xml
# Datasource local storage ignored files
/dataSources.local.xml
/dataSources/

View File

@@ -1,15 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<option name="OTHER_INDENT_OPTIONS">
<value>
<option name="INDENT_SIZE" value="2" />
<option name="TAB_SIZE" value="2" />
</value>
</option>
<codeStyleSettings language="JSON">
<indentOptions>
<option name="INDENT_SIZE" value="4" />
</indentOptions>
</codeStyleSettings>
</code_scheme>
</component>

View File

@@ -1,5 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>

12
.idea/dataSources.xml generated
View File

@@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
<data-source source="LOCAL" name="document.db" uuid="2a4ac1e6-b828-4a2a-8e4a-3f59f10aff26">
<driver-ref>sqlite.xerial</driver-ref>
<synchronize>true</synchronize>
<jdbc-driver>org.sqlite.JDBC</jdbc-driver>
<jdbc-url>jdbc:sqlite:$PROJECT_DIR$/data/document.db</jdbc-url>
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</component>
</project>

4
.idea/encodings.xml generated
View File

@@ -1,4 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with NO BOM" />
</project>

View File

@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GitToolBoxProjectSettings">
<option name="commitMessageIssueKeyValidationOverride">
<BoolValueOverride>
<option name="enabled" value="true" />
</BoolValueOverride>
</option>
<option name="commitMessageValidationEnabledOverride">
<BoolValueOverride>
<option name="enabled" value="true" />
</BoolValueOverride>
</option>
</component>
</project>

View File

@@ -1,11 +0,0 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="SpellCheckingInspection" enabled="false" level="TYPO" enabled_by_default="false">
<option name="processCode" value="true" />
<option name="processLiterals" value="true" />
<option name="processComments" value="true" />
</inspection_tool>
</profile>
</component>

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JavaScriptLibraryMappings">
<includedPredefinedLibrary name="Node.js Core" />
</component>
</project>

View File

@@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JSLintConfiguration">
<option devel="true" />
<option es6="true" />
<option maxerr="50" />
<option node="true" />
</component>
</project>

8
.idea/misc.xml generated
View File

@@ -1,8 +0,0 @@
<project version="4">
<component name="JavaScriptSettings">
<option name="languageLevel" value="ES6" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_16" default="true" project-jdk-name="openjdk-16" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
.idea/modules.xml generated
View File

@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/trilium.iml" filepath="$PROJECT_DIR$/trilium.iml" />
</modules>
</component>
</project>

7
.idea/sqldialects.xml generated
View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="SqlDialectMappings">
<file url="file://$PROJECT_DIR$" dialect="SQLite" />
<file url="PROJECT" dialect="SQLite" />
</component>
</project>

6
.idea/vcs.xml generated
View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@@ -1,2 +1,2 @@
Adam Zivner <adam.zivner@gmail.com>
Adam Zivner <zadam.apps@gmail.com>
zadam <adam.zivner@gmail.com>
zadam <zadam.apps@gmail.com>

2
.nvmrc
View File

@@ -1 +1 @@
22.16.0
22.18.0

View File

@@ -1,7 +1,2 @@
_regroup
_regroup_monorepo
# Asset copying respects .gitignore / .nxignore for some reason.
# See https://github.com/nrwl/nx/issues/20309
!dist
!node_modules
_regroup_monorepo

View File

@@ -9,6 +9,8 @@
"redhat.vscode-yaml",
"tobermory.es6-string-html",
"vitest.explorer",
"yzhang.markdown-all-in-one"
"yzhang.markdown-all-in-one",
"svelte.svelte-vscode",
"bradlc.vscode-tailwindcss"
]
}

View File

@@ -3,6 +3,7 @@
languageIds:
- javascript
- typescript
- typescriptreact
- html
# An array of RegExes to find the key usage. **The key should be captured in the first match group**.
@@ -25,9 +26,10 @@ scopeRangeRegex: "useTranslation\\(\\s*\\[?\\s*['\"`](.*?)['\"`]"
# The "$1" will be replaced by the keypath specified.
refactorTemplates:
- t("$1")
- {t("$1")}
- ${t("$1")}
- <%= t("$1") %>
# If set to true, only enables this custom framework (will disable all built-in frameworks)
monopoly: true
monopoly: true

8
.vscode/mcp.json vendored Normal file
View File

@@ -0,0 +1,8 @@
{
"servers": {
"nx-mcp": {
"type": "http",
"url": "http://localhost:9461/mcp"
}
}
}

10
.vscode/settings.json vendored
View File

@@ -28,5 +28,13 @@
"typescript.validate.enable": true,
"typescript.tsserver.experimental.enableProjectDiagnostics": true,
"typescript.tsdk": "node_modules/typescript/lib",
"typescript.enablePromptUseWorkspaceTsdk": true
"typescript.enablePromptUseWorkspaceTsdk": true,
"search.exclude": {
"**/node_modules": true,
"docs/**/*.html": true,
"docs/**/*.png": true,
"apps/server/src/assets/doc_notes/**": true,
"apps/edit-docs/demo/**": true
},
"nxConsole.generateAiAgentRules": true
}

161
CLAUDE.md Normal file
View File

@@ -0,0 +1,161 @@
# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## Overview
Trilium Notes is a hierarchical note-taking application with advanced features like synchronization, scripting, and rich text editing. It's built as a TypeScript monorepo using NX, with multiple applications and shared packages.
## Development Commands
### Setup
- `pnpm install` - Install all dependencies
- `corepack enable` - Enable pnpm if not available
### Running Applications
- `pnpm run server:start` - Start development server (http://localhost:8080)
- `pnpm nx run server:serve` - Alternative server start command
- `pnpm nx run desktop:serve` - Run desktop Electron app
- `pnpm run server:start-prod` - Run server in production mode
### Building
- `pnpm nx build <project>` - Build specific project (server, client, desktop, etc.)
- `pnpm run client:build` - Build client application
- `pnpm run server:build` - Build server application
- `pnpm run electron:build` - Build desktop application
### Testing
- `pnpm test:all` - Run all tests (parallel + sequential)
- `pnpm test:parallel` - Run tests that can run in parallel
- `pnpm test:sequential` - Run tests that must run sequentially (server, ckeditor5-mermaid, ckeditor5-math)
- `pnpm nx test <project>` - Run tests for specific project
- `pnpm coverage` - Generate coverage reports
### Linting & Type Checking
- `pnpm nx run <project>:lint` - Lint specific project
- `pnpm nx run <project>:typecheck` - Type check specific project
## Architecture Overview
### Monorepo Structure
- **apps/**: Runnable applications
- `client/` - Frontend application (shared by server and desktop)
- `server/` - Node.js server with web interface
- `desktop/` - Electron desktop application
- `web-clipper/` - Browser extension for saving web content
- Additional tools: `db-compare`, `dump-db`, `edit-docs`
- **packages/**: Shared libraries
- `commons/` - Shared interfaces and utilities
- `ckeditor5/` - Custom rich text editor with Trilium-specific plugins
- `codemirror/` - Code editor customizations
- `highlightjs/` - Syntax highlighting
- Custom CKEditor plugins: `ckeditor5-admonition`, `ckeditor5-footnotes`, `ckeditor5-math`, `ckeditor5-mermaid`
### Core Architecture Patterns
#### Three-Layer Cache System
- **Becca** (Backend Cache): Server-side entity cache (`apps/server/src/becca/`)
- **Froca** (Frontend Cache): Client-side mirror of backend data (`apps/client/src/services/froca.ts`)
- **Shaca** (Share Cache): Optimized cache for shared/published notes (`apps/server/src/share/`)
#### Entity System
Core entities are defined in `apps/server/src/becca/entities/`:
- `BNote` - Notes with content and metadata
- `BBranch` - Hierarchical relationships between notes (allows multiple parents)
- `BAttribute` - Key-value metadata attached to notes
- `BRevision` - Note version history
- `BOption` - Application configuration
#### Widget-Based UI
Frontend uses a widget system (`apps/client/src/widgets/`):
- `BasicWidget` - Base class for all UI components
- `NoteContextAwareWidget` - Widgets that respond to note changes
- `RightPanelWidget` - Widgets displayed in the right panel
- Type-specific widgets in `type_widgets/` directory
#### API Architecture
- **Internal API**: REST endpoints in `apps/server/src/routes/api/`
- **ETAPI**: External API for third-party integrations (`apps/server/src/etapi/`)
- **WebSocket**: Real-time synchronization (`apps/server/src/services/ws.ts`)
### Key Files for Understanding Architecture
1. **Application Entry Points**:
- `apps/server/src/main.ts` - Server startup
- `apps/client/src/desktop.ts` - Client initialization
2. **Core Services**:
- `apps/server/src/becca/becca.ts` - Backend data management
- `apps/client/src/services/froca.ts` - Frontend data synchronization
- `apps/server/src/services/backend_script_api.ts` - Scripting API
3. **Database Schema**:
- `apps/server/src/assets/db/schema.sql` - Core database structure
4. **Configuration**:
- `nx.json` - NX workspace configuration
- `package.json` - Project dependencies and scripts
## Note Types and Features
Trilium supports multiple note types, each with specialized widgets:
- **Text**: Rich text with CKEditor5 (markdown import/export)
- **Code**: Syntax-highlighted code editing with CodeMirror
- **File**: Binary file attachments
- **Image**: Image display with editing capabilities
- **Canvas**: Drawing/diagramming with Excalidraw
- **Mermaid**: Diagram generation
- **Relation Map**: Visual note relationship mapping
- **Web View**: Embedded web pages
- **Doc/Book**: Hierarchical documentation structure
## Development Guidelines
### Testing Strategy
- Server tests run sequentially due to shared database
- Client tests can run in parallel
- E2E tests use Playwright for both server and desktop apps
- Build validation tests check artifact integrity
### Scripting System
Trilium provides powerful user scripting capabilities:
- Frontend scripts run in browser context
- Backend scripts run in Node.js context with full API access
- Script API documentation available in `docs/Script API/`
### Internationalization
- Translation files in `apps/client/src/translations/`
- Supported languages: English, German, Spanish, French, Romanian, Chinese
### Security Considerations
- Per-note encryption with granular protected sessions
- CSRF protection for API endpoints
- OpenID and TOTP authentication support
- Sanitization of user-generated content
## Common Development Tasks
### Adding New Note Types
1. Create widget in `apps/client/src/widgets/type_widgets/`
2. Register in `apps/client/src/services/note_types.ts`
3. Add backend handling in `apps/server/src/services/notes.ts`
### Extending Search
- Search expressions handled in `apps/server/src/services/search/`
- Add new search operators in search context files
### Custom CKEditor Plugins
- Create new package in `packages/` following existing plugin structure
- Register in `packages/ckeditor5/src/plugins.ts`
### Database Migrations
- Add migration scripts in `apps/server/src/migrations/`
- Update schema in `apps/server/src/assets/db/schema.sql`
## Build System Notes
- Uses NX for monorepo management with build caching
- Vite for fast development builds
- ESBuild for production optimization
- pnpm workspaces for dependency management
- Docker support with multi-stage builds

View File

@@ -1,10 +1,13 @@
# TriliumNext Notes
# Trilium Notes
![GitHub Sponsors](https://img.shields.io/github/sponsors/eliandoran) ![Docker Pulls](https://img.shields.io/docker/pulls/triliumnext/notes) ![GitHub Downloads (all assets, all releases)](https://img.shields.io/github/downloads/triliumnext/notes/total)
![GitHub Sponsors](https://img.shields.io/github/sponsors/eliandoran) ![LiberaPay patrons](https://img.shields.io/liberapay/patrons/ElianDoran)
![Docker Pulls](https://img.shields.io/docker/pulls/triliumnext/trilium)
![GitHub Downloads (all assets, all releases)](https://img.shields.io/github/downloads/triliumnext/trilium/total)
[![RelativeCI](https://badges.relative-ci.com/badges/Di5q7dz9daNDZ9UXi0Bp?branch=develop)](https://app.relative-ci.com/projects/Di5q7dz9daNDZ9UXi0Bp) [![Translation status](https://hosted.weblate.org/widget/trilium/svg-badge.svg)](https://hosted.weblate.org/engage/trilium/)
[English](./README.md) | [Chinese](./docs/README-ZH_CN.md) | [Russian](./docs/README.ru.md) | [Japanese](./docs/README.ja.md) | [Italian](./docs/README.it.md) | [Spanish](./docs/README.es.md)
[English](./README.md) | [Chinese (Simplified)](./docs/README-ZH_CN.md) | [Chinese (Traditional)](./docs/README-ZH_TW.md) | [Russian](./docs/README.ru.md) | [Japanese](./docs/README.ja.md) | [Italian](./docs/README.it.md) | [Spanish](./docs/README.es.md)
TriliumNext Notes is a free and open-source, cross-platform hierarchical note taking application with focus on building large personal knowledge bases.
Trilium Notes is a free and open-source, cross-platform hierarchical note taking application with focus on building large personal knowledge bases.
See [screenshots](https://triliumnext.github.io/Docs/Wiki/screenshot-tour) for quick overview:
@@ -19,7 +22,7 @@ See [screenshots](https://triliumnext.github.io/Docs/Wiki/screenshot-tour) for q
* Seamless [note versioning](https://triliumnext.github.io/Docs/Wiki/note-revisions)
* Note [attributes](https://triliumnext.github.io/Docs/Wiki/attributes) can be used for note organization, querying and advanced [scripting](https://triliumnext.github.io/Docs/Wiki/scripts)
* UI available in English, German, Spanish, French, Romanian, and Chinese (simplified and traditional)
* Direct [OpenID and TOTP integration](.docs/User%20Guide/User%20Guide/Installation%20%26%20Setup/Server%20Installation/Multi-Factor%20Authentication.md") for more secure login
* Direct [OpenID and TOTP integration](./docs/User%20Guide/User%20Guide/Installation%20%26%20Setup/Server%20Installation/Multi-Factor%20Authentication.md) for more secure login
* [Synchronization](https://triliumnext.github.io/Docs/Wiki/synchronization) with self-hosted sync server
* there's a [3rd party service for hosting synchronisation server](https://trilium.cc/paid-hosting)
* [Sharing](https://triliumnext.github.io/Docs/Wiki/sharing) (publishing) notes to public internet
@@ -36,21 +39,22 @@ See [screenshots](https://triliumnext.github.io/Docs/Wiki/screenshot-tour) for q
* [Evernote](https://triliumnext.github.io/Docs/Wiki/evernote-import) and [Markdown import & export](https://triliumnext.github.io/Docs/Wiki/markdown)
* [Web Clipper](https://triliumnext.github.io/Docs/Wiki/web-clipper) for easy saving of web content
* Customizable UI (sidebar buttons, user-defined widgets, ...)
* [Metrics](./docs/User%20Guide/User%20Guide/Advanced%20Usage/Metrics.md), along with a [Grafana Dashboard](./docs/User%20Guide/User%20Guide/Advanced%20Usage/Metrics/grafana-dashboard.json)
✨ Check out the following third-party resources/communities for more TriliumNext related goodies:
- [awesome-trilium](https://github.com/Nriver/awesome-trilium) for 3rd party themes, scripts, plugins and more.
- [TriliumRocks!](https://trilium.rocks/) for tutorials, guides, and much more.
## ⚠️ Why TriliumNext?
## Why TriliumNext?
[The original Trilium project is in maintenance mode](https://github.com/zadam/trilium/issues/4620).
The original Trilium developer ([Zadam](https://github.com/zadam)) has graciously given the Trilium repository to the community project which resides at https://github.com/TriliumNext
### Migrating from Trilium?
### ⬆️Migrating from Zadam/Trilium?
There are no special migration steps to migrate from a zadam/Trilium instance to a TriliumNext/Notes instance. Simply [install TriliumNext/Notes](#-installation) as usual and it will use your existing database.
There are no special migration steps to migrate from a zadam/Trilium instance to a TriliumNext/Trilium instance. Simply [install TriliumNext/Trilium](#-installation) as usual and it will use your existing database.
Versions up to and including [v0.90.4](https://github.com/TriliumNext/Notes/releases/tag/v0.90.4) are compatible with the latest zadam/trilium version of [v0.63.7](https://github.com/zadam/trilium/releases/tag/v0.63.7). Any later versions of TriliumNext have their sync versions incremented.
Versions up to and including [v0.90.4](https://github.com/TriliumNext/Trilium/releases/tag/v0.90.4) are compatible with the latest zadam/trilium version of [v0.63.7](https://github.com/zadam/trilium/releases/tag/v0.63.7). Any later versions of TriliumNext/Trilium have their sync versions incremented which prevents direct migration.
## 📖 Documentation
@@ -71,14 +75,14 @@ Feel free to join our official conversations. We would love to hear what feature
- [Matrix](https://matrix.to/#/#triliumnext:matrix.org) (For synchronous discussions.)
- The `General` Matrix room is also bridged to [XMPP](xmpp:discuss@trilium.thisgreat.party?join)
- [Github Discussions](https://github.com/TriliumNext/Notes/discussions) (For asynchronous discussions.)
- [Github Issues](https://github.com/TriliumNext/Notes/issues) (For bug reports and feature requests.)
- [Github Discussions](https://github.com/TriliumNext/Trilium/discussions) (For asynchronous discussions.)
- [Github Issues](https://github.com/TriliumNext/Trilium/issues) (For bug reports and feature requests.)
## 🏗 Installation
### Windows / MacOS
Download the binary release for your platform from the [latest release page](https://github.com/TriliumNext/Notes/releases/latest), unzip the package and run the `trilium` executable.
Download the binary release for your platform from the [latest release page](https://github.com/TriliumNext/Trilium/releases/latest), unzip the package and run the `trilium` executable.
### Linux
@@ -86,7 +90,7 @@ If your distribution is listed in the table below, use your distribution's packa
[![Packaging status](https://repology.org/badge/vertical-allrepos/triliumnext.svg)](https://repology.org/project/triliumnext/versions)
You may also download the binary release for your platform from the [latest release page](https://github.com/TriliumNext/Notes/releases/latest), unzip the package and run the `trilium` executable.
You may also download the binary release for your platform from the [latest release page](https://github.com/TriliumNext/Trilium/releases/latest), unzip the package and run the `trilium` executable.
TriliumNext is also provided as a Flatpak, but not yet published on FlatHub.
@@ -100,23 +104,33 @@ Currently only the latest versions of Chrome & Firefox are supported (and tested
To use TriliumNext on a mobile device, you can use a mobile web browser to access the mobile interface of a server installation (see below).
If you prefer a native Android app, you can use [TriliumDroid](https://apt.izzysoft.de/fdroid/index/apk/eu.fliegendewurst.triliumdroid). Report bugs and missing features at [their repository](https://github.com/FliegendeWurst/TriliumDroid).
See issue https://github.com/TriliumNext/Trilium/issues/4962 for more information on mobile app support.
See issue https://github.com/TriliumNext/Notes/issues/72 for more information on mobile app support.
If you prefer a native Android app, you can use [TriliumDroid](https://apt.izzysoft.de/fdroid/index/apk/eu.fliegendewurst.triliumdroid).
Report bugs and missing features at [their repository](https://github.com/FliegendeWurst/TriliumDroid).
Note: It is best to disable automatic updates on your server installation (see below) when using TriliumDroid since the sync version must match between Trilium and TriliumDroid.
### Server
To install TriliumNext on your own server (including via Docker from [Dockerhub](https://hub.docker.com/r/triliumnext/notes)) follow [the server installation docs](https://triliumnext.github.io/Docs/Wiki/server-installation).
To install TriliumNext on your own server (including via Docker from [Dockerhub](https://hub.docker.com/r/triliumnext/trilium)) follow [the server installation docs](https://triliumnext.github.io/Docs/Wiki/server-installation).
## 💻 Contribute
### Translations
If you are a native speaker, help us translate Trilium by heading over to our [Weblate page](https://hosted.weblate.org/engage/trilium/).
Here's the language coverage we have so far:
[![Translation status](https://hosted.weblate.org/widget/trilium/multi-auto.svg)](https://hosted.weblate.org/engage/trilium/)
### Code
Download the repository, install dependencies using `pnpm` and then run the server (available at http://localhost:8080):
```shell
git clone https://github.com/TriliumNext/Notes.git
cd Notes
git clone https://github.com/TriliumNext/Trilium.git
cd Trilium
pnpm install
pnpm run server:start
```
@@ -125,8 +139,8 @@ pnpm run server:start
Download the repository, install dependencies using `pnpm` and then run the environment required to edit the documentation:
```shell
git clone https://github.com/TriliumNext/Notes.git
cd Notes
git clone https://github.com/TriliumNext/Trilium.git
cd Trilium
pnpm install
pnpm nx run edit-docs:edit-docs
```
@@ -134,29 +148,29 @@ pnpm nx run edit-docs:edit-docs
### Building the Executable
Download the repository, install dependencies using `pnpm` and then build the desktop app for Windows:
```shell
git clone https://github.com/TriliumNext/Notes.git
cd Notes
git clone https://github.com/TriliumNext/Trilium.git
cd Trilium
pnpm install
pnpm nx --project=desktop electron-forge:make -- --arch=x64 --platform=win32
```
For more details, see the [development docs](https://github.com/TriliumNext/Notes/blob/develop/docs/Developer%20Guide/Developer%20Guide/Building%20and%20deployment/Running%20a%20development%20build.md).
For more details, see the [development docs](https://github.com/TriliumNext/Trilium/tree/main/docs/Developer%20Guide/Developer%20Guide).
### Developer Documentation
Please view the [documentation guide](./docs/Developer%20Guide/Developer%20Guide/Environment%20Setup.md) for details. If you have more questions, feel free to reach out via the links described in the "Discuss with us" section above.
Please view the [documentation guide](https://github.com/TriliumNext/Trilium/blob/main/docs/Developer%20Guide/Developer%20Guide/Environment%20Setup.md) for details. If you have more questions, feel free to reach out via the links described in the "Discuss with us" section above.
## 👏 Shoutouts
* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - best WYSIWYG editor on the market, very interactive and listening team
* [FancyTree](https://github.com/mar10/fancytree) - very feature rich tree library without real competition. TriliumNext Notes would not be the same without it.
* [FancyTree](https://github.com/mar10/fancytree) - very feature rich tree library without real competition. Trilium Notes would not be the same without it.
* [CodeMirror](https://github.com/codemirror/CodeMirror) - code editor with support for huge amount of languages
* [jsPlumb](https://github.com/jsplumb/jsplumb) - visual connectivity library without competition. Used in [relation maps](https://triliumnext.github.io/Docs/Wiki/relation-map.html) and [link maps](https://triliumnext.github.io/Docs/Wiki/note-map.html#link-map)
## 🤝 Support
Support for the TriliumNext organization will be possible in the near future. For now, you can:
- Support continued development on TriliumNext by supporting our developers: [eliandoran](https://github.com/sponsors/eliandoran) (See the [repository insights]([developers]([url](https://github.com/TriliumNext/Notes/graphs/contributors))) for a full list)
- Support continued development on TriliumNext by supporting our developers: [eliandoran](https://github.com/sponsors/eliandoran) (See the [repository insights]([developers]([url](https://github.com/TriliumNext/trilium/graphs/contributors))) for a full list)
- Show a token of gratitude to the original Trilium developer ([zadam](https://github.com/sponsors/zadam)) via [PayPal](https://paypal.me/za4am) or Bitcoin (bitcoin:bc1qv3svjn40v89mnkre5vyvs2xw6y8phaltl385d2).

View File

@@ -1,12 +0,0 @@
#!/usr/bin/env bash
set -e # Fail on any command error
VERSION=`jq -r ".version" package.json`
SERIES=${VERSION:0:4}-latest
sudo docker build -t triliumnext/notes:$VERSION --network host -t triliumnext/notes:$SERIES .
if [[ $VERSION != *"beta"* ]]; then
sudo docker tag triliumnext/notes:$VERSION triliumnext/notes:latest
fi

View File

@@ -91,5 +91,5 @@ async function start() {
}
// @TriliumNextTODO sqlInit.dbReady never seems to resolve so program hangs
// see https://github.com/TriliumNext/Notes/issues/1020
// see https://github.com/TriliumNext/Trilium/issues/1020
sqlInit.dbReady.then(cls.wrap(start)).catch((err) => console.error(err));

View File

@@ -24,7 +24,7 @@ if ! git diff-index --quiet HEAD --; then
exit 1
fi
BASE_BRANCH=master
BASE_BRANCH=main
if [[ "$VERSION" == *"beta"* ]]; then
BASE_BRANCH=beta

View File

@@ -47,11 +47,3 @@ echo "Tagging commit with $TAG"
git tag $TAG
git push origin $TAG
echo "Updating master"
git fetch
git checkout master
git reset --hard origin/master
git merge origin/develop
git push

View File

@@ -25,15 +25,16 @@ stats() {
# Print the number of existing strings on the JSON files for each locale
s=$(number_of_keys "${paths[0]}/en/server.json")
c=$(number_of_keys "${paths[1]}/en/translation.json")
echo "| locale |server strings |client strings |"
echo "|--------|---------------|---------------|"
echo "| en | ${s} | ${c} |"
echo "| locale | server strings | client strings |"
echo "|--------|----------------|----------------|"
echo "| en | ${s} | ${c} |"
echo "|--------|----------------|----------------|"
for locale in "${locales[@]}"; do
s=$(number_of_keys "${paths[0]}/${locale}/server.json")
c=$(number_of_keys "${paths[1]}/${locale}/translation.json")
n1=$(((8 - ${#locale}) / 2))
n2=$((n1 == 1 ? n1 + 1 : n1))
echo "|$(printf "%${n1}s")${locale}$(printf "%${n2}s")| ${s} | ${c} |"
echo "|$(printf "%${n1}s")${locale}$(printf "%${n2}s")| ${s} | ${c} |"
done
}
@@ -78,7 +79,10 @@ file_path="$(
cd -- "$(dirname "${0}")" >/dev/null 2>&1 || exit
pwd -P
)"
paths=("${file_path}/../translations/" "${file_path}/../src/public/translations/")
paths=(
"${file_path}/../../apps/server/src/assets/translations/"
"${file_path}/../../apps/client/src/translations/"
)
locales=(cn de es fr pt_br ro tw)
if [ $# -eq 1 ]; then

View File

@@ -44,7 +44,6 @@ export default tseslint.config(
"dist/*",
"docs/*",
"demo/*",
"libraries/*",
"src/public/app-dist/*",
"src/public/app/doc_notes/*"
]

View File

@@ -38,7 +38,6 @@ export default [
"dist/*",
"docs/*",
"demo/*",
"libraries/*",
// TriliumNextTODO: check if we want to format packages here as well - for now skipping it
"packages/*",
"src/public/app-dist/*",

View File

@@ -8,5 +8,5 @@ test("Displays update badge when there is a version available", async ({ page })
await page.getByText(`Version ${expectedVersion} is available,`).click();
const page1 = await page.waitForEvent("popup");
expect(page1.url()).toBe(`https://github.com/TriliumNext/Notes/releases/tag/v${expectedVersion}`);
expect(page1.url()).toBe(`https://github.com/TriliumNext/Trilium/releases/tag/v${expectedVersion}`);
});

View File

@@ -35,13 +35,13 @@
"chore:generate-openapi": "tsx bin/generate-openapi.js"
},
"devDependencies": {
"@playwright/test": "1.52.0",
"@stylistic/eslint-plugin": "4.4.0",
"@types/express": "5.0.1",
"@types/node": "22.15.29",
"@playwright/test": "1.55.0",
"@stylistic/eslint-plugin": "5.2.3",
"@types/express": "5.0.3",
"@types/node": "22.17.2",
"@types/yargs": "17.0.33",
"@vitest/coverage-v8": "3.1.4",
"eslint": "9.27.0",
"@vitest/coverage-v8": "3.2.4",
"eslint": "9.33.0",
"eslint-plugin-simple-import-sort": "12.1.1",
"esm": "3.2.25",
"jsdoc": "4.0.4",
@@ -49,8 +49,8 @@
"rcedit": "4.0.1",
"rimraf": "6.0.1",
"tslib": "2.8.1",
"typedoc": "0.28.5",
"typedoc-plugin-missing-exports": "4.0.0"
"typedoc": "0.28.10",
"typedoc-plugin-missing-exports": "4.1.0"
},
"optionalDependencies": {
"appdmg": "0.6.6"

View File

@@ -1,12 +0,0 @@
POST {{triliumHost}}/etapi/auth/login
Content-Type: application/json
{
"password": "1234"
}
> {%
client.assert(response.status === 201);
client.global.set("authToken", response.body.authToken);
%}

View File

@@ -1,43 +0,0 @@
### Test regular API metrics endpoint (requires session authentication)
### Get metrics from regular API (default Prometheus format)
GET {{triliumHost}}/api/metrics
> {%
client.test("API metrics endpoint returns Prometheus format by default", function() {
client.assert(response.status === 200, "Response status is not 200");
client.assert(response.headers["content-type"].includes("text/plain"), "Content-Type should be text/plain");
client.assert(response.body.includes("trilium_info"), "Should contain trilium_info metric");
client.assert(response.body.includes("trilium_notes_total"), "Should contain trilium_notes_total metric");
client.assert(response.body.includes("# HELP"), "Should contain HELP comments");
client.assert(response.body.includes("# TYPE"), "Should contain TYPE comments");
});
%}
### Get metrics in JSON format
GET {{triliumHost}}/api/metrics?format=json
> {%
client.test("API metrics endpoint returns JSON when requested", function() {
client.assert(response.status === 200, "Response status is not 200");
client.assert(response.headers["content-type"].includes("application/json"), "Content-Type should be application/json");
client.assert(response.body.version, "Version info not present");
client.assert(response.body.database, "Database info not present");
client.assert(response.body.timestamp, "Timestamp not present");
client.assert(typeof response.body.database.totalNotes === 'number', "Total notes should be a number");
client.assert(typeof response.body.database.activeNotes === 'number', "Active notes should be a number");
client.assert(response.body.noteTypes, "Note types breakdown not present");
client.assert(response.body.attachmentTypes, "Attachment types breakdown not present");
client.assert(response.body.statistics, "Statistics not present");
});
%}
### Test invalid format parameter
GET {{triliumHost}}/api/metrics?format=xml
> {%
client.test("Invalid format parameter returns error", function() {
client.assert(response.status === 500, "Response status should be 500");
client.assert(response.body.message.includes("prometheus"), "Error message should mention supported formats");
});
%}

View File

@@ -1,7 +0,0 @@
GET {{triliumHost}}/etapi/app-info
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.clipperProtocolVersion === "1.0");
%}

View File

@@ -1,21 +0,0 @@
GET {{triliumHost}}/etapi/app-info
Authorization: Basic etapi {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.clipperProtocolVersion === "1.0");
%}
###
GET {{triliumHost}}/etapi/app-info
Authorization: Basic etapi wrong
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/app-info
Authorization: Basic wrong {{authToken}}
> {% client.assert(response.status === 401); %}

View File

@@ -1,4 +0,0 @@
PUT {{triliumHost}}/etapi/backup/etapi_test
Authorization: {{authToken}}
> {% client.assert(response.status === 201); %}

View File

@@ -1,158 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "forcedId{{$randomInt}}",
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!",
"dateCreated": "2023-08-21 23:38:51.123+0200",
"utcDateCreated": "2023-08-21 23:38:51.123Z"
}
> {%
client.assert(response.status === 201);
client.assert(response.body.note.noteId.startsWith("forcedId"));
client.assert(response.body.note.title == "Hello");
client.assert(response.body.note.dateCreated == "2023-08-21 23:38:51.123+0200");
client.assert(response.body.note.utcDateCreated == "2023-08-21 23:38:51.123Z");
client.assert(response.body.branch.parentNoteId == "root");
client.log(`Created note ` + response.body.note.noteId + ` and branch ` + response.body.branch.branchId);
client.global.set("createdNoteId", response.body.note.noteId);
client.global.set("createdBranchId", response.body.branch.branchId);
%}
### Clone to another location
POST {{triliumHost}}/etapi/branches
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{createdNoteId}}",
"parentNoteId": "_hidden"
}
> {%
client.assert(response.status === 201);
client.assert(response.body.parentNoteId == "_hidden");
client.global.set("clonedBranchId", response.body.branchId);
client.log(`Created cloned branch ` + response.body.branchId);
%}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.noteId == client.global.get("createdNoteId"));
client.assert(response.body.title == "Hello");
// order is not defined and may fail in the future
client.assert(response.body.parentBranchIds[0] == client.global.get("clonedBranchId"))
client.assert(response.body.parentBranchIds[1] == client.global.get("createdBranchId"));
%}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}/content
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body == "Hi there!");
%}
###
GET {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.branchId == client.global.get("createdBranchId"));
client.assert(response.body.parentNoteId == "root");
%}
###
GET {{triliumHost}}/etapi/branches/{{clonedBranchId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.branchId == client.global.get("clonedBranchId"));
client.assert(response.body.parentNoteId == "_hidden");
%}
###
POST {{triliumHost}}/etapi/attributes
Content-Type: application/json
Authorization: {{authToken}}
{
"attributeId": "forcedAttributeId{{$randomInt}}",
"noteId": "{{createdNoteId}}",
"type": "label",
"name": "mylabel",
"value": "val",
"isInheritable": true
}
> {%
client.assert(response.status === 201);
client.assert(response.body.attributeId.startsWith("forcedAttributeId"));
client.global.set("createdAttributeId", response.body.attributeId);
%}
###
GET {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.attributeId == client.global.get("createdAttributeId"));
%}
###
POST {{triliumHost}}/etapi/attachments
Content-Type: application/json
Authorization: {{authToken}}
{
"ownerId": "{{createdNoteId}}",
"role": "file",
"mime": "plain/text",
"title": "my attachment",
"content": "my text"
}
> {%
client.assert(response.status === 201);
client.global.set("createdAttachmentId", response.body.attachmentId);
%}
###
GET {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.attachmentId == client.global.get("createdAttachmentId"));
client.assert(response.body.role == "file");
client.assert(response.body.mime == "plain/text");
client.assert(response.body.title == "my attachment");
%}

View File

@@ -1,52 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
POST {{triliumHost}}/etapi/attachments
Authorization: {{authToken}}
Content-Type: application/json
{
"ownerId": "{{createdNoteId}}",
"role": "file",
"mime": "text/plain",
"title": "my attachment",
"content": "text"
}
> {% client.global.set("createdAttachmentId", response.body.attachmentId); %}
###
DELETE {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 204, "Response status is not 204"); %}
### repeat the DELETE request to test the idempotency
DELETE {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 204, "Response status is not 204"); %}
###
GET {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 404, "Response status is not 404");
client.assert(response.body.code === "ATTACHMENT_NOT_FOUND");
%}

View File

@@ -1,52 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
POST {{triliumHost}}/etapi/attributes
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{createdNoteId}}",
"type": "label",
"name": "mylabel",
"value": "val",
"isInheritable": true
}
> {% client.global.set("createdAttributeId", response.body.attributeId); %}
###
DELETE {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 204, "Response status is not 204"); %}
### repeat the DELETE request to test the idempotency
DELETE {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 204, "Response status is not 204"); %}
###
GET {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 404, "Response status is not 404");
client.assert(response.body.code === "ATTRIBUTE_NOT_FOUND");
%}

View File

@@ -1,87 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {%
client.global.set("createdNoteId", response.body.note.noteId);
client.global.set("createdBranchId", response.body.branch.branchId);
%}
### Clone to another location
POST {{triliumHost}}/etapi/branches
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{createdNoteId}}",
"parentNoteId": "_hidden"
}
> {% client.global.set("clonedBranchId", response.body.branchId); %}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/branches/{{clonedBranchId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
DELETE {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 204, "Response status is not 204"); %}
### repeat the DELETE request to test the idempotency
DELETE {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 204, "Response status is not 204"); %}
###
GET {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 404, "Response status is not 404");
client.assert(response.body.code === "BRANCH_NOT_FOUND");
%}
###
GET {{triliumHost}}/etapi/branches/{{clonedBranchId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}

View File

@@ -1,126 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {%
client.global.set("createdNoteId", response.body.note.noteId);
client.global.set("createdBranchId", response.body.branch.branchId);
%}
###
POST {{triliumHost}}/etapi/attributes
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{createdNoteId}}",
"type": "label",
"name": "mylabel",
"value": "val",
"isInheritable": true
}
> {% client.global.set("createdAttributeId", response.body.attributeId); %}
### Clone to another location
POST {{triliumHost}}/etapi/branches
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{createdNoteId}}",
"parentNoteId": "_hidden"
}
> {% client.global.set("clonedBranchId", response.body.branchId); %}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/branches/{{clonedBranchId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
DELETE {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 204, "Response status is not 204"); %}
### repeat the DELETE request to test the idempotency
DELETE {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {% client.assert(response.status === 204, "Response status is not 204"); %}
###
GET {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 404, "Response status is not 404");
client.assert(response.body.code === "BRANCH_NOT_FOUND");
%}
###
GET {{triliumHost}}/etapi/branches/{{clonedBranchId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 404, "Response status is not 404");
client.assert(response.body.code == "BRANCH_NOT_FOUND");
%}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 404, "Response status is not 404");
client.assert(response.body.code === "NOTE_NOT_FOUND");
%}
###
GET {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 404, "Response status is not 404");
client.assert(response.body.code === "ATTRIBUTE_NOT_FOUND");
%}

View File

@@ -1,37 +0,0 @@
GET {{triliumHost}}/etapi/notes/root/export
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.headers.valueOf("Content-Type") == "application/zip");
%}
###
GET {{triliumHost}}/etapi/notes/root/export?format=html
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.headers.valueOf("Content-Type") == "application/zip");
%}
###
GET {{triliumHost}}/etapi/notes/root/export?format=markdown
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.headers.valueOf("Content-Type") == "application/zip");
%}
###
GET {{triliumHost}}/etapi/notes/root/export?format=wrong
Authorization: {{authToken}}
> {%
client.assert(response.status === 400);
client.assert(response.body.code === "UNRECOGNIZED_EXPORT_FORMAT");
%}

View File

@@ -1,72 +0,0 @@
GET {{triliumHost}}/etapi/inbox/2022-01-01
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/calendar/days/2022-01-01
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/calendar/days/2022-1
Authorization: {{authToken}}
> {%
client.assert(response.status === 400);
client.assert(response.body.code === "DATE_INVALID");
%}
###
GET {{triliumHost}}/etapi/calendar/weeks/2022-01-01
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/calendar/weeks/2022-1
Authorization: {{authToken}}
> {%
client.assert(response.status === 400);
client.assert(response.body.code === "DATE_INVALID");
%}
###
GET {{triliumHost}}/etapi/calendar/months/2022-01
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/calendar/months/2022-1
Authorization: {{authToken}}
> {%
client.assert(response.status === 400);
client.assert(response.body.code === "MONTH_INVALID");
%}
###
GET {{triliumHost}}/etapi/calendar/years/2022
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}
###
GET {{triliumHost}}/etapi/calendar/years/202
Authorization: {{authToken}}
> {%
client.assert(response.status === 400);
client.assert(response.body.code === "YEAR_INVALID");
%}

View File

@@ -1,116 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello parent",
"type": "text",
"content": "Hi there!"
}
> {%
client.assert(response.status === 201);
client.global.set("parentNoteId", response.body.note.noteId);
client.global.set("parentBranchId", response.body.branch.branchId);
%}
### Create inheritable parent attribute
POST {{triliumHost}}/etapi/attributes
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{parentNoteId}}",
"type": "label",
"name": "mylabel",
"value": "",
"isInheritable": true,
"position": 10
}
> {%
client.assert(response.status === 201);
client.global.set("parentAttributeId", response.body.attributeId);
%}
### Create child note under root
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello child",
"type": "text",
"content": "Hi there!"
}
> {%
client.assert(response.status === 201);
client.global.set("childNoteId", response.body.note.noteId);
client.global.set("childBranchId", response.body.branch.branchId);
%}
### Create child attribute
POST {{triliumHost}}/etapi/attributes
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{childNoteId}}",
"type": "label",
"name": "mylabel",
"value": "val",
"isInheritable": false,
"position": 10
}
> {%
client.assert(response.status === 201);
client.global.set("childAttributeId", response.body.attributeId);
%}
### Clone child to parent
POST {{triliumHost}}/etapi/branches
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{childNoteId}}",
"parentNoteId": "{{parentNoteId}}"
}
> {%
client.assert(response.status === 201);
client.assert(response.body.parentNoteId == client.global.get("parentNoteId"));
%}
###
GET {{triliumHost}}/etapi/notes/{{childNoteId}}
Authorization: {{authToken}}
> {%
function hasAttribute(list, attributeId) {
for (let i = 0; i < list.length; i++) {
if (list[i]["attributeId"] === attributeId) {
return true;
}
}
return false;
}
client.log(JSON.stringify(response.body.attributes));
client.assert(response.status === 200);
client.assert(response.body.noteId == client.global.get("childNoteId"));
client.assert(response.body.attributes.length == 2);
client.assert(hasAttribute(response.body.attributes, client.global.get("parentAttributeId")));
client.assert(hasAttribute(response.body.attributes, client.global.get("childAttributeId")));
%}

View File

@@ -1,61 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "GetInheritedAttributes Test Note",
"type": "text",
"content": "Hi there!"
}
> {%
client.assert(response.status === 201);
client.global.set("parentNoteId", response.body.note.noteId);
%}
###
POST {{triliumHost}}/etapi/attributes
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{parentNoteId}}",
"type": "label",
"name": "mylabel",
"value": "val",
"isInheritable": true
}
> {% client.global.set("createdAttributeId", response.body.attributeId); %}
###
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "{{parentNoteId}}",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {%
client.global.set("createdNoteId", response.body.note.noteId);
client.global.set("createdBranchId", response.body.branch.branchId);
%}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.noteId == client.global.get("createdNoteId"));
client.assert(response.body.attributes.length == 1);
client.assert(response.body.attributes[0].attributeId == client.global.get("createdAttributeId"));
%}

View File

@@ -1,25 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {%
client.global.set("createdNoteId", response.body.note.noteId);
client.global.set("createdBranchId", response.body.branch.branchId);
%}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}/content
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body === "Hi there!");
%}

View File

@@ -1,5 +0,0 @@
{
"dev": {
"triliumHost": "http://localhost:37740"
}
}

View File

@@ -1,12 +0,0 @@
POST {{triliumHost}}/etapi/notes/root/import
Authorization: {{authToken}}
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
< ../db/demo.zip
> {%
client.assert(response.status === 201);
client.assert(response.body.note.title == "Trilium Demo");
client.assert(response.body.branch.parentNoteId == "root");
%}

View File

@@ -1,34 +0,0 @@
POST {{triliumHost}}/etapi/auth/login
Content-Type: application/json
{
"password": "1234"
}
> {%
client.assert(response.status === 201);
client.global.set("testAuthToken", response.body.authToken);
%}
###
GET {{triliumHost}}/etapi/notes/root
Authorization: {{testAuthToken}}
> {% client.assert(response.status === 200); %}
###
POST {{triliumHost}}/etapi/auth/logout
Authorization: {{testAuthToken}}
Content-Type: application/json
> {% client.assert(response.status === 204); %}
###
GET {{triliumHost}}/etapi/notes/root
Authorization: {{testAuthToken}}
> {% client.assert(response.status === 401); %}

View File

@@ -1,82 +0,0 @@
### Test ETAPI metrics endpoint
# First login to get a token
POST {{triliumHost}}/etapi/auth/login
Content-Type: application/json
{
"password": "{{password}}"
}
> {%
client.test("Login successful", function() {
client.assert(response.status === 201, "Response status is not 201");
client.assert(response.body.authToken, "Auth token not present");
client.global.set("authToken", response.body.authToken);
});
%}
### Get metrics with authentication (default Prometheus format)
GET {{triliumHost}}/etapi/metrics
Authorization: {{authToken}}
> {%
client.test("Metrics endpoint returns Prometheus format by default", function() {
client.assert(response.status === 200, "Response status is not 200");
client.assert(response.headers["content-type"].includes("text/plain"), "Content-Type should be text/plain");
client.assert(response.body.includes("trilium_info"), "Should contain trilium_info metric");
client.assert(response.body.includes("trilium_notes_total"), "Should contain trilium_notes_total metric");
client.assert(response.body.includes("# HELP"), "Should contain HELP comments");
client.assert(response.body.includes("# TYPE"), "Should contain TYPE comments");
});
%}
### Get metrics in JSON format
GET {{triliumHost}}/etapi/metrics?format=json
Authorization: {{authToken}}
> {%
client.test("Metrics endpoint returns JSON when requested", function() {
client.assert(response.status === 200, "Response status is not 200");
client.assert(response.headers["content-type"].includes("application/json"), "Content-Type should be application/json");
client.assert(response.body.version, "Version info not present");
client.assert(response.body.database, "Database info not present");
client.assert(response.body.timestamp, "Timestamp not present");
client.assert(typeof response.body.database.totalNotes === 'number', "Total notes should be a number");
client.assert(typeof response.body.database.activeNotes === 'number', "Active notes should be a number");
});
%}
### Get metrics in Prometheus format explicitly
GET {{triliumHost}}/etapi/metrics?format=prometheus
Authorization: {{authToken}}
> {%
client.test("Metrics endpoint returns Prometheus format when requested", function() {
client.assert(response.status === 200, "Response status is not 200");
client.assert(response.headers["content-type"].includes("text/plain"), "Content-Type should be text/plain");
client.assert(response.body.includes("trilium_info"), "Should contain trilium_info metric");
client.assert(response.body.includes("trilium_notes_total"), "Should contain trilium_notes_total metric");
});
%}
### Test invalid format parameter
GET {{triliumHost}}/etapi/metrics?format=xml
Authorization: {{authToken}}
> {%
client.test("Invalid format parameter returns error", function() {
client.assert(response.status === 400, "Response status should be 400");
client.assert(response.body.code === "INVALID_FORMAT", "Error code should be INVALID_FORMAT");
client.assert(response.body.message.includes("prometheus"), "Error message should mention supported formats");
});
%}
### Test without authentication (should fail)
GET {{triliumHost}}/etapi/metrics
> {%
client.test("Metrics endpoint requires authentication", function() {
client.assert(response.status === 401, "Response status should be 401");
});
%}

View File

@@ -1,109 +0,0 @@
GET {{triliumHost}}/etapi/notes?search=aaa
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/notes/root
> {% client.assert(response.status === 401); %}
###
PATCH {{triliumHost}}/etapi/notes/root
Authorization: fakeauth
> {% client.assert(response.status === 401); %}
###
DELETE {{triliumHost}}/etapi/notes/root
Authorization: fakeauth
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/branches/root
Authorization: fakeauth
> {% client.assert(response.status === 401); %}
###
PATCH {{triliumHost}}/etapi/branches/root
> {% client.assert(response.status === 401); %}
###
DELETE {{triliumHost}}/etapi/branches/root
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/attributes/000
> {% client.assert(response.status === 401); %}
###
PATCH {{triliumHost}}/etapi/attributes/000
> {% client.assert(response.status === 401); %}
###
DELETE {{triliumHost}}/etapi/attributes/000
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/inbox/2022-02-22
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/calendar/days/2022-02-22
Authorization: fakeauth
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/calendar/weeks/2022-02-22
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/calendar/months/2022-02
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/calendar/years/2022
> {% client.assert(response.status === 401); %}
###
POST {{triliumHost}}/etapi/create-note
> {% client.assert(response.status === 401); %}
###
GET {{triliumHost}}/etapi/app-info
> {% client.assert(response.status === 401); %}
### Fake URL will get a 404 even without token
GET {{triliumHost}}/etapi/zzzzzz
> {% client.assert(response.status === 404); %}

View File

@@ -1,4 +0,0 @@
POST {{triliumHost}}/etapi/refresh-note-ordering/root
Authorization: {{authToken}}
> {% client.assert(response.status === 200); %}

View File

@@ -1,79 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
POST {{triliumHost}}/etapi/attachments
Authorization: {{authToken}}
Content-Type: application/json
{
"ownerId": "{{createdNoteId}}",
"role": "file",
"mime": "text/plain",
"title": "my attachment",
"content": "text"
}
> {% client.global.set("createdAttachmentId", response.body.attachmentId); %}
###
PATCH {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"title": "CHANGED",
"position": 999
}
###
GET {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}
Authorization: {{authToken}}
> {%
client.assert(response.body.title === "CHANGED");
client.assert(response.body.position === 999);
%}
###
PATCH {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"ownerId": "root"
}
> {%
client.assert(response.status === 400);
client.assert(response.body.code == "PROPERTY_NOT_ALLOWED");
%}
###
PATCH {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"title": null
}
> {%
client.assert(response.status === 400);
client.assert(response.body.code == "PROPERTY_VALIDATION_ERROR");
%}

View File

@@ -1,80 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {%
client.global.set("createdNoteId", response.body.note.noteId);
client.global.set("createdBranchId", response.body.branch.branchId);
%}
###
POST {{triliumHost}}/etapi/attributes
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "{{createdNoteId}}",
"type": "label",
"name": "mylabel",
"value": "val",
"isInheritable": true
}
> {% client.global.set("createdAttributeId", response.body.attributeId); %}
###
PATCH {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"value": "CHANGED"
}
###
GET {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
> {%
client.assert(response.body.value === "CHANGED");
%}
###
PATCH {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"noteId": "root"
}
> {%
client.assert(response.status === 400);
client.assert(response.body.code == "PROPERTY_NOT_ALLOWED");
%}
###
PATCH {{triliumHost}}/etapi/attributes/{{createdAttributeId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"value": null
}
> {%
client.assert(response.status === 400);
client.assert(response.body.code == "PROPERTY_VALIDATION_ERROR");
%}

View File

@@ -1,66 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"type": "text",
"title": "Hello",
"content": ""
}
> {% client.global.set("createdBranchId", response.body.branch.branchId); %}
###
PATCH {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"prefix": "pref",
"notePosition": 666,
"isExpanded": true
}
###
GET {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.prefix === 'pref');
client.assert(response.body.notePosition === 666);
client.assert(response.body.isExpanded === true);
%}
###
PATCH {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root"
}
> {%
client.assert(response.status === 400);
client.assert(response.body.code == "PROPERTY_NOT_ALLOWED");
%}
###
PATCH {{triliumHost}}/etapi/branches/{{createdBranchId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"prefix": 123
}
> {%
client.assert(response.status === 400);
client.assert(response.body.code == "PROPERTY_VALIDATION_ERROR");
%}

View File

@@ -1,83 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "code",
"mime": "application/json",
"content": "{}"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.title === 'Hello');
client.assert(response.body.type === 'code');
client.assert(response.body.mime === 'application/json');
%}
###
PATCH {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"title": "Wassup",
"type": "html",
"mime": "text/html",
"dateCreated": "2023-08-21 23:38:51.123+0200",
"utcDateCreated": "2023-08-21 23:38:51.123Z"
}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.title === 'Wassup');
client.assert(response.body.type === 'html');
client.assert(response.body.mime === 'text/html');
client.assert(response.body.dateCreated == "2023-08-21 23:38:51.123+0200");
client.assert(response.body.utcDateCreated == "2023-08-21 23:38:51.123Z");
%}
###
PATCH {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"isProtected": true
}
> {%
client.assert(response.status === 400);
client.assert(response.body.code == "PROPERTY_NOT_ALLOWED");
%}
###
PATCH {{triliumHost}}/etapi/notes/{{createdNoteId}}
Authorization: {{authToken}}
Content-Type: application/json
{
"title": true
}
> {%
client.assert(response.status === 400);
client.assert(response.body.code == "PROPERTY_VALIDATION_ERROR");
%}

View File

@@ -1,23 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "code",
"mime": "text/plain",
"content": "Hi there!"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
POST {{triliumHost}}/etapi/notes/{{createdNoteId}}/revision
Authorization: {{authToken}}
Content-Type: text/plain
Changed content
> {% client.assert(response.status === 204); %}

View File

@@ -1,39 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
POST {{triliumHost}}/etapi/attachments
Authorization: {{authToken}}
Content-Type: application/json
{
"ownerId": "{{createdNoteId}}",
"role": "file",
"mime": "text/plain",
"title": "my attachment",
"content": "text"
}
> {% client.global.set("createdAttachmentId", response.body.attachmentId); %}
###
PUT {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}/content
Authorization: {{authToken}}
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
< ../images/icon-color.png
> {% client.assert(response.status === 204); %}

View File

@@ -1,45 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "text",
"content": "Hi there!"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
POST {{triliumHost}}/etapi/attachments
Authorization: {{authToken}}
Content-Type: application/json
{
"ownerId": "{{createdNoteId}}",
"role": "file",
"mime": "text/plain",
"title": "my attachment",
"content": "text"
}
> {% client.global.set("createdAttachmentId", response.body.attachmentId); %}
###
PUT {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}/content
Authorization: {{authToken}}
Content-Type: text/plain
Changed content
> {% client.assert(response.status === 204); %}
###
GET {{triliumHost}}/etapi/attachments/{{createdAttachmentId}}/content
Authorization: {{authToken}}
> {% client.assert(response.body === "Changed content"); %}

View File

@@ -1,25 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "image",
"mime": "image/png",
"content": ""
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
PUT {{triliumHost}}/etapi/notes/{{createdNoteId}}/content
Authorization: {{authToken}}
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
< ../images/icon-color.png
> {% client.assert(response.status === 204); %}

View File

@@ -1,30 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "Hello",
"type": "code",
"mime": "text/plain",
"content": "Hi there!"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
PUT {{triliumHost}}/etapi/notes/{{createdNoteId}}/content
Authorization: {{authToken}}
Content-Type: text/plain
Changed content
> {% client.assert(response.status === 204); %}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}/content
Authorization: {{authToken}}
> {% client.assert(response.body === "Changed content"); %}

View File

@@ -1,39 +0,0 @@
POST {{triliumHost}}/etapi/create-note
Authorization: {{authToken}}
Content-Type: application/json
{
"parentNoteId": "root",
"title": "title",
"type": "text",
"content": "{{$uuid}}"
}
> {% client.global.set("createdNoteId", response.body.note.noteId); %}
###
GET {{triliumHost}}/etapi/notes/{{createdNoteId}}/content
Authorization: {{authToken}}
> {% client.global.set("content", response.body); %}
###
GET {{triliumHost}}/etapi/notes?search={{content}}&debug=true
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.results.length === 1);
%}
### Same but with fast search which doesn't look in the content so 0 notes should be found
GET {{triliumHost}}/etapi/notes?search={{content}}&fastSearch=true
Authorization: {{authToken}}
> {%
client.assert(response.status === 200);
client.assert(response.body.results.length === 0);
%}

5
apps/client/.env Normal file
View File

@@ -0,0 +1,5 @@
# The development license key for premium CKEditor features.
# Note: This key must only be used for the Trilium Notes project.
# Expires on: 2025-09-13
VITE_CKEDITOR_KEY=eyJhbGciOiJFUzI1NiJ9.eyJleHAiOjE3NTc3MjE1OTksImp0aSI6ImFiN2E0NjZmLWJlZGMtNDNiYy1iMzU4LTk0NGQ0YWJhY2I3ZiIsImRpc3RyaWJ1dGlvbkNoYW5uZWwiOlsic2giLCJkcnVwYWwiXSwid2hpdGVMYWJlbCI6dHJ1ZSwiZmVhdHVyZXMiOlsiRFJVUCIsIkNNVCIsIkRPIiwiRlAiLCJTQyIsIlRPQyIsIlRQTCIsIlBPRSIsIkNDIiwiTUYiLCJTRUUiLCJFQ0giLCJFSVMiXSwidmMiOiI1MzlkOWY5YyJ9.2rvKPql4hmukyXhEtWPZ8MLxKvzPIwzCdykO653g7IxRRZy2QJpeRszElZx9DakKYZKXekVRAwQKgHxwkgbE_w
VITE_CKEDITOR_ENABLE_INSPECTOR=false

View File

@@ -0,0 +1 @@
VITE_CKEDITOR_ENABLE_INSPECTOR=false

View File

@@ -1,43 +1,44 @@
{
"name": "@triliumnext/client",
"version": "0.94.0",
"version": "0.98.0",
"description": "JQuery-based client for TriliumNext, used for both web and desktop (via Electron)",
"private": true,
"license": "AGPL-3.0-only",
"author": {
"name": "TriliumNext Notes Team",
"name": "Trilium Notes Team",
"email": "contact@eliandoran.me",
"url": "https://github.com/TriliumNext/Notes"
},
"dependencies": {
"@eslint/js": "9.27.0",
"@eslint/js": "9.33.0",
"@excalidraw/excalidraw": "0.18.0",
"@fullcalendar/core": "6.1.17",
"@fullcalendar/daygrid": "6.1.17",
"@fullcalendar/interaction": "6.1.17",
"@fullcalendar/list": "6.1.17",
"@fullcalendar/multimonth": "6.1.17",
"@fullcalendar/timegrid": "6.1.17",
"@mermaid-js/layout-elk": "0.1.7",
"@mind-elixir/node-menu": "1.0.5",
"@fullcalendar/core": "6.1.19",
"@fullcalendar/daygrid": "6.1.19",
"@fullcalendar/interaction": "6.1.19",
"@fullcalendar/list": "6.1.19",
"@fullcalendar/multimonth": "6.1.19",
"@fullcalendar/timegrid": "6.1.19",
"@maplibre/maplibre-gl-leaflet": "0.1.3",
"@mermaid-js/layout-elk": "0.1.9",
"@mind-elixir/node-menu": "5.0.0",
"@popperjs/core": "2.11.8",
"@triliumnext/ckeditor5": "workspace:*",
"@triliumnext/codemirror": "workspace:*",
"@triliumnext/commons": "workspace:*",
"@triliumnext/highlightjs": "workspace:*",
"@triliumnext/share-theme": "workspace:*",
"autocomplete.js": "0.38.1",
"bootstrap": "5.3.6",
"bootstrap": "5.3.7",
"boxicons": "2.1.4",
"dayjs": "1.11.13",
"dayjs-plugin-utc": "0.1.2",
"debounce": "2.2.0",
"draggabilly": "3.0.0",
"force-graph": "1.49.6",
"globals": "16.2.0",
"i18next": "25.2.1",
"force-graph": "1.50.1",
"globals": "16.3.0",
"i18next": "25.4.0",
"i18next-http-backend": "3.0.2",
"jquery": "3.7.1",
"jquery-hotkeys": "0.2.2",
"jquery.fancytree": "2.38.5",
"jsplumb": "2.15.6",
"katex": "0.16.22",
@@ -45,32 +46,43 @@
"leaflet": "1.9.4",
"leaflet-gpx": "2.2.0",
"mark.js": "8.11.1",
"marked": "15.0.12",
"mermaid": "11.6.0",
"mind-elixir": "4.6.0",
"marked": "16.2.0",
"mermaid": "11.10.0",
"mind-elixir": "5.0.6",
"normalize.css": "8.0.1",
"panzoom": "9.4.3",
"react": "19.1.0",
"react-dom": "19.1.0",
"preact": "10.27.1",
"react-i18next": "15.7.0",
"split.js": "1.6.5",
"svg-pan-zoom": "3.6.2",
"tabulator-tables": "6.3.1",
"vanilla-js-wheel-zoom": "9.0.4"
},
"devDependencies": {
"@ckeditor/ckeditor5-inspector": "4.1.0",
"@ckeditor/ckeditor5-inspector": "5.0.0",
"@preact/preset-vite": "2.10.2",
"@types/bootstrap": "5.2.10",
"@types/jquery": "3.5.32",
"@types/leaflet": "1.9.18",
"@types/leaflet": "1.9.20",
"@types/leaflet-gpx": "1.3.7",
"@types/mark.js": "8.11.12",
"@types/react": "19.1.6",
"@types/react-dom": "19.1.5",
"copy-webpack-plugin": "13.0.0",
"happy-dom": "17.5.6",
"@types/tabulator-tables": "6.2.10",
"copy-webpack-plugin": "13.0.1",
"happy-dom": "18.0.1",
"script-loader": "0.7.2",
"vite-plugin-static-copy": "3.0.0"
"vite-plugin-static-copy": "3.1.1"
},
"nx": {
"name": "client"
"name": "client",
"targets": {
"serve": {
"dependsOn": [
"^build"
]
},
"circular-deps": {
"command": "pnpx dpdm -T {projectRoot}/src/**/*.ts --tree=false --warning=false --skip-dynamic-imports=circular"
}
}
}
}

View File

@@ -1,424 +0,0 @@
/*
* Remove template code below
*/
html {
-webkit-text-size-adjust: 100%;
font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif,
'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
'Noto Color Emoji';
line-height: 1.5;
tab-size: 4;
scroll-behavior: smooth;
}
body {
font-family: inherit;
line-height: inherit;
margin: 0;
}
h1,
h2,
p,
pre {
margin: 0;
}
*,
::before,
::after {
box-sizing: border-box;
border-width: 0;
border-style: solid;
border-color: currentColor;
}
h1,
h2 {
font-size: inherit;
font-weight: inherit;
}
a {
color: inherit;
text-decoration: inherit;
}
pre {
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
'Liberation Mono', 'Courier New', monospace;
}
svg {
display: block;
vertical-align: middle;
}
svg {
shape-rendering: auto;
text-rendering: optimizeLegibility;
}
pre {
background-color: rgba(55, 65, 81, 1);
border-radius: 0.25rem;
color: rgba(229, 231, 235, 1);
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
'Liberation Mono', 'Courier New', monospace;
overflow: scroll;
padding: 0.5rem 0.75rem;
}
.shadow {
box-shadow: 0 0 #0000, 0 0 #0000, 0 10px 15px -3px rgba(0, 0, 0, 0.1),
0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.rounded {
border-radius: 1.5rem;
}
.wrapper {
width: 100%;
}
.container {
margin-left: auto;
margin-right: auto;
max-width: 768px;
padding-bottom: 3rem;
padding-left: 1rem;
padding-right: 1rem;
color: rgba(55, 65, 81, 1);
width: 100%;
}
#welcome {
margin-top: 2.5rem;
}
#welcome h1 {
font-size: 3rem;
font-weight: 500;
letter-spacing: -0.025em;
line-height: 1;
}
#welcome span {
display: block;
font-size: 1.875rem;
font-weight: 300;
line-height: 2.25rem;
margin-bottom: 0.5rem;
}
#hero {
align-items: center;
background-color: hsla(214, 62%, 21%, 1);
border: none;
box-sizing: border-box;
color: rgba(55, 65, 81, 1);
display: grid;
grid-template-columns: 1fr;
margin-top: 3.5rem;
}
#hero .text-container {
color: rgba(255, 255, 255, 1);
padding: 3rem 2rem;
}
#hero .text-container h2 {
font-size: 1.5rem;
line-height: 2rem;
position: relative;
}
#hero .text-container h2 svg {
color: hsla(162, 47%, 50%, 1);
height: 2rem;
left: -0.25rem;
position: absolute;
top: 0;
width: 2rem;
}
#hero .text-container h2 span {
margin-left: 2.5rem;
}
#hero .text-container a {
background-color: rgba(255, 255, 255, 1);
border-radius: 0.75rem;
color: rgba(55, 65, 81, 1);
display: inline-block;
margin-top: 1.5rem;
padding: 1rem 2rem;
text-decoration: inherit;
}
#hero .logo-container {
display: none;
justify-content: center;
padding-left: 2rem;
padding-right: 2rem;
}
#hero .logo-container svg {
color: rgba(255, 255, 255, 1);
width: 66.666667%;
}
#middle-content {
align-items: flex-start;
display: grid;
gap: 4rem;
grid-template-columns: 1fr;
margin-top: 3.5rem;
}
#learning-materials {
padding: 2.5rem 2rem;
}
#learning-materials h2 {
font-weight: 500;
font-size: 1.25rem;
letter-spacing: -0.025em;
line-height: 1.75rem;
padding-left: 1rem;
padding-right: 1rem;
}
.list-item-link {
align-items: center;
border-radius: 0.75rem;
display: flex;
margin-top: 1rem;
padding: 1rem;
transition-property: background-color, border-color, color, fill, stroke,
opacity, box-shadow, transform, filter, backdrop-filter,
-webkit-backdrop-filter;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
width: 100%;
}
.list-item-link svg:first-child {
margin-right: 1rem;
height: 1.5rem;
transition-property: background-color, border-color, color, fill, stroke,
opacity, box-shadow, transform, filter, backdrop-filter,
-webkit-backdrop-filter;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
width: 1.5rem;
}
.list-item-link > span {
flex-grow: 1;
font-weight: 400;
transition-property: background-color, border-color, color, fill, stroke,
opacity, box-shadow, transform, filter, backdrop-filter,
-webkit-backdrop-filter;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
}
.list-item-link > span > span {
color: rgba(107, 114, 128, 1);
display: block;
flex-grow: 1;
font-size: 0.75rem;
font-weight: 300;
line-height: 1rem;
transition-property: background-color, border-color, color, fill, stroke,
opacity, box-shadow, transform, filter, backdrop-filter,
-webkit-backdrop-filter;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
}
.list-item-link svg:last-child {
height: 1rem;
transition-property: all;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
width: 1rem;
}
.list-item-link:hover {
color: rgba(255, 255, 255, 1);
background-color: hsla(162, 47%, 50%, 1);
}
.list-item-link:hover > span {
}
.list-item-link:hover > span > span {
color: rgba(243, 244, 246, 1);
}
.list-item-link:hover svg:last-child {
transform: translateX(0.25rem);
}
#other-links {
}
.button-pill {
padding: 1.5rem 2rem;
transition-duration: 300ms;
transition-property: background-color, border-color, color, fill, stroke,
opacity, box-shadow, transform, filter, backdrop-filter,
-webkit-backdrop-filter;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
align-items: center;
display: flex;
}
.button-pill svg {
transition-property: background-color, border-color, color, fill, stroke,
opacity, box-shadow, transform, filter, backdrop-filter,
-webkit-backdrop-filter;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
flex-shrink: 0;
width: 3rem;
}
.button-pill > span {
letter-spacing: -0.025em;
font-weight: 400;
font-size: 1.125rem;
line-height: 1.75rem;
padding-left: 1rem;
padding-right: 1rem;
}
.button-pill span span {
display: block;
font-size: 0.875rem;
font-weight: 300;
line-height: 1.25rem;
}
.button-pill:hover svg,
.button-pill:hover {
color: rgba(255, 255, 255, 1) !important;
}
#nx-console:hover {
background-color: rgba(0, 122, 204, 1);
}
#nx-console svg {
color: rgba(0, 122, 204, 1);
}
#nx-console-jetbrains {
margin-top: 2rem;
}
#nx-console-jetbrains:hover {
background-color: rgba(255, 49, 140, 1);
}
#nx-console-jetbrains svg {
color: rgba(255, 49, 140, 1);
}
#nx-repo:hover {
background-color: rgba(24, 23, 23, 1);
}
#nx-repo svg {
color: rgba(24, 23, 23, 1);
}
#nx-cloud {
margin-bottom: 2rem;
margin-top: 2rem;
padding: 2.5rem 2rem;
}
#nx-cloud > div {
align-items: center;
display: flex;
}
#nx-cloud > div svg {
border-radius: 0.375rem;
flex-shrink: 0;
width: 3rem;
}
#nx-cloud > div h2 {
font-size: 1.125rem;
font-weight: 400;
letter-spacing: -0.025em;
line-height: 1.75rem;
padding-left: 1rem;
padding-right: 1rem;
}
#nx-cloud > div h2 span {
display: block;
font-size: 0.875rem;
font-weight: 300;
line-height: 1.25rem;
}
#nx-cloud p {
font-size: 1rem;
line-height: 1.5rem;
margin-top: 1rem;
}
#nx-cloud pre {
margin-top: 1rem;
}
#nx-cloud a {
color: rgba(107, 114, 128, 1);
display: block;
font-size: 0.875rem;
line-height: 1.25rem;
margin-top: 1.5rem;
text-align: right;
}
#nx-cloud a:hover {
text-decoration: underline;
}
#commands {
padding: 2.5rem 2rem;
margin-top: 3.5rem;
}
#commands h2 {
font-size: 1.25rem;
font-weight: 400;
letter-spacing: -0.025em;
line-height: 1.75rem;
padding-left: 1rem;
padding-right: 1rem;
}
#commands p {
font-size: 1rem;
font-weight: 300;
line-height: 1.5rem;
margin-top: 1rem;
padding-left: 1rem;
padding-right: 1rem;
}
details {
align-items: center;
display: flex;
margin-top: 1rem;
padding-left: 1rem;
padding-right: 1rem;
width: 100%;
}
details pre > span {
color: rgba(181, 181, 181, 1);
}
summary {
border-radius: 0.5rem;
display: flex;
font-weight: 400;
padding: 0.5rem;
cursor: pointer;
transition-property: background-color, border-color, color, fill, stroke,
opacity, box-shadow, transform, filter, backdrop-filter,
-webkit-backdrop-filter;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
}
summary:hover {
background-color: rgba(243, 244, 246, 1);
}
summary svg {
height: 1.5rem;
margin-right: 1rem;
width: 1.5rem;
}
#love {
color: rgba(107, 114, 128, 1);
font-size: 0.875rem;
line-height: 1.25rem;
margin-top: 3.5rem;
opacity: 0.6;
text-align: center;
}
#love svg {
color: rgba(252, 165, 165, 1);
width: 1.25rem;
height: 1.25rem;
display: inline;
margin-top: -0.25rem;
}
@media screen and (min-width: 768px) {
#hero {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
#hero .logo-container {
display: flex;
}
#middle-content {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

View File

@@ -1,21 +0,0 @@
import { AppElement } from './app.element';
describe('AppElement', () => {
let app: AppElement;
beforeEach(() => {
app = new AppElement();
});
it('should create successfully', () => {
expect(app).toBeTruthy();
});
it('should have a greeting', () => {
app.connectedCallback();
expect(app.querySelector('h1').innerHTML).toContain(
'Welcome @triliumnext/client'
);
});
});

View File

@@ -1,409 +0,0 @@
import './app.element.css';
export class AppElement extends HTMLElement {
public static observedAttributes = [
];
connectedCallback() {
const title = '@triliumnext/client';
this.innerHTML = `
<div class="wrapper">
<div class="container">
<!-- WELCOME -->
<div id="welcome">
<h1>
<span> Hello there, </span>
Welcome ${title} 👋
</h1>
</div>
<!-- HERO -->
<div id="hero" class="rounded">
<div class="text-container">
<h2>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"
/>
</svg>
<span>You&apos;re up and running</span>
</h2>
<a href="#commands"> What&apos;s next? </a>
</div>
<div class="logo-container">
<svg
fill="currentColor"
role="img"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M11.987 14.138l-3.132 4.923-5.193-8.427-.012 8.822H0V4.544h3.691l5.247 8.833.005-3.998 3.044 4.759zm.601-5.761c.024-.048 0-3.784.008-3.833h-3.65c.002.059-.005 3.776-.003 3.833h3.645zm5.634 4.134a2.061 2.061 0 0 0-1.969 1.336 1.963 1.963 0 0 1 2.343-.739c.396.161.917.422 1.33.283a2.1 2.1 0 0 0-1.704-.88zm3.39 1.061c-.375-.13-.8-.277-1.109-.681-.06-.08-.116-.17-.176-.265a2.143 2.143 0 0 0-.533-.642c-.294-.216-.68-.322-1.18-.322a2.482 2.482 0 0 0-2.294 1.536 2.325 2.325 0 0 1 4.002.388.75.75 0 0 0 .836.334c.493-.105.46.36 1.203.518v-.133c-.003-.446-.246-.55-.75-.733zm2.024 1.266a.723.723 0 0 0 .347-.638c-.01-2.957-2.41-5.487-5.37-5.487a5.364 5.364 0 0 0-4.487 2.418c-.01-.026-1.522-2.39-1.538-2.418H8.943l3.463 5.423-3.379 5.32h3.54l1.54-2.366 1.568 2.366h3.541l-3.21-5.052a.7.7 0 0 1-.084-.32 2.69 2.69 0 0 1 2.69-2.691h.001c1.488 0 1.736.89 2.057 1.308.634.826 1.9.464 1.9 1.541a.707.707 0 0 0 1.066.596zm.35.133c-.173.372-.56.338-.755.639-.176.271.114.412.114.412s.337.156.538-.311c.104-.231.14-.488.103-.74z"
/>
</svg>
</div>
</div>
<!-- MIDDLE CONTENT -->
<div id="middle-content">
<div id="learning-materials" class="rounded shadow">
<h2>Learning materials</h2>
<a href="https://nx.dev/getting-started/intro?utm_source=nx-project" target="_blank" rel="noreferrer" class="list-item-link">
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253"
/>
</svg>
<span>
Documentation
<span> Everything is in there </span>
</span>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M9 5l7 7-7 7"
/>
</svg>
</a>
<a href="https://nx.dev/blog/?utm_source=nx-project" target="_blank" rel="noreferrer" class="list-item-link">
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M19 20H5a2 2 0 01-2-2V6a2 2 0 012-2h10a2 2 0 012 2v1m2 13a2 2 0 01-2-2V7m2 13a2 2 0 002-2V9a2 2 0 00-2-2h-2m-4-3H9M7 16h6M7 8h6v4H7V8z"
/>
</svg>
<span>
Blog
<span> Changelog, features & events </span>
</span>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M9 5l7 7-7 7"
/>
</svg>
</a>
<a href="https://www.youtube.com/@NxDevtools/videos?utm_source=nx-project&sub_confirmation=1" target="_blank" rel="noreferrer" class="list-item-link">
<svg
role="img"
viewBox="0 0 24 24"
fill="currentColor"
xmlns="http://www.w3.org/2000/svg"
>
<title>YouTube</title>
<path
d="M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"
/>
</svg>
<span>
YouTube channel
<span> Nx Show, talks & tutorials </span>
</span>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M9 5l7 7-7 7"
/>
</svg>
</a>
<a href="https://nx.dev/react-tutorial/1-code-generation?utm_source=nx-project" target="_blank" rel="noreferrer" class="list-item-link">
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M15 15l-2 5L9 9l11 4-5 2zm0 0l5 5M7.188 2.239l.777 2.897M5.136 7.965l-2.898-.777M13.95 4.05l-2.122 2.122m-5.657 5.656l-2.12 2.122"
/>
</svg>
<span>
Interactive tutorials
<span> Create an app, step-by-step </span>
</span>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M9 5l7 7-7 7"
/>
</svg>
</a>
<a href="https://nxplaybook.com/?utm_source=nx-project" target="_blank" rel="noreferrer" class="list-item-link">
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path d="M12 14l9-5-9-5-9 5 9 5z" />
<path
d="M12 14l6.16-3.422a12.083 12.083 0 01.665 6.479A11.952 11.952 0 0012 20.055a11.952 11.952 0 00-6.824-2.998 12.078 12.078 0 01.665-6.479L12 14z"
/>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M12 14l9-5-9-5-9 5 9 5zm0 0l6.16-3.422a12.083 12.083 0 01.665 6.479A11.952 11.952 0 0012 20.055a11.952 11.952 0 00-6.824-2.998 12.078 12.078 0 01.665-6.479L12 14zm-4 6v-7.5l4-2.222"
/>
</svg>
<span>
Video courses
<span> Nx custom courses </span>
</span>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M9 5l7 7-7 7"
/>
</svg>
</a>
</div>
<div id="other-links">
<a id="nx-console" class="button-pill rounded shadow" href="https://marketplace.visualstudio.com/items?itemName=nrwl.angular-console&utm_source=nx-project" target="_blank" rel="noreferrer">
<svg
fill="currentColor"
role="img"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<title>Visual Studio Code</title>
<path
d="M23.15 2.587L18.21.21a1.494 1.494 0 0 0-1.705.29l-9.46 8.63-4.12-3.128a.999.999 0 0 0-1.276.057L.327 7.261A1 1 0 0 0 .326 8.74L3.899 12 .326 15.26a1 1 0 0 0 .001 1.479L1.65 17.94a.999.999 0 0 0 1.276.057l4.12-3.128 9.46 8.63a1.492 1.492 0 0 0 1.704.29l4.942-2.377A1.5 1.5 0 0 0 24 20.06V3.939a1.5 1.5 0 0 0-.85-1.352zm-5.146 14.861L10.826 12l7.178-5.448v10.896z"
/>
</svg>
<span>
Install Nx Console for VSCode
<span>The official VSCode extension for Nx.</span>
</span>
</a>
<a
id="nx-console-jetbrains"
class="button-pill rounded shadow"
href="https://plugins.jetbrains.com/plugin/21060-nx-console"
target="_blank"
rel="noreferrer"
>
<svg
height="48"
width="48"
viewBox="20 20 60 60"
xmlns="http://www.w3.org/2000/svg"
>
<path d="m22.5 22.5h60v60h-60z" />
<g fill="#fff">
<path d="m29.03 71.25h22.5v3.75h-22.5z" />
<path d="m28.09 38 1.67-1.58a1.88 1.88 0 0 0 1.47.87c.64 0 1.06-.44 1.06-1.31v-5.98h2.58v6a3.48 3.48 0 0 1 -.87 2.6 3.56 3.56 0 0 1 -2.57.95 3.84 3.84 0 0 1 -3.34-1.55z" />
<path d="m36 30h7.53v2.19h-5v1.44h4.49v2h-4.42v1.49h5v2.21h-7.6z" />
<path d="m47.23 32.29h-2.8v-2.29h8.21v2.27h-2.81v7.1h-2.6z" />
<path d="m29.13 43.08h4.42a3.53 3.53 0 0 1 2.55.83 2.09 2.09 0 0 1 .6 1.53 2.16 2.16 0 0 1 -1.44 2.09 2.27 2.27 0 0 1 1.86 2.29c0 1.61-1.31 2.59-3.55 2.59h-4.44zm5 2.89c0-.52-.42-.8-1.18-.8h-1.29v1.64h1.24c.79 0 1.25-.26 1.25-.81zm-.9 2.66h-1.57v1.73h1.62c.8 0 1.24-.31 1.24-.86 0-.5-.4-.87-1.27-.87z" />
<path d="m38 43.08h4.1a4.19 4.19 0 0 1 3 1 2.93 2.93 0 0 1 .9 2.19 3 3 0 0 1 -1.93 2.89l2.24 3.27h-3l-1.88-2.84h-.87v2.84h-2.56zm4 4.5c.87 0 1.39-.43 1.39-1.11 0-.75-.54-1.12-1.4-1.12h-1.44v2.26z" />
<path d="m49.59 43h2.5l4 9.44h-2.79l-.67-1.69h-3.63l-.67 1.69h-2.71zm2.27 5.73-1-2.65-1.06 2.65z" />
<path d="m56.46 43.05h2.6v9.37h-2.6z" />
<path d="m60.06 43.05h2.42l3.37 5v-5h2.57v9.37h-2.26l-3.53-5.14v5.14h-2.57z" />
<path d="m68.86 51 1.45-1.73a4.84 4.84 0 0 0 3 1.13c.71 0 1.08-.24 1.08-.65 0-.4-.31-.6-1.59-.91-2-.46-3.53-1-3.53-2.93 0-1.74 1.37-3 3.62-3a5.89 5.89 0 0 1 3.86 1.25l-1.26 1.84a4.63 4.63 0 0 0 -2.62-.92c-.63 0-.94.25-.94.6 0 .42.32.61 1.63.91 2.14.46 3.44 1.16 3.44 2.91 0 1.91-1.51 3-3.79 3a6.58 6.58 0 0 1 -4.35-1.5z" />
</g>
</svg>
<span>
Install Nx Console for JetBrains
<span>
Available for WebStorm, Intellij IDEA Ultimate and more!
</span>
</span>
</a>
<div id="nx-cloud" class="rounded shadow">
<div>
<svg id="nx-cloud-logo" role="img" xmlns="http://www.w3.org/2000/svg" stroke="currentColor" fill="transparent" viewBox="0 0 24 24">
<path stroke-width="2" d="M23 3.75V6.5c-3.036 0-5.5 2.464-5.5 5.5s-2.464 5.5-5.5 5.5-5.5 2.464-5.5 5.5H3.75C2.232 23 1 21.768 1 20.25V3.75C1 2.232 2.232 1 3.75 1h16.5C21.768 1 23 2.232 23 3.75Z" />
<path stroke-width="2" d="M23 6v14.1667C23 21.7307 21.7307 23 20.1667 23H6c0-3.128 2.53867-5.6667 5.6667-5.6667 3.128 0 5.6666-2.5386 5.6666-5.6666C17.3333 8.53867 19.872 6 23 6Z" />
</svg>
<h2>
Nx Cloud
<span>
Enable faster CI & better DX
</span>
</h2>
</div>
<p>
You can activate distributed tasks executions and caching by
running:
</p>
<pre>nx connect</pre>
<a href="https://nx.app/?utm_source=nx-project" target="_blank" rel="noreferrer"> What is Nx Cloud? </a>
</div>
<a id="nx-repo" class="button-pill rounded shadow" href="https://github.com/nrwl/nx?utm_source=nx-project" target="_blank" rel="noreferrer">
<svg
fill="currentColor"
role="img"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"
/>
</svg>
<span>
Nx is open source
<span> Love Nx? Give us a star! </span>
</span>
</a>
</div>
</div>
<!-- COMMANDS -->
<div id="commands" class="rounded shadow">
<h2>Next steps</h2>
<p>Here are some things you can do with Nx:</p>
<details>
<summary>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"
/>
</svg>
Add UI library
</summary>
<pre><span># Generate UI lib</span>
nx g @nx/angular:lib ui
<span># Add a component</span>
nx g @nx/angular:component ui/src/lib/button</pre>
</details>
<details>
<summary>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"
/>
</svg>
View interactive project graph
</summary>
<pre>nx graph</pre>
</details>
<details>
<summary>
<svg
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"
/>
</svg>
Run affected commands
</summary>
<pre><span># see what&apos;s been affected by changes</span>
nx affected:graph
<span># run tests for current changes</span>
nx affected:test
<span># run e2e tests for current changes</span>
nx affected:e2e</pre>
</details>
</div>
<p id="love">
Carefully crafted with
<svg
fill="currentColor"
stroke="none"
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"
/>
</svg>
</p>
</div>
</div>
`;
}
}
customElements.define('triliumnext-root', AppElement);

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,14 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Client</title>
<base href="/" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="icon" type="image/x-icon" href="favicon.ico" />
</head>
<body>
<triliumnext-root></triliumnext-root>
</body>
</html>

View File

@@ -1 +0,0 @@
import './app/app.element';

View File

@@ -1 +0,0 @@
/* You can add global styles to this file, and also import other style files */

View File

@@ -1,5 +1,4 @@
import froca from "../services/froca.js";
import bundleService from "../services/bundle.js";
import RootCommandExecutor from "./root_command_executor.js";
import Entrypoints, { type SqlExecuteResults } from "./entrypoints.js";
import options from "../services/options.js";
@@ -28,6 +27,10 @@ import type { NativeImage, TouchBar } from "electron";
import TouchBarComponent from "./touch_bar.js";
import type { CKTextEditor } from "@triliumnext/ckeditor5";
import type CodeMirror from "@triliumnext/codemirror";
import { StartupChecks } from "./startup_checks.js";
import type { CreateNoteOpts } from "../services/note_create.js";
import { ColumnComponent } from "tabulator-tables";
import { ChooseNoteTypeCallback } from "../widgets/dialogs/note_type_chooser.jsx";
interface Layout {
getRootWidget: (appContext: AppContext) => RootWidget;
@@ -90,7 +93,9 @@ export type CommandMappings = {
closeTocCommand: CommandData;
closeHlt: CommandData;
showLaunchBarSubtree: CommandData;
showRevisions: CommandData;
showRevisions: CommandData & {
noteId?: string | null;
};
showLlmChat: CommandData;
createAiChat: CommandData;
showOptions: CommandData & {
@@ -122,13 +127,17 @@ export type CommandMappings = {
showImportDialog: CommandData & { noteId: string };
openNewNoteSplit: NoteCommandData;
openInWindow: NoteCommandData;
openInPopup: CommandData & { noteIdOrPath: string; };
openNoteInNewTab: CommandData;
openNoteInNewSplit: CommandData;
openNoteInNewWindow: CommandData;
openAboutDialog: CommandData;
hideFloatingButtons: {};
hideLeftPane: CommandData;
showCpuArchWarning: CommandData;
showLeftPane: CommandData;
showAttachments: CommandData;
showSearchHistory: CommandData;
hoistNote: CommandData & { noteId: string };
leaveProtectedSession: CommandData;
enterProtectedSession: CommandData;
@@ -139,6 +148,7 @@ export type CommandMappings = {
};
openInTab: ContextMenuCommandData;
openNoteInSplit: ContextMenuCommandData;
openNoteInPopup: ContextMenuCommandData;
toggleNoteHoisting: ContextMenuCommandData;
insertNoteAfter: ContextMenuCommandData;
insertChildNote: ContextMenuCommandData;
@@ -168,7 +178,7 @@ export type CommandMappings = {
deleteNotes: ContextMenuCommandData;
importIntoNote: ContextMenuCommandData;
exportNote: ContextMenuCommandData;
searchInSubtree: ContextMenuCommandData;
searchInSubtree: CommandData & { notePath: string; };
moveNoteUp: ContextMenuCommandData;
moveNoteDown: ContextMenuCommandData;
moveNoteUpInHierarchy: ContextMenuCommandData;
@@ -257,10 +267,76 @@ export type CommandMappings = {
closeThisNoteSplit: CommandData;
moveThisNoteSplit: CommandData & { isMovingLeft: boolean };
jumpToNote: CommandData;
commandPalette: CommandData;
// Keyboard shortcuts
backInNoteHistory: CommandData;
forwardInNoteHistory: CommandData;
forceSaveRevision: CommandData;
scrollToActiveNote: CommandData;
quickSearch: CommandData;
collapseTree: CommandData;
createNoteAfter: CommandData;
createNoteInto: CommandData;
addNoteAboveToSelection: CommandData;
addNoteBelowToSelection: CommandData;
openNewTab: CommandData;
activateNextTab: CommandData;
activatePreviousTab: CommandData;
openNewWindow: CommandData;
toggleTray: CommandData;
firstTab: CommandData;
secondTab: CommandData;
thirdTab: CommandData;
fourthTab: CommandData;
fifthTab: CommandData;
sixthTab: CommandData;
seventhTab: CommandData;
eigthTab: CommandData;
ninthTab: CommandData;
lastTab: CommandData;
showNoteSource: CommandData;
showSQLConsole: CommandData;
showBackendLog: CommandData;
showCheatsheet: CommandData;
showHelp: CommandData;
addLinkToText: CommandData;
followLinkUnderCursor: CommandData;
insertDateTimeToText: CommandData;
pasteMarkdownIntoText: CommandData;
cutIntoNote: CommandData;
addIncludeNoteToText: CommandData;
editReadOnlyNote: CommandData;
toggleRibbonTabClassicEditor: CommandData;
toggleRibbonTabBasicProperties: CommandData;
toggleRibbonTabBookProperties: CommandData;
toggleRibbonTabFileProperties: CommandData;
toggleRibbonTabImageProperties: CommandData;
toggleRibbonTabOwnedAttributes: CommandData;
toggleRibbonTabInheritedAttributes: CommandData;
toggleRibbonTabPromotedAttributes: CommandData;
toggleRibbonTabNoteMap: CommandData;
toggleRibbonTabNoteInfo: CommandData;
toggleRibbonTabNotePaths: CommandData;
toggleRibbonTabSimilarNotes: CommandData;
toggleRightPane: CommandData;
printActiveNote: CommandData;
exportAsPdf: CommandData;
openNoteExternally: CommandData;
renderActiveNote: CommandData;
unhoist: CommandData;
reloadFrontendApp: CommandData;
openDevTools: CommandData;
findInText: CommandData;
toggleLeftPane: CommandData;
toggleFullscreen: CommandData;
zoomOut: CommandData;
zoomIn: CommandData;
zoomReset: CommandData;
copyWithoutFormatting: CommandData;
// Geomap
deleteFromMap: { noteId: string };
openGeoLocation: { noteId: string; event: JQuery.MouseDownEvent };
toggleZenMode: CommandData;
@@ -274,11 +350,30 @@ export type CommandMappings = {
geoMapCreateChildNote: CommandData;
// Table view
addNewRow: CommandData & {
customOpts: CreateNoteOpts;
parentNotePath?: string;
};
addNewTableColumn: CommandData & {
columnToEdit?: ColumnComponent;
referenceColumn?: ColumnComponent;
direction?: "before" | "after";
type?: "label" | "relation";
};
deleteTableColumn: CommandData & {
columnToDelete?: ColumnComponent;
};
buildTouchBar: CommandData & {
TouchBar: typeof TouchBar;
buildIcon(name: string): NativeImage;
};
refreshTouchBar: CommandData;
reloadTextEditor: CommandData;
chooseNoteType: CommandData & {
callback: ChooseNoteTypeCallback
}
};
type EventMappings = {
@@ -467,13 +562,21 @@ export class AppContext extends Component {
this.tabManager.loadTabs();
const bundleService = (await import("../services/bundle.js")).default;
setTimeout(() => bundleService.executeStartupBundles(), 2000);
}
initComponents() {
this.tabManager = new TabManager();
this.components = [this.tabManager, new RootCommandExecutor(), new Entrypoints(), new MainTreeExecutors(), new ShortcutComponent()];
this.components = [
this.tabManager,
new RootCommandExecutor(),
new Entrypoints(),
new MainTreeExecutors(),
new ShortcutComponent(),
new StartupChecks()
];
if (utils.isMobile()) {
this.components.push(new MobileScreenSwitcherExecutor());

View File

@@ -93,11 +93,7 @@ export class TypedComponent<ChildT extends TypedComponent<ChildT>> {
if (fun) {
return this.callMethod(fun, data);
} else {
if (!this.parent) {
throw new Error(`Component "${this.componentId}" does not have a parent attached to propagate a command.`);
}
} else if (this.parent) {
return this.parent.triggerCommand(name, data);
}
}

View File

@@ -30,13 +30,6 @@ interface CreateChildrenResponse {
export default class Entrypoints extends Component {
constructor() {
super();
if (jQuery.hotkeys) {
// hot keys are active also inside inputs and content editables
jQuery.hotkeys.options.filterInputAcceptingElements = false;
jQuery.hotkeys.options.filterContentEditable = false;
jQuery.hotkeys.options.filterTextInputs = false;
}
}
openDevToolsCommand() {
@@ -113,7 +106,9 @@ export default class Entrypoints extends Component {
if (win.isFullScreenable()) {
win.setFullScreen(!win.isFullScreen());
}
} // outside of electron this is handled by the browser
} else {
document.documentElement.requestFullscreen();
}
}
reloadFrontendAppCommand() {

View File

@@ -12,6 +12,7 @@ import type FNote from "../entities/fnote.js";
import type TypeWidget from "../widgets/type_widgets/type_widget.js";
import type { CKTextEditor } from "@triliumnext/ckeditor5";
import type CodeMirror from "@triliumnext/codemirror";
import { closeActiveDialog } from "../services/dialog.js";
export interface SetNoteOpts {
triggerSwitchEvent?: unknown;
@@ -83,7 +84,7 @@ class NoteContext extends Component implements EventListener<"entitiesReloaded">
await this.triggerEvent("beforeNoteSwitch", { noteContext: this });
utils.closeActiveDialog();
closeActiveDialog();
this.notePath = resolvedNotePath;
this.viewScope = opts.viewScope;
@@ -269,14 +270,32 @@ class NoteContext extends Component implements EventListener<"entitiesReloaded">
return true;
}
const blob = await this.note.getBlob();
if (!blob) {
return false;
// Store the initial decision about read-only status in the viewScope
// This will be "remembered" until the viewScope is refreshed
if (!this.viewScope) {
this.resetViewScope();
}
const sizeLimit = this.note.type === "text" ? options.getInt("autoReadonlySizeText") : options.getInt("autoReadonlySizeCode");
const viewScope = this.viewScope!;
return sizeLimit && blob.contentLength > sizeLimit && !this.note.isLabelTruthy("autoReadOnlyDisabled");
if (viewScope.isReadOnly === undefined) {
const blob = await this.note.getBlob();
if (!blob) {
viewScope.isReadOnly = false;
return false;
}
const sizeLimit = this.note.type === "text"
? options.getInt("autoReadonlySizeText")
: options.getInt("autoReadonlySizeCode");
viewScope.isReadOnly = Boolean(sizeLimit &&
blob.contentLength > sizeLimit &&
!this.note.isLabelTruthy("autoReadOnlyDisabled"));
}
// Return the cached decision, which won't change until viewScope is reset
return viewScope.isReadOnly || false;
}
async entitiesReloadedEvent({ loadResults }: EventData<"entitiesReloaded">) {
@@ -296,14 +315,39 @@ class NoteContext extends Component implements EventListener<"entitiesReloaded">
}
hasNoteList() {
return (
this.note &&
["default", "contextual-help"].includes(this.viewScope?.viewMode ?? "") &&
(this.note.hasChildren() || this.note.getLabelValue("viewType") === "calendar") &&
["book", "text", "code"].includes(this.note.type) &&
this.note.mime !== "text/x-sqlite;schema=trilium" &&
!this.note.isLabelTruthy("hideChildrenOverview")
);
const note = this.note;
if (!note) {
return false;
}
if (!["default", "contextual-help"].includes(this.viewScope?.viewMode ?? "")) {
return false;
}
// Collections must always display a note list, even if no children.
const viewType = note.getLabelValue("viewType") ?? "grid";
if (!["list", "grid"].includes(viewType)) {
return true;
}
if (!note.hasChildren()) {
return false;
}
if (!["book", "text", "code"].includes(note.type)) {
return false;
}
if (note.mime === "text/x-sqlite;schema=trilium") {
return false;
}
if (note.isLabelTruthy("hideChildrenOverview")) {
return false;
}
return true;
}
async getTextEditor(callback?: GetTextEditorCallback) {

View File

@@ -0,0 +1,26 @@
import server from "../services/server";
import Component from "./component";
// TODO: Deduplicate.
interface CpuArchResponse {
isCpuArchMismatch: boolean;
}
export class StartupChecks extends Component {
constructor() {
super();
this.checkCpuArchMismatch();
}
async checkCpuArchMismatch() {
try {
const response = await server.get("system-checks") as CpuArchResponse;
if (response.isCpuArchMismatch) {
this.triggerCommand("showCpuArchWarning", {});
}
} catch (error) {
console.warn("Could not check CPU arch status:", error);
}
}
}

View File

@@ -688,7 +688,7 @@ export default class TabManager extends Component {
const titleFragments = [
// it helps to navigate in history if note title is included in the title
await activeNoteContext.getNavigationTitle(),
"TriliumNext Notes"
"Trilium Notes"
].filter(Boolean);
document.title = titleFragments.join(" - ");

View File

@@ -8,11 +8,11 @@ import electronContextMenu from "./menus/electron_context_menu.js";
import glob from "./services/glob.js";
import { t } from "./services/i18n.js";
import options from "./services/options.js";
import server from "./services/server.js";
import type ElectronRemote from "@electron/remote";
import type Electron from "electron";
import "./stylesheets/bootstrap.scss";
import "boxicons/css/boxicons.min.css";
import "jquery-hotkeys";
import "autocomplete.js/index_jquery.js";
await appContext.earlyInit();

View File

@@ -1,7 +1,6 @@
import server from "../services/server.js";
import noteAttributeCache from "../services/note_attribute_cache.js";
import ws from "../services/ws.js";
import froca from "../services/froca.js";
import protectedSessionHolder from "../services/protected_session_holder.js";
import cssClassManager from "../services/css_class_manager.js";
import type { Froca } from "../services/froca-interface.js";
@@ -28,7 +27,6 @@ const NOTE_TYPE_ICONS = {
doc: "bx bxs-file-doc",
contentWidget: "bx bxs-widget",
mindMap: "bx bx-sitemap",
geoMap: "bx bx-map-alt",
aiChat: "bx bx-bot"
};
@@ -37,7 +35,7 @@ const NOTE_TYPE_ICONS = {
* end user. Those types should be used only for checking against, they are
* not for direct use.
*/
export type NoteType = "file" | "image" | "search" | "noteMap" | "launcher" | "doc" | "contentWidget" | "text" | "relationMap" | "render" | "canvas" | "mermaid" | "book" | "webView" | "code" | "mindMap" | "geoMap" | "aiChat";
export type NoteType = "file" | "image" | "search" | "noteMap" | "launcher" | "doc" | "contentWidget" | "text" | "relationMap" | "render" | "canvas" | "mermaid" | "book" | "webView" | "code" | "mindMap" | "aiChat";
export interface NotePathRecord {
isArchived: boolean;
@@ -258,6 +256,20 @@ class FNote {
return this.children;
}
async getSubtreeNoteIds() {
let noteIds: (string | string[])[] = [];
for (const child of await this.getChildNotes()) {
noteIds.push(child.noteId);
noteIds.push(await child.getSubtreeNoteIds());
}
return noteIds.flat();
}
async getSubtreeNotes() {
const noteIds = await this.getSubtreeNoteIds();
return this.froca.getNotes(noteIds);
}
async getChildNotes() {
return await this.froca.getNotes(this.children);
}
@@ -410,8 +422,8 @@ class FNote {
const notePaths: NotePathRecord[] = this.getAllNotePaths().map((path) => ({
notePath: path,
isInHoistedSubTree: isHoistedRoot || path.includes(hoistedNoteId),
isArchived: path.some((noteId) => froca.notes[noteId].isArchived),
isSearch: path.some((noteId) => froca.notes[noteId].type === "search"),
isArchived: path.some((noteId) => this.froca.notes[noteId].isArchived),
isSearch: path.some((noteId) => this.froca.notes[noteId].type === "search"),
isHidden: path.includes("_hidden")
}));
@@ -982,7 +994,7 @@ class FNote {
continue;
}
const parentNote = froca.notes[parentNoteId];
const parentNote = this.froca.notes[parentNoteId];
if (!parentNote || parentNote.type === "search") {
continue;

View File

@@ -46,28 +46,7 @@ import SharedInfoWidget from "../widgets/shared_info.js";
import FindWidget from "../widgets/find.js";
import TocWidget from "../widgets/toc.js";
import HighlightsListWidget from "../widgets/highlights_list.js";
import BulkActionsDialog from "../widgets/dialogs/bulk_actions.js";
import AboutDialog from "../widgets/dialogs/about.js";
import HelpDialog from "../widgets/dialogs/help.js";
import RecentChangesDialog from "../widgets/dialogs/recent_changes.js";
import BranchPrefixDialog from "../widgets/dialogs/branch_prefix.js";
import SortChildNotesDialog from "../widgets/dialogs/sort_child_notes.js";
import PasswordNoteSetDialog from "../widgets/dialogs/password_not_set.js";
import IncludeNoteDialog from "../widgets/dialogs/include_note.js";
import NoteTypeChooserDialog from "../widgets/dialogs/note_type_chooser.js";
import JumpToNoteDialog from "../widgets/dialogs/jump_to_note.js";
import AddLinkDialog from "../widgets/dialogs/add_link.js";
import CloneToDialog from "../widgets/dialogs/clone_to.js";
import MoveToDialog from "../widgets/dialogs/move_to.js";
import ImportDialog from "../widgets/dialogs/import.js";
import ExportDialog from "../widgets/dialogs/export.js";
import MarkdownImportDialog from "../widgets/dialogs/markdown_import.js";
import ProtectedSessionPasswordDialog from "../widgets/dialogs/protected_session_password.js";
import RevisionsDialog from "../widgets/dialogs/revisions.js";
import DeleteNotesDialog from "../widgets/dialogs/delete_notes.js";
import InfoDialog from "../widgets/dialogs/info.js";
import ConfirmDialog from "../widgets/dialogs/confirm.js";
import PromptDialog from "../widgets/dialogs/prompt.js";
import FloatingButtons from "../widgets/floating_buttons/floating_buttons.js";
import RelationMapButtons from "../widgets/floating_buttons/relation_map_buttons.js";
import SvgExportButton from "../widgets/floating_buttons/svg_export_button.js";
@@ -83,7 +62,7 @@ import CopyImageReferenceButton from "../widgets/floating_buttons/copy_image_ref
import ScrollPaddingWidget from "../widgets/scroll_padding.js";
import ClassicEditorToolbar from "../widgets/ribbon_widgets/classic_editor_toolbar.js";
import options from "../services/options.js";
import utils, { hasTouchBar } from "../services/utils.js";
import utils from "../services/utils.js";
import GeoMapButtons from "../widgets/floating_buttons/geo_map_button.js";
import ContextualHelpButton from "../widgets/floating_buttons/help_button.js";
import CloseZenButton from "../widgets/close_zen_button.js";
@@ -229,7 +208,7 @@ export default class DesktopLayout {
.child(new PromotedAttributesWidget())
.child(new SqlTableSchemasWidget())
.child(new NoteDetailWidget())
.child(new NoteListWidget())
.child(new NoteListWidget(false))
.child(new SearchResultWidget())
.child(new SqlResultWidget())
.child(new ScrollPaddingWidget())

View File

@@ -21,6 +21,16 @@ import ConfirmDialog from "../widgets/dialogs/confirm.js";
import RevisionsDialog from "../widgets/dialogs/revisions.js";
import DeleteNotesDialog from "../widgets/dialogs/delete_notes.js";
import InfoDialog from "../widgets/dialogs/info.js";
import IncorrectCpuArchDialog from "../widgets/dialogs/incorrect_cpu_arch.js";
import PopupEditorDialog from "../widgets/dialogs/popup_editor.js";
import FlexContainer from "../widgets/containers/flex_container.js";
import NoteIconWidget from "../widgets/note_icon.js";
import NoteTitleWidget from "../widgets/note_title.js";
import ClassicEditorToolbar from "../widgets/ribbon_widgets/classic_editor_toolbar.js";
import PromotedAttributesWidget from "../widgets/ribbon_widgets/promoted_attributes.js";
import NoteDetailWidget from "../widgets/note_detail.js";
import NoteListWidget from "../widgets/note_list.js";
import { CallToActionDialog } from "../widgets/dialogs/call_to_action.jsx";
export function applyModals(rootContainer: RootContainer) {
rootContainer
@@ -45,4 +55,17 @@ export function applyModals(rootContainer: RootContainer) {
.child(new InfoDialog())
.child(new ConfirmDialog())
.child(new PromptDialog())
.child(new IncorrectCpuArchDialog())
.child(new PopupEditorDialog()
.child(new FlexContainer("row")
.class("title-row")
.css("align-items", "center")
.cssBlock(".title-row > * { margin: 5px; }")
.child(new NoteIconWidget())
.child(new NoteTitleWidget()))
.child(new ClassicEditorToolbar())
.child(new PromotedAttributesWidget())
.child(new NoteDetailWidget())
.child(new NoteListWidget(true)))
.child(new CallToActionDialog());
}

View File

@@ -26,6 +26,7 @@ import TabRowWidget from "../widgets/tab_row.js";
import RefreshButton from "../widgets/floating_buttons/refresh_button.js";
import MobileEditorToolbar from "../widgets/ribbon_widgets/mobile_editor_toolbar.js";
import { applyModals } from "./layout_commons.js";
import CloseZenButton from "../widgets/close_zen_button.js";
const MOBILE_CSS = `
<style>
@@ -162,7 +163,7 @@ export default class MobileLayout {
.filling()
.contentSized()
.child(new NoteDetailWidget())
.child(new NoteListWidget())
.child(new NoteListWidget(false))
.child(new FilePropertiesWidget().css("font-size", "smaller"))
)
.child(new MobileEditorToolbar())
@@ -174,7 +175,8 @@ export default class MobileLayout {
.id("mobile-bottom-bar")
.child(new TabRowWidget().css("height", "40px"))
.child(new FlexContainer("row").class("horizontal").css("height", "53px").child(new LauncherContainer(true)).child(new GlobalMenuWidget(true)).id("launcher-pane"))
);
)
.child(new CloseZenButton());
applyModals(rootContainer);
return rootContainer;
}

View File

@@ -1,204 +0,0 @@
// Source: https://github.com/codemirror/codemirror5/pull/7080/files
// CodeMirror, copyright (c) by Marijn Haverbeke and others
// Distributed under an MIT license: https://codemirror.net/5/LICENSE
(function (mod) {
if (typeof exports == "object" && typeof module == "object") // CommonJS
mod(require("../../lib/codemirror"));
else if (typeof define == "function" && define.amd) // AMD
define(["../../lib/codemirror"], mod);
else // Plain browser env
mod(CodeMirror);
})(function (CodeMirror) {
"use strict";
CodeMirror.defineMode("hcl", function (config) {
var indentUnit = config.indentUnit;
var keywords = {
"resource": true,
"variable": true,
"output": true,
"module": true,
"provider": true,
"data": true,
"locals": true,
"terraform": true,
"if": true,
"else": true,
"for": true,
"foreach": true,
"in": true,
"true": true,
"false": true,
"null": true,
};
var atoms = {
"true": true,
"false": true,
"null": true,
};
var isOperatorChar = /[+\-*&^%:=<>!|\/]/;
var curPunc;
function tokenBase(stream, state) {
var ch = stream.next();
if (ch == '"' || ch == "'" || ch == "`") {
state.tokenize = tokenString(ch);
return state.tokenize(stream, state);
}
if (/[\d\.]/.test(ch)) {
if (ch == ".") {
stream.match(/^[0-9_]+([eE][\-+]?[0-9_]+)?/);
} else {
stream.match(/^[0-9_]*\.?[0-9_]*([eE][\-+]?[0-9_]+)?/);
}
return "number";
}
if (/[\[\]{}\(\),;\:\.]/.test(ch)) {
curPunc = ch;
return null;
}
if (ch == "/") {
if (stream.eat("*")) {
state.tokenize = tokenComment;
return tokenComment(stream, state);
}
if (stream.eat("/")) {
stream.skipToEnd();
return "comment";
}
}
if (isOperatorChar.test(ch)) {
stream.eatWhile(isOperatorChar);
return "operator";
}
stream.eatWhile(/[\w\$_\xa1-\uffff]/);
var cur = stream.current();
if (keywords.propertyIsEnumerable(cur)) {
return "keyword";
}
if (atoms.propertyIsEnumerable(cur)) return "atom";
return "variable";
}
function tokenString(quote) {
return function (stream, state) {
var escaped = false,
next,
end = false;
while ((next = stream.next()) != null) {
if (next == quote && !escaped) {
end = true;
break;
}
escaped = !escaped && quote != "`" && next == "\\";
}
if (end || !(escaped || quote == "`"))
state.tokenize = tokenBase;
return "string";
};
}
function tokenComment(stream, state) {
var maybeEnd = false,
ch;
while (ch = stream.next()) {
if (ch == "/" && maybeEnd) {
state.tokenize = tokenBase;
break;
}
maybeEnd = (ch == "*");
}
return "comment";
}
function Context(indented, column, type, align, prev) {
this.indented = indented;
this.column = column;
this.type = type;
this.align = align;
this.prev = prev;
}
function pushContext(state, col, type) {
return state.context = new Context(state.indented, col, type, null, state.context);
}
function popContext(state) {
if (!state.context.prev) return;
var t = state.context.type;
if (t == ")" || t == "]" || t == "}")
state.indented = state.context.indented;
return state.context = state.context.prev;
}
// Interface
return {
startState: function (basecolumn) {
return {
tokenize: null,
context: new Context((basecolumn || 0) - indentUnit, 0, "top", false),
indented: 0,
startOfLine: true
};
},
token: function (stream, state) {
var ctx = state.context;
if (stream.sol()) {
if (ctx.align == null) ctx.align = false;
state.indented = stream.indentation();
state.startOfLine = true;
}
if (stream.eatSpace()) return null;
curPunc = null;
var style = (state.tokenize || tokenBase)(stream, state);
if (style == "comment") return style;
if (ctx.align == null) ctx.align = true;
if (curPunc == "{") pushContext(state, stream.column(), "}");
else if (curPunc == "[") pushContext(state, stream.column(), "]");
else if (curPunc == "(") pushContext(state, stream.column(), ")");
else if (curPunc == "}" && ctx.type == "}") popContext(state);
else if (curPunc == ctx.type) popContext(state);
state.startOfLine = false;
return style;
},
indent: function (state, textAfter) {
if (state.tokenize != tokenBase && state.tokenize != null) return CodeMirror.Pass;
var ctx = state.context, firstChar = textAfter && textAfter.charAt(0);
if (firstChar == "#" || firstChar == ";") return 0;
if (stream.sol()) {
if (ctx.type == "case" && /^(?:case|default)\b/.test(textAfter)) {
state.context.type = "}";
return ctx.indented;
}
var closing = firstChar == ctx.type;
if (ctx.align) return ctx.column + (closing ? 0 : 1);
else return ctx.indented + (closing ? 0 : indentUnit);
}
},
electricChars: "{}):",
closeBrackets: "()[]{}''\"\"``",
fold: "brace",
blockCommentStart: "/*",
blockCommentEnd: "*/",
lineComment: "//"
};
});
CodeMirror.defineMIME("text/x-hcl", "hcl");
CodeMirror.modeInfo.push({
ext: [ "hcl " ],
mime: "text/x-hcl",
mode: "hcl",
name: "Terraform (HCL)"
});
});

Some files were not shown because too many files have changed in this diff Show More