Compare commits

..

1321 Commits

Author SHA1 Message Date
Elian Doran 64869f80ee chore(release): 0.92.7
/ Check Docker build (Dockerfile) (push) Failing after 44s
/ Check Docker build (Dockerfile.alpine) (push) Failing after 45s
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm/v7) (push) Has been skipped
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm64) (push) Has been skipped
/ Build Docker images (Dockerfile.alpine, ubuntu-latest, linux/amd64) (push) Has been skipped
/ Merge manifest lists (push) Has been skipped
Release / Make Electron (arm64, map[forge_platform:linux image:ubuntu-latest name:linux shell:bash]) (push) Failing after 32s
Release / Make Electron (x64, map[forge_platform:linux image:ubuntu-latest name:linux shell:bash]) (push) Failing after 26s
Release / Build Linux Server (x64, ubuntu-latest) (push) Failing after 36s
Release / Make Electron (arm64, map[forge_platform:darwin image:macos-latest name:macos shell:bash]) (push) Has been cancelled
Release / Make Electron (arm64, map[forge_platform:win32 image:win-signing name:windows shell:cmd]) (push) Has been cancelled
Release / Make Electron (x64, map[forge_platform:darwin image:macos-latest name:macos shell:bash]) (push) Has been cancelled
Release / Make Electron (x64, map[forge_platform:win32 image:win-signing name:windows shell:cmd]) (push) Has been cancelled
Release / Build Linux Server (arm64, ubuntu-24.04-arm) (push) Has been cancelled
2025-04-10 21:06:20 +03:00
Elian Doran 3df666b03e Merge pull request #1668 from TriliumNext/fix_redirectBareDomainError_on_initial_start
fix(auth): avoid "Error: Option 'redirectBareDomain' doesn't exist" on new installations
2025-04-10 20:52:54 +03:00
Panagiotis Papadopoulos 1979affa8a refactor(auth): simplify hasRedirectBareDomain
following change suggestion requested here
https://github.com/TriliumNext/Notes/pull/1668#pullrequestreview-2755816018
2025-04-10 19:49:00 +02:00
Panagiotis Papadopoulos a819166ae5 fix(auth): avoid "Error: Option 'redirectBareDomain' doesn't exist" on new installations
fixes #1667
2025-04-10 19:49:00 +02:00
Elian Doran 9ab48839a7 chore(github): add paypal to funding 2025-04-10 20:29:36 +03:00
Elian Doran 569aeedae4 Update FUNDING.yml 2025-04-10 20:11:50 +03:00
Elian Doran bfafd993ed chore(readme): add sponsor badge 2025-04-10 20:02:43 +03:00
Elian Doran 279b6fcf14 fix(mobile): bring back bar positioning on iOS 2025-04-10 18:21:36 +03:00
Elian Doran 83fb6f44c2 feat(mobile): hide global menu & tabs when keyboard is opened 2025-04-10 17:45:52 +03:00
Elian Doran 7a1e775de2 feat(mobile): detect presence of the virtual keyboard 2025-04-10 17:41:31 +03:00
Elian Doran 1aa69ba268 fix(mobile): remove vertical scrollbar for editing toolbar 2025-04-10 16:58:30 +03:00
Elian Doran 830285c866 fix(mobile): remove scrollbar for editing toolbar 2025-04-10 16:20:37 +03:00
Elian Doran 4f09f1a266 feat(mobile): flatten editing toolbar 2025-04-10 15:06:33 +03:00
Elian Doran 326c409e47 feat(mobile): reposition dropdowns to point up instead of down 2025-04-10 14:44:27 +03:00
Elian Doran e23b2f3ddd fix(mobile): bring back scrolling to toolbar 2025-04-10 14:07:44 +03:00
Elian Doran 0f2bc529bf feat(mobile): improve editing toolbar positioning on Android 2025-04-10 12:10:56 +03:00
Elian Doran fbba76bbb3 refactor(components): split editor toolbar for mobile 2025-04-10 11:50:28 +03:00
Elian Doran c422c3e5b9 fix(mobile): detection when authentication is disabled (closes #1660) 2025-04-10 10:35:24 +03:00
Elian Doran ce4b5b8193 fix(desktop): missing </body> 2025-04-10 09:45:05 +03:00
Elian Doran 2e48837c89 feat(docs): document basic search functionality 2025-04-09 17:06:45 +03:00
Elian Doran feb43193b1 feat(docs): document search in note functionality 2025-04-09 16:47:07 +03:00
Elian Doran 475c3bdde8 chore(docs): add rewritten links for navigation (closes #1643) 2025-04-09 15:57:19 +03:00
Elian Doran a88a92d490 feat(edit-docs): rewrite links to allow navigation in help 2025-04-09 15:48:03 +03:00
Elian Doran 652fc48a86 chore(docs): sync 2025-04-09 15:13:10 +03:00
Elian Doran f7fbda1b00 fix(docs): import errors due to file case errors 2025-04-09 14:46:21 +03:00
Elian Doran 27ad451bd8 feat(electron): support transparency on Linux if background effects are enabled 2025-04-09 14:10:11 +03:00
Elian Doran c603efb44b Merge pull request #1655 from TriliumNext/type_sql-transactional
types: use type variable for sql.transactional's return value
2025-04-09 12:07:57 +03:00
JYC333 34d401574c Merge pull request #1650 from TriliumNext/eslint
Use eslint simple-import-sort plugin to enable auto fix
2025-04-09 16:49:27 +08:00
Panagiotis Papadopoulos 6d74f6c1c4 chore(deps): run npm audit fix
fixes
vite  6.2.0 - 6.2.4
Severity: moderate
Vite allows server.fs.deny to be bypassed with .svg or relative paths - https://github.com/advisories/GHSA-xcj6-pq6g-qj4x
2025-04-09 09:52:01 +02:00
Panagiotis Papadopoulos c494cca229 Merge branch 'develop' into type_sql-transactional 2025-04-09 09:44:47 +02:00
Panagiotis Papadopoulos da649d75c0 refactor(routes/api/recovery_codes): use Array.from with mapFn in generateRecoveryCodes
gives us the identical result as before, but a lot more concise and "DRY"
2025-04-09 09:43:38 +02:00
Panagiotis Papadopoulos 68ea84a2cb refactor(routes/api/recovery_codes): use .map instead of .forEach
it doesn't make sense to use a forEach here, when all we do is push values into an array => just use .map directly as it returns an array
2025-04-09 09:24:28 +02:00
Panagiotis Papadopoulos 05917fd815 fix(routes/api/recovery_codes): convert number into string
fixes type error, as usedStatus is expecting string[] and "indexOf" returns a number
2025-04-09 09:21:20 +02:00
Panagiotis Papadopoulos eae68064e5 types(recovery_codes): use sql.transactional Generics to simplify typings 2025-04-09 08:41:55 +02:00
Panagiotis Papadopoulos af85ef0b47 types(services/sql): explicitly cast return value as type variable T instead of any
previously the type variable was useless, because
`const ret = (dbConnection.transaction(func) as any).deferred();` was inferred as "any".
2025-04-09 08:34:42 +02:00
Panagiotis Papadopoulos 80dd925231 chore(lint): fix minor lint issues in recovery_codes
/home/pano/Programming/0_repos/TriliumNextNotes/src/services/encryption/recovery_codes.ts
   2:1  error  Imports should be sorted alphabetically                            sort-imports
   3:1  error  Imports should be sorted alphabetically                            sort-imports
  13:9  error  'encryptedRecoveryCodes' is never reassigned. Use 'const' instead  prefer-const
  57:5  error  Unexpected var, use let or const instead                           no-var
2025-04-09 08:19:20 +02:00
Elian Doran 43c2818299 fix(calendar_view): promoted attributes overlap 2025-04-08 23:38:04 +03:00
Elian Doran 05a006faca fix(calendar_view): add back note icon 2025-04-08 23:33:57 +03:00
Elian Doran b1c8e625b2 fix(calendar_view): display hours in calendar view 2025-04-08 23:28:27 +03:00
Elian Doran eea141225d refactor(calendar): dedicated method for building event content 2025-04-08 22:48:57 +03:00
Elian Doran 0b0d212854 feat(docs): document recent changes 2025-04-08 21:53:31 +03:00
Elian Doran 5b34e8a327 feat(docs): document advanced options in context menu 2025-04-08 21:44:22 +03:00
Elian Doran 5eb8e478b7 feat(docs): document the note tree contextual menu 2025-04-08 20:06:55 +03:00
Elian Doran 584fa67074 fix(bulk_actions): clarify actions taken by "Update relation target" 2025-04-08 19:38:19 +03:00
Elian Doran 2b56c2acbe feat(docs): document bulk actions 2025-04-08 19:35:13 +03:00
Elian Doran 8949f68b81 fix(server): duplicating note subtree escapes special characters 2025-04-08 18:09:02 +03:00
Jin 08ae71e70f chore: 🤖 use simple-import-sort plugin
Use simple-import-sort plugin to enable auto-fix import sort
2025-04-08 14:09:37 +02:00
Elian Doran 0eec8042ca fix(new_tab): workspace switcher no longer displayed
Regression of 7f1eb99127
2025-04-08 12:46:58 +03:00
Elian Doran 3a1f1ceedb fix(export/markdown): double slashes breaking math expressions (closes #1649) 2025-04-08 12:06:46 +03:00
Elian Doran d03ee26408 fix(editor): random crashes due to lacking null safety in syntax highlight 2025-04-08 09:06:27 +03:00
Elian Doran 8b7f16d49b fix(editor): syntax highlighting not working in nested elements (closes #1609, closes #843) 2025-04-07 23:51:56 +03:00
Elian Doran 7f1eb99127 fix(client): build error and simplify doRefresh in type widgets 2025-04-07 22:50:38 +03:00
Elian Doran c74f51472e fix(options): "Override theme fonts" not reflecting immediately 2025-04-07 22:34:47 +03:00
Elian Doran d33162785e fix(client): right-shift on non-standard themes (closes #1646) 2025-04-07 17:55:35 +03:00
Elian Doran 63458d55d3 fix(client): quick search popup not working in horizontal layout (closes #1647) 2025-04-07 17:36:29 +03:00
Elian Doran 6cc10a47d1 feat(docs): document the hidden tree 2025-04-07 13:29:22 +03:00
Elian Doran 5130089b34 feat(docs): clarify attribute prefixes 2025-04-07 12:35:52 +03:00
Elian Doran ec5025d7fd feat(docs): clarify attribute use cases 2025-04-07 12:30:37 +03:00
Elian Doran 190cff6f7e feat(docs): improve description of labels and relations 2025-04-07 12:22:48 +03:00
Elian Doran 72f0bc32df feat(docs): reorganize scripting notes and finalize attribute reference 2025-04-07 11:16:10 +03:00
Elian Doran cdf9fa5b4a feat(docs): attribute reference (wip) 2025-04-07 09:47:15 +03:00
Elian Doran b7566ad979 feat(docs): hiding note list 2025-04-06 23:06:21 +03:00
Elian Doran 9fb04b256d feat(docs): document supported syntax 2025-04-06 22:55:24 +03:00
Elian Doran f58a90c648 feat(docs): sidebar, table of contents, highlights list 2025-04-06 17:13:21 +03:00
Elian Doran 19a540200e chore(docs): sync 2025-04-06 16:19:17 +03:00
Elian Doran c9e3fb90f1 feat(docs): reorganize & merge attachments 2025-04-06 16:04:55 +03:00
Elian Doran fb6e6241d9 feat(docs): reorganize script notes & document render note 2025-04-06 15:30:54 +03:00
Elian Doran 161f6172e7 chore(docs): sync 2025-04-06 15:00:24 +03:00
Elian Doran 2e3d692419 chore(deps): update package-lock 2025-04-06 14:58:36 +03:00
Elian Doran ab6d68fc68 chore(release): 0.92.6
/ Check Docker build (Dockerfile) (push) Failing after 32s
/ Check Docker build (Dockerfile.alpine) (push) Failing after 35s
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm/v7) (push) Has been skipped
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm64) (push) Has been skipped
/ Build Docker images (Dockerfile.alpine, ubuntu-latest, linux/amd64) (push) Has been skipped
/ Merge manifest lists (push) Has been skipped
Release / Make Electron (arm64, map[forge_platform:linux image:ubuntu-latest name:linux shell:bash]) (push) Failing after 31s
Release / Make Electron (x64, map[forge_platform:linux image:ubuntu-latest name:linux shell:bash]) (push) Failing after 41s
Release / Build Linux Server (x64, ubuntu-latest) (push) Failing after 37s
Release / Make Electron (arm64, map[forge_platform:darwin image:macos-latest name:macos shell:bash]) (push) Has been cancelled
Release / Make Electron (arm64, map[forge_platform:win32 image:win-signing name:windows shell:cmd]) (push) Has been cancelled
Release / Make Electron (x64, map[forge_platform:darwin image:macos-latest name:macos shell:bash]) (push) Has been cancelled
Release / Make Electron (x64, map[forge_platform:win32 image:win-signing name:windows shell:cmd]) (push) Has been cancelled
Release / Build Linux Server (arm64, ubuntu-24.04-arm) (push) Has been cancelled
2025-04-06 12:46:07 +03:00
Elian Doran 7cd8554d11 fix(client): modal text color on dark mode 2025-04-06 12:38:09 +03:00
Elian Doran 807a2dc2c6 Merge pull request #1637 from TriliumNext/renovate/eslint-linter-browserify-9.x
fix(deps): update dependency eslint-linter-browserify to v9.24.0
2025-04-06 11:05:32 +03:00
Elian Doran a82490302c Merge pull request #1636 from TriliumNext/renovate/jquery.fancytree-2.x
fix(deps): update dependency jquery.fancytree to v2.38.5
2025-04-06 11:02:19 +03:00
renovate[bot] 213da7c32d fix(deps): update dependency eslint-linter-browserify to v9.24.0 2025-04-06 01:35:35 +00:00
renovate[bot] 5db8b59b51 fix(deps): update dependency jquery.fancytree to v2.38.5 2025-04-06 01:35:22 +00:00
Elian Doran d51151e84b chore(docs): minor cleanup 2025-04-06 00:26:22 +03:00
Elian Doran 0b8eb66c05 fix(docs): improve reference links and fix broken links 2025-04-06 00:19:55 +03:00
Elian Doran 7c6e7cacae fix(docs): extra ** for inline code 2025-04-06 00:00:44 +03:00
Elian Doran 8e1f0f8b27 feat(docs): document similar notes 2025-04-05 23:45:54 +03:00
Elian Doran 67f3b4d414 chore(docs): sync 2025-04-05 23:39:32 +03:00
Elian Doran 9593aa13bf Merge pull request #1635 from TriliumNext/renovate/eslint-monorepo
chore(deps): update eslint monorepo to v9.24.0
2025-04-05 23:29:13 +03:00
renovate[bot] 503c7b6538 chore(deps): update eslint monorepo to v9.24.0 2025-04-05 19:45:58 +00:00
Elian Doran 572357cb18 Merge pull request #1634 from TriliumNext/renovate/typescript-5.x
chore(deps): update dependency typescript to v5.8.3
2025-04-05 22:44:49 +03:00
Elian Doran 3a07422238 Merge pull request #1633 from TriliumNext/renovate/electron-35.x
chore(deps): update dependency electron to v35.1.4
2025-04-05 22:44:10 +03:00
Elian Doran af76c18837 Merge pull request #1632 from TriliumNext/renovate/bootstrap-5.x
chore(deps): update dependency bootstrap to v5.3.5
2025-04-05 22:43:31 +03:00
Elian Doran 60ad5743a7 Merge pull request #1631 from TriliumNext/renovate/better-sqlite3-7.x
chore(deps): update dependency @types/better-sqlite3 to v7.6.13
2025-04-05 22:41:58 +03:00
Elian Doran 820ea59c82 Merge pull request #1630 from TriliumNext/renovate/better-sqlite3-7.x-lockfile
chore(deps): update dependency @types/better-sqlite3 to v7.6.13
2025-04-05 22:41:49 +03:00
Elian Doran 74d55d500c feat(editor): rewrite <s> to <del> 2025-04-05 22:37:02 +03:00
Elian Doran ab416e02b4 feat(import/markdown): preserve column widths 2025-04-05 21:43:26 +03:00
Elian Doran b6c185fd32 feat(import/markdown): preserve image width 2025-04-05 21:43:26 +03:00
Elian Doran 447439efd6 feat(import/markdown): preserve fractional widths 2025-04-05 21:43:26 +03:00
Elian Doran 698e68f280 Merge branch 'develop' into renovate/better-sqlite3-7.x-lockfile 2025-04-05 17:53:01 +03:00
Elian Doran 88cd8dfebb Merge branch 'develop' into renovate/bootstrap-5.x 2025-04-05 17:52:47 +03:00
Elian Doran 680eb76970 Merge branch 'develop' into renovate/better-sqlite3-7.x 2025-04-05 17:51:57 +03:00
Elian Doran 12c9822db4 Merge branch 'develop' into renovate/electron-35.x 2025-04-05 17:51:41 +03:00
Elian Doran cfcc4740a1 Merge branch 'develop' into renovate/typescript-5.x 2025-04-05 17:51:34 +03:00
Elian Doran 8977926c00 fix(test): failed test due to change in figure handling 2025-04-05 17:51:03 +03:00
Elian Doran cdb5ebb080 feat(import/markdown): preserve trailing semicolon in figure style 2025-04-05 12:37:06 +03:00
Elian Doran 8cb10764b6 feat(import/markdown): preserve trailing semicolon in img 2025-04-05 12:31:02 +03:00
Elian Doran 64ccea5702 feat(import/markdown): preserve figure image size 2025-04-05 11:37:26 +03:00
Elian Doran 7293f59a80 fix(export/markdown): math expressions not working due to string escaping 2025-04-05 11:05:27 +03:00
Elian Doran 4bb767f8ee fix(import/markdown): preserve escaped math expressions 2025-04-05 10:46:33 +03:00
Elian Doran 721bf455e1 refactor(import/markdown): add guard condition for processing math 2025-04-05 09:59:42 +03:00
Elian Doran e6b9ecda5c feat(import/markdown): import in-line math properly 2025-04-05 09:59:10 +03:00
Elian Doran 07b5cd3b05 feat(import/markdown): import in-display math properly 2025-04-05 09:57:44 +03:00
Elian Doran fc4eb13e8d feat(export/markdown): export display math properly 2025-04-05 09:32:08 +03:00
Elian Doran 894cfe4f7a feat(export/markdown): export in-line math properly 2025-04-05 09:28:18 +03:00
renovate[bot] 116e4839cf chore(deps): update dependency typescript to v5.8.3 2025-04-05 00:38:17 +00:00
renovate[bot] 62e72e7250 chore(deps): update dependency electron to v35.1.4 2025-04-05 00:38:07 +00:00
renovate[bot] 67ff1e7e29 chore(deps): update dependency bootstrap to v5.3.5 2025-04-05 00:37:56 +00:00
renovate[bot] c878602f57 chore(deps): update dependency @types/better-sqlite3 to v7.6.13 2025-04-05 00:37:44 +00:00
renovate[bot] df13dfc4eb chore(deps): update dependency @types/better-sqlite3 to v7.6.13 2025-04-05 00:37:30 +00:00
Elian Doran 173fa36fca chore(docs): bring back figure sizes 2025-04-05 03:33:53 +03:00
Elian Doran c80d016305 feat(markdown): preserve figures 2025-04-05 03:23:31 +03:00
Elian Doran 319cccfb15 feat(markdown): preserve image width/height attribute 2025-04-05 03:01:06 +03:00
Elian Doran 1f98e75c54 chore(docs): add back some image sizes 2025-04-05 03:00:43 +03:00
Elian Doran da42ddeee7 refactor(export/markdown): use let instead of var 2025-04-05 02:42:24 +03:00
Elian Doran 79fa2a2200 chore(docs): add back some reference links 2025-04-05 02:42:14 +03:00
Elian Doran 6a69e9b208 feat(markdown): use different approach for reference links 2025-04-05 02:31:52 +03:00
Elian Doran 4f22850ea9 feat(import/export): import reference links 2025-04-05 01:56:31 +03:00
Elian Doran 320439333d fix(demo): convert to LF & add link to include note function 2025-04-05 01:25:54 +03:00
Elian Doran fdc946ef49 chore(scripts): allow editing demo notes on NixOS 2025-04-05 01:23:12 +03:00
Elian Doran bdfb2300bb feat(docs): minor mermaid improvements 2025-04-05 01:21:33 +03:00
Elian Doran 10b3ede686 feat(docs): improve include note 2025-04-05 01:18:25 +03:00
Elian Doran 1e6c197794 refactor(docs): reposition calendar view 2025-04-05 01:09:30 +03:00
Elian Doran ed53b034f7 feat(docs): document note list 2025-04-05 01:05:40 +03:00
Elian Doran e50c1b36f6 feat(docs): document file note type 2025-04-05 00:54:03 +03:00
Elian Doran 78fba191e1 feat(docs): document note ID and collisions 2025-04-05 00:06:45 +03:00
Elian Doran bb23ae6813 feat(docs): revamp "button use case" 2025-04-04 23:46:07 +03:00
Elian Doran 65e914f916 feat(docs): improve documentation for read-only notes 2025-04-04 23:17:12 +03:00
Elian Doran 65ddfe8776 fix(docs): layout in geomap 2025-04-04 22:50:53 +03:00
Elian Doran 418da69b8a feat(docs): document quick search & jump to note 2025-04-04 22:46:19 +03:00
Elian Doran 18f812f568 feat(docs): quick overview of options 2025-04-04 22:32:38 +03:00
Elian Doran 2d61944036 feat(docs): document mind map 2025-04-04 22:13:26 +03:00
Elian Doran 4cef5a3e16 feat(docs): fix case for Geo Map and add photo 2025-04-04 22:01:06 +03:00
Elian Doran be3e213ba3 feat(docs): improve documentation on Mermaid 2025-04-04 21:56:44 +03:00
Elian Doran 2a8ab728a7 feat(docs): document note types 2025-04-04 21:29:18 +03:00
Elian Doran cf46f8cf70 fix(docs): missing images in ELK layout 2025-04-04 21:11:00 +03:00
Elian Doran 7d40405b8c feat(docs): document note tree in relation to split view 2025-04-04 21:01:05 +03:00
Elian Doran c8f2798fc2 feat(docs): document tabs 2025-04-04 20:55:11 +03:00
Elian Doran 92c1dd1177 chore(edit-docs): erase attachments before exporting 2025-04-04 20:35:55 +03:00
Elian Doran d0c1ffc581 feat(docs): document split view 2025-04-04 20:35:26 +03:00
Elian Doran 65d017390e fix(edit-docs): fix random erase of attachments due to consistency issues 2025-04-04 20:01:28 +03:00
Elian Doran 3a16bf59ef chore(docs): sync meta 2025-04-04 19:59:04 +03:00
Elian Doran f83d342594 chore(docs): format keyboard shortcut 2025-04-04 18:41:26 +03:00
Elian Doran 99fd4225f4 chore(docs): remove unused attachments 2025-04-04 18:36:36 +03:00
Elian Doran 8e97a06d1c feat(electron-docs-main): set default options 2025-04-04 18:35:29 +03:00
Elian Doran dc103348d5 fix(client): build errors due to types 2025-04-04 18:07:26 +03:00
Elian Doran 67f39e8bde fix(client): strange behaviour when navigating between tabs (closes #1615) 2025-04-04 17:57:54 +03:00
Elian Doran 6dc2e4088f fix(ci): tsx not found when updating build info 2025-04-04 16:36:13 +03:00
Elian Doran c6681801fe Merge pull request #1625 from TriliumNext/renovate/actions-checkout-4.x
chore(deps): update actions/checkout action to v4
2025-04-04 16:21:45 +03:00
Elian Doran 545e199232 fix(geomap): map cut off at first start 2025-04-04 14:19:44 +03:00
Elian Doran 9204be3157 chore(webpack): add script to run stats 2025-04-04 14:06:48 +03:00
Elian Doran 849fd5a2af fix(ci): unrecognized name-value "inputs" 2025-04-04 14:06:30 +03:00
Elian Doran ab0213fc3f refactor(geomap): use webpack for importing marker icon (closes #1628) 2025-04-04 14:02:34 +03:00
Elian Doran 4c05c8ab5e feat(launch_bar): display popups at the bottom on horizontal layout 2025-04-04 11:44:42 +03:00
JYC333 4eb435aeea Merge pull request #1627 from TriliumNext/fix_turndown-plugin-gfm-audit
fix(turndown-plugin-gfm): run npm audit fix
2025-04-04 15:33:45 +08:00
JYC333 b267b6ad66 Merge pull request #1624 from TriliumNext/renovate/sass-1.x
chore(deps): update dependency sass to v1.86.3
2025-04-04 15:30:07 +08:00
JYC333 08132faa83 Merge pull request #1623 from TriliumNext/renovate/bootstrap-5.x
chore(deps): update dependency bootstrap to v5.3.4
2025-04-04 15:29:35 +08:00
Panagiotis Papadopoulos 53d1aafa0a fix(dump-db): run npm audit fix
fixes
1 high severity vulnerability
tar-fs Vulnerable to Link Following and Path Traversal via Extracting a Crafted tar File - https://github.com/advisories/GHSA-pq67-2wwv-3xjx
2025-04-04 09:28:21 +02:00
Panagiotis Papadopoulos 241eeefc0f fix(turndown-plugin-gfm): run npm audit fix
fixes
3 vulnerabilities (1 high, 2 critical)
2025-04-04 09:23:12 +02:00
renovate[bot] 4bfa90fad8 chore(deps): update actions/checkout action to v4 2025-04-04 02:44:05 +00:00
renovate[bot] 7fb37f174a chore(deps): update dependency sass to v1.86.3 2025-04-04 02:44:00 +00:00
renovate[bot] 2686943504 chore(deps): update dependency bootstrap to v5.3.4 2025-04-04 02:43:49 +00:00
JYC333 614d395d72 Merge pull request #1620 from TriliumNext/fix_leaflet-marker
fix(geo_map): fix leaflet asset copying/loading
2025-04-03 23:05:34 +02:00
Panagiotis Papadopoulos b8af8b4709 fix(geo_map): fix leaflet asset copying
necessary, now that we moved leaflet to devDeps
2025-04-03 22:35:09 +02:00
Elian Doran 0f792ca21d feat(docs): document automatic opening of PDF 2025-04-03 21:52:29 +03:00
Elian Doran a4f39d6376 feat(docs): document the items of the ribbon 2025-04-03 21:40:02 +03:00
Elian Doran 25fe6c2690 fix(docs): missing images in theme development 2025-04-03 21:08:18 +03:00
Elian Doran 38ed8b6592 fix(docs): missing image in geomap 2025-04-03 20:53:54 +03:00
Elian Doran 0b82489ea0 chore(package): use different port for no-dir 2025-04-03 20:33:12 +03:00
Elian Doran 0acc14fc46 chore(backup): log when backup starts 2025-04-03 20:23:25 +03:00
Elian Doran 14b0a9cb18 chore(docs): normalize non-breaking spaces 2025-04-03 19:35:59 +03:00
Elian Doran 32db26684d feat(import/markdown): normalize non-breaking spaces 2025-04-03 19:29:51 +03:00
Elian Doran 99461dbf7e Merge pull request #1606 from TriliumNext/renovate/fullcalendar-monorepo
chore(deps): update fullcalendar monorepo to v6.1.17
2025-04-03 18:44:18 +03:00
Elian Doran 690f365875 chore(release): disable manual workflow triggering
We can use the nightly if we need it.
2025-04-03 18:16:10 +03:00
Elian Doran 3c820fcc68 chore(docker): update build info for dev builds as well 2025-04-03 17:58:26 +03:00
Elian Doran a7ba7d6528 fix(docker): display correct build date (closes #1380) 2025-04-03 17:49:07 +03:00
Elian Doran 947e6b8113 Revert "desktop app: use a custom user agent string" (closes #1538)
This reverts commit ccbd47e03d.
2025-04-03 17:35:53 +03:00
Elian Doran 9c8e066826 fix(client): calendar dropdown cut off 2025-04-03 15:59:21 +03:00
Elian Doran a8e37d1a51 Merge branch 'develop' into renovate/fullcalendar-monorepo 2025-04-03 15:43:25 +03:00
Elian Doran f4b085df3a Merge pull request #1603 from TriliumNext/renovate/react-monorepo
chore(deps): update dependency @types/react-dom to v18.3.6
2025-04-03 15:42:33 +03:00
Elian Doran b4b2934e60 Merge pull request #1604 from TriliumNext/renovate/electron-35.x
chore(deps): update dependency electron to v35.1.3
2025-04-03 15:42:03 +03:00
Elian Doran be29a699f4 Merge pull request #1605 from TriliumNext/renovate/sass-1.x
chore(deps): update dependency sass to v1.86.2
2025-04-03 15:41:41 +03:00
Elian Doran d8a507382b Merge pull request #1607 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.14.0
2025-04-03 15:41:28 +03:00
Elian Doran ac96005eb4 Merge pull request #1608 from TriliumNext/renovate/rollup-4.x-lockfile
chore(deps): update dependency rollup to v4.39.0
2025-04-03 15:41:20 +03:00
renovate[bot] 4dee990189 chore(deps): update fullcalendar monorepo to v6.1.17 2025-04-03 12:22:06 +00:00
Elian Doran 9a69becf9a Merge pull request #1610 from TriliumNext/deps_mermaid
deps: move packages to devDeps that are now packed by webpack
2025-04-03 15:21:03 +03:00
Elian Doran 8b823f2a57 Merge branch 'develop' into deps_mermaid 2025-04-03 14:28:30 +03:00
Elian Doran 429b600a22 Merge pull request #1613 from TriliumNext/feature/report_bundle_size
Report bundle size
2025-04-03 14:27:59 +03:00
Elian Doran 2b8ec8f01f fix(ci): remove appending 2025-04-03 13:18:22 +03:00
Elian Doran 8730a99aeb chore(ci): display size in MB 2025-04-03 12:58:02 +03:00
Elian Doran 194f05dc9d fix(ci): allow slashes for branch names in server build 2025-04-03 12:44:00 +03:00
Elian Doran 9c2329a5e6 feat(ci): report server size as well 2025-04-03 12:22:57 +03:00
Elian Doran acbdf98c84 refactor(ci): remove unnecessary variables 2025-04-03 12:20:07 +03:00
Elian Doran 4bf8e28595 fix(ci): add permissions to write comments 2025-04-03 11:58:58 +03:00
Elian Doran a039e15418 feat(ci): report electron size 2025-04-03 11:44:17 +03:00
Elian Doran de3fdbe01a chore(gitignore): add upload dir 2025-04-03 11:39:05 +03:00
Elian Doran 1e47203b61 Revert "chore(ci): remove server build temporarily" (closes #1612)
This reverts commit c50a67f36b.
2025-04-03 10:55:14 +03:00
Panagiotis Papadopoulos d6e1ad75e0 deps: move jsplumb and panzoom to devDeps
this is now handled by webpack since b44bb4053c
2025-04-03 08:28:17 +02:00
Panagiotis Papadopoulos 77e9a90904 deps: move leaflet to devDeps
this is now handled by webpack since accf245179
2025-04-03 08:20:46 +02:00
Panagiotis Papadopoulos 2833d2fe92 deps: move mermaid to devDeps –
this is now handled by webpack since 28c51cb38a
2025-04-03 08:16:43 +02:00
renovate[bot] d273748d34 chore(deps): update dependency rollup to v4.39.0 2025-04-03 01:42:15 +00:00
renovate[bot] 2a251c0810 chore(deps): update dependency @types/node to v22.14.0 2025-04-03 01:42:07 +00:00
renovate[bot] b3bc90b010 chore(deps): update dependency sass to v1.86.2 2025-04-03 01:41:46 +00:00
renovate[bot] f0770c07d0 chore(deps): update dependency electron to v35.1.3 2025-04-03 01:41:35 +00:00
renovate[bot] c5dcc35cae chore(deps): update dependency @types/react-dom to v18.3.6 2025-04-03 01:41:25 +00:00
JYC333 39d466caf8 Merge pull request #1602 from TriliumNext/chore_format_tests
chore(format): format .spec files
2025-04-02 23:55:08 +02:00
Jin 170375fe04 fix: 🐛 fix mfa get option error 2025-04-02 23:13:59 +02:00
Panagiotis Papadopoulos df5ac3e77d chore(format): fix auto-fixable format issues in *.spec.ts 2025-04-02 23:00:22 +02:00
Panagiotis Papadopoulos 2112bbee0a chore(format): fix auto-fixable format issues in data_dir.spec.ts 2025-04-02 22:41:14 +02:00
Elian Doran 6a3c44f866 fix(markdown/import): markdown quotes not escaping 2025-04-02 23:41:04 +03:00
Elian Doran 749a398128 fix(docs): use LF instead of CRLF 2025-04-02 23:41:04 +03:00
Elian Doran 4b8e3b39fe chore(docs): fix <kbd> 2025-04-02 23:41:04 +03:00
Elian Doran a3a2bf4484 refactor(docs): use in-memory model 2025-04-02 23:41:04 +03:00
Panagiotis Papadopoulos f0a2808e3e chore(format): fix format issues in sanitize_attribute_name.spec.ts 2025-04-02 22:38:51 +02:00
Panagiotis Papadopoulos ff58184691 chore(format): fix format issues in tree.spec.ts 2025-04-02 22:37:38 +02:00
Panagiotis Papadopoulos 80ce77cdcf chore(format): fix format issues in utils.spec.ts
from
374 problems down to 40
2025-04-02 22:33:14 +02:00
Panagiotis Papadopoulos 3f0dbb9063 chore: fix typo in verifyRecoveryCode function name 2025-04-02 21:41:48 +02:00
Panagiotis Papadopoulos 4e413f6702 chore(eslint): add sort-imports rule
https://eslint.org/docs/latest/rules/sort-imports
2025-04-02 21:28:44 +02:00
Elian Doran 56eda374e0 Merge pull request #1575 from TriliumNext/chore_eslint-formatting
chore: use eslint for formatting and replace dprint
2025-04-02 21:19:55 +03:00
Elian Doran ce340b2128 chore(vscode): add ESLint to recommendations 2025-04-02 21:17:02 +03:00
Elian Doran c6d39e4f1f chore(eslint): set max code length to 100 2025-04-02 21:16:18 +03:00
Elian Doran a8319fcbdf fix(tab_bar): empty tabs not properly removed at app start 2025-04-02 21:13:41 +03:00
Elian Doran 0c5cd66eae feat(a11y): set autocomplete for protected session 2025-04-02 21:04:22 +03:00
Elian Doran 8ec97602c8 feat(a11y): set autocomplete for login 2025-04-02 21:02:24 +03:00
Elian Doran af835dfe26 style(set_password): add some margins 2025-04-02 20:59:01 +03:00
Elian Doran c475094284 feat(a11y): suggest new password in set password 2025-04-02 20:51:53 +03:00
Elian Doran f420b5cbd4 feat(electron): constrain setup window size 2025-04-02 20:47:53 +03:00
Elian Doran 3e5bd01fc1 feat(electron): set window minimum size (closes #994) 2025-04-02 20:44:39 +03:00
Elian Doran d8a1852935 feat(launch_bar): make scrollable when icons don't fit 2025-04-02 20:36:24 +03:00
Elian Doran 86433e4c51 feat(launch_bar): improve look on small windows 2025-04-02 20:22:10 +03:00
Elian Doran 69b2824f9c fix(client): note context not correctly define (closes #1193) 2025-04-02 20:08:18 +03:00
Elian Doran db66d86bc2 fix(in-app-help): help not rendering in other languages (fixes #1600) 2025-04-02 16:39:16 +03:00
JYC333 ea2de4e4f3 Merge pull request #1591 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.13.17
2025-04-02 11:47:50 +02:00
JYC333 f6c0c09e20 Merge pull request #1592 from TriliumNext/renovate/ws-8.x
chore(deps): update dependency @types/ws to v8.18.1
2025-04-02 11:47:17 +02:00
JYC333 df328d576f Merge pull request #1598 from TriliumNext/autoComplete1
Forced to trigger search after compositionend
2025-04-02 11:46:33 +02:00
JYC333 4b64c34cbb Merge pull request #1595 from TriliumNext/fix/logout-headers-sent-error
Fix "Cannot set headers after they are sent" error in logout function
2025-04-02 11:44:19 +02:00
JYC333 9f3076755c Merge pull request #1597 from TriliumNext/hotfix/totp-validation-bypass
hotfix(auth): fix TOTP validation bypass issue
2025-04-02 11:42:38 +02:00
SiriusXT cc87ff44a5 Forced to trigger search after compositionend 2025-04-02 15:44:47 +08:00
SiriusXT 30056e7ffe Forced to trigger search after compositionend 2025-04-02 15:19:19 +08:00
Panagiotis Papadopoulos d1b08e535e Merge branch 'develop' into chore_eslint-formatting 2025-04-02 09:05:42 +02:00
Panagiotis Papadopoulos 7812c0574c chore(eslint): correctly pickup ts files as well 2025-04-02 08:58:52 +02:00
Panagiotis Papadopoulos e98516df8a chore(eslint): remove leftover plugin 2025-04-02 08:54:10 +02:00
Panagiotis Papadopoulos 42edb0c0bd chore(eslint): ignore "demo" folder for now 2025-04-02 08:42:14 +02:00
Panagiotis Papadopoulos d432a56211 chore(scripts): update dev:format scripts to eslint 2025-04-02 08:37:57 +02:00
Panagiotis Papadopoulos a0fe60eff1 chore(eslint): move formatting rules to own config file for now
this will allow us to run linting and formatting separately for now, where we have a ton of linting errors still
2025-04-02 08:35:24 +02:00
Nriver 30fb754a5f hotfix(auth): fix TOTP validation bypass issue 2025-04-02 14:29:37 +08:00
Nriver dab65a6364 Fix "Cannot set headers after they are sent" error in logout function 2025-04-02 14:13:38 +08:00
renovate[bot] 4000387f44 chore(deps): update dependency @types/ws to v8.18.1 2025-04-02 01:38:52 +00:00
renovate[bot] e9ece00450 chore(deps): update dependency @types/node to v22.13.17 2025-04-02 01:38:42 +00:00
Elian Doran 9a5793dfdd fix(pdf): hide title bar buttons when exporting to PDF (closes #1587) 2025-04-01 23:53:38 +03:00
Elian Doran 2a68c28f2e fix(pdf): hide center pane widgets when exporting to PDF 2025-04-01 23:48:08 +03:00
Elian Doran ba506c9c10 refactor(dev): use es6-string-html for some of the SQL statements (closes #274) 2025-04-01 23:30:21 +03:00
Elian Doran 7a879d7cc8 feat(vscode): add es6-string-html to recommendations 2025-04-01 23:25:03 +03:00
Elian Doran 815078168f refactor(dev): use es6-string-html for templates 2025-04-01 23:24:34 +03:00
Elian Doran 3f2945018c feat(demo): reorganize, add icons & geo map 2025-04-01 22:55:20 +03:00
Elian Doran 6aba18887f chore(docs): change icons & expanded branches 2025-04-01 22:30:37 +03:00
Elian Doran 242706e4ac chore(docs):: remove unnecessary <div>s 2025-04-01 22:27:29 +03:00
Elian Doran d7fef36b46 Merge pull request #1589 from TriliumNext/autoComplete
To prevent search lag when there are a large number of notes
2025-04-01 22:08:39 +03:00
Elian Doran b94bda6670 chore(note_autocomplete): remove logging 2025-04-01 22:07:59 +03:00
Elian Doran dd46ffa137 Merge pull request #1590 from TriliumNext/fix_543
fix(electron_context_menu): fix disabled search engine contex menu on readonly notes
2025-04-01 21:39:18 +03:00
Panagiotis Papadopoulos a6206d2bd6 fix(electron_context_menu): fix disabled search engine context menu on readonly notes
fixes #543
2025-04-01 19:25:10 +02:00
Panagiotis Papadopoulos a715de6472 chore(deps): run npm audit fix
goes from
7 vulnerabilities (6 moderate, 1 high)
to
5 moderate severity vulnerabilities
2025-04-01 19:15:25 +02:00
SiriusXT adcb803caa To prevent search lag when there are a large number of notes 2025-04-01 21:07:15 +08:00
JYC333 31d81ea2cd Merge pull request #1585 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.1.1
2025-04-01 14:24:00 +02:00
JYC333 c5f2c6b449 Merge pull request #1584 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update dependency typescript-eslint to v8.29.0
2025-04-01 14:23:22 +02:00
JYC333 1c84069717 Merge pull request #1583 from TriliumNext/renovate/sass-1.x
chore(deps): update dependency sass to v1.86.1
2025-04-01 14:22:37 +02:00
SiriusXT a7799d32b0 To prevent search lag when there are a large number of notes 2025-04-01 18:47:07 +08:00
Panagiotis Papadopoulos 8dfdb48e8d chore(eslint): configure @stylistic/quotes rule 2025-04-01 09:17:24 +02:00
Panagiotis Papadopoulos e93d7e6bd1 chore: remove .dprint.json config file -> now unused 2025-04-01 09:01:11 +02:00
Panagiotis Papadopoulos cd992806a6 chore(tsconfig): add "*.js" to include, to fix eslint "ProjectService" error
added it only to the "dev" tsconfig.
The tsconfig.build.json, which is used for build output does not require it.

eslint was previosuly reporting on itself:
"TriliumNextNotes/eslint.config.js was not found by the project service. Consider either including it in the tsconfig.json or including it in allowDefaultProject"
2025-04-01 09:00:37 +02:00
Panagiotis Papadopoulos 237fcdab20 chore: run eslint on eslint.config.js :-) 2025-04-01 08:57:24 +02:00
Panagiotis Papadopoulos ad18883952 chore: add padded-blocks @stylistic rule 2025-04-01 08:56:36 +02:00
Panagiotis Papadopoulos 8354fec70e chore: add initial @stylistic rules
based on what we had with dprint -> which in turn was based on what we had with prettier
2025-04-01 08:50:43 +02:00
renovate[bot] 217a28ef01 chore(deps): update vitest monorepo to v3.1.1 2025-04-01 01:38:36 +00:00
renovate[bot] 5db393bfda chore(deps): update dependency typescript-eslint to v8.29.0 2025-04-01 01:38:19 +00:00
renovate[bot] f80c5ba29e chore(deps): update dependency sass to v1.86.1 2025-04-01 01:38:04 +00:00
Elian Doran 8c6dbb4446 feat(docs): preserve note IDs 2025-03-31 23:20:14 +03:00
Elian Doran b6137c0747 chore(docs): normalize whitespace 2025-03-31 22:56:47 +03:00
Elian Doran 96eb7487e7 chore(gitattributes): set up CRLF handling 2025-03-31 22:51:54 +03:00
Elian Doran a5b481146b Merge pull request #1581 from TriliumNext/totp
Fix redirect url with reverse proxy
2025-03-31 22:38:35 +03:00
Jin ff43537942 fix: 🐛 fix redirect url with reverse proxy 2025-03-31 21:08:22 +02:00
JYC333 9397dfd6a6 Merge pull request #1577 from kliu/theme
Use --link-color as the color of links
2025-03-31 20:58:42 +02:00
JYC333 d665a4c611 Merge branch 'develop' into theme 2025-03-31 20:57:34 +02:00
Elian Doran 6976c9555e fix(mermaid): bypass security issue when generating PNG 2025-03-31 21:18:40 +03:00
Elian Doran 3d0ec27038 fix(mermaid): fix export to PNG for some diagram types 2025-03-31 20:57:39 +03:00
Elian Doran 3cdbc76fff feat(mermaid): display an error when PNG export could not occur 2025-03-31 18:37:05 +03:00
kliu 4ca296894d Use --link-color as the color of links 2025-03-31 18:01:52 +08:00
Panagiotis Papadopoulos 66cfc78d8d deps: @stylistic/eslint-plugin for formatting
replaces previously used dprint
2025-03-31 09:01:39 +02:00
Panagiotis Papadopoulos f261c5841a deps: remove dprint
to be replaced by eslint-stylistic
https://eslint.style/
2025-03-31 09:00:15 +02:00
Elian Doran f3b866fa7b fix(import/zip): remove nesting of ck-content divs 2025-03-31 00:58:35 +03:00
Elian Doran f32b76d047 refactor(import/zip): extract method and test it 2025-03-31 00:27:36 +03:00
Elian Doran 2a69a98dd3 chore(demo): remove extremely nested content 2025-03-30 23:51:46 +03:00
Elian Doran c2feb56a0a feat(edit-demo): clean up directory 2025-03-30 23:09:17 +03:00
Elian Doran dc31ea2333 chore(docs): keep root naming 2025-03-30 22:29:29 +03:00
Elian Doran 9c83738a16 chore(edit-demo): export root instead 2025-03-30 22:27:09 +03:00
Elian Doran 9590f5362e feat(edit-demo): use in-memory database 2025-03-30 22:26:23 +03:00
Elian Doran 428f00425a chore(demo): export as root 2025-03-30 22:26:01 +03:00
Elian Doran e6d77f3058 chore(demo): rename top-level note 2025-03-30 22:08:52 +03:00
Elian Doran 575201fbe8 feat(in-app-help): display day notes help for #calendarRoot 2025-03-30 22:04:16 +03:00
Elian Doran 743c053584 feat(demo): create top-level calendar root 2025-03-30 21:54:59 +03:00
Elian Doran 4605f9f38f chore(docs): commit contents of the demo zip for diffing changes 2025-03-30 21:37:36 +03:00
Elian Doran 293314b8ef feat(edit-demo): unzip demo for easy diffing 2025-03-30 21:37:10 +03:00
Elian Doran 827c228cdc feat(demo): add entrypoint for editing the demo safely 2025-03-30 21:31:35 +03:00
Elian Doran 78c8b17e33 chore(release): turn into beta
/ Check Docker build (Dockerfile) (push) Failing after 34s
/ Check Docker build (Dockerfile.alpine) (push) Failing after 36s
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm/v7) (push) Has been skipped
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm64) (push) Has been skipped
/ Build Docker images (Dockerfile.alpine, ubuntu-latest, linux/amd64) (push) Has been skipped
/ Merge manifest lists (push) Has been skipped
Release / Make Electron (arm64, map[forge_platform:linux image:ubuntu-latest name:linux shell:bash]) (push) Failing after 30s
Release / Make Electron (x64, map[forge_platform:linux image:ubuntu-latest name:linux shell:bash]) (push) Failing after 32s
Release / Build Linux Server (x64, ubuntu-latest) (push) Failing after 36s
Release / Make Electron (arm64, map[forge_platform:darwin image:macos-latest name:macos shell:bash]) (push) Has been cancelled
Release / Make Electron (arm64, map[forge_platform:win32 image:win-signing name:windows shell:cmd]) (push) Has been cancelled
Release / Make Electron (x64, map[forge_platform:darwin image:macos-latest name:macos shell:bash]) (push) Has been cancelled
Release / Make Electron (x64, map[forge_platform:win32 image:win-signing name:windows shell:cmd]) (push) Has been cancelled
Release / Build Linux Server (arm64, ubuntu-24.04-arm) (push) Has been cancelled
2025-03-30 20:51:08 +03:00
Elian Doran 60becbc38c fix(build): add dprint to optional dependencies to support ARMv7 (closes #1556) 2025-03-30 18:04:09 +03:00
Elian Doran d69ff1e3cf Merge pull request #1569 from TriliumNext/feature/fix_release
fix(release): appdmg not found
2025-03-30 17:59:48 +03:00
Elian Doran 2d3a1e9023 fix(build): flaky copy of the artifact 2025-03-30 17:43:34 +03:00
Elian Doran 7b2bbdd52a fix(release): unable to find appdmg 2025-03-30 17:23:20 +03:00
Elian Doran 93dc16de45 chore(package): update lock 2025-03-30 17:06:59 +03:00
Elian Doran 85000a2b7f Revert "fix(release): appdmg not found"
This reverts commit 095fbb7015.
2025-03-30 17:04:29 +03:00
Elian Doran a9c3c98fa5 chore(nighly): trigger on forge config change 2025-03-30 16:54:14 +03:00
Elian Doran fb800eb96b fix(forge): slashes in ref name breaking copying 2025-03-30 16:44:46 +03:00
Elian Doran 095fbb7015 fix(release): appdmg not found 2025-03-30 16:24:39 +03:00
Elian Doran 11dc52f0ce chore(release): prepare for 0.92.5 2025-03-30 15:32:43 +03:00
Elian Doran e01dc5751a Merge pull request #1566 from TriliumNext/tray
Fix program crash during initial setup and the tray not showing.
2025-03-30 14:50:11 +03:00
Elian Doran 283229d597 chore(client): add .mobile-only class 2025-03-30 14:30:18 +03:00
Elian Doran 30c14297d0 feat(backend-options): add a refresh floating button 2025-03-30 14:30:18 +03:00
Elian Doran a0d562e01b feat(backend-options): reduce padding 2025-03-30 14:30:18 +03:00
SiriusXT 10bc7a8bd6 Merge branch 'develop' into tray 2025-03-30 18:48:54 +08:00
SiriusXT 4c063251e0 Fix program crash during initial setup and the tray not showing. 2025-03-30 17:39:28 +08:00
Elian Doran 9c291e3d41 Merge pull request #1561 from TriliumNext/renovate/rollup-4.x-lockfile
chore(deps): update dependency rollup to v4.38.0
2025-03-30 12:16:05 +03:00
Elian Doran bc4918ed5b feat(backend_log): respect user's word wrapping (closes #1496) 2025-03-30 11:59:38 +03:00
Elian Doran fcd7df52ee Merge branch 'develop' into renovate/rollup-4.x-lockfile 2025-03-30 11:40:36 +03:00
Elian Doran fbb010edf4 Merge pull request #1560 from TriliumNext/renovate/mind-elixir-4.x
chore(deps): update dependency mind-elixir to v4.5.0
2025-03-30 11:38:14 +03:00
renovate[bot] 66f7ba0065 chore(deps): update dependency rollup to v4.38.0 2025-03-30 02:26:39 +00:00
renovate[bot] b9ae39a3d1 chore(deps): update dependency mind-elixir to v4.5.0 2025-03-30 02:26:30 +00:00
Elian Doran fd53e35f6f feat(autocomplete): don't search unless length is 3 2025-03-29 22:22:51 +02:00
Elian Doran 766b0723f7 feat(autocomplete): support default icons like on client 2025-03-29 22:18:42 +02:00
Elian Doran a9193fdcd4 feat(autocomplete): display note icon 2025-03-29 22:04:34 +02:00
Elian Doran eb097ec1ea fix(highlights): unable to navigate to italic links (closes #1555) 2025-03-29 14:12:17 +02:00
Elian Doran a44bf7fb49 chore(highlights): prevent crash if unable to find target element 2025-03-29 14:10:12 +02:00
Elian Doran 04a7ad8d4e fix(highlights): new italic format not displayed 2025-03-29 14:08:57 +02:00
Elian Doran 9a3f765d42 fix(import/markdown): unable to import code blocks with XML/HTML content if safe mode on (closes #1530) 2025-03-29 13:47:02 +02:00
Elian Doran fd76f8dac9 chore(vitest): switch to JSON for workspace config
Fixes random error due to the presence of the file in `build` directory.
2025-03-29 13:40:44 +02:00
Elian Doran 0982a0e503 feat(docs): improve documentation, add icons, reorganize 2025-03-29 13:07:28 +02:00
Elian Doran 5ae6b18762 fix(docs): remove accidentally added file 2025-03-29 13:07:28 +02:00
Elian Doran 49c41850ad feat(docs): add basic Bash script for ETAPI 2025-03-29 13:07:28 +02:00
Elian Doran 644d79b1ce feat(docs): improve documentation on note map/relation map 2025-03-29 13:07:28 +02:00
Elian Doran 80cfd73cae feat(docs): document some of the technologies used 2025-03-29 13:07:28 +02:00
Elian Doran fbfeb7d2bf feat(docs): document note source (viewing & editing) 2025-03-29 13:07:28 +02:00
Elian Doran 7be71fc6fa Merge pull request #401 from TriliumNext/feature/MFA
Feature addition: Multi-Factor Authentication
2025-03-29 13:06:00 +02:00
Jin ed58be1578 Merge branch 'develop' into feature/MFA 2025-03-29 11:23:38 +01:00
Jin 17b4bfca39 chore: 🤖 improve instruction 2025-03-29 11:23:00 +01:00
Elian Doran 96d3d661c2 chore(docs): sync import/export 2025-03-29 11:28:59 +02:00
Elian Doran e62137f245 fix(docs): meta for HTML documentation changing due to root notePosition 2025-03-29 11:28:31 +02:00
Elian Doran 4dd300b702 fix(docs): meta for HTML documentation changing due to isExpanded 2025-03-29 11:25:28 +02:00
Elian Doran ce9a2a258e Merge pull request #1550 from TriliumNext/renovate/sanitize-html-2.x
chore(deps): update dependency @types/sanitize-html to v2.15.0
2025-03-29 02:56:02 +02:00
Jin a8e37b5b92 Merge branch 'develop' into feature/MFA 2025-03-29 01:45:18 +01:00
Jin 02c4a269be feat: 🎸 upgrade db version 2025-03-29 01:44:25 +01:00
Jin 77f62b94cc refactor: 💡 refact recovery code 2025-03-29 01:40:17 +01:00
renovate[bot] c18e56d12f chore(deps): update dependency @types/sanitize-html to v2.15.0 2025-03-29 00:39:33 +00:00
Elian Doran d84e8c347a Merge pull request #1546 from TriliumNext/webpack
Move library loader to webpack
2025-03-29 02:38:34 +02:00
Elian Doran c7c8af28f7 fix(editor): header formatting remaining after cut to note (closes #687) 2025-03-29 02:07:29 +02:00
Jin 2eeb376d24 refactor: 💡 fix typo and imporve code quality 2025-03-29 01:00:08 +01:00
Elian Doran d8b9448b91 fix(editor): not being able to copy from the included note (closes #588) 2025-03-29 01:55:20 +02:00
Jin ce66397257 Merge branch 'develop' into webpack 2025-03-29 00:52:27 +01:00
Jin 608378193f fix: 🐛 fix mark.js load error 2025-03-29 00:51:36 +01:00
Elian Doran bd092e0119 chore(i18n): typo 2025-03-29 00:45:16 +02:00
Elian Doran f743cfc35c fix(options/mfa): double colons in warning 2025-03-29 00:44:51 +02:00
Elian Doran 4cde9253ed style(options/mfa): use admonitions 2025-03-29 00:42:20 +02:00
Elian Doran 9c835d0f7f chore(docs): always use LF on Windows 2025-03-29 00:22:49 +02:00
Elian Doran 68e1e68cfe chore(zen): change default keyboard shortcut to F9 (closes #1372) 2025-03-29 00:22:27 +02:00
Jin 534c146542 Merge branch 'develop' into webpack 2025-03-28 23:00:59 +01:00
Jin 47a363be0f refactor: 💡 improve image zoom 2025-03-28 22:28:09 +01:00
Jin 25aa08bb4c chore: 🤖 fix lock file 2025-03-28 22:07:43 +01:00
Jin 797ed2a494 Merge branch 'develop' into feature/MFA 2025-03-28 22:04:23 +01:00
Elian Doran df6c6647c7 chore(deps): remove leaflet from dist 2025-03-28 22:40:19 +02:00
Elian Doran 83890ba130 Merge pull request #1537 from TriliumNext/build_webpack-excalidraw-font
build: use webpack for excalidraw
2025-03-28 22:31:32 +02:00
Elian Doran 041c801065 Merge pull request #1539 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.13.14
2025-03-28 22:24:33 +02:00
Elian Doran 9585c6a55f fix(client): "Note not found" tooltip for some URLs 2025-03-28 22:22:42 +02:00
Elian Doran 4ac52e17da Merge pull request #1541 from TriliumNext/renovate/mime-types-3.x
fix(deps): update dependency mime-types to v3
2025-03-28 22:08:43 +02:00
Elian Doran bf1896f4fa Merge pull request #1540 from TriliumNext/renovate/electron-35.x
chore(deps): update dependency electron to v35.1.2
2025-03-28 22:08:12 +02:00
Elian Doran 597874250a fix(electron): spacing increases when entering Chinese and digits (fixes #1327) 2025-03-28 22:07:01 +02:00
Jin 4a2c075935 chore: 🤖 remove calendar css from library_loader 2025-03-28 17:08:34 +01:00
Jin accf245179 chore: 🤖 remove leaflet css from library_loader 2025-03-28 16:58:06 +01:00
Jin b30035834a chore: 🤖 remove mark.js from asset 2025-03-28 16:43:11 +01:00
Jin 3dc7636910 chore: 🤖 remove wheelzoom from asset 2025-03-28 16:40:48 +01:00
Jin 2476e0b504 chore: 🤖 move mark.js to webpack 2025-03-28 16:23:06 +01:00
Jin 94bc550c67 chore: 🤖 move wheel zoom to webpack 2025-03-28 16:16:33 +01:00
Jin 121f297fcb chore: 🤖 better oauth instruction 2025-03-28 12:08:32 +01:00
Jin b51814abeb fix: 🐛 remove oauth default config 2025-03-28 12:03:27 +01:00
Jin cb3627ed50 chore: 🤖 better totp instruction 2025-03-28 12:01:18 +01:00
Jin f19ec9b3c4 fix: 🐛 fix open id check error 2025-03-28 11:59:32 +01:00
Jin aaecb43f8a fix: 🐛 fix oauth logout error 2025-03-28 04:05:00 +01:00
Jin bde58e5836 fix: 🐛 fix login error 2025-03-28 04:01:18 +01:00
Jin 5987dedff8 Merge branch 'develop' into feature/MFA 2025-03-28 03:47:26 +01:00
Jin 2bd408cf8a feat: 🎸 better instruction 2025-03-28 03:46:58 +01:00
Jin 44c8b7d9ea feat: 🎸 improve oauth option page 2025-03-28 03:44:40 +01:00
Jin 7929aaf91a feat: 🎸 returen missing vars for oauth 2025-03-28 03:43:44 +01:00
renovate[bot] def9bbeac7 fix(deps): update dependency mime-types to v3 2025-03-28 02:43:35 +00:00
renovate[bot] 9fe40e2ce6 chore(deps): update dependency electron to v35.1.2 2025-03-28 02:43:19 +00:00
renovate[bot] bc76ba4149 chore(deps): update dependency @types/node to v22.13.14 2025-03-28 02:43:08 +00:00
Jin 332de4e67f feat: 🎸 add subtree translation 2025-03-28 03:42:59 +01:00
Jin c217ccd347 feat: 🎸 remove totp from config 2025-03-28 03:05:04 +01:00
Jin 243d7d0ee9 feat: 🎸 remove totp config 2025-03-28 03:02:55 +01:00
Jin c921982ae7 feat: 🎸 set generate totp function 2025-03-28 03:02:03 +01:00
Jin ea7fbb154f fix: 🐛 init error with totp 2025-03-28 02:38:51 +01:00
Jin 5742d3068e feat: 🎸 move totp services to encryption logic 2025-03-28 02:15:25 +01:00
Jin 687d506ca5 refactor: 💡 rename error class 2025-03-28 01:56:49 +01:00
Jin 18a417addd feat: 🎸 add totp encryption 2025-03-28 01:53:53 +01:00
Jin 04cbe9d3d1 style: 💄 restyle 2025-03-28 01:53:32 +01:00
Jin d4cd0e8eff feat: 🎸 restyle option page 2025-03-28 01:22:30 +01:00
Jin d92fa82ad0 feat: 🎸 set option status 2025-03-28 01:00:58 +01:00
Jin d42b839c32 feat: 🎸 init move mfa option 2025-03-28 00:39:59 +01:00
Panagiotis Papadopoulos 73fa06a06a deps: move react/react-dom to devDeps
these are only used for excalidraw and are bundled by webpack now
2025-03-28 00:20:00 +01:00
Panagiotis Papadopoulos c81fb5dd14 deps: move @excalidraw to devDeps
it is bundled by webpack now
2025-03-28 00:16:30 +01:00
Panagiotis Papadopoulos 98df7bcd83 chore(excalidraw): update comment about EXCALIDRAW_ASSET_PATH 2025-03-28 00:14:04 +01:00
Panagiotis Papadopoulos db959aa997 chore(excalidraw): update EXCALIDRAW_ASSET_PATH
used for the fonts excalidraw requires
2025-03-28 00:06:50 +01:00
Panagiotis Papadopoulos 1c49cb0569 build(webpack): fix copy-to path name
this will now end up in "src/public/app-dist/excalidraw/fonts/"

excalidraw *needs* the fonts to be in a folder called "fonts" as it appends the "EXCALIDRAW_ASSET_PATH" variable with "fonts" automatically -> therefore switch names around to fix the issue
2025-03-27 23:53:08 +01:00
Panagiotis Papadopoulos ee2ee2c291 build(webpack): copy required excalidraw fonts 2025-03-27 23:15:47 +01:00
Panagiotis Papadopoulos 7b6f04e30d deps: add copy-webpack-plugin
to be used for copying excalidraw fonts as assets
2025-03-27 23:12:24 +01:00
Elian Doran 1a312bf01c Merge pull request #1322 from TriliumNext/chore_dprint
chore: replace prettier with dprint
2025-03-27 22:57:58 +02:00
Panagiotis Papadopoulos e95172e2db build(scripts): replace prettier with dprint
also renaming the script from "dev:prettier" to a more "generic" term "dev:format"
2025-03-27 21:29:18 +01:00
Panagiotis Papadopoulos cdc6ce2118 chore: remove prettier
replaced by dprint due to its configurability
2025-03-27 21:26:39 +01:00
Panagiotis Papadopoulos f965be9f8f deps: add dprint as devDep 2025-03-27 21:24:51 +01:00
Panagiotis Papadopoulos 1c04aa9963 chore: add dprint config
add initial dprint configuration, settings partially taken from the prettier config,

still might need some finetuning
2025-03-27 21:22:07 +01:00
Panagiotis Papadopoulos 6336699618 build(server): improve "node" folder cleanup
* remove useless symlinks to non-existing files (npm, npx -> the actual file gets deleted by "rm -r $BUILD_DIR/node/lib/node_modules/npm"
=> fixes #1499
(this time fully ;-))

* remove unused corepack

* remove useless CHANGELOG.md (LICENSE and README.md should of course still remain)
2025-03-27 21:06:35 +01:00
Elian Doran 91242b6cab fix(next): regression in mica dark 2025-03-27 19:55:06 +02:00
Elian Doran 1b6ab7e7f2 fix(dropdowns): overlap with quick search results 2025-03-27 19:36:58 +02:00
Elian Doran 10f044aced Merge pull request #1436 from TriliumNext/build_copy-dist-trilium-merge
build: port copy-trilium.sh cleanup functionality to cross-platform TS
2025-03-27 19:26:34 +02:00
--global cbf3ee9f6e fix(ci): bring back ref name in artifact (fixes #1532) 2025-03-27 19:03:44 +02:00
Adorian Doran 04a41ca5f4 style(next): add some remarks 2025-03-27 18:50:26 +02:00
Adorian Doran 63efa8ffe4 style(next): improve the window dragging functionality for the vertical toolbar layout 2025-03-27 18:46:03 +02:00
Adorian Doran b6565c3b13 style(next): improve the window dragging functionality also for the vertical toolbar layout 2025-03-27 18:40:49 +02:00
Adorian Doran b9c4d83223 style(next): improve the window dragging functionality for the horizontal toolbar layout 2025-03-27 18:26:21 +02:00
Adorian Doran 66cebf4ebf style(next)/scrollbars: add a remark 2025-03-27 16:12:51 +02:00
Adorian Doran 25d83752e5 style(next): refactor 2025-03-27 16:08:34 +02:00
Adorian Doran 10ea58a368 style(next)/scrollbars: restore the support for custom background color 2025-03-27 16:06:53 +02:00
Adorian Doran 4ab70fcb8a style(next): rename CSS variable 2025-03-27 15:43:33 +02:00
Adorian Doran 01004ac425 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-27 15:41:27 +02:00
Adorian Doran 99bdf33236 style(next): fix scrollbar appearance in code blocks 2025-03-27 15:41:24 +02:00
Elian Doran 2ce1858d40 Merge pull request #1533 from FliegendeWurst/patch-1
README.md: TriliumDroid link, documentation update
2025-03-27 15:27:41 +02:00
Arne Keller 8c4e504cd4 README.md: link to old docs 2025-03-27 14:23:55 +01:00
Arne Keller a7d6f1e4d1 README.md: TriliumDroid link, documentation update 2025-03-27 12:50:39 +01:00
Panagiotis Papadopoulos 5a2c5d8047 Merge branch 'develop' into build_copy-dist-trilium-merge 2025-03-27 09:37:03 +01:00
Panagiotis Papadopoulos 9fe37465c7 build(electron-forge): use double quotes for the buildPath in afterPrune
attempt to fix failing Windows build in CI, which uses cmd shell, which apparently treats single apostrophes differently
2025-03-27 09:35:48 +01:00
Panagiotis Papadopoulos 6218ae6cd7 chore(docker): move exception below TODO comment 2025-03-27 09:07:29 +01:00
Panagiotis Papadopoulos fa0358662a build(docker): add missing cleanupNodeModules removal to Dockerfile
previously forgot to add this here as well -> had it only in the Dockerfile.alpine
2025-03-27 09:06:09 +01:00
Panagiotis Papadopoulos d5bc9841e3 build(docker): use absolute path to stay consistent 2025-03-27 09:05:17 +01:00
Panagiotis Papadopoulos e9fa37c4ee chore(docker): remove TODO 2025-03-27 09:04:10 +01:00
Panagiotis Papadopoulos 75431ca634 build: make running of npm ci in build scripts configurable
* moved the running of npm ci from copy-dist to cleanupNodeModules
* added flag to disable it (necessary for electron-forge)
2025-03-27 00:00:41 +01:00
Elian Doran cd5bfcf136 Merge branch 'develop' into feature/MFA 2025-03-26 22:33:15 +02:00
Elian Doran 683bf64100 Merge pull request #1528 from TriliumNext/renovate/mermaid-11.x
fix(deps): update dependency mermaid to v11.6.0
2025-03-26 22:31:42 +02:00
Adorian Doran cdcfab1011 style(next)/scrollbars: tweak size 2025-03-26 19:47:37 +02:00
Elian Doran b95dca71db Merge branch 'develop' into renovate/mermaid-11.x 2025-03-26 19:34:55 +02:00
Adorian Doran 733293c09a Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-26 19:33:13 +02:00
Adorian Doran dcd64554eb style(next): fix Firefox scrollbar styles overriding WebKit scrollbar styles 2025-03-26 19:33:11 +02:00
Elian Doran 84d75c3ee8 Merge pull request #1487 from TriliumNext/tray
Fix tray exception when multiple windows
2025-03-26 19:32:22 +02:00
Elian Doran 51913ecccf Merge pull request #1520 from TriliumNext/renovate/electron-forge-monorepo
chore(deps): update electron-forge monorepo to v7.8.0
2025-03-26 19:16:54 +02:00
Adorian Doran 40e990d39a Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-26 19:15:32 +02:00
Adorian Doran be9b19d81c style(next): improve CSS formatting 2025-03-26 19:15:29 +02:00
--global 4b1551f5ec Merge branch 'develop' of github.com:TriliumNext/Notes into develop 2025-03-26 19:11:13 +02:00
--global fd0018677c test(i18n): add refresh button click after language change 2025-03-26 19:11:07 +02:00
Adorian Doran 4b9ea651a1 style(next): restyle Firefox scrollbars 2025-03-26 19:06:22 +02:00
--global e85b7f5e79 chore(vscode): add playwright to recommendations 2025-03-26 18:56:28 +02:00
Adorian Doran c2d917b926 style(next): restyle WebKit scrollbars 2025-03-26 18:53:17 +02:00
--global 0cedd697cc fix(electron): not starting on an empty DB 2025-03-26 18:41:36 +02:00
Jin 647226858d feat: 🎸 Disable MFA on electron instance 2025-03-26 11:04:04 +01:00
Jin 0741c8546f feat: 🎸 fix electron login logic 2025-03-26 10:58:34 +01:00
Jin 347c644f23 Merge branch 'develop' into feature/MFA 2025-03-26 10:48:16 +01:00
Panagiotis Papadopoulos 0b428035ae build(cleanupNodeModules): move removal of elements to its own function
also added a logging function for debugging purposes
2025-03-26 09:48:06 +01:00
Panagiotis Papadopoulos 51f2e23c2f build(cleanupNodeModules): delete .bin folder
this is only needed for executing package scripts -> which we don't do in production

fixes #1499
2025-03-26 09:28:50 +01:00
Panagiotis Papadopoulos 1528703ed9 build(cleanupNodeModules): add some minimalistic logging 2025-03-26 09:26:22 +01:00
Panagiotis Papadopoulos 1150f78b15 build(cleanupNodeModules): use path.join and basePath for extraFoldersDelete 2025-03-26 09:18:16 +01:00
Panagiotis Papadopoulos 6fe23f9a13 chore(cleanupNodeModules): remove commented out paths
extra note on mermaid: that should be packed by webpack now, so we just need to move it to devDeps and and we should be good
2025-03-26 09:15:33 +01:00
Panagiotis Papadopoulos b457fa2e87 chore(cleanupNodeModules): rename nodeDir to nodeModulesContent 2025-03-26 09:12:22 +01:00
Panagiotis Papadopoulos 83da24b38d build(dockerignore): add cleanupNodeModules as exception 2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 57ee61938d build(copy-trilium): delete now unused script
all of its functionality has been "absorbed" by the cross-platform copy-dist and cleanupNodeModules scripts, that can be used for all of our builds now
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos f79b925e49 build(server): use cleanupNodeModules script 2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 3e3344b329 chore(scripts): remove now unneeded electron-forge:prepare 2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 1ceaafa1e8 build: move cleanupNodeModules to its own file
this is necessary, since for Docker and electron-forge, we need to run this as an extra step after copy-dist

for electron-forge: after it is done with its own "pruning", as we otherwise would need to also take care of certain electron related pruning

for Docker: as a last step in the build stage
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos cd8401089d build(copy-trilium): update list of useless deps paths
* image-q/demo -> doesn't exist anymore (and even if it did - previous cleanup step, would've removed this anyways)
* @excalidraw/excalidraw/dist/* -> updated to point to the dev folder
* boxicons -> only fonts and css folders are used, so remove the other ones
* jimp -> updated paths and removed non-existent path

fixing here for historical reasons, next step is to move these over to copy-dist.ts
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 6749d8084b build(copy-dist): add further cleanupNodeModules functionality
deleting of ts and map files from node_modules folder,
adapted from copy-trilium.sh.
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 8275f3c867 build(copy-dist): execute filterableDirs cleanup in one chain 2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos a9643174cc build(copy-dist): add further folders to list of filterableDirs
same as before, but some of the modules use singular/plural, so just check for both
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 6260ea1532 build(copy-dist): add initial cleanupNodeModules functionality
adapted from copy-trilium.sh
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos bee7793d32 build(copy-trilium): remove now unnecessary package.json patching
this is not needed anymore since commit 6b9d8f0d67
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 8feb201d3d build(electron-forge): set prune to false
since we our own more "sophisticated" pruning during copy-dist, we need to set this to false, as otherwise build will fail
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 6fb270e4f8 build(copy-dist): copy over existing node_modules
helps avoiding downloading the packages a 2nd time during our prune stage
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 8977492981 build(copy-dist): move "pruning" to copy-dist from copy-trilium.sh 2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 1640000291 build(build-server): move "build:prepare-dist" call to build-server from copy-trilium
in preparation to get rid of the file altogether - rest of the functionality will be merged into copy-dist.ts
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 17d5fdb4b0 build(copy-dist): get rid of manual node_module copying
this is useless at the moment, as all build processes are running "npm ci --omit=dev" anyways, i.e. they will just install everything remaining again
2025-03-26 08:12:48 +01:00
Panagiotis Papadopoulos 1e713469e7 build(server): bump to latest node v22.14.0 -> fixes EBADENGINE warning
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'node-abi@4.2.0',
npm warn EBADENGINE   required: { node: '>=22.12.0' },
npm warn EBADENGINE   current: { node: 'v20.18.1', npm: '10.8.2' }
npm warn EBADENGINE }
2025-03-26 08:12:22 +01:00
Panagiotis Papadopoulos b97c28bc13 ci: bump to node v22 -> fixes EBADENGINE warning
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'node-abi@4.2.0',
npm warn EBADENGINE   required: { node: '>=22.12.0' },
npm warn EBADENGINE   current: { node: 'v20.18.1', npm: '10.8.2' }
npm warn EBADENGINE }
2025-03-26 08:10:04 +01:00
Elian Doran 5ec3d58f6f fix(electron): option does not exist 2025-03-26 08:30:56 +02:00
Jin d010e6cc73 Merge branch 'develop' into feature/MFA 2025-03-26 03:56:53 +01:00
Jin 7024166fc0 feat: 🎸 Add CN translation 2025-03-26 03:55:06 +01:00
Jin ce053323a9 feat: 🎸 Format code 2025-03-26 03:53:00 +01:00
Jin e2ea6f96ce feat: 🎸 Add CN translation 2025-03-26 03:51:09 +01:00
Jin 4959dbf126 feat: 🎸 Improve TOTP setting page 2025-03-26 03:22:57 +01:00
renovate[bot] e0522fcd48 fix(deps): update dependency mermaid to v11.6.0 2025-03-26 02:11:39 +00:00
Jin 979000c5c8 feat: 🎸 Fix recovery key error 2025-03-26 02:55:42 +01:00
Jin f2a29653b2 feat: 🎸 Fix SSO login 2025-03-26 02:39:29 +01:00
Jin d4b657e4d8 feat: 🎸 Fix import naming 2025-03-26 02:04:24 +01:00
Jin 4762287d61 feat: 🎸 Remove redundant func 2025-03-26 01:58:54 +01:00
Jin 886e63f128 feat: 🎸 Add SSO login button 2025-03-26 01:48:42 +01:00
Jin a30695b9fb feat: 🎸 Remove redundant check auth 2025-03-26 01:36:48 +01:00
Jin e957a17f1c feat: 🎸 Seperate auth check 2025-03-26 00:50:37 +01:00
Jin 083ee5d23b feat: 🎸 Fix TOTP not load correctly 2025-03-26 00:42:19 +01:00
Jin 8f157e04d4 feat: 🎸 Show correct login error to user 2025-03-26 00:13:56 +01:00
Jin c1ed471403 feat: 🎸 Ask user to login if any MFA configs are changed 2025-03-26 00:04:55 +01:00
Jin c2a6d517f0 feat: 🎸 Better naming for vars 2025-03-25 23:53:49 +01:00
Jin 1afccb4129 feat: 🎸 Fix app start error with MFA configs 2025-03-25 23:14:25 +01:00
Jin ae794a562f feat: 🎸 Use config.ini configure 2025-03-25 22:44:59 +01:00
Jin 3fa89b2eba feat: 🎸 Remove unuse gitignore file 2025-03-25 22:32:52 +01:00
Jin 924044ae52 feat: 🎸 Remove dotenv dep 2025-03-25 22:31:07 +01:00
Jin 94cd54f17e feat: 🎸 Use ini file to configure MFA 2025-03-25 22:30:14 +01:00
Jin 8d7339b50a feat: 🎸 Use i18n for text, remove unused vars 2025-03-25 21:00:32 +01:00
Elian Doran 5148ce64ae chore(i18n): translate missing Romanian messages 2025-03-25 21:51:40 +02:00
Elian Doran 03fd34eeb0 feat(settings/i18n): dedicated restart button 2025-03-25 21:48:02 +02:00
Elian Doran e408cc5b10 feat(settings/i18n): hide formatting locale on non-electron 2025-03-25 21:40:35 +02:00
Elian Doran f0b4acd15a style(settings): present i18n settings in a different fahsion 2025-03-25 21:23:32 +02:00
Elian Doran 90794fed88 fix(electron): wrong value for --lang 2025-03-25 20:26:21 +02:00
Elian Doran ab58671625 feat(options): restart when setting locale 2025-03-25 20:15:39 +02:00
Elian Doran a5a7a30cd5 feat(electron): respect formatting locale 2025-03-25 20:10:19 +02:00
Elian Doran 45208c8039 chore(i18n): define electron locales for all the supported languages 2025-03-25 19:59:05 +02:00
Elian Doran b923a23d95 feat(settings): make the formatting locale value adjustable 2025-03-25 19:56:07 +02:00
Elian Doran c4559749f1 feat(settings): display option to adjust formatting locale 2025-03-25 19:48:07 +02:00
Elian Doran 73fc7304c7 Merge branch 'develop' into renovate/electron-forge-monorepo 2025-03-25 19:08:50 +02:00
Elian Doran 90ab31329e Merge pull request #1507 from TriliumNext/feature/windows_signing_v3
Windows Signing
2025-03-25 17:51:12 +02:00
Elian Doran ec7b645d36 Merge pull request #1516 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.13.13
2025-03-25 11:53:07 +02:00
Elian Doran 3dbce19301 Merge pull request #1519 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update dependency typescript-eslint to v8.28.0
2025-03-25 11:52:52 +02:00
renovate[bot] 4aa834b23a chore(deps): update dependency @types/node to v22.13.13 2025-03-25 08:51:39 +00:00
Elian Doran efb0bf9e21 Merge branch 'develop' into renovate/typescript-eslint-monorepo 2025-03-25 10:50:24 +02:00
Elian Doran 19287f6474 Merge pull request #1517 from TriliumNext/renovate/react-monorepo
chore(deps): update dependency @types/react to v18.3.20
2025-03-25 10:49:45 +02:00
Elian Doran 9506d0774e Merge pull request #1518 from TriliumNext/renovate/supertest-6.x
chore(deps): update dependency @types/supertest to v6.0.3
2025-03-25 10:49:31 +02:00
Elian Doran 269cfc4689 feat(ci): trigger on renovate electron forge 2025-03-25 10:48:19 +02:00
Elian Doran d0549ebdf9 Merge branch 'develop' into feature/windows_signing_v3 2025-03-25 10:40:48 +02:00
renovate[bot] 9b96cb61cc chore(deps): update electron-forge monorepo to v7.8.0 2025-03-25 02:59:03 +00:00
renovate[bot] 220bcbd12c chore(deps): update dependency typescript-eslint to v8.28.0 2025-03-25 02:58:48 +00:00
renovate[bot] 042172cd53 chore(deps): update dependency @types/supertest to v6.0.3 2025-03-25 02:58:33 +00:00
renovate[bot] 19389e4ea0 chore(deps): update dependency @types/react to v18.3.20 2025-03-25 02:58:22 +00:00
Elian Doran bb1143e582 feat(note_icon): disable in note source (closes #1377) 2025-03-24 22:57:56 +02:00
Elian Doran 4ac57c6b46 fix(client): note icon not hiding after switching notes (closes #964) 2025-03-24 19:42:23 +02:00
Elian Doran 06e1b0f720 fix(client): tooltip overlapping with CKEditor pane (closes #844) 2025-03-24 19:36:42 +02:00
Elian Doran 0686c81a81 Merge pull request #1509 from TriliumNext/renovate/leaflet-1.x
chore(deps): update dependency @types/leaflet to v1.9.17
2025-03-24 19:25:30 +02:00
Elian Doran 76550b761e Merge pull request #1510 from TriliumNext/renovate/rollup-4.x-lockfile
chore(deps): update dependency rollup to v4.37.0
2025-03-24 19:25:08 +02:00
Elian Doran 9108ea9b8a fix(electron): disable the creation of desktop icon at runtime (closes #1488) 2025-03-24 19:21:04 +02:00
Elian Doran b0e584924b fix(eslint): disable linting of TypeScript due to types (closes #1503) 2025-03-24 19:17:54 +02:00
Adorian Doran 2c694fe5d7 style(next): remove useless CSS code 2025-03-24 19:13:28 +02:00
Elian Doran a7d6bf1bd8 feat(forge): match name for artifacts 2025-03-24 19:10:29 +02:00
Elian Doran 4108f7f353 chore(forge): ignore certain artifacts 2025-03-24 19:04:38 +02:00
Adorian Doran 2e15c926c5 style(next)/floating buttons/show table of contents: fix the rounded corners being placed on the wrong side 2025-03-24 18:42:08 +02:00
Adorian Doran 7a2eb81a81 style(next)/floating buttons: make sure the container will have a consistent height 2025-03-24 18:19:28 +02:00
Elian Doran 6f26f4d798 fix(forge): allow local building by ignoring the signing options 2025-03-24 17:53:04 +02:00
Elian Doran 9aef24eecc chore(ci): remove unnecessary extension input 2025-03-24 17:52:01 +02:00
Elian Doran 3e14ffe1e7 fix(test): flaky test due to concurrency 2025-03-24 17:42:38 +02:00
Adorian Doran e0007f7578 style(next)/floating buttons/backlink counter: fix rounded corners on hover 2025-03-24 17:34:33 +02:00
Elian Doran 04a8bb94b6 fix(ci): wrong runner for signing 2025-03-24 17:32:14 +02:00
Elian Doran c25d42cf5d chore(ci): solve issues after review 2025-03-24 17:30:37 +02:00
Adorian Doran 3159b19c46 style(next)/floating buttons/backlink counter: improve the appearance of the dropdown panel 2025-03-24 17:30:35 +02:00
Elian Doran 9f3fee2d06 chore(ci): remove now redundant input 2025-03-24 17:15:46 +02:00
Elian Doran 2045865df2 chore(ci): add back all platforms 2025-03-24 17:14:22 +02:00
Elian Doran 3acb5dad30 refactor(ci): remove redundant main workflow 2025-03-24 17:13:08 +02:00
Elian Doran 6a2818cea6 chore(ci): define forge_platform everywhere 2025-03-24 17:12:11 +02:00
Elian Doran d942daea94 chore(ci): customize shell per platform 2025-03-24 17:10:19 +02:00
Adorian Doran 283b8e9bc8 style(next)/floating buttons/backlink counter: fix the dropdown not showing up 2025-03-24 17:05:09 +02:00
Elian Doran 9aaada3f6e refactor(forge): deduplicate windows signing configuration 2025-03-24 17:04:22 +02:00
Adorian Doran 8cc7d02f36 client: add a CSS class to facilitate identifying visible widgets 2025-03-24 17:00:52 +02:00
Elian Doran 34043a8a70 feat(signing): use environment variables for the executable path 2025-03-24 17:00:37 +02:00
Elian Doran 3413c5e401 fix(nightly): double .zip in name 2025-03-24 16:55:47 +02:00
Elian Doran d4e8d9e942 fix(docker): missing sign windows script 2025-03-24 16:55:39 +02:00
Elian Doran 308632ea51 chore(ci): re-enable Windows signing logs 2025-03-24 13:30:37 +02:00
Elian Doran 18a5a55384 chore(ci): remove debug logs 2025-03-24 12:42:01 +02:00
Elian Doran d5a8387c06 Revert "chore(ci): try to use basic sign tool config"
This reverts commit 53860c4885.
2025-03-24 12:41:38 +02:00
Elian Doran 53860c4885 chore(ci): try to use basic sign tool config 2025-03-24 12:15:15 +02:00
Elian Doran 6f54ac7446 chore(ci): change signing log 2025-03-24 12:05:46 +02:00
Elian Doran 10d8cd95a6 chore(ci): enable windows installer logs 2025-03-24 12:05:34 +02:00
Elian Doran 58e9c7e389 feat(ci): pass signing to squirrel 2025-03-24 11:21:31 +02:00
Elian Doran bfdb3e2add fix(ci): double trigger for nightly 2025-03-24 09:25:19 +02:00
Elian Doran ad8b5c7c9d fix(ci): path for hook module script 2025-03-24 08:59:46 +02:00
renovate[bot] 728d2ccfaf chore(deps): update dependency rollup to v4.37.0 2025-03-24 01:55:36 +00:00
renovate[bot] cb7de2430d chore(deps): update dependency @types/leaflet to v1.9.17 2025-03-24 01:55:27 +00:00
Elian Doran 40f4fdab47 feat(ci): set up signing hook 2025-03-23 23:22:22 +02:00
Elian Doran ad0f844681 chore(ci): use signing runner 2025-03-23 23:20:13 +02:00
Elian Doran dd26762b1f feat(ci): upload test artifacts for nightly build 2025-03-23 23:17:54 +02:00
Elian Doran 5d2ea4337c fix(ci): use right directory for artifact gathering 2025-03-23 23:08:02 +02:00
Elian Doran fae9a1f796 chore(ci): use electron-forge hook for gathering artifacts 2025-03-23 23:06:41 +02:00
Elian Doran a709f68af9 chore(ci): set up node modules 2025-03-23 22:47:59 +02:00
Elian Doran 8e2a95b5c4 chore(ci): use different way of specifying app dir pt. 2 2025-03-23 22:41:26 +02:00
Elian Doran b4dc493a5f chore(ci): use different way of specifying app dir 2025-03-23 22:12:31 +02:00
Elian Doran ab927ad885 chore(ci): set up npm ci again 2025-03-23 21:55:48 +02:00
Elian Doran d128e9df25 chore(ci): run with debug 2025-03-23 21:48:40 +02:00
Elian Doran 9358f90b48 chore(ci): revert change 2025-03-23 21:41:27 +02:00
Elian Doran a13c9790bd chore(ci): try running npm i at build step 2025-03-23 21:35:11 +02:00
Elian Doran c477e728ea chore(ci): define forge platform at workflow level 2025-03-23 21:14:51 +02:00
Elian Doran 98013bc725 chore(ci): use cmd 2025-03-23 21:10:55 +02:00
Elian Doran c50a67f36b chore(ci): remove server build temporarily 2025-03-23 21:02:37 +02:00
Elian Doran d77b3a07e2 chore(ci): remove unnecessary shell 2025-03-23 21:02:16 +02:00
Elian Doran 89efc55d52 chore(ci): trigger windows only for now 2025-03-23 21:00:37 +02:00
Elian Doran 6aee38337e fix(mobile): width on tablet view 2025-03-23 20:03:24 +02:00
Elian Doran 6312bd8817 Merge pull request #1384 from TriliumNext/chore_lint-share
chore: fix lint issues in `src/share`
2025-03-23 13:20:50 +02:00
Elian Doran 8f25d4c810 Merge pull request #1500 from TriliumNext/revert-1495-renovate/apple-actions-import-codesign-certs-4.x
Revert "chore(deps): update apple-actions/import-codesign-certs action to v4"
2025-03-23 12:39:40 +02:00
Elian Doran 3173062f48 Revert "chore(deps): update apple-actions/import-codesign-certs action to v4" 2025-03-23 12:29:34 +02:00
Elian Doran f341bb3547 feat(ci): trigger nightly without publish on build-electron change 2025-03-23 12:29:13 +02:00
Elian Doran d52ca626e9 Merge branch 'develop' into chore_lint-share 2025-03-23 12:13:22 +02:00
Elian Doran 27875c4622 fix(e2e): broken after change in Mermaid 2025-03-23 12:10:11 +02:00
Elian Doran 613a7d72ad Merge pull request #1480 from jshprentz/develop
Add {isoMonth} month pattern to day notes
2025-03-23 09:53:40 +02:00
Elian Doran f815420d1f Merge pull request #1493 from TriliumNext/renovate/eslint-monorepo
chore(deps): update eslint monorepo to v9.23.0
2025-03-23 09:31:10 +02:00
Elian Doran 0994e33933 Merge pull request #1494 from TriliumNext/renovate/eslint-linter-browserify-9.x
fix(deps): update dependency eslint-linter-browserify to v9.23.0
2025-03-23 09:29:07 +02:00
Elian Doran be2b8d2080 Merge pull request #1495 from TriliumNext/renovate/apple-actions-import-codesign-certs-4.x
chore(deps): update apple-actions/import-codesign-certs action to v4
2025-03-23 09:28:28 +02:00
SiriusXT 87c70cb46e Fixed focusing on old windows when opening new windows from tray 2025-03-23 10:44:01 +08:00
Elian Doran 4af586e237 Merge branch 'develop' into renovate/eslint-monorepo 2025-03-23 00:28:03 +02:00
Elian Doran d2406a7574 Merge branch 'develop' into renovate/eslint-linter-browserify-9.x 2025-03-23 00:27:51 +02:00
Elian Doran 25c66e7c57 Merge branch 'develop' into renovate/apple-actions-import-codesign-certs-4.x 2025-03-23 00:27:37 +02:00
Elian Doran 0313b4b9c9 Merge pull request #1492 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.13.11
2025-03-23 00:27:15 +02:00
Elian Doran f5a4acc097 Merge branch 'develop' into tray 2025-03-22 19:00:06 +02:00
Elian Doran bc41deea14 Merge branch 'develop' into renovate/node-22.x 2025-03-22 18:59:48 +02:00
Elian Doran c97f6da615 Merge pull request #1498 from hasecilu/i18n/Spanish
chore(i18n): update Spanish translation
2025-03-22 18:43:32 +02:00
hasecilu 81e250f5c5 chore(i18n): update Spanish translation 2025-03-22 09:56:22 -06:00
Jin f42ecb2e83 Merge branch 'develop' into feature/MFA 2025-03-22 15:56:16 +01:00
Jin e3fb871e4f feat: 🎸 Reformat MFA option page 2025-03-22 15:55:14 +01:00
Elian Doran ccb98d69fa fix(mindmap): pane resizer not always working 2025-03-22 16:47:01 +02:00
Elian Doran ab4e9db864 feat(mindmap): add PNG export 2025-03-22 16:35:07 +02:00
Elian Doran 67bfeda3d9 chore(svg_export): change icon 2025-03-22 16:33:00 +02:00
Elian Doran 7cc8dd082d feat(mermaid): enable export as PNG (closes #536) 2025-03-22 16:30:19 +02:00
Jin 717ad3b97d feat: 🎸 Port MFA to ts 2025-03-22 14:56:17 +01:00
Elian Doran 047c4dc4ca fix(mermaid): not scrolling up properly (closes #282) 2025-03-22 15:55:55 +02:00
Elian Doran 9e75c32ded fix(mermaid): enforce vertical layout on mobile 2025-03-22 15:51:21 +02:00
Elian Doran 5282f9f0bf feat(mermaid): set right mime type 2025-03-22 15:48:03 +02:00
Elian Doran 858ad91708 feat(import/single): mermaid with .mmd extension 2025-03-22 15:45:36 +02:00
Jin 54a5f8164a feat: 🎸 Fix option defintions 2025-03-22 14:43:32 +01:00
Elian Doran 3dae771e90 feat(import/single): mermaid with .mermaid extension 2025-03-22 15:41:56 +02:00
Jin c3d3ab4330 Merge branch 'develop' into feature/MFA 2025-03-22 14:38:22 +01:00
Jin 9d49546bc9 feat: 🎸 Fix ts compile error 2025-03-22 14:35:37 +01:00
Elian Doran 16cbd2f793 feat(export/single): mermaid with right extension and MIME 2025-03-22 15:22:55 +02:00
Elian Doran 6ab820f172 refactor(export/single): make note type mapping testable 2025-03-22 15:20:58 +02:00
Elian Doran 60d3bafc8e fix(types): build errors due to CodeMirror opts 2025-03-22 15:04:31 +02:00
Elian Doran 7c9a7c9ff6 refactor(mermaid): move mermaid config to service 2025-03-22 15:02:04 +02:00
Elian Doran 1463411ad1 refactor(mermaid): stop using deprecated APIs 2025-03-22 14:57:11 +02:00
Elian Doran 26fa1ec420 fix(text/mermaid): not rendering due to webpack change 2025-03-22 14:51:13 +02:00
Elian Doran 985b1b7fce chore(mermaid): remove redundant message 2025-03-22 14:42:07 +02:00
Elian Doran 87209285df feat(mermaid): use admonition style for error messages 2025-03-22 14:39:43 +02:00
Elian Doran 5bea0680fb style(mermaid): preserve whitespace in error messages 2025-03-22 14:36:05 +02:00
Elian Doran 5a72d66321 feat(mermaid): recenter even when under error 2025-03-22 14:34:42 +02:00
Elian Doran 82cb31da53 style(mermaid): vertical layout for errors 2025-03-22 14:15:05 +02:00
Elian Doran 72c024fc26 fix(mermaid): toggle read-only for protected note 2025-03-22 14:12:24 +02:00
Elian Doran b777e916c4 feat(mermaid): hide layout switcher if in readonly mode 2025-03-22 14:10:38 +02:00
Elian Doran 3bbb2c3e80 feat(mermaid): save SVG attachment only when needed 2025-03-22 13:56:29 +02:00
Jin c8164c81be feat: 🎸 fix recovery_codes error 2025-03-22 12:47:49 +01:00
Jin b320553d18 feat: 🎸 fix open_id error 2025-03-22 12:46:59 +01:00
Jin 0871d16fbc feat: 🎸 remove conflict code 2025-03-22 12:41:22 +01:00
Elian Doran fd46cd7529 feat(mermaid): custom zoom buttons 2025-03-22 13:36:11 +02:00
Jin fdc10d0120 feat: 🎸 fix ts error 2025-03-22 12:35:37 +01:00
Jin 8df1e3263b Merge branch 'develop' into feature/MFA 2025-03-22 12:35:00 +01:00
Elian Doran 77fbeb4351 refactor(note_map): extract floating button style 2025-03-22 13:06:00 +02:00
Elian Doran 68b3c06c95 feat(mermaid): reintroduce editability basic widget 2025-03-22 12:58:36 +02:00
Elian Doran 2bbd9a4362 fix(mermaid): read-only button shown in view source 2025-03-22 12:57:32 +02:00
Elian Doran 831cd19d0b refactor(client): implement read-only toggle floating button 2025-03-22 12:55:30 +02:00
Elian Doran cd6ef4d3ab refactor(client): move edit button to floating buttons dir 2025-03-22 12:32:06 +02:00
Elian Doran 8996a56680 feat(mermaid): support readonly mode 2025-03-22 12:23:50 +02:00
Elian Doran ef9bec9dd4 feat(mermaid): custom title for switch layout button 2025-03-22 10:48:12 +02:00
Elian Doran b54603b7d7 feat(mermaid): change icon based on new layout 2025-03-22 10:43:24 +02:00
Elian Doran afa865765b fix(mermaid): split on vertical layout 2025-03-22 10:36:54 +02:00
Elian Doran 4860594758 feat(mermaid): react to layout change immediately 2025-03-22 10:34:22 +02:00
Elian Doran cf874b5ee8 feat(mermaid): add basic support for vertical layout 2025-03-22 10:27:42 +02:00
renovate[bot] 007817bbdb chore(deps): update apple-actions/import-codesign-certs action to v4 2025-03-22 01:59:15 +00:00
renovate[bot] 88e0aec3d6 fix(deps): update dependency eslint-linter-browserify to v9.23.0 2025-03-22 01:59:08 +00:00
renovate[bot] cc9b0987b2 chore(deps): update eslint monorepo to v9.23.0 2025-03-22 01:58:58 +00:00
renovate[bot] e8242e87fb chore(deps): update dependency @types/node to v22.13.11 2025-03-22 01:58:47 +00:00
Elian Doran 91dca2df35 feat(mermaid): disable line wrapping by default 2025-03-22 02:36:47 +02:00
Elian Doran acf6d9dc4f refactor(split_editor): allow different attachment name 2025-03-22 02:21:24 +02:00
Elian Doran 98e4d563ad chore(mermaid): remove old widget 2025-03-22 02:15:09 +02:00
Elian Doran 373c0799fe chore(mermaid): disable linter for now 2025-03-22 02:15:09 +02:00
Elian Doran 9985e9b623 feat(mermaid): add visual indicator for preview on error 2025-03-22 02:15:09 +02:00
Elian Doran f42a89a548 feat(mermaid): add an error display continer 2025-03-22 02:15:09 +02:00
Elian Doran d4cd550b7a feat(linter/mermaid): improve parsing of messages 2025-03-22 02:15:09 +02:00
Elian Doran 8b08e67fdc feat(linter/mermaid): better handling of zero position 2025-03-22 02:15:09 +02:00
Elian Doran 5d8ac3b9f7 feat(test): add test for mermaid linter 2025-03-22 02:15:09 +02:00
Elian Doran 44db1545a1 feat(mermaid): start implementing a basic linter 2025-03-22 02:15:09 +02:00
Elian Doran c416fca88a fix(mermaid): bring back export as SVG 2025-03-22 02:15:09 +02:00
Elian Doran 1fb2b5341d fix(mermaid): saving of attachment 2025-03-22 02:15:09 +02:00
Elian Doran b8a560354f refactor(mermaid): recenter on new note 2025-03-22 02:15:09 +02:00
Elian Doran 28c51cb38a refactor(client): use webpack for mermaid 2025-03-22 02:15:09 +02:00
Elian Doran f4d5b9fc29 feat(mermaid): swap preview and content 2025-03-22 02:15:09 +02:00
Elian Doran 8cab2aec0f fix(mermaid): bring back ELK rendering 2025-03-22 02:15:09 +02:00
Elian Doran 2b19675d1a feat(mermaid): smoother split drag 2025-03-22 02:15:09 +02:00
Elian Doran ae18b4b634 fix(mermaid): bring back auto resize on drag 2025-03-22 02:15:09 +02:00
Elian Doran cbc6efdad2 fix(mermaid): bring back pan/zoom 2025-03-22 02:15:09 +02:00
Elian Doran e0a8b64b4d fix(mermaid): refresh when editing 2025-03-22 02:15:09 +02:00
Elian Doran 67ab91267d fix(mermaid): bring back rendering 2025-03-22 02:15:09 +02:00
Elian Doran 8952ff512f feat(split_editor): make the two panes resizable 2025-03-22 02:15:09 +02:00
Elian Doran 395d76a156 feat(mermaid): basic horizontal layout 2025-03-22 02:15:09 +02:00
Elian Doran 56da5f7761 refactor(client/ts): start implementing experimental split type view for mermaid 2025-03-22 02:15:09 +02:00
Elian Doran 7a16774cdc feat(mermaid): make diagram full width for pan/zoom purposes 2025-03-22 02:15:09 +02:00
Adorian Doran 592a7fe771 style(next)/floating buttons: update the highlight animation 2025-03-22 01:28:53 +02:00
Adorian Doran 4292d67b95 style(next)/floating buttons: tweak 2025-03-22 01:08:57 +02:00
Adorian Doran 44419b7cb5 style/floating buttons: change some icons 2025-03-22 01:08:30 +02:00
Adorian Doran eab644248b style(next): use the new floating buttons style for the geo map notes as well 2025-03-22 00:04:02 +02:00
Adorian Doran 1299e0c855 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-21 20:21:46 +02:00
Adorian Doran 058983e98d style(next)/floating buttons: tweak 2025-03-21 20:21:44 +02:00
Elian Doran 772d07a60f Merge pull request #1466 from TriliumNext/feature/port_ts
client: port ts
2025-03-21 18:49:52 +02:00
Elian Doran eab10acc98 Merge branch 'develop' into feature/port_ts 2025-03-21 18:39:33 +02:00
Elian Doran 7008acf511 chore(client/ts): remove check_ts_progress script 2025-03-21 18:16:37 +02:00
Elian Doran c2a7b92660 chore(client/ts): port desktop_layout 2025-03-21 18:14:37 +02:00
Elian Doran 8e3a75ad57 chore(client/ts): reduce log level for syntax highlight widget 2025-03-21 17:48:54 +02:00
Elian Doran b876f98d69 fix(client/ts): fix rest of build errors 2025-03-21 17:39:18 +02:00
Elian Doran 1ab87be0e6 chore(client/ts): fix errors in editable_text 2025-03-21 17:34:39 +02:00
Elian Doran ebbf29b1a5 chore(client/ts): port syntax_highlight 2025-03-21 15:50:58 +02:00
Elian Doran 08df7e6484 Merge pull request #1481 from TriliumNext/renovate/electron-35.x
chore(deps): update dependency electron to v35.0.3
2025-03-21 13:43:30 +02:00
Elian Doran 7277c10f38 Merge pull request #1482 from TriliumNext/renovate/typedoc-0.x
chore(deps): update dependency typedoc to v0.28.1
2025-03-21 13:43:06 +02:00
Elian Doran 6569a72bc4 Merge pull request #1483 from TriliumNext/renovate/codemirror-5.x
fix(deps): update dependency codemirror to v5.65.19
2025-03-21 13:42:49 +02:00
Elian Doran cb630337ca Merge pull request #1484 from TriliumNext/renovate/force-graph-1.x
fix(deps): update dependency force-graph to v1.49.5
2025-03-21 13:42:24 +02:00
Elian Doran 60d5497a6c Merge pull request #1485 from TriliumNext/renovate/multer-1.x
fix(deps): update dependency multer to v1.4.5-lts.2
2025-03-21 13:41:48 +02:00
Elian Doran 98d3b54c5e Merge pull request #1486 from TriliumNext/renovate/supertest-7.x
chore(deps): update dependency supertest to v7.1.0
2025-03-21 13:41:11 +02:00
SiriusXT da59dd2ece Add Chinese translation 2025-03-21 13:56:21 +08:00
SiriusXT 21b17889ac Merge branch 'develop' into tray 2025-03-21 11:12:03 +08:00
SiriusXT be2064fbf0 Fix tray exception when multiple windows 2025-03-21 11:08:33 +08:00
renovate[bot] 90cdb5d641 chore(deps): update dependency supertest to v7.1.0 2025-03-21 02:40:58 +00:00
renovate[bot] 0e8cd3b4ba fix(deps): update dependency multer to v1.4.5-lts.2 2025-03-21 02:40:48 +00:00
renovate[bot] 1b5d665fbc fix(deps): update dependency force-graph to v1.49.5 2025-03-21 02:40:38 +00:00
renovate[bot] 8755c84dea fix(deps): update dependency codemirror to v5.65.19 2025-03-21 02:40:27 +00:00
renovate[bot] f9878962b8 chore(deps): update dependency typedoc to v0.28.1 2025-03-21 02:40:17 +00:00
renovate[bot] cf70dd0b4f chore(deps): update dependency electron to v35.0.3 2025-03-21 02:40:05 +00:00
Adorian Doran 6d82905ad4 style(next)/floating buttons: tweak 2025-03-21 04:12:12 +02:00
Adorian Doran 99bd803d81 style(next)/floating buttons: tweak the separator color 2025-03-21 03:40:07 +02:00
Adorian Doran 6b71efbfd3 style(next): restyle the floating buttons 2025-03-21 03:17:43 +02:00
Joel Shprentz c1e8542f74 Correct placeholder name in documentation 2025-03-21 00:59:45 +00:00
Joel Shprentz 5f26a503af In month note title patterns, replace {isoMonth} with e.g. "2025-03" for March 2025. 2025-03-20 22:59:20 +00:00
Elian Doran 5b82b750dc chore(client/ts): port editable_text 2025-03-20 23:42:32 +02:00
Elian Doran 1f69259a93 chore(client/ts): port abstract_text_type_widget 2025-03-20 23:09:06 +02:00
Adorian Doran 7202afab8e style(next)/options: add a gap between consecutive buttons 2025-03-20 22:22:39 +02:00
Elian Doran b44bb4053c refactor(deps): use webpack for jsplumb & panzoom 2025-03-20 21:51:03 +02:00
Elian Doran 3047957239 chore(client/ts): port type_widgets/relation_map 2025-03-20 21:07:10 +02:00
Adorian Doran 4cb866c0e6 client/options/sync: reorder the input fields 2025-03-20 19:59:13 +02:00
Adorian Doran 480292dc01 style(next)/options/appearance/fonts: refactor input groups 2025-03-20 19:02:46 +02:00
Adorian Doran b705e24a97 style(next): tweak number input groups 2025-03-20 18:58:19 +02:00
Elian Doran e682f01c47 chore(client/ts): port promoted_attributes 2025-03-20 18:39:04 +02:00
Elian Doran c27d5afdf2 chore(client/ts): port inherited_attribute_list 2025-03-20 18:28:37 +02:00
Elian Doran bd06d1d7b2 chore(client/ts): port image_properties 2025-03-20 18:25:17 +02:00
Adorian Doran 861f1efa5b Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-20 18:22:44 +02:00
Elian Doran a2b6bb7ecf chore(client/ts): port file_properties 2025-03-20 18:22:42 +02:00
Adorian Doran 0086d645ef client/options/other/snapshot limit: specify the measurement unit inside of the input field 2025-03-20 18:22:35 +02:00
Elian Doran af0db5d508 style(next): fix regression in horizontal mica 2025-03-20 18:17:15 +02:00
Adorian Doran 113b42f32d Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-20 18:04:39 +02:00
Adorian Doran e8a745c11a client/options/sync/timeout: specify the measurement unit inside of the input field 2025-03-20 18:04:36 +02:00
Elian Doran 947dea5e3a Merge pull request #1343 from TriliumNext/renovate/electron-35.x
chore(deps): update dependency electron to v35
2025-03-20 18:03:11 +02:00
Elian Doran 48e9e30efe Merge branch 'feature/port_ts' of ssh://github.com/TriliumNext/Notes into feature/port_ts 2025-03-20 17:57:16 +02:00
Adorian Doran 5e6fc5b183 client/options/images/JPEG quality: specify the measurement unit inside of the input field 2025-03-20 17:55:22 +02:00
Adorian Doran 772b69eebe client/options/images/max dimensions: specify the measurement unit inside of the input field 2025-03-20 17:53:07 +02:00
Adorian Doran 4f3bc20bac client/options/code notes/automatic read-only size: specify the measurement unit inside of the input field 2025-03-20 17:48:40 +02:00
Adorian Doran 65ee564518 client/options/text notes/automatic read-only size: specify the measurement unit inside of the input field 2025-03-20 17:45:22 +02:00
Adorian Doran de7b7e3d8f client/options/text notes/table of contents: specify the measurement unit inside of the input field 2025-03-20 17:41:30 +02:00
Adorian Doran bec15fb9c3 client/options/appearance/max content width: specify the measurement unit inside of the input field 2025-03-20 17:34:58 +02:00
Adorian Doran 7288757777 style(next)/options/appearance: tweak font size inputs 2025-03-20 17:23:29 +02:00
Adorian Doran d189f2b66b Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-20 14:40:44 +02:00
Adorian Doran 57b5e47b5a style(next): reorganize CSS 2025-03-20 14:40:42 +02:00
JYC333 d70cf14947 Merge branch 'develop' into renovate/electron-35.x 2025-03-20 10:56:49 +01:00
Elian Doran 8f6fcee67d chore(client/ts): port import dialog 2025-03-20 10:41:19 +02:00
Elian Doran 3527ab2c5d chore(client/ts): port include dialog 2025-03-20 10:41:19 +02:00
Elian Doran 8d14092a91 chore(client/ts): port more dialogs 2025-03-20 10:41:19 +02:00
Elian Doran ffa463f1fc chore(client/ts): fix build errors 2025-03-20 10:41:19 +02:00
Elian Doran 7c805eb427 chore(client/ts): port find_in_html/text 2025-03-20 10:41:19 +02:00
Elian Doran ef59b636b1 client: port ts 2025-03-20 10:41:19 +02:00
Elian Doran 7ea6c97c6f feat(in-app-help): improve code block style 2025-03-20 10:28:24 +02:00
Elian Doran 911e112964 Merge pull request #1470 from TriliumNext/renovate/react-monorepo
chore(deps): update dependency @types/react to v18.3.19
2025-03-20 10:21:57 +02:00
Adorian Doran 5f12ddaa14 style(next): reorganize CSS 2025-03-20 10:20:25 +02:00
Adorian Doran 2191b1b9fd style(next): reorganize CSS 2025-03-20 10:04:05 +02:00
Adorian Doran 431ffa7820 style(next): reorganize CSS 2025-03-20 09:32:22 +02:00
Adorian Doran ea467c392d Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-20 09:18:43 +02:00
Adorian Doran f6e0e93629 style(next): reorganize CSS 2025-03-20 09:18:39 +02:00
Elian Doran 7fe594d4ad chore(deps): update mind-elixir to latest (closes #1464) 2025-03-20 09:03:30 +02:00
Elian Doran 6d9c41f524 Merge pull request #1467 from TriliumNext/deps_move-mind-elixir_webpack
deps: bundle mind-elixir with webpack
2025-03-20 08:59:30 +02:00
Elian Doran 3e7d41c738 Merge pull request #1469 from TriliumNext/renovate/express-5.x
chore(deps): update dependency @types/express to v5.0.1
2025-03-20 08:56:36 +02:00
Elian Doran 7fda0dd572 Merge pull request #1474 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update dependency typescript-eslint to v8.27.0
2025-03-20 08:56:02 +02:00
Elian Doran 60a33d8279 Merge pull request #1475 from TriliumNext/renovate/sanitize-html-2.x
fix(deps): update dependency sanitize-html to v2.15.0
2025-03-20 08:55:29 +02:00
Elian Doran 50b9120bdc Merge pull request #1473 from TriliumNext/renovate/axios-1.x
fix(deps): update dependency axios to v1.8.4
2025-03-20 08:55:09 +02:00
Elian Doran bce4cfe731 chore(turndown-plugin-gfm): fix build warnings 2025-03-20 08:53:01 +02:00
Elian Doran 419d5ffd1b chore(deps): update turndown-plugin-gfm to latest deps 2025-03-20 08:53:01 +02:00
renovate[bot] b26555604c fix(deps): update dependency sanitize-html to v2.15.0 2025-03-20 02:13:24 +00:00
renovate[bot] 1e5f7ef6dd chore(deps): update dependency typescript-eslint to v8.27.0 2025-03-20 02:13:14 +00:00
renovate[bot] 3b9fcede0d fix(deps): update dependency axios to v1.8.4 2025-03-20 02:12:59 +00:00
renovate[bot] 0ae705b925 chore(deps): update dependency @types/react to v18.3.19 2025-03-20 02:11:14 +00:00
renovate[bot] 49a77790f2 chore(deps): update dependency @types/express to v5.0.1 2025-03-20 02:11:03 +00:00
Adorian Doran 2031882c0d style(next)/jump to note: tweak the modal's padding 2025-03-19 23:38:03 +02:00
Elian Doran 9eec7237de chore(client/ts): port include dialog 2025-03-19 23:27:52 +02:00
Elian Doran d0e33f8aaa chore(client/ts): port more dialogs 2025-03-19 23:06:16 +02:00
Elian Doran fac575bd4a Merge remote-tracking branch 'origin/develop' into feature/port_ts 2025-03-19 22:41:08 +02:00
Elian Doran 119bb38062 chore(client/ts): fix build errors 2025-03-19 22:39:49 +02:00
Elian Doran 89d51a9c4f chore(client/ts): port find_in_html/text 2025-03-19 22:00:41 +02:00
Panagiotis Papadopoulos 90d0c859fc chore(mind_map): import node-menu's style.css to allow webpack to bundle it
previously this was loaded from the node_modules folder and was exposed via a static asset path
-> since we got rid of this with the last commit, we need to instead let webpack bundle it "importing" the css here
2025-03-19 21:00:37 +01:00
Panagiotis Papadopoulos feb9fa03c3 chore(deps): move mind-elixir related packages to devDependencies
webpack takes care of bundling these, so we don't need the modules at runtime anymore
2025-03-19 20:03:24 +01:00
Elian Doran 7f87318f8f Merge pull request #1462 from TriliumNext/port_dialogs
Port dialogs to ts
2025-03-19 20:23:33 +02:00
JYC333 83d6e329ba Merge branch 'develop' into port_dialogs 2025-03-19 19:20:46 +01:00
Elian Doran d6d08cbb89 chore(deps): update package lock 2025-03-19 20:19:24 +02:00
Elian Doran 68f212a679 refactor(types): unnecessary any 2025-03-19 20:19:24 +02:00
Elian Doran d0948727df Merge pull request #1457 from TriliumNext/e2e_fix
refactor: 💡 Improve e2e test stability
2025-03-19 20:18:20 +02:00
Elian Doran 716f8ecc17 Merge pull request #1340 from TriliumNext/fix_tab
Fix bug after porting tab manager
2025-03-19 20:17:21 +02:00
Elian Doran 83afecdced Merge branch 'develop' into fix_tab 2025-03-19 20:10:38 +02:00
Elian Doran 80066fd2f5 chore(docs): update meta and sync import/export 2025-03-19 20:06:02 +02:00
Elian Doran 957642caaa fix(build): dependency issue when run under docker 2025-03-19 20:00:22 +02:00
Panagiotis Papadopoulos 33922c52f8 fix(mind_map): fix node-menu visibility
=> rename css class name to match upstream

the class name got changed from ".mind-elixir → .map-container" by upstream via https://github.com/SSShooter/mind-elixir-core/commit/294c2d5bb06970fd39270ccbeb0fdce44c865ae3

partially addresses #1464 → this allows us to see the node-menu sidebar again
2025-03-19 18:37:42 +01:00
Elian Doran 0408b3d260 chore(deps): remove @joplin/turndown-plugin-gfm 2025-03-19 19:24:06 +02:00
Elian Doran a4ae0ba628 chore(build): add turndown-plugin-gfm to copy-dist 2025-03-19 19:23:43 +02:00
Elian Doran 7315d38cb6 Merge remote-tracking branch 'origin/develop' into develop 2025-03-19 18:56:44 +02:00
Elian Doran 18a50c6339 feat(export/markdown): remove joplin table wrapper 2025-03-19 18:54:39 +02:00
Elian Doran 909b7f5d39 chore(docs): remove incorrect # or ~ prefix in calendar view 2025-03-19 18:50:39 +02:00
Elian Doran f23b45318d fix(export/markdown): fix code in tables 2025-03-19 18:42:40 +02:00
Elian Doran 884c5986ec chore(markdown/export): use in-tree plugin 2025-03-19 18:31:45 +02:00
Adorian Doran f14c101d6d style(next)/launcher bar: fix the focus outline for the global menu on the vertical layout 2025-03-19 18:26:13 +02:00
Elian Doran 2021c8f751 chore(turndown-plugin-gfm): align with upstream
https://github.com/laurent22/joplin/commit/219d5bcae332be2f2cb2c1425362100b03e363c7
2025-03-19 18:22:20 +02:00
Elian Doran d3423127d8 Add 'packages/turndown-plugin-gfm/' from commit '0f43299c17108e9508e7e6237369e86f504ea60a'
git-subtree-dir: packages/turndown-plugin-gfm
git-subtree-mainline: ebebdd0b07
git-subtree-split: 0f43299c17
2025-03-19 18:16:20 +02:00
Adorian Doran c93ac0445e style(next)/launcher bar: use a custom focus rectangle for the global menu button 2025-03-19 18:10:54 +02:00
Adorian Doran eb13b34429 style(next)/launcher bar: use a custom focus rectangle for buttons 2025-03-19 18:02:58 +02:00
Elian Doran ebebdd0b07 docs(calendar): mention different views 2025-03-19 18:01:52 +02:00
Elian Doran be5e2f529f fix(in-app-help): in-app help buttons not pointing to the right page 2025-03-19 17:53:40 +02:00
Adorian Doran 28cb621bea style(next)/launcher bar: tweak the appearance in the horizontal layout 2025-03-19 17:39:38 +02:00
Adorian Doran f2f5af1c4b style(next)/launcher bar: use distinct theme variables for the vertical / horizontal layouts 2025-03-19 17:30:30 +02:00
Jin a0c025014c fix: 🐛 Fix right click behavior
Fix the bug that when right click on unactive note and do move and clone
command, it still gonna move and clone the active note
2025-03-19 15:14:17 +01:00
Panagiotis Papadopoulos 20bbb80805 chore(deps): move @fullcalendar related to devDependencies
webpack takes care of bundling these, so we don't need the modules at runtime anymore
2025-03-19 14:47:51 +01:00
Jin 43ef9415d2 refactor: 💡 Port clone_to to ts 2025-03-19 14:27:33 +01:00
Jin 1aa6c17b56 refactor: 💡 Port bulk actions to ts 2025-03-19 14:22:40 +01:00
Jin 91a963fafd refactor: 💡 Port branch prefix to ts 2025-03-19 13:59:36 +01:00
SiriusXT 606e6bcca2 Click the icon to show the window 2025-03-19 15:35:12 +08:00
Jin 49d7fa1735 fix: 🐛 Fix playwright test 2025-03-18 22:01:08 +01:00
Jin ae1a4b7a80 fix: 🐛 Fix tab empty path behavior 2025-03-18 21:02:20 +01:00
Jin b18cfb5d20 refactor: 💡 Fix ts error 2025-03-18 21:02:20 +01:00
Jin e12be14dc9 refactor: 💡 remove redundant code 2025-03-18 21:02:20 +01:00
Jin 0858f531e4 fix: 🐛 can't move a tab to new window 2025-03-18 21:02:20 +01:00
Jin c9c18146f4 refactor: 💡 refactor serval event names
refactore serval event names to follow the current usage in repo
2025-03-18 21:02:20 +01:00
Jin a9d8d7d3c5 fix: 🐛 fix wrong triggerEvent usage 2025-03-18 21:02:20 +01:00
Jin 469c2c3ce9 Revert "Revert "port tab manager to ts""
This reverts commit 3855f0e75f.
2025-03-18 21:02:20 +01:00
Elian Doran 96e2cc29e0 fix(mermaid): diagram still displayed on error 2025-03-18 20:43:11 +02:00
Elian Doran 475374a04b feat(mermaid): reduce flicker when editing chart 2025-03-18 20:37:06 +02:00
Elian Doran b66677720d feat(mermaid): restore pan & zoom when changing chart 2025-03-18 20:35:47 +02:00
Elian Doran eeb88ea559 refactor(mermaid): deduplicate gutter size constant 2025-03-18 19:57:41 +02:00
Elian Doran b524f7876a feat(mermaid): add split between diagram and code 2025-03-18 19:35:23 +02:00
Elian Doran 3fe8fede9a fix(mermaid): event leak 2025-03-18 19:03:25 +02:00
Elian Doran 4e81e1e5a8 style(mermaid): redundant margins 2025-03-18 18:36:20 +02:00
Elian Doran 6f15169b18 feat(mermaid): better zoom mechanism (closes #474) 2025-03-18 18:31:22 +02:00
Jin 464084ebf4 refactor: 💡 Improve e2e test stability 2025-03-18 14:17:35 +01:00
Elian Doran 16cc543d59 Merge pull request #1454 from TriliumNext/renovate/helmet-8.x
fix(deps): update dependency helmet to v8.1.0
2025-03-18 09:17:01 +02:00
Elian Doran 165b5ad251 Merge branch 'develop' into renovate/helmet-8.x 2025-03-18 09:06:13 +02:00
Elian Doran 2f42fee9b3 Merge pull request #1452 from TriliumNext/renovate/better-sqlite3-11.x-lockfile
fix(deps): update dependency better-sqlite3 to v11.9.1
2025-03-18 09:05:43 +02:00
Elian Doran 71188ab98d Merge pull request #1440 from TriliumNext/renovate/better-sqlite3-11.x
fix(deps): update dependency better-sqlite3 to v11.9.1
2025-03-18 09:04:13 +02:00
Elian Doran ab38005817 Merge pull request #1450 from TriliumNext/renovate/playwright-monorepo
chore(deps): update dependency @playwright/test to v1.51.1
2025-03-18 09:03:45 +02:00
Elian Doran a07b734a91 Merge pull request #1451 from TriliumNext/renovate/vitest-monorepo
chore(deps): update vitest monorepo to v3.0.9
2025-03-18 09:03:20 +02:00
Elian Doran 1e3d7ce5df Merge pull request #1453 from TriliumNext/renovate/sass-1.x
chore(deps): update dependency sass to v1.86.0
2025-03-18 09:02:57 +02:00
Elian Doran 48d987d25d chore(package): get rid of tsyncserver (closes #1455) 2025-03-18 09:01:14 +02:00
renovate[bot] 0cfeeac4e3 fix(deps): update dependency helmet to v8.1.0 2025-03-18 02:55:36 +00:00
renovate[bot] 5ed25cbce7 fix(deps): update dependency better-sqlite3 to v11.9.1 2025-03-18 02:55:29 +00:00
renovate[bot] ce97d36500 chore(deps): update dependency sass to v1.86.0 2025-03-18 02:55:20 +00:00
renovate[bot] 7ae1f6e02b fix(deps): update dependency better-sqlite3 to v11.9.1 2025-03-18 02:55:10 +00:00
renovate[bot] 611d93cf20 chore(deps): update vitest monorepo to v3.0.9 2025-03-18 02:54:58 +00:00
renovate[bot] a5fe3788a4 chore(deps): update dependency @playwright/test to v1.51.1 2025-03-18 02:54:43 +00:00
Elian Doran f68347f92c client: port ts 2025-03-17 22:46:00 +02:00
Elian Doran 4f7f7c460a fix(admonitions): unnecessary right margin 2025-03-17 18:28:32 +02:00
Elian Doran 74064c8d49 fix(calendar): regression in multi-day selection 2025-03-16 21:56:19 +02:00
Elian Doran e34817d89f feat(docs): update calendar view 2025-03-16 21:31:58 +02:00
Elian Doran 2544294811 feat(calendar): save and restore selected view 2025-03-16 21:20:28 +02:00
Elian Doran e4bb8cb233 feat(calendar): add year view 2025-03-16 20:57:57 +02:00
Elian Doran d67dd27568 feat(calendar): add list view & improve styling 2025-03-16 20:53:54 +02:00
Elian Doran ceddc1b497 feat(calendar): add switch between day/month view 2025-03-16 20:46:59 +02:00
Elian Doran 4d55374784 feat(calendar): add now indicator 2025-03-16 20:40:14 +02:00
Elian Doran 2b24673019 chore(calendar): remove redundant log 2025-03-16 20:38:25 +02:00
Elian Doran d7e31f94fd feat(calendar): allow dragging timed events 2025-03-16 20:34:05 +02:00
Elian Doran ccd9bfc1e7 fix(calendar): end date when inserting with time 2025-03-16 20:26:03 +02:00
Elian Doran 55ccbfe1cc fix(calendar): handling of start time/end time 2025-03-16 20:16:52 +02:00
Elian Doran 680729de63 feat(calendar): allow dragging to set the time 2025-03-16 20:09:21 +02:00
Elian Doran 9412cfc19f feat(calendar): support missing end time 2025-03-16 20:00:43 +02:00
Elian Doran 9083c18392 feat(calendar): support start & end date 2025-03-16 19:54:27 +02:00
Elian Doran 7570205059 feat(calendar): set up time grid 2025-03-16 19:46:39 +02:00
Elian Doran 4e7572cf04 chore(client/ts): port more files 2025-03-16 18:31:31 +02:00
Elian Doran 7f4f8bcc75 chore(client/ts): port some more files 2025-03-16 17:31:28 +02:00
Elian Doran 62706a6af2 chore(release): 0.92.4
/ Check Docker build (Dockerfile) (push) Failing after 42s
/ Check Docker build (Dockerfile.alpine) (push) Failing after 31s
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm/v7) (push) Has been skipped
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm64) (push) Has been skipped
/ Build Docker images (Dockerfile.alpine, ubuntu-latest, linux/amd64) (push) Has been skipped
/ Merge manifest lists (push) Has been skipped
Release / Make Electron (arm64, map[extension:[deb rpm zip flatpak] image:ubuntu-latest name:linux]) (push) Failing after 36s
Release / Make Electron (x64, map[extension:[deb rpm zip flatpak] image:ubuntu-latest name:linux]) (push) Failing after 35s
Release / Build Linux Server (x64, ubuntu-latest) (push) Failing after 38s
Release / Make Electron (arm64, map[extension:[dmg zip] image:macos-latest name:macos]) (push) Has been cancelled
Release / Make Electron (arm64, map[extension:[exe zip] image:windows-latest name:windows]) (push) Has been cancelled
Release / Make Electron (x64, map[extension:[dmg zip] image:macos-latest name:macos]) (push) Has been cancelled
Release / Make Electron (x64, map[extension:[exe zip] image:windows-latest name:windows]) (push) Has been cancelled
Release / Build Linux Server (arm64, ubuntu-24.04-arm) (push) Has been cancelled
2025-03-16 16:04:21 +02:00
Elian Doran 79c82b16ce feat(docs): document admonitions 2025-03-16 16:00:10 +02:00
Elian Doran ba96806fab chore(docs): change order of top level elements 2025-03-16 15:56:59 +02:00
Elian Doran 8c1f4b0014 feat(docs): erase unnecessary attachments 2025-03-16 14:45:21 +02:00
Elian Doran 051cba9a6d fix(docs): content language attachment 2025-03-16 14:41:58 +02:00
Elian Doran 800424405a fix(import/zip): support special characters for attachments 2025-03-16 14:39:27 +02:00
Elian Doran 132a8f7c65 chore(docs): update to match new img handling 2025-03-16 14:05:38 +02:00
Elian Doran 3eaa68da23 feat(import/markdown): maintain consistency with CKEditor for images 2025-03-16 13:58:31 +02:00
Elian Doran 8aaf2367e9 feat(in-app-help): hide notes that are hidden from share 2025-03-16 13:33:07 +02:00
Elian Doran 6f799692e0 feat(in-app-help): render note list 2025-03-16 13:24:34 +02:00
Elian Doran 7df86dd60b Merge pull request #1439 from TriliumNext/renovate/better-sqlite3-11.x-lockfile
fix(deps): update dependency better-sqlite3 to v11.9.0
2025-03-16 12:27:32 +02:00
Elian Doran dd8818f0ac Merge pull request #1438 from TriliumNext/renovate/typedoc-0.x
chore(deps): update dependency typedoc to v0.28.0
2025-03-16 12:26:22 +02:00
Elian Doran 35dad6ffce Merge pull request #1437 from TriliumNext/renovate/mind-elixir-4.x
fix(deps): update dependency mind-elixir to v4.4.2
2025-03-16 12:24:51 +02:00
renovate[bot] b13cab411b fix(deps): update dependency better-sqlite3 to v11.9.0 2025-03-16 02:48:25 +00:00
renovate[bot] 09a1227b63 chore(deps): update dependency typedoc to v0.28.0 2025-03-16 02:48:13 +00:00
renovate[bot] 511c69bdb0 fix(deps): update dependency mind-elixir to v4.4.2 2025-03-16 02:48:00 +00:00
Elian Doran 2828b39f48 chore(client/ts): port some more files 2025-03-16 00:45:46 +02:00
Elian Doran ee5eba193a Merge pull request #1395 from TriliumNext/build_improve-electron-forge_v3
build(electron-forge): improve electron-forge build process
2025-03-15 23:53:56 +02:00
Elian Doran c1acaa0159 Merge branch 'develop' into build_improve-electron-forge_v3 2025-03-15 23:42:43 +02:00
Elian Doran bb14667bdf fix(text): PHP, Sass, TypeScript/JSX not rendered in code blocks 2025-03-15 23:12:07 +02:00
Elian Doran 7b1299a758 fix(client): error due to typings 2025-03-15 22:45:13 +02:00
Elian Doran 3c93fdc202 feat(markdown/import): remove space in admonition 2025-03-15 22:39:33 +02:00
Elian Doran 40d233dccc chore(deps): remove no longer necessary html-minifier 2025-03-15 22:20:43 +02:00
Elian Doran 182bccad39 chore(client/ts): port some dialogs 2025-03-15 22:14:21 +02:00
Elian Doran 1bf16bfa22 feat(import/markdown): remove spaces in lists 2025-03-15 21:30:19 +02:00
Elian Doran 30593eeeac refactor(import/markdown): change renderer instead of applying an uglifier 2025-03-15 21:07:02 +02:00
Elian Doran 36fa0af706 fix(docs): update calendar view documentation 2025-03-15 19:44:15 +02:00
Elian Doran 00106580ca fix(admonitions): floating images breaking out 2025-03-15 19:31:45 +02:00
Elian Doran ac419e8ab4 feat(docs): remove inline warnings and apply admonitions 2025-03-15 18:56:55 +02:00
Elian Doran 2b1bbd4ad3 fix(build): node ABI 2025-03-15 18:37:29 +02:00
Elian Doran 3734f81752 Merge pull request #1433 from TriliumNext/renovate/better-sqlite3-11.x
fix(deps): update dependency better-sqlite3 to v11.9.0
2025-03-15 18:25:56 +02:00
Elian Doran 103894f733 Merge pull request #1432 from TriliumNext/renovate/better-sqlite3-11.x-lockfile
fix(deps): update dependency better-sqlite3 to v11.9.0
2025-03-15 18:24:27 +02:00
Elian Doran bd9fce0a50 Merge branch 'develop' into renovate/electron-35.x 2025-03-15 18:24:10 +02:00
Elian Doran c27f13d49f fix(test): one more broken test 2025-03-15 18:18:17 +02:00
Elian Doran 2b966afbe1 fix(test): tests that got broken along the way 2025-03-15 17:51:10 +02:00
Elian Doran bc8cca664b feat(ci): trigger dev workflow on PR and main branch 2025-03-15 17:14:17 +02:00
Elian Doran e9a0c68a28 Merge branch 'develop' into build_improve-electron-forge_v3 2025-03-15 17:00:53 +02:00
Elian Doran 103b29d3de Revert "fix(flatpak): try setting different bin to avoid sandbox issue"
This reverts commit a778ec617f.
2025-03-15 13:44:30 +02:00
Panagiotis Papadopoulos 73305a5327 chore(share): remove unused args
addresses https://github.com/TriliumNext/Notes/pull/1384#discussion_r1989045491
2025-03-15 12:31:33 +01:00
Panagiotis Papadopoulos ae1ef55522 chore(share): remove unused "_next"
addresses https://github.com/TriliumNext/Notes/pull/1384#discussion_r1989044764
2025-03-15 12:27:02 +01:00
Panagiotis Papadopoulos a5a66a12e2 chore(share): fix tsc nagging about svg not existing on unknown
JSON and TS without using a validation library like zod, is really a bit of a pain in the backside...
2025-03-15 12:19:27 +01:00
Panagiotis Papadopoulos 2a5ac80c05 chore(utils/safeExtractMessageAndStackFromError): add explicit return type to have it as a named tuple 2025-03-15 12:19:27 +01:00
Panagiotis Papadopoulos c2aae45456 chore(share): fix no-unused-vars and prefer-const lint issues 2025-03-15 12:19:27 +01:00
Panagiotis Papadopoulos cd9d90323c chore(share): fix @typescript-eslint/no-unused-vars for unused note variable
there's no need to assign a variable, if we never use the value outside of the if check
2025-03-15 12:19:26 +01:00
Panagiotis Papadopoulos c2b75a6421 chore(share): fix @typescript-eslint/no-unused-vars for "next"
alternative solution, since they are unused and it is the last argument → remove it.
We can still go that route later on though, if we agree upon it.
2025-03-15 12:19:26 +01:00
Panagiotis Papadopoulos bdc829198c chore(share): use safeExtractMessageAndStackFromError to get rid of "any" in try/catch blocks 2025-03-15 12:19:26 +01:00
Panagiotis Papadopoulos 3b8c645cca Merge branch 'develop' into build_improve-electron-forge_v3 2025-03-15 12:09:52 +01:00
Elian Doran a778ec617f fix(flatpak): try setting different bin to avoid sandbox issue 2025-03-15 13:01:28 +02:00
Elian Doran df5939b201 feat(share): add basic support for admonitions 2025-03-15 12:30:07 +02:00
Elian Doran f841b139d9 fix(admonitions): missing style on mobile 2025-03-15 12:25:48 +02:00
Elian Doran 535233fec8 feat(import/markdown): basic support for admonitions 2025-03-15 11:58:11 +02:00
Elian Doran 6d67e69e2f feat(export/markdown): basic support for admonitions 2025-03-15 11:30:56 +02:00
Elian Doran b1e3ea4c80 fix(admonition): inserting new admonitions of given type not working 2025-03-15 10:50:04 +02:00
Elian Doran 0f41afe841 fix(tmp): files not cleaned up 2025-03-15 10:34:17 +02:00
Elian Doran aa6ee3fd60 fix(global_menu): double separator on mobile 2025-03-15 10:34:07 +02:00
Elian Doran 0f28bbb1be feat(server): use custom temporary directory within trilium-data 2025-03-15 10:11:54 +02:00
renovate[bot] 9136f07968 fix(deps): update dependency better-sqlite3 to v11.9.0 2025-03-15 02:52:57 +00:00
renovate[bot] bd39f38d1a fix(deps): update dependency better-sqlite3 to v11.9.0 2025-03-15 02:52:41 +00:00
Elian Doran 45b7d51db9 fix(zen): missing edit read-only note (closes #1371) 2025-03-15 02:21:00 +02:00
Elian Doran 6c1f631ddb fix(right_pane): buttons disappearing (force min width, closes #1419). 2025-03-15 02:08:46 +02:00
Elian Doran 6acb490df4 feat(editor): move code formatting back to main level (closes #1375) 2025-03-15 02:00:42 +02:00
Elian Doran 598413b56d test(editor): ensure both toolbars have same items 2025-03-15 01:57:53 +02:00
Elian Doran fd029ac451 fix(ribbon): exception about focusing 2025-03-15 01:40:46 +02:00
Elian Doran b4ea96b7c7 Merge pull request #1428 from pchemguy/bat-files-fixes
Fixes missing quotes in the `bat` files.
2025-03-15 01:20:37 +02:00
Elian Doran 63ad784021 feat(math/display): allow inserting in display in a list 2025-03-15 01:07:59 +02:00
Elian Doran 4db2aab47f feat(admonition): integrate autoformatting 2025-03-14 23:09:46 +02:00
Elian Doran 9ff1ea4b8f style(admonition): bottom margin for last item 2025-03-14 22:29:24 +02:00
Elian Doran 265d54e44b fix(export): remove non-functional PDF export type 2025-03-14 22:24:10 +02:00
Elian Doran d9764365cb feat(import): allow importing .excalidraw files 2025-03-14 22:13:31 +02:00
Elian Doran ad8c1a4a29 feat(export): use right extension for canvas 2025-03-14 22:01:04 +02:00
Elian Doran abddde910c refactor(canvas): use better approach to disabling export 2025-03-14 21:59:02 +02:00
Elian Doran 3c146cdb20 fix(canvas): unable to export as image (closes #1431) 2025-03-14 21:53:23 +02:00
Elian Doran ae3f0e0e4b fix(types): add missing dependency 2025-03-14 21:43:37 +02:00
Elian Doran 56d3cd038c fix(deps): add missing dependency 2025-03-14 21:42:59 +02:00
Elian Doran a2f0896c2a feat(import/markdown): collapse unnecessary whitespace when importing 2025-03-14 19:50:26 +02:00
Elian Doran c892c95aae chore(docs): collapse unnecessary whitespace 2025-03-14 19:47:08 +02:00
Elian Doran bbf6ae6aab feat(sql_console): preserve whitespace in columns 2025-03-14 18:53:04 +02:00
Elian Doran 8b0ddf6f9d chore(docs): update markdown documentation with proper keyboard shortcuts 2025-03-14 18:01:53 +02:00
Elian Doran 6b89bffffb feat(export/markdown): preserve keyboard shortcuts 2025-03-14 17:59:50 +02:00
Elian Doran 80421bb220 refactor(server): rename md -> markdown for consistency 2025-03-14 16:25:10 +02:00
PChemGuy df9a413ef8 Strip trailing backslash
%~dp0 always contains a trailing backslash. The way %DIR% is used in the following line, the trailing slash should be stripped. Alternatively, `%DIR%\\` may be replaced with `%DIR%`, but I would advice against. It is ok to have `%~dp0trilium-data`, which is a conventional pattern. Once %~dp0 is replaced with %DIR% (which is not really warranted here), stripping the trailing slash right after assignment is preferable.
2025-03-14 14:29:37 +03:00
PChemGuy 4971619b69 Missing quotes 2025-03-14 14:19:11 +03:00
Elian Doran 875e65284c feat(docs): use <kbd> for keyboard shortcuts 2025-03-14 12:11:09 +02:00
Elian Doran 806cd7129a fix(docs): rtl image 2025-03-14 11:34:27 +02:00
Elian Doran c8725ce6ef feat(docs): align documentation with new settings 2025-03-14 11:32:07 +02:00
Elian Doran 0c55b1eee8 feat(editor): rewrite <i> to <em> for compatibility with Markdown 2025-03-14 11:31:46 +02:00
Elian Doran 9b217a5b82 Merge pull request #1366 from rom1dep/calendar_enh_displayed
feat(calendar) improvements
2025-03-14 11:17:44 +02:00
Elian Doran a50b8c7f0a Merge pull request #1425 from TriliumNext/renovate/mermaid-11.x
fix(deps): update dependency mermaid to v11.5.0
2025-03-14 11:15:51 +02:00
Elian Doran 5efb5fd303 Merge pull request #1424 from TriliumNext/renovate/i18next-24.x
fix(deps): update dependency i18next to v24.2.3
2025-03-14 11:15:12 +02:00
renovate[bot] 2e436cdd46 chore(deps): update dependency electron to v35 2025-03-14 09:14:49 +00:00
Elian Doran 3656b1e0eb Merge pull request #1423 from TriliumNext/renovate/force-graph-1.x
fix(deps): update dependency force-graph to v1.49.4
2025-03-14 11:14:47 +02:00
Elian Doran b2060799c4 Merge pull request #1422 from TriliumNext/renovate/axios-1.x
fix(deps): update dependency axios to v1.8.3
2025-03-14 11:14:13 +02:00
Elian Doran b18e5a34c4 Merge pull request #1421 from TriliumNext/renovate/electron-34.x
chore(deps): update dependency electron to v34.3.3
2025-03-14 11:13:57 +02:00
Elian Doran 2578c2d4f6 Merge pull request #1398 from TriliumNext/renovate/happy-dom-monorepo
chore(deps): update dependency happy-dom to v17.4.4
2025-03-14 11:13:17 +02:00
renovate[bot] 618bba71da fix(deps): update dependency mermaid to v11.5.0 2025-03-14 02:53:05 +00:00
renovate[bot] 8bff71fed4 fix(deps): update dependency i18next to v24.2.3 2025-03-14 02:52:56 +00:00
renovate[bot] 839cfac2ac fix(deps): update dependency force-graph to v1.49.4 2025-03-14 02:52:45 +00:00
renovate[bot] ded979b6ff fix(deps): update dependency axios to v1.8.3 2025-03-14 02:52:32 +00:00
renovate[bot] 948c60277d chore(deps): update dependency electron to v34.3.3 2025-03-14 02:52:20 +00:00
Elian Doran f487348cc5 chore(admonitions): remove formatting plugin for now 2025-03-14 00:04:23 +02:00
Elian Doran ee76e81d1f feat(admonitions): integrate custom admonitions plugin 2025-03-14 00:02:55 +02:00
Elian Doran 507a594198 feat(admonitions): color the icon 2025-03-13 16:22:05 +02:00
Elian Doran 732252df5b feat(admonitions): add custom color per admonition 2025-03-13 16:19:58 +02:00
Elian Doran ba39769174 feat(admonitions): add icon 2025-03-13 16:13:16 +02:00
Panagiotis Papadopoulos 6a9342abce build(Docker): add a temporary exception for files that copy-dist tries to copy for electron-forge, as otherwise copy-dist will fail inside Docker build
this will be fixed in an upcoming PR where I overhaul copy-dist to allow for build target specific copying of files
2025-03-13 08:44:31 +01:00
Panagiotis Papadopoulos 67c752c11b ci: adjust build-electron action to use the newly introduced outDir "./dist" for electron-forge 2025-03-13 08:21:12 +01:00
Elian Doran adf5bee98f feat(admonitions): apply basic styling & configure for paragraphs 2025-03-13 09:15:11 +02:00
Panagiotis Papadopoulos cc0931b402 build(electron-forge): set outDir to ./dist, to have the same behaviour as the Server builds
since we run electron-forge inside the ./build folder, we need to go up a directory (using ../dist), to have it output to ./dist
2025-03-13 08:09:53 +01:00
Panagiotis Papadopoulos b48fbbe583 build(copy-dist): copy over desktop.ejs for electron-forge as well
it is required for Flatpak/Deb/RPM Linux packages
2025-03-13 07:59:12 +01:00
Panagiotis Papadopoulos 1877d26296 chore(scripts): electron-forge:prepare -> copy node_modules folder as is
electron-forge does not like, if we get rid of devDeps ourselves already it seems.
It *wants* to do it itself, otherwise build fails…

It does seem to correctly strip all the devDeps though, at least there's that.
2025-03-13 07:59:12 +01:00
Panagiotis Papadopoulos 4ce2c10d72 build(copy-dist): copy over the start scripts for now 2025-03-13 07:59:12 +01:00
Panagiotis Papadopoulos 11772860b6 build(electron-forge): stop copying unused .anonymize-database.sql as ressource 2025-03-13 07:59:12 +01:00
Panagiotis Papadopoulos 6b9d8f0d67 build(electron-forge): execute electron-forge commands in our "build" output context
since we build TS and webpack ourselves and are not using any electron-forge plugins (at least at the moment) -> we should use the "build" folder as build context for electron-forge:

in comparison to running electron-forge in the root folder of the project, this avoids electron-forge from packing the source code multiple times (e.g. once as uncompiled TS, then as compiled JS, and then (partially) a third time as webpack bundled JS files), same as some of the assets.

to achieve this, we run our usual TS/Webpack build process, but then install the npm dependencies *inside* the build folder (as otherwise electron-forge would choke on the missing node_modules it and abort building).

In theory we could avoid cd-ing into the build folder, by providing the "dir" as argument to electron-forge's CLI -- BUT that wouldn't play well with our CI, where we are passing --arch and --platform options to it, which need to come *before* the dir argument.

since we now cd into the "build" folder, we also need to adjust the path in package.json "main" again
2025-03-13 07:59:12 +01:00
Adorian Doran 10de4e798b client/options: fix failing test 2025-03-13 06:10:09 +02:00
Adorian Doran eb630c80d6 client/options: format code 2025-03-13 05:50:29 +02:00
Adorian Doran 5cab7eb403 client/options: reorder sections 2025-03-13 05:46:34 +02:00
Adorian Doran 04c6813b0a client/options: relocate the "Localization" section to the "Language & Region" page 2025-03-13 05:35:43 +02:00
Adorian Doran 1369a44d9b style/options/ETAPI: add an icon to the create token button 2025-03-13 05:25:34 +02:00
Adorian Doran 88aa9a4e79 client/options/code notes: create the "Editor" section, reorganize 2025-03-13 05:20:58 +02:00
Adorian Doran 0e748fbce0 style/options/ETAPI: update the icon of the edit token button 2025-03-13 04:30:42 +02:00
Adorian Doran 6c6d20a830 style: fix note title input overlapping with the zen mode exit button 2025-03-13 04:19:42 +02:00
Adorian Doran 69f95068f1 style(next)/shell/right pane: minor restyle 2025-03-13 04:04:08 +02:00
Adorian Doran 2066f821cb style(next)/ribbon/image properties: improve the layout 2025-03-13 03:24:04 +02:00
Adorian Doran 25a787f9dc Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-12 22:30:51 +02:00
Adorian Doran a2b73feb25 style/image properties: add icons to buttons 2025-03-12 22:30:49 +02:00
Elian Doran 062955aa81 feat(editor): integrate styles support 2025-03-12 22:08:23 +02:00
Elian Doran b8cbd79ae1 refactor(client): rename ckeditor config file 2025-03-12 22:08:23 +02:00
Adorian Doran fc4712240c Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-12 21:42:43 +02:00
Adorian Doran 18882d0b7e style(next)/toasts: change the dark mode colors 2025-03-12 21:42:39 +02:00
Elian Doran d469670a46 feat(docs): document formatting keyboard shortcuts + fix broken image 2025-03-12 19:03:33 +02:00
Elian Doran e0cebf1c00 style(next): apply kbd style to content 2025-03-12 18:08:39 +02:00
Elian Doran 383408e884 style(editor): add some separators to formatting toolbar 2025-03-12 18:06:34 +02:00
Elian Doran 87d28c8c2f style(editor): group some formatting options for floating toolbar 2025-03-12 18:04:20 +02:00
Elian Doran bec7a526ad feat(editor): add support for marking keyboard shortcuts 2025-03-12 17:58:12 +02:00
Adorian Doran bb8325cf8d Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-12 15:08:26 +02:00
Adorian Doran da9a029f8f style(next)/note list: remove a no longer needed border 2025-03-12 15:08:22 +02:00
Elian Doran c02b5468a6 feat(docs): clean up RTL and reorder 2025-03-12 14:47:42 +02:00
Elian Doran 5dd5e8da91 feat(docs): document adjusting image alignment 2025-03-12 13:36:30 +02:00
Adorian Doran f991cee3ac Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-12 13:31:07 +02:00
Adorian Doran 1426e43fb8 style(next): move color variables to color scheme-related stylesheets 2025-03-12 13:31:04 +02:00
Elian Doran 61899aa32d chore(edit-docs): ignore document.db 2025-03-12 13:14:09 +02:00
Elian Doran e90bbe31ba feat(docs): document the launch bar 2025-03-12 13:14:09 +02:00
Elian Doran 034998fa97 feat(docs): document vertical vs horizontal layout 2025-03-12 13:14:08 +02:00
Elian Doran 3a41d8fd11 feat(docs): improve note tree documentation 2025-03-12 13:14:08 +02:00
Elian Doran e9175d60ec feat(docs): improve documentation for code notes, code blocks 2025-03-12 13:14:08 +02:00
Adorian Doran 4f87bd101e Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-12 12:55:57 +02:00
Adorian Doran 9c78415a1f style(next): restyle toasts 2025-03-12 12:55:55 +02:00
Elian Doran 06d848ba17 feat(code): support mips (closes #1406) 2025-03-12 10:54:44 +02:00
Elian Doran 42821d47c8 refactor(mime): sort alphabetically 2025-03-12 10:54:19 +02:00
Panagiotis Papadopoulos d7aedfbd36 build(copy-dist): exit on any caught error to make sure copy-dist fails during CI if any error occurs
if we don't exit, it will just log the issue - however we *want* it to fail it there is an error, so that it doesn't continue in the CI

alternative would be to rethrow the error, but then we'd print the error into the logs twice :-)

closes https://github.com/TriliumNext/Notes/issues/1413
2025-03-12 09:52:42 +01:00
Adorian Doran b730ca0033 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-12 10:44:04 +02:00
Adorian Doran bad7776076 style/toasts: get rid of some !important properties 2025-03-12 10:43:53 +02:00
Panagiotis Papadopoulos d088c8e5b2 build(copy-dist): fix path to excalidraw fonts 2025-03-12 08:57:05 +01:00
Elian Doran 2463e44bf8 chore(deps): downgrade to react 18 2025-03-12 09:15:37 +02:00
renovate[bot] b600b51fe8 chore(deps): update dependency happy-dom to v17.4.4 2025-03-12 02:59:14 +00:00
Adorian Doran ddd2babe21 style/content renderer: localize some strings 2025-03-12 03:40:56 +02:00
Adorian Doran b082f95d42 style/content renderer: add icons to the "download" and "open" buttons 2025-03-12 03:32:54 +02:00
Adorian Doran 79fb87d9ff style(next)/search: refactor 2025-03-12 03:13:41 +02:00
Adorian Doran 027577c709 style(next)/search: change the alignment of the search-related buttons 2025-03-12 03:12:22 +02:00
Adorian Doran dd62979d65 style/attachments page: add an icon to the upload button 2025-03-12 02:49:40 +02:00
Adorian Doran f86170f553 style/note revisions dialog: add icons to buttons 2025-03-12 02:38:34 +02:00
Adorian Doran 82b012a38b style(next)/ribbon/file properties: refactor 2025-03-12 02:13:32 +02:00
Adorian Doran 4b6998975f style(next)/ribbon/file properties: improve the layout 2025-03-12 02:06:29 +02:00
Adorian Doran 600585bfd3 style(next)/ribbon/file properties: improve the layout 2025-03-12 02:02:18 +02:00
Adorian Doran 0c8e7806f4 style/ribbon/file properties: add icons to buttons 2025-03-12 02:01:19 +02:00
Adorian Doran 62b5bbc9ce style(next): fix the submenu arrows overlapping the keyboard shortcuts 2025-03-12 00:57:16 +02:00
Elian Doran 3ae48bba00 chore(deps): update react to latest 2025-03-12 00:06:11 +02:00
Elian Doran cf76358dd7 fix(canvas): font loading 2025-03-11 23:03:34 +02:00
Elian Doran c2cb48a25c chore(deps): update to excalidraw 0.18.0 2025-03-11 22:59:16 +02:00
Elian Doran 39f3cb47fa Merge pull request #1393 from TriliumNext/build_hotfix-electron
fix(build/electron): hotfix for failing nightly electron builds
2025-03-11 22:20:17 +02:00
Elian Doran 15c04c38b9 chore(docs): add HTML user guide 2025-03-11 22:04:19 +02:00
Elian Doran 3723824246 chore(scripts): downgrade Electron to 33 for Nix 2025-03-11 22:02:05 +02:00
Elian Doran 5ee13623ee feat(edit-docs): generate HTML documentation as well 2025-03-11 21:58:32 +02:00
Elian Doran 9d161a007e feat(etc/reddit): add icon 2025-03-11 21:57:43 +02:00
Elian Doran 3457c2e4d8 feat(content_renderer): render docnotes 2025-03-11 21:57:33 +02:00
Elian Doran 32f84e8378 refactor(client): extract doc rendering to dedicated service 2025-03-11 21:32:48 +02:00
Panagiotis Papadopoulos 4494662d2a fix(build/electron): hot fix for failing nightly electron builds
this is caused by recently reverting the output of "build:prepare-dist" from "dist" to "build"

-> this is just a temporary fix -> I am working in parallel already on an improved electron-forge build process, whihc will be ready by end of the week
2025-03-11 20:24:11 +01:00
Elian Doran 4124c96e02 fix(docs): syntax highlighting for Nginx 2025-03-11 21:12:42 +02:00
Elian Doran b278bc8ce4 refactor(test): use matrix for testing import/export 2025-03-11 21:11:23 +02:00
Elian Doran 8c71e6aa90 fix(export/markdown): proper language tag for Nginx 2025-03-11 21:05:55 +02:00
Elian Doran 09c081fdcf feat(edit-docs): remove input file 2025-03-11 20:48:40 +02:00
Elian Doran ba17ce8616 fix(docs): numbering in Nginx 2025-03-11 20:46:50 +02:00
Elian Doran 34ffba54ac feat(edit-docs): do proper becca cleaning before starting 2025-03-11 20:42:53 +02:00
Elian Doran d3cfc1c88b feat(edit-docs): ignore options change 2025-03-11 20:40:25 +02:00
Elian Doran 4969cf7d5b feat(edit-docs): wait for import to finish before starting electron 2025-03-11 20:39:30 +02:00
Elian Doran ac4a8a44d4 chore(docs): import canvas note documentation 2025-03-11 20:27:54 +02:00
Elian Doran 69a39bca2f fix(docs): clean up documentation 2025-03-11 20:23:36 +02:00
Elian Doran c79eeea060 fix(docs): few broken image references 2025-03-11 19:50:29 +02:00
Elian Doran f86434523e fix(export): maintain same order of attachments 2025-03-11 18:27:08 +02:00
Elian Doran bb288c5c68 fix(edit-docs): consistency check issues 2025-03-11 18:26:49 +02:00
Elian Doran 0af357ece8 chore(docs): update with deterministic order 2025-03-11 18:05:42 +02:00
Elian Doran a2795f3440 fix(import/markdown): title deduplication breaking special chars 2025-03-11 17:51:35 +02:00
Elian Doran 3d10ac5e1f chore(docs): solve import/export errors 2025-03-11 17:36:42 +02:00
Elian Doran 997e962fbe fix(edit-docs): attachments duplication 2025-03-11 17:24:29 +02:00
Elian Doran e939b7b3d9 fix(docs): unescaped URL in images 2025-03-11 17:24:15 +02:00
Elian Doran a441ea2461 feat(md): rewrite image URL with spaces 2025-03-11 17:12:56 +02:00
Elian Doran f67e2ebcd5 chore(edit-docs): move Markdown documentation outside src for now 2025-03-11 16:11:16 +02:00
Elian Doran 971b388d1a Merge pull request #1392 from TriliumNext/Note_Revisions
Fix the bug where note revisions cannot be previewed.
2025-03-11 13:39:00 +02:00
Elian Doran a33d532958 Merge pull request #1382 from TriliumNext/renovate/happy-dom-monorepo
chore(deps): update dependency happy-dom to v17.4.3
2025-03-11 13:38:25 +02:00
Elian Doran 80d1985882 Merge pull request #1381 from TriliumNext/renovate/autoprefixer-10.x
chore(deps): update dependency autoprefixer to v10.4.21
2025-03-11 13:38:05 +02:00
Elian Doran ecc5e0f3b8 Merge pull request #1388 from TriliumNext/build_electron-dump-db
build(electron-forge): stop packing dump-db folder
2025-03-11 13:37:19 +02:00
Elian Doran 5252fe3d1e Merge pull request #1390 from TriliumNext/renovate/typescript-eslint-monorepo
chore(deps): update dependency typescript-eslint to v8.26.1
2025-03-11 13:34:45 +02:00
Elian Doran 182da7717f Merge pull request #1389 from TriliumNext/renovate/electron-34.x
chore(deps): update dependency electron to v34.3.2
2025-03-11 13:34:21 +02:00
Elian Doran 6b3bf1151a Merge branch 'develop' into renovate/happy-dom-monorepo 2025-03-11 13:27:41 +02:00
Elian Doran c16f240f31 Merge branch 'develop' into renovate/autoprefixer-10.x 2025-03-11 13:27:38 +02:00
SiriusXT 4b269c2859 Fix the bug where note revisions cannot be previewed. 2025-03-11 16:24:35 +08:00
renovate[bot] 5299da6525 chore(deps): update dependency typescript-eslint to v8.26.1 2025-03-11 02:37:37 +00:00
renovate[bot] ca6253f3bb chore(deps): update dependency electron to v34.3.2 2025-03-11 02:37:19 +00:00
Elian Doran d639798fa8 refactor(server): deduplicate options init 2025-03-10 21:21:59 +02:00
Elian Doran e79f18f001 fix(edit-docs): convert to Markdown 2025-03-10 21:15:33 +02:00
Elian Doran d134ee0552 fix(edit-docs): preserve attachment IDs 2025-03-10 20:50:57 +02:00
Elian Doran b412f06b79 fix(edit-docs): doubly nested directories 2025-03-10 20:16:56 +02:00
Elian Doran 7a4b1b41b4 feat(edit-docs): periodic export 2025-03-10 19:34:10 +02:00
Elian Doran 841bc54f78 feat(edit-docs): preserve IDs when importing 2025-03-10 19:14:46 +02:00
Panagiotis Papadopoulos 02a00000fb build(electron-forge): stop packing dump-db folder
see https://github.com/TriliumNext/Notes/issues/1115
2025-03-10 18:11:56 +01:00
Elian Doran 966ad36919 fix(edit-docs): allow import of contents 2025-03-10 18:56:00 +02:00
Elian Doran 8ac5d01f43 feat(edit-docs): start importing zip 2025-03-10 18:51:40 +02:00
Elian Doran 15936ff8b8 fix(edit-docs): relative path 2025-03-10 17:57:56 +02:00
Elian Doran a1918ad491 feat(edit-docs): start creating input zip file 2025-03-10 17:50:58 +02:00
Elian Doran 2b891adc34 feat(edit-docs): create child note for importing 2025-03-10 17:41:13 +02:00
Elian Doran 42d3236fe7 fix(edit-docs): stop initializing if DB is already so 2025-03-10 17:08:40 +02:00
Elian Doran f3d753cc46 feat(edit-docs): initialize database automatically 2025-03-10 17:04:17 +02:00
Elian Doran 6a549af34a feat(edit-docs): clean up meta 2025-03-10 16:37:39 +02:00
Elian Doran bffb0963df feat(edit-docs): clean up ZIP file 2025-03-10 16:31:44 +02:00
Elian Doran df2a9aed44 feat(edit-docs): automatically write documentation on start-up 2025-03-10 16:20:48 +02:00
Elian Doran 2530c01a31 chore(docs): update in-app documentation 2025-03-10 16:20:13 +02:00
Elian Doran 054a919fad chore(docs): small structure update 2025-03-10 15:04:04 +02:00
Elian Doran 9fa19469fd chore(docs): improvements + new doc 2025-03-10 14:21:53 +02:00
Elian Doran b9c409ec33 chore(scripts): edit documentation with Nix 2025-03-10 10:53:49 +02:00
Elian Doran 6c845102d3 fix(build): missing arguments in eslint.spec.ts 2025-03-10 09:25:33 +02:00
Elian Doran e6c04e70e4 Merge pull request #1369 from TriliumNext/build_improve-server-build
build: fix/improve server build
2025-03-10 09:19:09 +02:00
renovate[bot] 9dcfae56a1 chore(deps): update dependency happy-dom to v17.4.3 2025-03-10 02:33:38 +00:00
renovate[bot] 05b2f8c097 chore(deps): update dependency autoprefixer to v10.4.21 2025-03-10 02:33:29 +00:00
Romain DEP. 5658f22f9a feat(calendar): do no longer require # or ~ to be specified by the user
to signify that the provided attribute is a label or a relation. It will now
work either way, giving preference to the label if one is found.
2025-03-09 22:44:45 +01:00
Elian Doran 0232fee905 chore(docs): reorder and improve slightly 2025-03-09 23:29:01 +02:00
Romain DEP. 85917d7207 feat(calendar): support displaying of attributes and realtions with multiple cardinality 2025-03-09 21:26:41 +01:00
Elian Doran e129e0369d server(attachments): render empty SVGs properly (closes #1378) 2025-03-09 22:23:01 +02:00
Elian Doran be6e56fbe8 feat(eslint): add support for module.exports 2025-03-09 21:41:13 +02:00
Elian Doran 1fb4634b7b feat(eslint): add globals for jQuery 2025-03-09 21:38:16 +02:00
Panagiotis Papadopoulos afe4fc2d1a build(build-server): add more detail to status "echo"s 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 3450066214 build(build.sh): remove unused build script
this is not used anymore at all, it was replaced by GitHub CI Actions

it even mentions several other scripts, that got removed in the meantime as well
2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 36fad35be5 build(build-server): rename archive name to the same naming scheme used in the Github CI 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 56340009ca build(build-server): remove now unused DONTCOPY check 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos d110c8b067 build(build-server): add some status "echo"s 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos d8ad018819 build(build-server): also delete electron map files 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 33de342842 build(build-server): download and extract node in a single step 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 4bba061629 build(build-server): get rid of now unnecessary arch handling for node
directly use "ARCH" instead of creating 2 variables with the identical content as "ARCH"
2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 87d37366e4 build(build-server): remove unnecessary copying of translations
already happens during build:prepare-dist step
2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 1324cc2e53 build(build-server): add TODO remark 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 80d6cd0356 build(build-server): delete temp build dir copy in dist folder 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos e0413b528f build(build-server): use a single "rm" command 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 19abd14058 build(build-server): use build dir for build and dist for final archive output 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 9bd31698e1 build(copy-trilium): use "|" as sed separator
allows us to avoid having to escape "/"
2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 1ae5c43010 build(copy-trilium): do all the work inside build dir, no target directory needed anymore
-> all of these steps will eventually be merged with copy-dist script to have a unified copying script
2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos f8b06f0634 build(copy-trilium): get rid of unecessary copying of files
-> already handled by "build:prepare-dist" step
2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 930be2de05 build(copy-dist): copy LICENSE and README as well
copied over from copy-trilium.sh script
2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos c89d86acb1 build(copy-trilium): use "build:prepare-dist" build script 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos d65281bfa5 build(copy-trilium): use npm ci 2025-03-09 18:59:54 +01:00
Panagiotis Papadopoulos 607f9096aa build: output into "build" folder again → "dist" will be used for the final output in archive form
this will allow for cleaner separation -> build for the output from the build stage (i.e. TS/Webpack + asset copying) and dist for the archive format of the build folder
2025-03-09 18:59:54 +01:00
Romain DEP. 6c1cb71c9f feat(calendar): make it so that events with customized calendar:startDate and calendar:endDate can be drag&dropped on the calendar view 2025-03-09 13:03:15 +01:00
Elian Doran 064799e8cb feat(docs): add v1 of the full documentation 2025-03-09 13:19:48 +02:00
Elian Doran b7cb2e6e97 feat(docs): basic integration with shared db 2025-03-09 13:19:38 +02:00
Elian Doran b00224c63c Merge pull request #1367 from TriliumNext/renovate/node-22.x
chore(deps): update dependency @types/node to v22.13.10
2025-03-09 09:41:29 +02:00
Elian Doran 5b5fb6bbd9 Merge pull request #1368 from TriliumNext/renovate/happy-dom-monorepo
chore(deps): update dependency happy-dom to v17.4.2
2025-03-09 09:40:42 +02:00
renovate[bot] 4ef1c5d4e2 chore(deps): update dependency happy-dom to v17.4.2 2025-03-09 01:53:34 +00:00
renovate[bot] 56c575cec2 chore(deps): update dependency @types/node to v22.13.10 2025-03-09 01:53:24 +00:00
Romain DEP. 3fe78cad61 feat(calendar): rename "promotedAttributes" into "displayedAttributes" and permit non-promoted attributes to be displayed 2025-03-08 22:17:58 +01:00
Adorian Doran eb9d7dd172 style/login: prevent the page content being rendered before the stylesheet is loaded 2025-03-08 20:53:54 +02:00
Adorian Doran 7434fb372e style/login: prevent the icon from being dragged 2025-03-08 20:45:12 +02:00
Adorian Doran d17513bec0 style(next): tweak the style of the login page 2025-03-08 20:40:00 +02:00
Adorian Doran fc87f64840 style(next)/options: restyle the warning boxes 2025-03-08 19:32:56 +02:00
Adorian Doran f6e869f2ac Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-08 19:17:13 +02:00
Adorian Doran 69fab9a6d6 style(next)/options/shortcuts: improve the appearance of the page 2025-03-08 19:16:48 +02:00
Elian Doran 14c3fd5892 Merge pull request #1347 from TriliumNext/chore_eslint-fixes_src-routes
chore(lint): fix eslint issues in `src/routes`
2025-03-08 18:25:47 +02:00
Panagiotis Papadopoulos c120132cbb Merge branch 'develop' into chore_eslint-fixes_src-routes 2025-03-08 17:15:53 +01:00
Panagiotis Papadopoulos ecf1a0e4ad refactor(utils): add safeExtractMessageAndStackFromError util to remove code duplication 2025-03-08 17:07:25 +01:00
Panagiotis Papadopoulos e20b662ea7 chore(routes): fix no-explicit-any lint/ts error for restoreRevision 2025-03-08 16:12:37 +01:00
Panagiotis Papadopoulos 7bd9be7b29 chore: use more narrow NoteType for RevisionRow 2025-03-08 16:11:58 +01:00
Panagiotis Papadopoulos e3d0c53d03 chore(routes): fix no-explicit-any lint/ts error for catch blocks 2025-03-08 16:03:30 +01:00
Panagiotis Papadopoulos 272d7cd652 chore(routes/api/clipper): fix prefer-const lint errors 2025-03-08 15:31:12 +01:00
Panagiotis Papadopoulos dd9e1e69d7 fix(routes/api/clipper): fix typo in error message 2025-03-08 15:27:39 +01:00
Panagiotis Papadopoulos 08a6053c38 refactor(routes/api/clipper): get rid of second htmlSanitizer call for pageUrl
-> the value is already sanitized in line 112, there's no need to call htmlSanitizer a second time here
2025-03-08 15:27:04 +01:00
Elian Doran 4cffc50218 Merge pull request #1361 from TriliumNext/themeUseNextAsBase
Theme use next as base
2025-03-08 09:55:11 +02:00
SiriusXT 1a54b8f5a5 Add themes that can be base 2025-03-08 15:10:38 +08:00
SiriusXT e2c317f59c Add themes that can be base 2025-03-08 14:58:19 +08:00
Adorian Doran 1e81831ea0 style(next)/options: improve (again) the layout of the option cards 2025-03-08 05:49:18 +02:00
Adorian Doran 240ee2b6ac style(next)/options: improve the layout of the option cards 2025-03-08 05:34:43 +02:00
Adorian Doran d47350363a style(next): remove no longer unused style 2025-03-08 04:45:55 +02:00
Adorian Doran 6a1f1948f0 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-08 04:44:26 +02:00
Adorian Doran db4c5bcac2 client/options/advanced: use a table for "Existing anonymized databases" 2025-03-08 04:44:23 +02:00
Elian Doran 268b666d52 feat(template): duplicate content for geomap & mindmap (closes #357) 2025-03-08 04:28:24 +02:00
Elian Doran ed06a3ee97 feat(template): duplicate content for relation map 2025-03-08 04:26:30 +02:00
Elian Doran 5d9bea8987 feat(template): duplicate content for canvas 2025-03-08 04:24:09 +02:00
Elian Doran c7b99adb6a feat(template): duplicate content for mermaid diagrams 2025-03-08 04:23:05 +02:00
Adorian Doran 82a63a65da style(next)/options/shortcuts: tweak group headings 2025-03-08 04:17:16 +02:00
Adorian Doran 7582b1c43d style/options/appearance: fix the width of the "Main font" combo box 2025-03-08 04:01:49 +02:00
Adorian Doran fa60e66a75 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-08 03:52:31 +02:00
Adorian Doran d16708cf75 style(next)/options: tweak labels 2025-03-08 03:52:14 +02:00
Elian Doran 4f671738e6 fix(client): remove misleading message about removing revisions (closes #1308) 2025-03-08 03:45:02 +02:00
Adorian Doran decf62c58c style: add a gap between consecutive radios / check boxes 2025-03-08 03:33:02 +02:00
Adorian Doran 9626b42443 style(next): add a gap between consecutive radios / check boxes 2025-03-08 03:27:59 +02:00
Adorian Doran 15d3285a90 client/options/text notes: convert the "Heading Style" combo box into radio buttons 2025-03-08 03:21:32 +02:00
Adorian Doran a694017c87 Merge branch 'develop' of https://github.com/TriliumNext/Notes into develop 2025-03-08 03:18:57 +02:00
Adorian Doran 2cfb83a93c client/options/appearance: convert the "First day of the week" combo box into radio buttons 2025-03-08 03:18:42 +02:00
Elian Doran 4839edb3d7 feat(dump-db): use tsx instead of esrun 2025-03-08 03:14:38 +02:00
Elian Doran 9db5557cc1 Merge pull request #1359 from TriliumNext/renovate/eslint-monorepo
chore(deps): update eslint monorepo to v9.22.0
2025-03-08 03:10:33 +02:00
Elian Doran acedb0e94c Merge pull request #1225 from TriliumNext/build_improve-ts-webpack
build: improvements for TS & Webpack & Docker
2025-03-08 03:08:30 +02:00
Elian Doran d2ffd4a8cd Merge pull request #1358 from TriliumNext/renovate/happy-dom-monorepo
chore(deps): update dependency happy-dom to v17.4.0
2025-03-08 03:05:41 +02:00
Elian Doran 2ff7d7bc6d Merge branch 'develop' into renovate/eslint-monorepo 2025-03-08 03:03:00 +02:00
Elian Doran 7ade401018 feat(eslint): downgrade unused variables to warning 2025-03-08 03:02:25 +02:00
Elian Doran 3756524ad3 feat(test): basic tests for ESLint 2025-03-08 02:55:59 +02:00
Elian Doran 770b4afff3 Merge pull request #1360 from TriliumNext/renovate/eslint-linter-browserify-9.x
fix(deps): update dependency eslint-linter-browserify to v9.22.0
2025-03-08 02:50:24 +02:00
renovate[bot] e530df8645 fix(deps): update dependency eslint-linter-browserify to v9.22.0 2025-03-08 00:46:50 +00:00
renovate[bot] 9d6adef5bf chore(deps): update dependency happy-dom to v17.4.0 2025-03-08 00:46:41 +00:00
Elian Doran 79adb0b20e feat(client): add recommended rules 2025-03-08 02:45:40 +02:00
Elian Doran 0273fad0ba refactor(deps): use different approach for eslint 2025-03-08 02:37:29 +02:00
renovate[bot] 7d21bcd611 chore(deps): update eslint monorepo to v9.22.0 2025-03-08 00:37:21 +00:00
Elian Doran c4f8e9605f fix(client): update ESLint to latest 2025-03-08 02:20:56 +02:00
Elian Doran 3c84d0558d fix(style): login in dark mode not rendering correctly 2025-03-08 02:10:14 +02:00
Elian Doran f8d759cbc3 chore(lock): version 2025-03-08 02:10:14 +02:00
Elian Doran c297f88395 chore(server): remove unnecessary log 2025-03-08 02:10:14 +02:00
Adorian Doran e74de6105a client/options: minor tweaks 2025-03-08 01:59:29 +02:00
Panagiotis Papadopoulos 91c37fa235 chore(routes/electron): disable lint rule for specific line
in this case using "{}" allows all primitive values, which seems to be what is required here.
so let's disable the rule "@typescript-eslint/no-empty-object-type" for this line
2025-03-08 00:54:29 +01:00
Panagiotis Papadopoulos b56ff558a4 refactor(routes/api/import): get rid of "any" type in catch blocks 2025-03-08 00:39:01 +01:00
Panagiotis Papadopoulos 07fd5327b1 refactor(routes/custom): get rid of "any" type catch blocks 2025-03-08 00:22:12 +01:00
Panagiotis Papadopoulos 4b6972fb21 refactor(error_handlers): get rid of "any" type in csrf error handler 2025-03-08 00:15:46 +01:00
Panagiotis Papadopoulos 76574f0938 refactor(error_handlers): use HttpError classes in errorHandler
also gets rid of "any" type :-)
2025-03-08 00:14:24 +01:00
Adorian Doran 6d39c404c4 client/options/appearance/ribbon widgets: place checkboxes on separate lines 2025-03-08 01:01:05 +02:00
Adorian Doran d24b5a232f style: fix the form text color 2025-03-08 00:54:53 +02:00
Adorian Doran 9a09a89066 client/options/appearance: change the layout of the "Native title bar" and "Enable background effects" options 2025-03-08 00:52:02 +02:00
Panagiotis Papadopoulos 0c8df7f885 refactor(error_handlers): use newly added ForbiddenError class 2025-03-07 23:30:12 +01:00
Panagiotis Papadopoulos 70e227f4c3 build(Docker): improve image size, by deleting node-compile-cache 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 907b8c503e build: copy package-lock.json into dist folder as well 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 38690053a8 build(Docker): improve image size, by deleting unnecessary node_modules fodler from dist folder
added a TODO as well, to get rid of this strange step here at some point
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 3553d64060 build(Docker/ci): get rid of running partial build locally
this is now handled fully inside Docker.

exception for "test_docker" job in "main-docker"
-> it seems that one needs to be there still, since it runs Playwright tests from outside the container
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos f544a84f6d build(Docker): simplify Docker alpine build and runtime stage
same changes as for the "non-alpine" Dockerfile previously commited, but adapted to Alpine.

this Dockerfile is aimed at production builds, i.e. trying to keep size as small as possible at the cost of "rebuild speed", due to missed docker cache opportunities.

Build Stage:
* do the complete build inside docker as oposed to the previous "hybrid", where tsc was run locally and the output got copied into the Docker build stage → you can now build this with Docker, without having to install the whole node/TS env locally

* build into a "build" subfolder, for easier clean up during build stage

* get rid of now unnecessary extra file/asset handling, as this is now handled by `npm run build:prepare-dist`

* no `npm prune` needed here, as we delete the whole build folder anyways in the last build step

Runtime stage:
* move the "electron" dep removal from the builder stage to the runtime stage, before installing the dependencies

* move to `npm ci` for reproducible installations – but only installing runtime deps here

* get rid of now unnecessary copying commands from the builder stage, as everything is now neatly available in "/usr/src/app"
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 68875683af build(Docker): get rid of apparently unused packages at build stage 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos e9824c4568 build(dockerignore): ignore unnecessary files 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos c68b0b02e4 build(Docker): simplify Docker build and runtime stage
this Dockerfile is aimed at production builds, i.e. trying to keep size as small as possible at the cost of "rebuild speed", due to missed docker cache opportunities.

Build Stage:
* do the complete build inside docker as oposed to the previous "hybrid", where tsc was run locally and the output got copied into the Docker build stage → you can now build this with Docker, without having to install the whole node/TS env locally

* build into a "build" subfolder, for easier clean up during build stage

* get rid of now unnecessary extra file/asset handling, as this is now handled by `npm run build:prepare-dist`

* no `npm prune` needed here, as we delete the whole build folder anyways in the last build step

Runtime stage:
* move the "electron" dep removal from the builder stage to the runtime stage, before installing the dependencies

* move to `npm ci` for reproducible installations – but only installing runtime deps here

* get rid of now unnecessary copying commands from the builder stage, as everything is now neatly available in "/usr/src/app"
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 2973d38db0 build(Docker): move server-package.json preparation into Dockerfile 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos bb7a4f9bc3 build(Docker): comment out seemingly useless installation of build dependencies 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos e389592017 build(copy-dist): copying build folder is not required anymore
TS and Webpack build into the dist folder directly now
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 5e289ea12d build: get rid of intermediary "build" folder -> use "dist" directly 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 3032156b45 build(copy-dist): execute code in try/catch -> get rid of function
since we don't export this anywhere, might as well just call the steps directly
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos d75cf8c11e build(copy-dist): consolidate nodeModules copying into a single loop 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos a816abb372 build(copy-dist): use sync copying
since this is a "standalone" script we are running and no other JS scritps are running "in the background", there's no real benefit for async here.
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 37f1525d0e build(copy-dist): remove unused paths 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos dbeae62709 build(copy-dist): simplify "copyNodeModuleFileOrFolder" copying
there's no benefit from stripping "node_modules/" from the string, to later add it again using the `DEST_DIR_NODE_MODULES` constant

=> just copy directly into the `DEST_DIR` folder and preserver the `node_modules` part in the path
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos ac3e96291a build(copy-dist): simplify "build" copying
there's no need to read the folder structure and then copy each single file in a loop

=> just copy the whole folder and be done with it :-)
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 9ac451e2b2 build(copy-dist): consolidate files and folder copying into one asset copying job
there's no benefit in having them split up like before
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos dbc2df0820 build(copy-dist): consolidate folder copying
the "srcDirsToCopy" block is useless now, we can just use the previous dirsToCopy to achieve the exact same thing
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 24382d8176 build(copy-dist): avoid copying over the app dir into dist
we have the bundled "app-dist" already in the "dist", copying over the original unbundled "app" folder serves no benefit here
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos af5e4ee3b5 build(copy-dist): copy over required folders/files from "public" folder 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 135101f57b build(copy-dist): do not copy build folder into src folder
stop the build folder from being copied into the dist/src subfolder
→ there is no sense in doing that
→ the contents of the build folder are corretly copied previously already (see line 26ff)
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 60a2b56636 chore(copy-dist): removee unnecesary copy of tsconfig.webpack.json
webpack bundling already ran before this script, so there is no need to copy this file over
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos e483cbca3c build(tsconfig): remove unnecessary exclude lines
these folder are already "excluded" implicitly, since we only include "./src" folder
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 3e307f4711 build(scripts): add "build:clean" script for removing dist and build folders 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 6c4a1732ad build(copy-trilium): use npm run build:ts 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos d0bb5f9768 build(scripts): add webpack progress flag 2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 3a87d71073 build(scripts): add build:ts and update build:prepare-dist
since we build into the build folder -> we should also clean the folder before building as well

also it makes sense to run tsc first, as it runs faster, so if there's any TS errors, we will have a faster failing build
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos e0c0086eb3 build(tsconfig): fix glob for build config
not sure why, but seems like it doesn't like `[jt]s` – which causes it to skip certain .d.ts files, making tsc fail
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 2be9389f3b build(webpack): change to nosources-source-map
as per https://webpack.js.org/configuration/devtool/#production

serving the `source-map` file to "normal" users seems to be not recommended, so instead let's go with `nosources-source-map`:

a) this drastically reduces app-dist folder size from 20MB down to 8.7MB
b) it still allows for stack traces
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 745b294ca1 build(webpack): output webpack build in build folder
output the bundled files directly in the build folder
a) keeps the src folder clean from build output
b) it saves us some "manual" copying work
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos cefc402263 build: add separate tsconfig.build.json
this prevents tsc from unnecessarily transpiling the frontend part as well:
previously it was transpiled by tsc, but the files got discarded and replaced by the files built by webpack.

speeds up tsc command a bit as well:
from 14 seconds to ~8 secs
2025-03-07 23:14:56 +01:00
Panagiotis Papadopoulos 2c91f6e7bc refactor(errors): add HttpError class and extend existing errors from it 2025-03-07 22:47:03 +01:00
Panagiotis Papadopoulos 39d45dc11b refactor(error_handlers): use existing NotFoundError class
also gets rid of "any" type :-)
2025-03-07 22:31:55 +01:00
Panagiotis Papadopoulos d8ce385134 refactor(routes): refactor handleException and get rid of "any" type 2025-03-07 22:27:13 +01:00
Panagiotis Papadopoulos ba5152de40 refactor(errors): extend errors from Error and add/assign statusCode
this is in preparation for updating the routes/handleException method, to get rid of "any" (and improve in general)
2025-03-07 22:22:44 +01:00
Panagiotis Papadopoulos 04f3b637f9 chore(lint): fix no-explicit-any in export.ts 2025-03-06 23:32:05 +01:00
Panagiotis Papadopoulos 7feb38ffa1 chore(lint): fix no-unused-vars errors 2025-03-06 23:21:47 +01:00
Panagiotis Papadopoulos c8e36942fc chore(lint): get rid of "any" in attachments
req.file is of type "Express.Multer.File | undefined".
Returning with an "uploaded: false" type object -> same handling as in
image.ts
2025-03-06 23:09:24 +01:00
Panagiotis Papadopoulos dfb8982a99 chore(lint): improve type and get rid of "any" 2025-03-06 22:44:54 +01:00
Panagiotis Papadopoulos 0f0e55deb2 chore(lint): fix lint issues in src/routes 2025-03-05 18:09:44 +01:00
Elian Doran 0916d87e3d feat(client/mfa): improve headings 2024-12-24 14:02:52 +02:00
Elian Doran e20e53f606 feat(client/mfa): improve layout by separating into multiple sections 2024-12-24 14:02:00 +02:00
Elian Doran 2eb4d4fb66 Merge remote-tracking branch 'origin/develop' into feature/MFA 2024-12-24 13:30:37 +02:00
chesspro13 120f1677e8 Removed unused import 2024-09-14 10:12:14 -07:00
chesspro13 d92820280d Fixed problem with using existing databases. 2024-09-14 10:04:39 -07:00
chesspro13 2e21a45fc1 Merge branch 'develop' into feature/MFA 2024-09-09 16:30:18 -07:00
Chesspro13 fa5c5ce183 Added OpenID and TOTP to readme 2024-09-09 12:29:32 -07:00
Chesspro13 953f539dcc Changed wording from "Regerate TOTP Secret" to "Generate TOTP Secret" 2024-09-09 12:07:48 -07:00
Chesspro13 d8c8fe0a6d Added check for running both OpenID and TOTP at the same time. 2024-09-09 12:01:41 -07:00
chesspro13 55b0f0e3f4 Simplified .env 2024-09-07 15:00:12 -07:00
chesspro13 06da11ff41 Disabled TOTP checkbox 2024-09-07 14:38:08 -07:00
chesspro13 ede7bbd8ed Fixed recovery code refresh bug. 2024-09-07 14:37:09 -07:00
chesspro13 9dd185e37e Removed unused files/code/imports/comments. 2024-09-07 14:25:48 -07:00
chesspro13 13937a2568 Removed outdated comments 2024-09-07 14:19:16 -07:00
chesspro13 d76396056a Removed unused script 2024-09-07 14:17:34 -07:00
chesspro13 df3cbf85e1 Removed references to disconnecting OpenID Accounts. For now. 2024-09-07 14:12:27 -07:00
chesspro13 c74da18e23 OAuth working 2024-09-07 13:18:47 -07:00
chesspro13 1a8625b558 Added package-lock.json 2024-09-07 11:53:26 -07:00
chesspro13 494721f38f Changed Verification order. 2024-09-07 11:51:29 -07:00
chesspro13 37b4bf6b58 Fixed login errors 2024-09-07 11:47:29 -07:00
chesspro13 e232c6634e TOTP working 2024-09-07 11:41:54 -07:00
chesspro13 9c748f326a Ported from branch OIDC 2024-09-07 10:21:41 -07:00
Laurent 0f43299c17 Update README.md 2021-06-27 11:45:17 +01:00
Laurent Cozic d160d5c8d5 1.0.12 2020-01-08 16:52:08 +00:00
Laurent Cozic 0b2f3dc10a Fixed issue with tables that contain only one cell 2020-01-08 16:51:43 +00:00
Laurent Cozic 9a12000eb0 1.0.11 2019-10-12 19:33:40 +02:00
Laurent Cozic 4368e08c32 1.0.10 2019-10-12 19:33:01 +02:00
Laurent Cozic 4304c3ad92 1.0.9 2019-10-12 19:32:48 +02:00
Laurent Cozic c00d538f88 Fixes #1: Some tables were imported with an extra header 2019-10-12 19:32:33 +02:00
Laurent Cozic 6fb98621ce Publis script 2019-09-07 10:28:14 +01:00
Laurent Cozic a120d4ec9c Fix importing tables that contain pipes 2019-09-07 10:27:34 +01:00
Laurent Cozic 3358d85996 Fix importing tables that contain pipes 2019-09-07 10:27:01 +01:00
Laurent Cozic b33431774b Fix security issues 2019-09-07 10:18:23 +01:00
Laurent Cozic 7051ce787c 1.0.8 2019-05-11 00:26:38 +01:00
Laurent Cozic 1452200c79 Fixed handling of tables with empty headers 2019-05-11 00:26:27 +01:00
Laurent Cozic 54f84c12fd 1.0.7 2018-06-09 19:41:25 +01:00
Laurent Cozic 118a856ee7 Merge branch 'master' of github.com:laurent22/joplin-turndown-plugin-gfm 2018-06-09 19:41:11 +01:00
Laurent Cozic 11225771b6 Don't render table outline if it contains only one cell, or no cell at all 2018-06-09 19:40:57 +01:00
Laurent Cozic 18e93d7c0b Update package.json 2018-05-24 12:34:39 +01:00
Laurent Cozic ec895d31fb 1.0.6 2018-05-24 12:31:46 +01:00
Laurent Cozic 59153ece46 Handle colspan in TD tags 2018-05-24 12:31:40 +01:00
Laurent Cozic 44aa7353f0 1.0.5 2018-05-22 00:15:34 +01:00
Laurent Cozic ecb6142c5a Fixed: Ensure there are no blank lines inside tables 2018-05-22 00:15:21 +01:00
Laurent Cozic a2d99a266b 1.0.4 2018-05-21 23:56:00 +01:00
Laurent Cozic 36179a8394 Make table cells at least 3 char long 2018-05-21 23:55:53 +01:00
Laurent Cozic 90cff86ac0 1.0.3 2018-05-21 23:42:28 +01:00
Laurent Cozic a1fa10e997 Merge branch 'master' of github.com:laurent22/joplin-turndown-plugin-gfm 2018-05-21 23:42:14 +01:00
Laurent Cozic 7af39b57f0 Replace newlines inside table cells so that resulting markdown is valid 2018-05-21 23:42:02 +01:00
Laurent Cozic d1563a336a Update README.md 2018-05-21 23:23:19 +01:00
Laurent Cozic 0f64fe53cb Merge branch 'master' of github.com:laurent22/joplin-turndown-plugin-gfm 2018-05-21 23:22:44 +01:00
Laurent Cozic 36263e6295 Moved package to different namespace so that it can be published to npm 2018-05-21 23:22:32 +01:00
Laurent Cozic 616cc129e2 Don't render the border of tables that contain other tables 2018-05-21 23:21:37 +01:00
Laurent Cozic 9bcb5ec3a9 Update README.md 2018-05-21 23:20:53 +01:00
Laurent Cozic 813b9a61b0 Fix trailing space issue 2018-05-17 01:29:33 +01:00
Laurent Cozic e77328fb23 Handle tables with no headers by creating an empty Markdown header 2018-05-17 01:01:36 +01:00
Dom Christie 61a981b8c6 1.0.2 2018-05-11 12:05:19 +01:00
Dom Christie 22f423429c Merge pull request #9 from domchristie/tables_with_no_heading_row
Keep tables with no definitive heading row
2018-05-11 12:03:16 +01:00
Dom Christie 93d5aed1fe Keep tables with no definitive heading row 2018-05-11 11:55:21 +01:00
Dom Christie 7eeb773b6b Update security vulnerabilities according to npm audit 2018-05-11 11:20:17 +01:00
Dom Christie cbe8dc5e5c 1.0.1 2017-12-19 10:01:33 +00:00
Dom Christie aa1b4789ca Merge pull request #2 from domchristie/update_turndown_4.0.1
Update turndown dev dependency to latest version
2017-12-19 10:01:00 +00:00
Dom Christie b80a6dcb27 Update turndown dev dependency to latest version 2017-12-19 09:55:46 +00:00
Dom Christie 27e789a749 Merge pull request #1 from Galadirith/fix-unpkg-url
Use correct unpkg url for plugin
2017-12-18 18:30:04 +00:00
Edward Fauchon-Jones 1830087ab8 Use correct unpkg url for plugin 2017-12-18 14:03:52 +00:00
Dom Christie 874b9c7ecb 1.0.0 2017-12-17 12:26:55 +00:00
Dom Christie 77c6234c2f Add repository field 2017-12-17 12:26:45 +00:00
Dom Christie 81077a68dd Clarify module files 2017-12-17 12:25:01 +00:00
Dom Christie 20bde1cef6 Update turndown version 2017-12-17 12:24:03 +00:00
Dom Christie 4730ad37bc Fix turndown require path 2017-12-15 08:45:56 +00:00
Dom Christie a999761fa0 Add travis config 2017-12-15 08:36:34 +00:00
Dom Christie ac25f96d4c Update package-lock 2017-12-15 08:32:40 +00:00
Dom Christie 37fadbdcf1 0.0.3 2017-12-13 20:53:12 +00:00
Dom Christie 7354350a22 Use widely-supported method to get align attribute 2017-12-12 22:55:54 +00:00
Dom Christie abd6a18b50 0.0.2 2017-11-24 11:26:12 +00:00
Dom Christie 5603573b6d Build test in build script 2017-11-24 11:26:00 +00:00
Dom Christie 5663b4e006 Do not track test browser build 2017-11-24 11:20:42 +00:00
Dom Christie b2f021ee9e Remove gfm test browser build 2017-11-24 11:20:22 +00:00
Dom Christie 611f0f037c Add highlighted code block rules 2017-11-24 11:19:37 +00:00
Dom Christie a4ef6870b7 Improve table heading row conversion 2017-11-24 11:18:27 +00:00
Dom Christie 42e4a09b57 Add gfm plugins 2017-11-10 14:21:46 +00:00
Dom Christie 216791b9da Use minimal gitignore 2017-11-10 14:14:35 +00:00
Dom Christie 202027774a Initial commit 2017-11-10 14:09:07 +00:00
1428 changed files with 70787 additions and 122378 deletions
+40 -6
View File
@@ -1,10 +1,44 @@
.git
.idea
# ignored Files
.dockerignore
.editorconfig
.git*
.prettier*
electron*
entitlements.plist
nodemon.json
renovate.json
trilium.iml
Dockerfile
Dockerfile.*
npm-debug.log
/src/**/*.spec.ts
# ignored folders
/.cache
/.git
/.github
/.idea
/.vscode
/bin
/build
/dist
/docs
/npm-debug.log
node_modules
/dump-db
/e2e
/integration-tests
/spec
/test
/test-etapi
/node_modules
src/**/*.ts
!src/services/asset_path.ts
# exceptions
!/bin/copy-dist.ts
!/bin/cleanupNodeModules.ts
# temporary exception to make copy-dist inside Docker build not fail
# TriliumNextTODO: make copy-dist *not* requiring to copy these file for builds other than electron-forge
!forge.config.cjs
!/bin/tpl
!/bin/electron-forge/desktop.ejs
!/bin/electron-forge/sign-windows.cjs
+10
View File
@@ -1,3 +1,13 @@
package-lock.json linguist-generated=true
**/package-lock.json linguist-generated=true
src/public/app/doc_notes/en/User[[:space:]]Guide/** linguist-generated=true
src/public/app/doc_notes/en/User[[:space:]]Guide/**/*.md eol=lf
demo/**/*.html eol=lf
demo/**/*.json eol=lf
demo/**/*.svg eol=lf
demo/**/*.txt eol=lf
demo/**/*.js eol=lf
demo/**/*.css eol=lf
libraries/** linguist-vendored
+2 -2
View File
@@ -1,4 +1,4 @@
# These are supported funding model platforms
github: [zadam]
custom: ["https://paypal.me/za4am"]
github: [eliandoran]
custom: ["https://paypal.me/eliandoran"]
+20 -70
View File
@@ -8,8 +8,11 @@ inputs:
arch:
description: "The architecture to build for: x64, arm64"
required: true
extension:
description: "Platform specific extensions to copy in the output: dmg, deb, rpm, exe, zip"
shell:
description: "Which shell to use"
required: true
forge_platform:
description: "The --platform to pass to Electron Forge"
required: true
runs:
@@ -38,21 +41,21 @@ runs:
- name: Verify certificates
if: inputs.os == 'macos'
shell: bash
shell: ${{ inputs.shell }}
run: |
echo "Available signing identities:"
security find-identity -v -p codesigning build.keychain
- name: Set up Python and other macOS dependencies
if: ${{ inputs.os == 'macos' }}
shell: bash
shell: ${{ inputs.shell }}
run: |
brew install python-setuptools
brew install create-dmg
- name: Install dependencies for RPM and Flatpak package building
if: ${{ inputs.os == 'linux' }}
shell: bash
shell: ${{ inputs.shell }}
run: |
sudo apt-get update && sudo apt-get install rpm flatpak-builder elfutils
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
@@ -62,42 +65,35 @@ runs:
# Build setup
- name: Install dependencies
shell: bash
shell: ${{ inputs.shell }}
run: npm ci
- name: Update build info
shell: bash
shell: ${{ inputs.shell }}
run: npm run chore:update-build-info
# Critical debugging configuration
- name: Run electron-forge build with enhanced logging
shell: bash
shell: ${{ inputs.shell }}
env:
# Pass through required environment variables for signing and notarization
APPLE_TEAM_ID: ${{ env.APPLE_TEAM_ID }}
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 }}
run: |
# Map OS names to Electron Forge platform names
if [ "${{ inputs.os }}" = "macos" ]; then
PLATFORM="darwin"
elif [ "${{ inputs.os }}" = "windows" ]; then
PLATFORM="win32"
else
PLATFORM="${{ inputs.os }}"
fi
npm run electron-forge:make -- \
--arch=${{ inputs.arch }} \
--platform=$PLATFORM
--platform=${{ inputs.forge_platform }}
# Add DMG signing step
- name: Sign DMG
if: inputs.os == 'macos'
shell: bash
shell: ${{ inputs.shell }}
run: |
echo "Signing DMG file..."
dmg_file=$(find out -name "*.dmg" -print -quit)
dmg_file=$(find ./dist -name "*.dmg" -print -quit)
if [ -n "$dmg_file" ]; then
echo "Found DMG: $dmg_file"
# Get the first valid signing identity from the keychain
@@ -119,13 +115,13 @@ runs:
- name: Verify code signing
if: inputs.os == 'macos'
shell: bash
shell: ${{ inputs.shell }}
run: |
echo "Verifying code signing for all artifacts..."
# First check the .app bundle
echo "Looking for .app bundle..."
app_bundle=$(find out -name "*.app" -print -quit)
app_bundle=$(find ./dist -name "*.app" -print -quit)
if [ -n "$app_bundle" ]; then
echo "Found app bundle: $app_bundle"
echo "Verifying app bundle signing..."
@@ -144,7 +140,7 @@ runs:
# Then check DMG if it exists
echo "Looking for DMG..."
dmg_file=$(find out -name "*.dmg" -print -quit)
dmg_file=$(find ./dist -name "*.dmg" -print -quit)
if [ -n "$dmg_file" ]; then
echo "Found DMG: $dmg_file"
echo "Verifying DMG signing..."
@@ -160,54 +156,8 @@ runs:
# Finally check ZIP if it exists
echo "Looking for ZIP..."
zip_file=$(find out -name "*.zip" -print -quit)
zip_file=$(find ./dist -name "*.zip" -print -quit)
if [ -n "$zip_file" ]; then
echo "Found ZIP: $zip_file"
echo "Note: ZIP files are not code signed, but their contents should be"
fi
- name: Prepare artifacts
shell: bash
run: |
mkdir -p upload
if [ "${{ inputs.os }}" = "macos" ]; then
# For macOS, we need to look in specific directories based on the maker
echo "Collecting macOS artifacts..."
# Look for DMG files recursively
echo "Looking for DMG files..."
dmg_file=$(find out -name "*.dmg" -print -quit)
if [ -n "$dmg_file" ]; then
echo "Found DMG: $dmg_file"
cp "$dmg_file" "upload/TriliumNextNotes-${{ github.ref_name }}-macos-${{ inputs.arch }}.dmg"
else
echo "Warning: No DMG file found"
fi
# Look for ZIP files recursively
echo "Looking for ZIP files..."
zip_file=$(find out -name "*.zip" -print -quit)
if [ -n "$zip_file" ]; then
echo "Found ZIP: $zip_file"
cp "$zip_file" "upload/TriliumNextNotes-${{ github.ref_name }}-macos-${{ inputs.arch }}.zip"
else
echo "Warning: No ZIP file found"
fi
else
# For other platforms, use the existing logic but with better error handling
echo "Collecting artifacts for ${{ inputs.os }}..."
for ext in ${{ inputs.extension }}; do
echo "Looking for .$ext files..."
file=$(find out -name "*.$ext" -print -quit)
if [ -n "$file" ]; then
echo "Found $file for extension $ext"
cp "$file" "upload/TriliumNextNotes-${{ github.ref_name }}-${{ inputs.os }}-${{ inputs.arch }}.$ext"
else
echo "Warning: No file found with extension .$ext"
fi
done
fi
echo "Final contents of upload directory:"
ls -la upload/
+3 -2
View File
@@ -11,7 +11,7 @@ runs:
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
node-version: 22
cache: "npm"
- name: Install dependencies
shell: bash
@@ -28,4 +28,5 @@ runs:
run: |
mkdir -p upload
file=$(find dist -name '*.tar.xz' -print -quit)
cp "$file" "upload/TriliumNextNotes-Server-${{ github.ref_name }}-${{ inputs.os }}-${{ inputs.arch }}.tar.xz"
name=${{ github.ref_name }}
cp "$file" "upload/TriliumNextNotes-Server-${name//\//-}-${{ inputs.os }}-${{ inputs.arch }}.tar.xz"
+79
View File
@@ -0,0 +1,79 @@
name: 'Bundle size reporter'
description: 'Post bundle size difference compared to another branch'
inputs:
branch:
description: 'Branch to compare to'
required: true
default: 'main'
paths:
description:
'Paths to json file bundle size report or folder containing bundles'
required: true
default: '/'
onlyDiff:
description: 'Report only different sizes'
required: false
default: 'false'
filter:
description: 'Regex filter based on file path'
required: false
unit:
description: 'Size unit'
required: false
default: 'KB'
# Comment inputs
comment:
description: 'Post comment'
required: false
default: 'true'
header:
description: 'Comment header'
required: false
default: 'Bundle size report'
append:
description: 'Append comment'
required: false
default: 'false'
ghToken:
description: 'Github token'
required: false
runs:
using: 'composite'
steps:
# Checkout branch to compare to [required]
- name: Checkout base branch
uses: actions/checkout@v4
with:
ref: ${{ inputs.branch }}
path: br-base
token: ${{ inputs.ghToken }}
# Generate the bundle size difference report [required]
- name: Generate report
id: bundleSize
uses: nejcm/bundle-size-reporter-action@v1.4.1
with:
paths: ${{ inputs.paths }}
onlyDiff: ${{ inputs.onlyDiff }}
filter: ${{ inputs.filter }}
unit: ${{ inputs.unit }}
# Post github action summary
- name: Post summary
if: ${{ steps.bundleSize.outputs.hasDifferences == 'true' }} # post only in case of changes
run: |
echo '${{ steps.bundleSize.outputs.summary }}' >> $GITHUB_STEP_SUMMARY
shell: bash
# Post github action comment
- name: Post comment
uses: marocchino/sticky-pull-request-comment@v2
if: ${{ steps.bundleSize.outputs.hasDifferences == 'true' }} # post only in case of changes
with:
number: ${{ github.event.pull_request.number }}
header: ${{ inputs.header }}
append: ${{ inputs.append }}
message: '${{ steps.bundleSize.outputs.summary }}'
GITHUB_TOKEN: ${{ inputs.ghToken }}
+80 -28
View File
@@ -1,9 +1,9 @@
name: Dev
on:
push:
branches-ignore:
- 'develop'
- 'feature/update**'
branches: [ develop ]
pull_request:
branches: [ develop ]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
@@ -15,7 +15,73 @@ env:
IMAGE_NAME: ${{ github.repository_owner }}/notes
TEST_TAG: ${{ github.repository_owner }}/notes:test
permissions:
pull-requests: write # for PR comments
jobs:
report-electron-size:
name: Report Electron size
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 22
cache: "npm"
- run: npm ci
- 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
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 22
cache: "npm"
- run: npm ci
- 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 }}
test_dev:
name: Test development
runs-on: ubuntu-latest
@@ -26,7 +92,7 @@ jobs:
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
node-version: 22
cache: "npm"
- run: npm ci
@@ -44,16 +110,10 @@ jobs:
- test_dev
steps:
- uses: actions/checkout@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- run: npm ci
- name: Run the TypeScript build
run: npx tsc
- name: Create server-package.json
run: cat package.json | grep -v electron > server-package.json
- name: Install dependencies
run: npm ci
- name: Update build info
run: npm run chore:update-build-info
- uses: docker/setup-buildx-action@v3
- uses: docker/build-push-action@v6
with:
@@ -74,6 +134,12 @@ jobs:
- name: Checkout the repository
uses: actions/checkout@v4
- name: Install dependencies
run: npm ci
- name: Update build info
run: npm run chore:update-build-info
- name: Set IMAGE_NAME to lowercase
run: echo "IMAGE_NAME=${IMAGE_NAME,,}" >> $GITHUB_ENV
- name: Set TEST_TAG to lowercase
@@ -82,20 +148,6 @@ jobs:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- run: npm ci
- name: Run the TypeScript build
run: npx tsc
- name: Create server-package.json
run: cat package.json | grep -v electron > server-package.json
- name: Build and export to Docker
uses: docker/build-push-action@v6
with:
+8 -16
View File
@@ -45,7 +45,7 @@ jobs:
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
node-version: 22
cache: "npm"
- name: Install npm dependencies
@@ -57,9 +57,6 @@ jobs:
- name: Run the TypeScript build
run: npx tsc
- name: Create server-package.json
run: cat package.json | grep -v electron > server-package.json
- name: Build and export to Docker
uses: docker/build-push-action@v6
with:
@@ -134,6 +131,13 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install dependencies
run: npm ci
- name: Update build info
run: npm run chore:update-build-info
- name: Docker meta
id: meta
uses: docker/metadata-action@v5
@@ -154,18 +158,6 @@ jobs:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- run: npm ci
- name: Run the TypeScript build
run: npx tsc
- name: Create server-package.json
run: cat package.json | grep -v electron > server-package.json
- name: Login to GHCR
uses: docker/login-action@v3
with:
-93
View File
@@ -1,93 +0,0 @@
name: Main
on:
push:
branches:
- "feature/update**"
- "feature/server_esm**"
paths-ignore:
- "docs/**"
- ".github/workflows/main-docker.yml"
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
make-electron:
name: Make Electron
strategy:
fail-fast: false
matrix:
arch: [x64, arm64]
os:
- name: macos
image: macos-latest
extension: [dmg, zip]
- name: linux
image: ubuntu-latest
extension: [deb, rpm, zip, flatpak]
- name: windows
image: windows-latest
extension: [exe, zip]
runs-on: ${{ matrix.os.image }}
steps:
- uses: actions/checkout@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
- name: Run the build
uses: ./.github/actions/build-electron
with:
os: ${{ matrix.os.name }}
arch: ${{ matrix.arch }}
extension: ${{ matrix.os.extension }}
env:
APPLE_APP_CERTIFICATE_BASE64: ${{ secrets.APPLE_APP_CERTIFICATE_BASE64 }}
APPLE_APP_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_APP_CERTIFICATE_PASSWORD }}
APPLE_INSTALLER_CERTIFICATE_BASE64: ${{ secrets.APPLE_INSTALLER_CERTIFICATE_BASE64 }}
APPLE_INSTALLER_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_INSTALLER_CERTIFICATE_PASSWORD }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }}
# Clean up keychain after build
- name: Clean up keychain
if: matrix.os.name == 'macos' && always()
run: |
security delete-keychain build.keychain
- name: Publish artifacts
uses: actions/upload-artifact@v4
with:
name: TriliumNextNotes ${{ matrix.os.name }} ${{ matrix.arch }}.zip
path: upload/*.zip
- name: Publish installer artifacts
uses: actions/upload-artifact@v4
with:
name: TriliumNextNotes ${{ matrix.os.name }} ${{ matrix.arch }}.${{matrix.os.extension}}
path: upload/*.${{ matrix.os.extension }}
build_linux_server:
name: Build Linux Server
strategy:
fail-fast: false
matrix:
arch: [x64, arm64]
include:
- arch: x64
runs-on: ubuntu-latest
- arch: arm64
runs-on: ubuntu-24.04-arm
runs-on: ${{ matrix.runs-on }}
steps:
- uses: actions/checkout@v4
- name: Run the build
uses: ./.github/actions/build-server
with:
arch: ${{ matrix.arch }}
- uses: actions/upload-artifact@v4
with:
name: TriliumNextNotes linux server ${{ matrix.arch }}
path: upload/TriliumNextNotes-linux-${{ matrix.arch }}-${{ github.ref_name }}.tar.xz
+27 -7
View File
@@ -5,6 +5,13 @@ on:
- cron: "0 2 * * *" # run at 2 AM UTC
# This can be used to allow manually triggering nightlies from the web interface
workflow_dispatch:
push:
branches:
- renovate/electron-forge*
pull_request:
paths:
- .github/actions/build-electron/*
- forge.config.cjs
env:
GITHUB_UPLOAD_URL: https://uploads.github.com/repos/TriliumNext/Notes/releases/179589950/assets{?name,label}
GITHUB_RELEASE_ID: 179589950
@@ -20,22 +27,24 @@ jobs:
os:
- name: macos
image: macos-latest
extension: [dmg, zip]
shell: bash
forge_platform: darwin
- name: linux
image: ubuntu-latest
extension: [deb, rpm, zip, flatpak]
shell: bash
forge_platform: linux
- name: windows
image: windows-latest
extension: [exe, zip]
image: win-signing
shell: cmd
forge_platform: win32
runs-on: ${{ matrix.os.image }}
steps:
- uses: actions/checkout@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
node-version: 22
- name: Install dependencies
shell: bash
run: npm ci
- name: Update nightly version
run: npm run chore:ci-update-nightly-version
@@ -44,7 +53,8 @@ jobs:
with:
os: ${{ matrix.os.name }}
arch: ${{ matrix.arch }}
extension: ${{ join(matrix.os.extension, ' ') }}
shell: ${{ matrix.os.shell }}
forge_platform: ${{ matrix.os.forge_platform }}
env:
APPLE_APP_CERTIFICATE_BASE64: ${{ secrets.APPLE_APP_CERTIFICATE_BASE64 }}
APPLE_APP_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_APP_CERTIFICATE_PASSWORD }}
@@ -53,9 +63,11 @@ jobs:
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }}
WINDOWS_SIGN_EXECUTABLE: ${{ vars.WINDOWS_SIGN_EXECUTABLE }}
- name: Publish release
uses: softprops/action-gh-release@v2
if: ${{ github.event_name != 'pull_request' }}
with:
make_latest: false
prerelease: true
@@ -65,6 +77,13 @@ jobs:
tag_name: nightly
name: Nightly Build
- name: Publish artifacts
uses: actions/upload-artifact@v4
if: ${{ github.event_name == 'pull_request' }}
with:
name: TriliumNextNotes ${{ matrix.os.name }} ${{ matrix.arch }}
path: upload
nightly-server:
name: Deploy server nightly
strategy:
@@ -88,6 +107,7 @@ jobs:
- name: Publish release
uses: softprops/action-gh-release@v2
if: ${{ github.event_name != 'pull_request' }}
with:
make_latest: false
prerelease: true
+11 -7
View File
@@ -3,7 +3,6 @@ on:
push:
tags:
- "v*"
workflow_dispatch:
permissions:
contents: write
concurrency:
@@ -20,26 +19,30 @@ jobs:
os:
- name: macos
image: macos-latest
extension: [dmg, zip]
shell: bash
forge_platform: darwin
- name: linux
image: ubuntu-latest
extension: [deb, rpm, zip, flatpak]
shell: bash
forge_platform: linux
- name: windows
image: windows-latest
extension: [exe, zip]
image: win-signing
shell: cmd
forge_platform: win32
runs-on: ${{ matrix.os.image }}
steps:
- uses: actions/checkout@v4
- name: Set up node & dependencies
uses: actions/setup-node@v4
with:
node-version: 20
node-version: 22
- name: Run the build
uses: ./.github/actions/build-electron
with:
os: ${{ matrix.os.name }}
arch: ${{ matrix.arch }}
extension: ${{ join(matrix.os.extension, ' ') }}
shell: ${{ matrix.os.shell }}
forge_platform: ${{ matrix.os.forge_platform }}
env:
APPLE_APP_CERTIFICATE_BASE64: ${{ secrets.APPLE_APP_CERTIFICATE_BASE64 }}
APPLE_APP_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_APP_CERTIFICATE_PASSWORD }}
@@ -48,6 +51,7 @@ jobs:
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }}
WINDOWS_SIGN_EXECUTABLE: ${{ vars.WINDOWS_SIGN_EXECUTABLE }}
- name: Publish release
uses: softprops/action-gh-release@v2
+12 -1
View File
@@ -2,6 +2,7 @@
.DS_Store
node_modules/
dist/
upload/
build/
coverage/
src/public/app-dist/
@@ -26,6 +27,7 @@ server-package.json
.idea/shelf/
data/
data-test/
data-demo/
tmp/
.eslintcache
@@ -36,4 +38,13 @@ images/app-icons/mac/*.png
/playwright-report/
/blob-report/
/playwright/.cache/
/playwright/.auth/
/playwright/.auth/
data-docs/backup
data-docs/log
data-docs/session
data-docs/session_secret.txt
data-docs/document.*
# Webpack
webpack-stats.json
-6
View File
@@ -1,6 +0,0 @@
*.html
*.md
*.yml
libraries/*
docs/*
src/public/app/doc_notes/**/*
-22
View File
@@ -1,22 +0,0 @@
{
"printWidth": 200,
"tabWidth": 4,
"useTabs": false,
"semi": true,
"singleQuote": false,
"quoteProps": "as-needed",
"trailingComma": "none",
"bracketSpacing": true,
"arrowParens": "always",
"proseWrap": "preserve",
"htmlWhitespaceSensitivity": "css",
"endOfLine": "lf",
"overrides": [
{
"files": ["*.json"],
"options": {
"tabWidth": 2
}
}
]
}
+4 -1
View File
@@ -2,6 +2,9 @@
"recommendations": [
"lokalise.i18n-ally",
"editorconfig.editorconfig",
"vitest.explorer"
"vitest.explorer",
"ms-playwright.playwright",
"tobermory.es6-string-html",
"dbaeumer.vscode-eslint"
]
}
+31 -44
View File
@@ -1,62 +1,49 @@
# Build stage
FROM node:22.14.0-bullseye-slim AS builder
# Configure build dependencies in a single layer
RUN apt-get update && apt-get install -y --no-install-recommends \
autoconf \
automake \
g++ \
gcc \
libtool \
make \
nasm \
libpng-dev \
python3 \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /usr/src/app
WORKDIR /usr/src/app/build
# Copy only necessary files for build
COPY . .
COPY server-package.json package.json
# Build and cleanup in a single layer
RUN cp -R build/src/* src/. && \
cp build/docker_healthcheck.js . && \
rm docker_healthcheck.ts && \
npm install && \
npm run build:webpack && \
npm prune --omit=dev && \
RUN npm ci && \
npm run build:prepare-dist && \
npm cache clean --force && \
cp -r src/public/app/doc_notes src/public/app-dist/. && \
rm -rf src/public/app/* && \
mkdir -p src/public/app/services && \
cp -r build/src/public/app/services/mime_type_definitions.js src/public/app/services/mime_type_definitions.js && \
rm src/services/asset_path.ts && \
rm -r build
rm -rf build/node_modules && \
mv build/* \
start-docker.sh \
/usr/src/app/ && \
rm -rf \
/usr/src/app/build \
/tmp/node-compile-cache
#TODO: improve node_modules handling in copy-dist/Dockerfile -> remove duplicated work
# currently copy-dist will copy certain node_module folders, but in the Dockerfile we delete them again (to keep image size down),
# as we install necessary dependencies in runtime buildstage anyways
# Runtime stage
FROM node:22.14.0-bullseye-slim
# Install only runtime dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
gosu \
&& rm -rf /var/lib/apt/lists/* && \
rm -rf /var/cache/apt/*
WORKDIR /usr/src/app
# Copy only necessary files from builder
COPY --from=builder /usr/src/app/node_modules ./node_modules
COPY --from=builder /usr/src/app/src ./src
COPY --from=builder /usr/src/app/db ./db
COPY --from=builder /usr/src/app/docker_healthcheck.js .
COPY --from=builder /usr/src/app/start-docker.sh .
COPY --from=builder /usr/src/app/package.json .
COPY --from=builder /usr/src/app/config-sample.ini .
COPY --from=builder /usr/src/app/images ./images
COPY --from=builder /usr/src/app/translations ./translations
COPY --from=builder /usr/src/app/libraries ./libraries
# Install only runtime dependencies
RUN apt-get update && \
apt-get install -y --no-install-recommends \
gosu && \
rm -rf \
/var/lib/apt/lists/* \
/var/cache/apt/*
COPY --from=builder /usr/src/app ./
RUN sed -i "/electron/d" package.json && \
npm ci --omit=dev && \
node --experimental-strip-types ./bin/cleanupNodeModules.ts . --skip-prune-dev-deps && \
npm cache clean --force && \
rm -rf \
/tmp/node-compile-cache \
/usr/src/app/bin/cleanupNodeModules.ts
# Configure container
EXPOSE 8080
+23 -37
View File
@@ -1,38 +1,26 @@
# Build stage
FROM node:22.14.0-alpine AS builder
# Configure build dependencies
RUN apk add --no-cache --virtual .build-dependencies \
autoconf \
automake \
g++ \
gcc \
libtool \
make \
nasm \
libpng-dev \
python3
WORKDIR /usr/src/app
WORKDIR /usr/src/app/build
# Copy only necessary files for build
COPY . .
COPY server-package.json package.json
# Build and cleanup in a single layer
RUN cp -R build/src/* src/. && \
cp build/docker_healthcheck.js . && \
rm docker_healthcheck.ts && \
npm install && \
npm run build:webpack && \
npm prune --omit=dev && \
RUN npm ci && \
npm run build:prepare-dist && \
npm cache clean --force && \
cp -r src/public/app/doc_notes src/public/app-dist/. && \
rm -rf src/public/app && \
mkdir -p src/public/app/services && \
cp -r build/src/public/app/services/mime_type_definitions.js src/public/app/services/mime_type_definitions.js && \
rm src/services/asset_path.ts && \
rm -r build
rm -rf build/node_modules && \
mv build/* \
start-docker.sh \
/usr/src/app/ && \
rm -rf \
/usr/src/app/build \
/tmp/node-compile-cache
#TODO: improve node_modules handling in copy-dist/Dockerfile -> remove duplicated work
# currently copy-dist will copy certain node_module folders, but in the Dockerfile we delete them again (to keep image size down),
# as we install necessary dependencies in runtime buildstage anyways
# Runtime stage
FROM node:22.14.0-alpine
@@ -42,17 +30,15 @@ RUN apk add --no-cache su-exec shadow
WORKDIR /usr/src/app
# Copy only necessary files from builder
COPY --from=builder /usr/src/app/node_modules ./node_modules
COPY --from=builder /usr/src/app/src ./src
COPY --from=builder /usr/src/app/db ./db
COPY --from=builder /usr/src/app/docker_healthcheck.js .
COPY --from=builder /usr/src/app/start-docker.sh .
COPY --from=builder /usr/src/app/package.json .
COPY --from=builder /usr/src/app/config-sample.ini .
COPY --from=builder /usr/src/app/images ./images
COPY --from=builder /usr/src/app/translations ./translations
COPY --from=builder /usr/src/app/libraries ./libraries
COPY --from=builder /usr/src/app ./
RUN sed -i "/electron/d" package.json && \
npm ci --omit=dev && \
node --experimental-strip-types ./bin/cleanupNodeModules.ts . --skip-prune-dev-deps && \
npm cache clean --force && \
rm -rf \
/tmp/node-compile-cache \
/usr/src/app/bin/cleanupNodeModules.ts
# Add application user
RUN adduser -s /bin/false node; exit 0
+8 -5
View File
@@ -1,6 +1,6 @@
# TriliumNext Notes
![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) ![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)
[English](./README.md) | [Chinese](./README-ZH_CN.md) | [Russian](./README.ru.md) | [Japanese](./README.ja.md) | [Italian](./README.it.md) | [Spanish](./README.es.md)
@@ -37,6 +37,7 @@ Feel free to join our official conversations. We would love to hear what feature
* Fast and easy [navigation between notes](https://triliumnext.github.io/Docs/Wiki/note-navigation), full text search and [note hoisting](https://triliumnext.github.io/Docs/Wiki/note-hoisting)
* 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)
* Direct OpenID and TOTP integration 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
@@ -79,10 +80,11 @@ xattr -c "/path/to/Trilium Next.app"
### Mobile
To use TriliumNext on a mobile device:
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).
* Use a mobile web browser to access the mobile interface of a server installation (see below)
* Use of a mobile app is not yet supported ([see here](https://github.com/TriliumNext/Notes/issues/72)) to track mobile improvements.
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/Notes/issues/72 for more information on mobile app support.
### Server
@@ -107,7 +109,8 @@ npm run server:start
### Documentation
Head on over to our [Docs repo](https://github.com/TriliumNext/Docs)
We are currently transitioning to a new documentation mechanism.
Meanwhile you can still view the [archived Docs repository](https://github.com/TriliumNext/Docs).
## 👏 Shoutouts
-13
View File
@@ -1,13 +0,0 @@
#!/usr/bin/env bash
cd src/public
echo Summary
cloc HEAD \
--git --md \
--include-lang=javascript,typescript
echo By file
cloc HEAD \
--git --md \
--include-lang=javascript,typescript \
--by-file | grep \.js\|
-5
View File
@@ -5,11 +5,6 @@ set -e # Fail on any command error
VERSION=`jq -r ".version" package.json`
SERIES=${VERSION:0:4}-latest
cat package.json | grep -v electron > server-package.json
echo "Compiling typescript..."
npx tsc
sudo docker build -t triliumnext/notes:$VERSION --network host -t triliumnext/notes:$SERIES .
if [[ $VERSION != *"beta"* ]]; then
+35 -36
View File
@@ -21,54 +21,53 @@ fi
echo "Selected Arch: $ARCH"
# Set Node.js version and architecture-specific filename
NODE_VERSION=20.15.1
NODE_ARCH=$ARCH
NODE_VERSION=22.14.0
# Debug output
echo "Node arch: $NODE_ARCH"
BUILD_DIR="./build"
DIST_DIR="./dist"
CLEANUP_SCRIPT="./bin/cleanupNodeModules.ts"
# Special case for x64 in Node.js downloads
if [ "$NODE_ARCH" = "x64" ]; then
NODE_FILENAME="x64"
elif [ "$NODE_ARCH" = "arm64" ]; then
NODE_FILENAME="arm64"
fi
# Debug output
echo "Node filename: $NODE_FILENAME"
# Trigger the build
echo "Build start"
npm run build:prepare-dist
echo "Build finished"
PKG_DIR=dist/trilium-linux-${ARCH}-server
echo "Package directory: $PKG_DIR"
# pruning of unnecessary files and devDeps in node_modules
node --experimental-strip-types $CLEANUP_SCRIPT $BUILD_DIR
if [ "$1" != "DONTCOPY" ]
then
# Need to modify copy-trilium.sh to accept the target directory
./bin/copy-trilium.sh "$PKG_DIR"
fi
NODE_FILENAME=node-v${NODE_VERSION}-linux-${ARCH}
cd dist
wget https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-${NODE_FILENAME}.tar.xz
tar xfJ node-v${NODE_VERSION}-linux-${NODE_FILENAME}.tar.xz
rm node-v${NODE_VERSION}-linux-${NODE_FILENAME}.tar.xz
echo "Downloading Node.js runtime $NODE_FILENAME..."
cd $BUILD_DIR
wget -qO- https://nodejs.org/dist/v${NODE_VERSION}/${NODE_FILENAME}.tar.xz | tar xfJ -
mv $NODE_FILENAME node
cd ..
mv dist/node-v${NODE_VERSION}-linux-${NODE_FILENAME} $PKG_DIR/node
rm -r $PKG_DIR/node/lib/node_modules/npm
rm -r $PKG_DIR/node/include/node
rm -r $BUILD_DIR/node/lib/node_modules/{npm,corepack} \
$BUILD_DIR/node/bin/{npm,npx,corepack} \
$BUILD_DIR/node/CHANGELOG.md \
$BUILD_DIR/node/include/node \
$BUILD_DIR/node_modules/electron* \
$BUILD_DIR/electron*.{js,map}
rm -r $PKG_DIR/node_modules/electron*
rm -r $PKG_DIR/electron*.js
printf "#!/bin/sh\n./node/bin/node src/main" > $BUILD_DIR/trilium.sh
chmod 755 $BUILD_DIR/trilium.sh
printf "#!/bin/sh\n./node/bin/node src/main" > $PKG_DIR/trilium.sh
chmod 755 $PKG_DIR/trilium.sh
cp bin/tpl/anonymize-database.sql $PKG_DIR/
cp -r translations $PKG_DIR/
# TriliumNextTODO: is this still required? If yes → move to copy-dist/copy-trilium
cp bin/tpl/anonymize-database.sql $BUILD_DIR/
VERSION=`jq -r ".version" package.json`
cd dist
tar cJf trilium-linux-${ARCH}-server-${VERSION}.tar.xz trilium-linux-${ARCH}-server
ARCHIVE_NAME="TriliumNextNotes-Server-${VERSION}-linux-${ARCH}"
echo "Creating Archive $ARCHIVE_NAME..."
mkdir $DIST_DIR
cp -r "$BUILD_DIR" "$DIST_DIR/$ARCHIVE_NAME"
cd $DIST_DIR
tar cJf "$ARCHIVE_NAME.tar.xz" "$ARCHIVE_NAME"
rm -rf "$ARCHIVE_NAME"
echo "Server Build Completed!"
-53
View File
@@ -1,53 +0,0 @@
#!/usr/bin/env bash
set -e # Fail on any command error
if ! command -v jq &> /dev/null; then
echo "Missing command: jq"
exit 1
fi
if ! command -v fakeroot &> /dev/null; then
echo "Missing command: fakeroot"
exit 1
fi
if ! command -v dpkg-deb &> /dev/null; then
echo "Missing command: dpkg-deb"
exit 1
fi
if dpkg-deb 2>&1 | grep BusyBox &> /dev/null; then
echo "The dpkg-deb binary provided by BusyBox is not compatible. The Debian tool needs to be used instead."
exit 1
fi
if ! command -v wine &> /dev/null; then
echo "Missing command: wine"
exit 1
fi
echo "Deleting existing builds"
rm -rf dist/*
SRC_DIR=dist/trilium-src
bin/copy-trilium.sh $SRC_DIR
# we'll just copy the same SRC dir to all the builds so we don't have to do npm install in each separately
cp -r $SRC_DIR ./dist/trilium-linux-x64-src
cp -r $SRC_DIR ./dist/trilium-linux-x64-server
cp -r $SRC_DIR ./dist/trilium-windows-x64-src
cp -r $SRC_DIR ./dist/trilium-mac-x64-src
cp -r $SRC_DIR ./dist/trilium-mac-arm64-src
bin/build-win-x64.sh DONTCOPY
bin/build-mac-x64.sh DONTCOPY
bin/build-mac-arm64.sh DONTCOPY
bin/build-linux-x64.sh DONTCOPY
bin/build-server.sh DONTCOPY
+109
View File
@@ -0,0 +1,109 @@
import fs from "fs-extra";
import path from "path";
import type { Dirent } from "fs-extra";
import { execSync } from "node:child_process";
/**
* Example usage with node >= v22:
* node --experimental-strip-types bin/cleanupNodeModules.ts /path/to/build/folder [--skip-prune-dev-deps]
* Example usage with tsx:
* tsx bin/cleanupNodeModules.ts /path/to/build/folder [--skip-prune-dev-deps]
*/
function main() {
if (process.argv.length > 4 || process.argv.length < 3) {
console.error("Usage: cleanupNodeModules.ts [path-to-build-folder] [--skip-prune-dev-deps]");
process.exit(1);
}
const basePath = process.argv[2];
const pruneDevDeps = process.argv[3] !== "--skip-prune-dev-deps";
if (!fs.existsSync(basePath)) {
console.error(`Supplied path '${basePath}' does not exist. Aborting.`);
process.exit(1);
}
console.log(`Starting pruning of node_modules ${!pruneDevDeps ? '(skipping npm pruning)' : ''} in '${basePath}'...`);
cleanupNodeModules(basePath, pruneDevDeps);
console.log("Successfully pruned node_modules.");
}
function cleanupNodeModules(basePath: string, pruneDevDeps: boolean = true) {
// This needs to run for the server and Docker build,
// but needs to be skipped for electron-forge: its
// built-in pruning takes care of it already
if (pruneDevDeps) {
execSync(`npm ci --omit=dev --prefix ${basePath}`);
}
const nodeModulesDirPath = path.join(basePath, "node_modules");
const nodeModulesContent = fs.readdirSync(nodeModulesDirPath, { recursive: true, withFileTypes: true });
//const libDir = fs.readdirSync(path.join(basePath, "./libraries"), { recursive: true, withFileTypes: true });
/**
* Delete unnecessary folders
*/
const filterableDirs = new Set([
"demo",
"demos",
"doc",
"docs",
"example",
"examples",
"test",
"tests"
]);
nodeModulesContent
.filter(el => el.isDirectory() && filterableDirs.has(el.name))
.forEach(dir => removeDirent(dir));
/**
* Delete unnecessary files based on file extension
* TODO filter out useless (README).md files
*/
const filterableFileExt = new Set([
"ts",
"map"
]);
nodeModulesContent
// TriliumNextTODO: check if we can improve this naive file ext matching, without introducing any additional dependency
.filter(el => el.isFile() && filterableFileExt.has(el.name.split(".").at(-1) || ""))
.forEach(dir => removeDirent(dir));
/**
* Delete specific unnecessary folders
* TODO: check if we want removeSync to throw an error, if path does not exist anymore -> currently it will silently fail
*/
const extraFoldersDelete = new Set([
path.join(nodeModulesDirPath, ".bin"),
path.join(nodeModulesDirPath, "@excalidraw", "excalidraw", "dist", "dev"),
path.join(nodeModulesDirPath, "boxicons", "svg"),
path.join(nodeModulesDirPath, "boxicons", "node_modules"),
path.join(nodeModulesDirPath, "boxicons", "src"),
path.join(nodeModulesDirPath, "boxicons", "iconjar"),
path.join(nodeModulesDirPath, "@jimp", "plugin-print", "fonts"),
path.join(nodeModulesDirPath, "jimp", "dist", "browser") // missing "@" in front of jimp is not a typo here
]);
nodeModulesContent
.filter(el => el.isDirectory() && extraFoldersDelete.has(path.join(el.parentPath, el.name)))
.forEach(dir => removeDirent(dir))
}
function removeDirent(el: Dirent) {
const elementToDelete = path.join(el.parentPath, el.name);
fs.removeSync(elementToDelete);
if (process.env.VERBOSE) {
console.log(`Deleted ${elementToDelete}`);
}
}
main()
+38 -89
View File
@@ -1,9 +1,7 @@
import fs from "fs-extra";
import path from "path";
const DEST_DIR = "./dist";
const DEST_DIR_SRC = path.join(DEST_DIR, "src");
const DEST_DIR_NODE_MODULES = path.join(DEST_DIR, "node_modules");
const DEST_DIR = "./build";
const VERBOSE = process.env.VERBOSE;
@@ -13,43 +11,40 @@ function log(...args: any[]) {
}
}
async function copyNodeModuleFileOrFolder(source: string) {
const adjustedSource = source.substring(13);
const destination = path.join(DEST_DIR_NODE_MODULES, adjustedSource);
try {
log(`Copying ${source} to ${destination}`);
await fs.ensureDir(path.dirname(destination));
await fs.copy(source, destination);
}
const copy = async () => {
for (const srcFile of fs.readdirSync("build")) {
const destFile = path.join(DEST_DIR, path.basename(srcFile));
log(`Copying source ${srcFile} -> ${destFile}.`);
fs.copySync(path.join("build", srcFile), destFile, { recursive: true });
}
const filesToCopy = [
"config-sample.ini",
"tsconfig.webpack.json",
const assetsToCopy = new Set([
// copy node_module, to avoid downloading packages a 2nd time during pruning
"./node_modules",
"./images",
"./libraries",
"./translations",
"./db",
"./config-sample.ini",
"./package-lock.json",
"./package.json",
"./LICENSE",
"./README.md",
"./forge.config.cjs",
"./bin/tpl/",
"./bin/cleanupNodeModules.ts",
"./bin/electron-forge/desktop.ejs",
"./bin/electron-forge/sign-windows.cjs",
"./src/views/",
"./src/etapi/etapi.openapi.yaml",
"./src/routes/api/openapi.json"
];
for (const file of filesToCopy) {
log(`Copying ${file}`);
await fs.copy(file, path.join(DEST_DIR, file));
}
"./src/routes/api/openapi.json",
"./src/public/icon.png",
"./src/public/manifest.webmanifest",
"./src/public/robots.txt",
"./src/public/fonts",
"./src/public/stylesheets",
"./src/public/translations",
"./packages/turndown-plugin-gfm/src"
]);
const dirsToCopy = ["images", "libraries", "translations", "db"];
for (const dir of dirsToCopy) {
log(`Copying ${dir}`);
await fs.copy(dir, path.join(DEST_DIR, dir));
}
const srcDirsToCopy = ["./src/public", "./src/views", "./build"];
for (const dir of srcDirsToCopy) {
log(`Copying ${dir}`);
await fs.copy(dir, path.join(DEST_DIR_SRC, path.basename(dir)));
for (const asset of assetsToCopy) {
log(`Copying ${asset}`);
fs.copySync(asset, path.join(DEST_DIR, asset));
}
/**
@@ -58,59 +53,13 @@ const copy = async () => {
const publicDirsToCopy = ["./src/public/app/doc_notes"];
const PUBLIC_DIR = path.join(DEST_DIR, "src", "public", "app-dist");
for (const dir of publicDirsToCopy) {
await fs.copy(dir, path.join(PUBLIC_DIR, path.basename(dir)));
fs.copySync(dir, path.join(PUBLIC_DIR, path.basename(dir)));
}
const nodeModulesFile = [
"node_modules/react/umd/react.production.min.js",
"node_modules/react/umd/react.development.js",
"node_modules/react-dom/umd/react-dom.production.min.js",
"node_modules/react-dom/umd/react-dom.development.js",
"node_modules/katex/dist/katex.min.js",
"node_modules/katex/dist/contrib/mhchem.min.js",
"node_modules/katex/dist/contrib/auto-render.min.js",
"node_modules/@highlightjs/cdn-assets/highlight.min.js",
"node_modules/@mind-elixir/node-menu/dist/node-menu.umd.cjs"
];
console.log("Copying complete!")
for (const file of nodeModulesFile) {
await copyNodeModuleFileOrFolder(file);
}
} catch(err) {
console.error("Error during copy:", err)
process.exit(1)
}
const nodeModulesFolder = [
"node_modules/@excalidraw/excalidraw/dist/",
"node_modules/katex/dist/",
"node_modules/dayjs/",
"node_modules/boxicons/css/",
"node_modules/boxicons/fonts/",
"node_modules/mermaid/dist/",
"node_modules/jquery/dist/",
"node_modules/jquery-hotkeys/",
"node_modules/split.js/dist/",
"node_modules/panzoom/dist/",
"node_modules/i18next/",
"node_modules/i18next-http-backend/",
"node_modules/jsplumb/dist/",
"node_modules/vanilla-js-wheel-zoom/dist/",
"node_modules/mark.js/dist/",
"node_modules/normalize.css/",
"node_modules/jquery.fancytree/dist/",
"node_modules/autocomplete.js/dist/",
"node_modules/codemirror/lib/",
"node_modules/codemirror/addon/",
"node_modules/codemirror/mode/",
"node_modules/codemirror/keymap/",
"node_modules/mind-elixir/dist/",
"node_modules/@highlightjs/cdn-assets/languages",
"node_modules/@highlightjs/cdn-assets/styles",
"node_modules/leaflet/dist"
];
for (const folder of nodeModulesFolder) {
await copyNodeModuleFileOrFolder(folder);
}
};
copy()
.then(() => console.log("Copying complete!"))
.catch((err) => console.error("Error during copy:", err));
-74
View File
@@ -1,74 +0,0 @@
#!/usr/bin/env bash
set -e # Fail on any command error
shopt -s globstar
if [[ $# -eq 0 ]] ; then
echo "Missing argument of target directory"
exit 1
fi
if ! [[ $(which npm) ]]; then
echo "Missing npm"
exit 1
fi
# Trigger the TypeScript build
echo TypeScript build start
npx tsc
echo TypeScript build finished
# Copy the TypeScript artifacts
DIR="$1"
rm -rf "$DIR"
mkdir -pv "$DIR"
echo Webpack start
npm run build:webpack
echo Webpack finish
echo "Copying Trilium to build directory $DIR"
for d in 'images' 'libraries' 'src' 'db'; do
cp -r "$d" "$DIR"/
done
for f in 'package.json' 'package-lock.json' 'README.md' 'LICENSE' 'config-sample.ini'; do
cp "$f" "$DIR"/
done
# Patch package.json main
sed -i 's/.\/dist\/electron-main.js/electron-main.js/g' "$DIR/package.json"
script_dir=$(realpath $(dirname $0))
cp -R "$script_dir/../build/src" "$DIR"
cp "$script_dir/../build/electron-main.js" "$DIR"
# run in subshell (so we return to original dir)
(cd $DIR && npm install --omit=dev --legacy-peer-deps)
if [[ -d "$DIR"/node_modules ]]; then
# cleanup of useless files in dependencies
for d in 'image-q/demo' \
'@excalidraw/excalidraw/dist/excalidraw-assets-dev' '@excalidraw/excalidraw/dist/excalidraw.development.js' '@excalidraw/excalidraw/dist/excalidraw-with-preact.development.js' \
'mermaid/dist/mermaid.js' \
'boxicons/svg' 'boxicons/node_modules/react'/* \
'@jimp/plugin-print/fonts' 'jimp/browser' 'jimp/fonts'; do
[[ -e "$DIR"/node_modules/"$d" ]] && rm -r "$DIR"/node_modules/"$d"
done
# delete all tests (there are often large images as test file for jimp etc.)
for d in 'test' 'docs' 'demo' 'example'; do
find "$DIR"/node_modules -name "$d" -exec rm -rf {} +
done
fi
find $DIR/libraries -name "*.map" -type f -delete
find $DIR/node_modules -name "*.map" -type f -delete
find $DIR -name "*.ts" -type f -delete
d="$DIR"/src/public
[[ -d "$d"/app-dist ]] || mkdir -pv "$d"/app-dist
cp -r "$d"/app/doc_notes "$d"/app-dist/
rm -rf "$d"/app
unset f d DIR
+14
View File
@@ -0,0 +1,14 @@
const child_process = require("child_process");
module.exports = function (filePath) {
const { WINDOWS_SIGN_EXECUTABLE } = process.env;
if (!WINDOWS_SIGN_EXECUTABLE) {
console.warn("[Sign] Skip signing due to missing environment variable.");
return;
}
const command = `${WINDOWS_SIGN_EXECUTABLE} --executable "${filePath}"`;
console.log(`[Sign] ${command}`);
child_process.execSync(command);
}
+1 -1
View File
@@ -16,7 +16,7 @@ chcp 65001
:: Get Current Trilium executable directory and compute data directory
SET DIR=%~dp0
set NODE_TLS_REJECT_UNAUTHORIZED=0
cd %DIR%
cd "%DIR%"
start trilium.exe
GOTO END
+2 -1
View File
@@ -15,8 +15,9 @@ chcp 65001
:: Get Current Trilium executable directory and compute data directory
SET DIR=%~dp0
SET DIR=%DIR:~0,-1%
SET TRILIUM_DATA_DIR=%DIR%\trilium-data
cd %DIR%
cd "%DIR%"
start trilium.exe
GOTO END
+1 -1
View File
@@ -16,7 +16,7 @@ chcp 65001
:: Get Current Trilium executable directory and compute data directory
SET DIR=%~dp0
SET TRILIUM_SAFE_MODE=1
cd %DIR%
cd "%DIR%"
start trilium.exe --disable-gpu
GOTO END
+14 -4
View File
@@ -8,9 +8,6 @@ noAuthentication=false
# set to true to disable backups (e.g. because of limited space on server)
noBackup=false
# Disable automatically generating desktop icon
# noDesktopIcon=true
[Network]
# host setting is relevant only for web deployments - set the host on which the server will listen
# host=0.0.0.0
@@ -46,4 +43,17 @@ cookieMaxAge=1814400
[Sync]
#syncServerHost=
#syncServerTimeout=
#syncServerProxy=
#syncServerProxy=
[MultiFactorAuthentication]
# Set the base URL for OAuth/OpenID authentication
# This is the URL of the service that will be used to verify the user's identity
oauthBaseUrl=
# Set the client ID for OAuth/OpenID authentication
# This is the ID of the client that will be used to verify the user's identity
oauthClientId=
# Set the client secret for OAuth/OpenID authentication
# This is the secret of the client that will be used to verify the user's identity
oauthClientSecret=
+49
View File
@@ -0,0 +1,49 @@
[General]
# Instance name can be used to distinguish between different instances using backend api.getInstanceName()
instanceName=
# set to true to allow using Trilium without authentication (makes sense for server build only, desktop build doesn't need password)
noAuthentication=false
# set to true to disable backups (e.g. because of limited space on server)
noBackup=false
# Disable automatically generating desktop icon
# noDesktopIcon=true
[Network]
# host setting is relevant only for web deployments - set the host on which the server will listen
# host=0.0.0.0
# port setting is relevant only for web deployments, desktop builds run on a fixed port (changeable with TRILIUM_PORT environment variable)
port=8080
# true for TLS/SSL/HTTPS (secure), false for HTTP (insecure).
https=false
# path to certificate (run "bash bin/generate-cert.sh" to generate self-signed certificate). Relevant only if https=true
certPath=
keyPath=
# setting to give trust to reverse proxies, a comma-separated list of trusted rev. proxy IPs can be specified (CIDR notation is permitted),
# alternatively 'true' will make use of the leftmost IP in X-Forwarded-For, ultimately an integer can be used to tell about the number of hops between
# Trilium (which is hop 0) and the first trusted rev. proxy.
# once set, expressjs will use the X-Forwarded-For header set by the rev. proxy to determinate the real IPs of clients.
# expressjs shortcuts are supported: loopback(127.0.0.1/8, ::1/128), linklocal(169.254.0.0/16, fe80::/10), uniquelocal(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, fc00::/7)
trustedReverseProxy=false
[Session]
# Use this setting to set a custom value for the "Path" Attribute value of the session cookie.
# This can be useful, when you have several instances running on the same domain, under different paths (e.g. by using a reverse proxy).
# It prevents your instances from overwriting each others' cookies, allowing you to stay logged in multiple instances simultanteously.
# E.g. if you have instances running under https://your-domain.com/triliumNext/instanceA and https://your-domain.com/triliumNext/instanceB
# you would want to set the cookiePath value to "/triliumNext/instanceA" for your first and "/triliumNext/instanceB" for your second instance
cookiePath=/
# Use this setting to set a custom value for the "Max-Age" Attribute of the session cookie.
# This controls how long your session will be valid, before it expires and you need to log in again, when you use the "Remember Me" option.
# Value needs to be entered in Seconds.
# Default value is 1814400 Seconds, which is 21 Days.
cookieMaxAge=1814400
[Sync]
#syncServerHost=
#syncServerTimeout=
#syncServerProxy=
BIN
View File
Binary file not shown.
@@ -17,8 +17,8 @@ interface NoteRevisionContents {
export default () => {
const existingBlobIds = new Set();
for (const noteId of sql.getColumn<string>(`SELECT noteId FROM note_contents`)) {
const row = sql.getRow<NoteContentsRow>(`SELECT noteId, content, dateModified, utcDateModified FROM note_contents WHERE noteId = ?`, [noteId]);
for (const noteId of sql.getColumn<string>(/*sql*/`SELECT noteId FROM note_contents`)) {
const row = sql.getRow<NoteContentsRow>(/*sql*/`SELECT noteId, content, dateModified, utcDateModified FROM note_contents WHERE noteId = ?`, [noteId]);
const blobId = utils.hashedBlobId(row.content);
if (!existingBlobIds.has(blobId)) {
@@ -40,8 +40,8 @@ export default () => {
sql.execute("UPDATE notes SET blobId = ? WHERE noteId = ?", [blobId, row.noteId]);
}
for (const noteRevisionId of sql.getColumn(`SELECT noteRevisionId FROM note_revision_contents`)) {
const row = sql.getRow<NoteRevisionContents>(`SELECT noteRevisionId, content, utcDateModified FROM note_revision_contents WHERE noteRevisionId = ?`, [noteRevisionId]);
for (const noteRevisionId of sql.getColumn(/*sql*/`SELECT noteRevisionId FROM note_revision_contents`)) {
const row = sql.getRow<NoteRevisionContents>(/*sql*/`SELECT noteRevisionId, content, utcDateModified FROM note_revision_contents WHERE noteRevisionId = ?`, [noteRevisionId]);
const blobId = utils.hashedBlobId(row.content);
if (!existingBlobIds.has(blobId)) {
@@ -7,7 +7,7 @@ import sql from "../../src/services/sql";
export default () => {
cls.init(() => {
// emergency disabling of image compression since it appears to make problems in migration to 0.61
sql.execute(`UPDATE options SET value = 'false' WHERE name = 'compressImages'`);
sql.execute(/*sql*/`UPDATE options SET value = 'false' WHERE name = 'compressImages'`);
becca_loader.load();
@@ -0,0 +1,14 @@
-- Add the oauth user data table
CREATE TABLE IF NOT EXISTS "user_data"
(
tmpID INT,
username TEXT,
email TEXT,
userIDEncryptedDataKey TEXT,
userIDVerificationHash TEXT,
salt TEXT,
derivedKey TEXT,
isSetup TEXT DEFAULT "false",
UNIQUE (tmpID),
PRIMARY KEY (tmpID)
);
+13
View File
@@ -126,6 +126,19 @@ CREATE TABLE IF NOT EXISTS "attachments"
utcDateScheduledForErasureSince TEXT DEFAULT NULL,
isDeleted INT not null,
deleteId TEXT DEFAULT NULL);
CREATE TABLE IF NOT EXISTS "user_data"
(
tmpID INT,
username TEXT,
email TEXT,
userIDEncryptedDataKey TEXT,
userIDVerificationHash TEXT,
salt TEXT,
derivedKey TEXT,
isSetup TEXT DEFAULT "false",
UNIQUE (tmpID),
PRIMARY KEY (tmpID)
);
CREATE INDEX IDX_attachments_ownerId_role
on attachments (ownerId, role);
+6088
View File
File diff suppressed because it is too large Load Diff
+11
View File
@@ -0,0 +1,11 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<frameset cols="25%,75%">
<frame name="navigation" src="navigation.html">
<frame name="detail" src="root/Journal.dat">
</frameset>
</html>
+646
View File
@@ -0,0 +1,646 @@
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style.css">
</head>
<body>
<ul>
<li>root
<ul>
<li><a href="root/Journal.dat" target="detail">Journal</a>
</li>
<li><a href="root/Trilium%20Demo.html" target="detail">Trilium Demo</a>
<ul>
<li><a href="root/Trilium%20Demo/Inbox.html" target="detail">Inbox</a>
<ul>
<li><a href="root/Trilium%20Demo/Inbox/Grocery%20list%20for%20today.html"
target="detail">Grocery list for today</a>
</li>
<li><a href="root/Trilium%20Demo/Inbox/Book%20to%20read.html" target="detail">Book to read</a>
</li>
<li><a href="root/Trilium%20Demo/Inbox/The%20Last%20Question.html" target="detail">The Last Question</a>
<ul>
<li><a href="root/Trilium%20Demo/Inbox/The%20Last%20Question/The%20Last%20Question%20by%20Issac.pdf"
target="detail">The Last Question by Issac Asimov.pdf</a>
</li>
</ul>
</li>
</ul>
</li>
<li>Formatting examples
<ul>
<li><a href="root/Trilium%20Demo/Formatting%20examples/School%20schedule.html"
target="detail">School schedule</a>
</li>
<li><a href="root/Trilium%20Demo/Formatting%20examples/Checkbox%20lists.html"
target="detail">Checkbox lists</a>
</li>
<li><a href="root/Trilium%20Demo/Formatting%20examples/Highlighting.html"
target="detail">Highlighting</a>
</li>
<li><a href="root/Trilium%20Demo/Formatting%20examples/Code%20blocks.html"
target="detail">Code blocks</a>
</li>
<li><a href="root/Trilium%20Demo/Formatting%20examples/Math.html" target="detail">Math</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal.html" target="detail">Journal</a>
<ul>
<li>2021
<ul>
<li>11 - November
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/11%20-%20November/28%20-%20Tuesday.html"
target="detail">28 - Tuesday</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/11%20-%20November/28%20-%20Tuesday/Phone%20call%20about%20work%20project.html"
target="detail">Phone call about work project</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/11%20-%20November/28%20-%20Tuesday/Christmas%20gift%20ideas.html"
target="detail">Christmas gift ideas</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/11%20-%20November/28%20-%20Tuesday/Trusted%20timestamping.html"
target="detail">Trusted timestamping</a>
</li>
</ul>
</li>
</ul>
</li>
<li>12 - December
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday.html"
target="detail">18 - Monday</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Meeting%20minutes.html"
target="detail">Meeting minutes</a>
</li>
<li>Photos from the trip
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/01.jpeg"
target="detail">01.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/02.jpeg"
target="detail">02.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/03.jpeg"
target="detail">03.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/04.jpeg"
target="detail">04.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/05.jpeg"
target="detail">05.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/06.jpeg"
target="detail">06.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/07.jpeg"
target="detail">07.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/08.jpeg"
target="detail">08.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/09.jpeg"
target="detail">09.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/10.jpeg"
target="detail">10.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/11.jpeg"
target="detail">11.jpeg</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/Photos%20from%20the%20trip/12.jpeg"
target="detail">12.jpeg</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/18%20-%20Monday/TODO%20-%20Send%20invites%20for%20christ.html"
target="detail">TODO - Send invites for christmas party</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/19%20-%20Tuesday.html"
target="detail">19 - Tuesday</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/19%20-%20Tuesday/DONE%20-%20Dentist%20appointment.html"
target="detail">DONE - Dentist appointment</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/20%20-%20Wednesday.html"
target="detail">20 - Wednesday</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/21%20-%20Thursday.html"
target="detail">21 - Thursday</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/21%20-%20Thursday/Christmas%20shopping.html"
target="detail">Christmas shopping</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/21%20-%20Thursday/Office%20party.html"
target="detail">Office party</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/22%20-%20Friday.html"
target="detail">22 - Friday</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/22%20-%20Friday/Christmas%20shopping.html"
target="detail">Christmas shopping</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/22%20-%20Friday/The%20Mechanical.html"
target="detail">The Mechanical</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/22%20-%20Friday/The%20Mechanical/Highlights.html"
target="detail">Highlights</a>
</li>
</ul>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/23%20-%20Saturday.html"
target="detail">23 - Saturday</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/24%20-%20Sunday%20-%20Christmas%20Eve!.html"
target="detail">24 - Sunday - Christmas Eve!</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/24%20-%20Sunday%20-%20Christmas%20Eve!/DONE%20-%20Buy%20a%20board%20game%20for%20Al.html"
target="detail">DONE - Buy a board game for Alice</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/24%20-%20Sunday%20-%20Christmas%20Eve!/TODO%20-%20Buy%20milk.html"
target="detail">TODO - Buy milk</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/30%20-%20Thursday.html"
target="detail">30 - Thursday</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/Epics.html" target="detail">Epics</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/Epics/Christmas.html" target="detail">Christmas</a>
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/Epics/Christmas/Vacation%20days.html"
target="detail">Vacation days</a>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/Epics/Christmas/Christmas%20dinner.html"
target="detail">Christmas dinner</a>
</li>
<li>Shopping
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/11%20-%20November/28%20-%20Tuesday/Christmas%20gift%20ideas.html"
target="detail">28. 11. 2017 - Christmas gift ideas</a>
</li>
</ul>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/2021/Epics/Vacation.html" target="detail">Vacation</a>
</li>
</ul>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Journal/Day%20template.html" target="detail">Day template</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Tech.html" target="detail">Tech</a>
<ul>
<li>Security
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/11%20-%20November/28%20-%20Tuesday/Trusted%20timestamping.html"
target="detail">Trusted timestamping</a>
</li>
</ul>
</li>
<li>Linux
<ul>
<li><a href="root/Trilium%20Demo/Tech/Linux/History.html" target="detail">History</a>
</li>
<li><a href="root/Trilium%20Demo/Tech/Linux/Bash%20scripting.html" target="detail">Bash scripting</a>
<ul>
<li><a href="root/Trilium%20Demo/Tech/Linux/Bash%20scripting/While%20loop.html"
target="detail">While loop</a>
</li>
<li><a href="root/Trilium%20Demo/Tech/Linux/Bash%20scripting/Bash%20startup%20modes.html"
target="detail">Bash startup modes</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Tech/Linux/Ubuntu.html" target="detail">Ubuntu</a>
<ul>
<li><a href="root/Trilium%20Demo/Tech/Linux/Ubuntu/Unity%20shortcuts.html"
target="detail">Unity shortcuts</a>
</li>
</ul>
</li>
</ul>
</li>
<li>Programming
<ul>
<li><a href="root/Trilium%20Demo/Tech/Programming/Java.html" target="detail">Java</a>
</li>
<li><a href="root/Trilium%20Demo/Tech/Linux/Bash%20scripting.html" target="detail">Bash scripting</a>
</li>
</ul>
</li>
<li>Node.js
<ul>
<li><a href="root/Trilium%20Demo/Tech/Node.js/Intro.html" target="detail">Intro</a>
</li>
<li><a href="root/Trilium%20Demo/Tech/Node.js/Overview.html" target="detail">Overview</a>
<ul>
<li><a href="root/Trilium%20Demo/Tech/Node.js/Overview/History.html" target="detail">History</a>
</li>
<li><a href="root/Trilium%20Demo/Tech/Node.js/Overview/Platform%20architecture.html"
target="detail">Platform architecture</a>
</li>
<li><a href="root/Trilium%20Demo/Tech/Node.js/Overview/Industry%20support.html"
target="detail">Industry support</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Tech/Node.js/Releases.html" target="detail">Releases</a>
</li>
</ul>
</li>
</ul>
</li>
<li>Note Types
<ul>
<li><a href="root/Trilium%20Demo/Note%20Types/Canvas.json" target="detail">Canvas</a>
</li>
<li>Mermaid Diagrams
<ul>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Flow.txt"
target="detail">Flow</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Flow%20(ELK).txt"
target="detail">Flow (ELK)</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Sequence.txt"
target="detail">Sequence</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Gantt.txt"
target="detail">Gantt</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Class.txt"
target="detail">Class</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/State.txt"
target="detail">State</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Mind%20Map.txt"
target="detail">Mind Map</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Pie.txt"
target="detail">Pie</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Journey.txt"
target="detail">Journey</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Git.txt"
target="detail">Git</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Entity%20Relationship.txt"
target="detail">Entity Relationship</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/Bar%20chart.txt"
target="detail">Bar chart</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mermaid%20Diagrams/C4.txt" target="detail">C4</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Mind%20Map.json" target="detail">Mind Map</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Geo%20Map%20(The%20Seven%20Wonders%20of%20.json"
target="detail">Geo Map (The Seven Wonders of the World)</a>
<ul>
<li><a href="root/Trilium%20Demo/Note%20Types/Geo%20Map%20(The%20Seven%20Wonders%20of%20the%20World)/The%20Colosseum%2C%20Rome%2C%20Italy.html"
target="detail">The Colosseum, Rome, Italy</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Geo%20Map%20(The%20Seven%20Wonders%20of%20the%20World)/The%20Great%20Wall%20of%20China.html"
target="detail">The Great Wall of China</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Geo%20Map%20(The%20Seven%20Wonders%20of%20the%20World)/The%20Taj%20Mahal%2C%20India.html"
target="detail">The Taj Mahal, India</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Geo%20Map%20(The%20Seven%20Wonders%20of%20the%20World)/Christ%20the%20Redeemer%2C%20Brazil.html"
target="detail">Christ the Redeemer, Brazil</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Geo%20Map%20(The%20Seven%20Wonders%20of%20the%20World)/Machu%20Picchu%2C%20Peru.html"
target="detail">Machu Picchu, Peru</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Geo%20Map%20(The%20Seven%20Wonders%20of%20the%20World)/Chich%C3%A9n%20Itz%C3%A1%2C%20Mexico.html"
target="detail">Chichén Itzá, Mexico</a>
</li>
<li><a href="root/Trilium%20Demo/Note%20Types/Geo%20Map%20(The%20Seven%20Wonders%20of%20the%20World)/Petra%2C%20Jordan.html"
target="detail">Petra, Jordan</a>
</li>
</ul>
</li>
</ul>
</li>
<li>Books
<ul>
<li><a href="root/Trilium%20Demo/Books/To%20read.html" target="detail">To read</a>
</li>
<li><a href="root/Trilium%20Demo/Books/Book%20template.html" target="detail">Book template</a>
<ul>
<li><a href="root/Trilium%20Demo/Books/Book%20template/Highlights.html" target="detail">Highlights</a>
</li>
</ul>
</li>
<li>Reviews
<ul>
<li><a href="root/Trilium%20Demo/Journal/2021/12%20-%20December/22%20-%20Friday/The%20Mechanical.html"
target="detail">The Mechanical</a>
</li>
</ul>
</li>
</ul>
</li>
<li>Work
<ul>
<li><a href="root/Trilium%20Demo/Work/HR.html" target="detail">HR</a>
</li>
<li><a href="root/Trilium%20Demo/Work/Processes.html" target="detail">Processes</a>
</li>
<li><a href="root/Trilium%20Demo/Work/Projects.html" target="detail">Projects</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Steel%20Blue.css" target="detail">Steel Blue</a>
<ul>
<li><a href="root/Trilium%20Demo/Steel%20Blue/eb-garamond-v9-latin-reg.woff2"
target="detail">eb-garamond-v9-latin-regular.woff2</a>
</li>
<li><a href="root/Trilium%20Demo/Steel%20Blue/raleway-v12-latin-regula.woff2"
target="detail">raleway-v12-latin-regular.woff2</a>
</li>
</ul>
</li>
<li>Scripting examples
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager.html"
target="detail">Task manager</a>
<ul>
<li>Locations
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/gym.html"
target="detail">gym</a>
</li>
<li>work
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/work/Send%20invites%20for%20christmas%20par.html"
target="detail">Send invites for christmas party</a>
</li>
</ul>
</li>
<li>tesco
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/tesco/Buy%20milk.html"
target="detail">Buy milk</a>
</li>
</ul>
</li>
<li>mall
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/mall/Buy%20some%20book%20for%20Bob.html"
target="detail">Buy some book for Bob</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/mall/Buy%20some%20book%20for%20Bob/Maybe%20Black%20Swan.html"
target="detail">Maybe Black Swan?</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>Done
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Done/Buy%20a%20board%20game%20for%20Alice.html"
target="detail">Buy a board game for Alice</a>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Done/Dentist%20appointment.html"
target="detail">Dentist appointment</a>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Done/Get%20a%20gym%20membership.html"
target="detail">Get a gym membership</a>
</li>
</ul>
</li>
<li>TODO
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/work/Send%20invites%20for%20christmas%20par.html"
target="detail">Send invites for christmas party</a>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/tesco/Buy%20milk.html"
target="detail">Buy milk</a>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/mall/Buy%20some%20book%20for%20Bob.html"
target="detail">Buy some book for Bob</a>
</li>
</ul>
</li>
<li>Implementation
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Implementation/attribute%20changed.js"
target="detail">attribute changed</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Implementation/attribute%20changed/reconcileAssignments.js"
target="detail">reconcileAssignments</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Implementation/CSS.css"
target="detail">CSS</a>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Implementation/task%20template.html"
target="detail">task template</a>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Implementation/createNewTask.js"
target="detail">createNewTask</a>
</li>
</ul>
</li>
<li>Tags
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Tags/health.html"
target="detail">health</a>
</li>
<li>shopping
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/mall/Buy%20some%20book%20for%20Bob.html"
target="detail">Buy some book for Bob</a>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/tesco/Buy%20milk.html"
target="detail">Buy milk</a>
</li>
</ul>
</li>
<li>groceries
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/tesco/Buy%20milk.html"
target="detail">Buy milk</a>
</li>
</ul>
</li>
<li>christmas
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Locations/mall/Buy%20some%20book%20for%20Bob.html"
target="detail">Buy some book for Bob</a>
</li>
</ul>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Task%20manager/Create%20Launcher.js"
target="detail">Create Launcher</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Word%20count%20widget.js"
target="detail">Word count widget</a>
</li>
<li>Weight Tracker
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Weight%20Tracker/Implementation.html"
target="detail">Implementation</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Weight%20Tracker/Implementation/JS%20code.js"
target="detail">JS code</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Weight%20Tracker/Implementation/JS%20code/chart.js"
target="detail">chart.js</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>Statistics
<ul>
<li>Attribute count
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Attribute%20count/template.html"
target="detail">template</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Attribute%20count/template/js.js"
target="detail">js</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Attribute%20count/template/js/renderPieChart.js"
target="detail">renderPieChart</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Attribute%20count/template/js/renderPieChart/chartjs-plugin-datalabe.min.js"
target="detail">chartjs-plugin-datalabels.min.js</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Weight%20Tracker/Implementation/JS%20code/chart.js"
target="detail">chart.js</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Weight%20Tracker/Implementation/JS%20code/chart.js"
target="detail">chart.js</a>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Attribute%20count/template/js/renderTable.js"
target="detail">renderTable</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>Largest notes
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Largest%20notes/template.html"
target="detail">template</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Largest%20notes/template/js.js"
target="detail">js</a>
</li>
</ul>
</li>
</ul>
</li>
<li>Most edited notes
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Most%20edited%20notes/template.html"
target="detail">template</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Most%20edited%20notes/template/js.js"
target="detail">js</a>
</li>
</ul>
</li>
</ul>
</li>
<li>Most linked notes
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Most%20linked%20notes/template.html"
target="detail">template</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Most%20linked%20notes/template/js.js"
target="detail">js</a>
</li>
</ul>
</li>
</ul>
</li>
<li>Note type count
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Note%20type%20count/template.html"
target="detail">template</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Note%20type%20count/template/js.js"
target="detail">js</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Note%20type%20count/template/js/renderTable.js"
target="detail">renderTable</a>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Attribute%20count/template/js/renderPieChart.js"
target="detail">renderPieChart</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>Most cloned notes
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Most%20cloned%20notes/template.html"
target="detail">template</a>
<ul>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Statistics/Most%20cloned%20notes/template/js.js"
target="detail">js</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><a href="root/Trilium%20Demo/Scripting%20examples/Custom%20request%20handler.js"
target="detail">Custom request handler</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</body>
</html>
+81
View File
@@ -0,0 +1,81 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../style.css">
<base target="_parent">
<title data-trilium-title>Trilium Demo</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Trilium Demo</h1>
<div class="ck-content">
<figure class="image image-style-align-right image_resized" style="width:29.84%;">
<img style="aspect-ratio:150/150;" src="Trilium Demo_icon-color.svg" width="150"
height="150">
</figure>
<p><strong>Welcome to TriliumNext Notes!</strong>
</p>
<p>This is initial "demo" document provided by TriliumNext by default to
showcase some of its features and also give you some ideas how you might
structure your notes. You can play with it, modify note content and tree
structure as you wish.</p>
<p>If you need any help, visit TriliumNext website: <a href="https://github.com/TriliumNext">https://github.com/TriliumNext</a>
</p>
<h3>Cleanup</h3>
<p>Once you're finished with experimenting and want to cleanup these pages,
you can simply delete them all.</p>
<h3>Formatting</h3>
<p>TriliumNext supports classic formatting like <em>italic</em>, <strong>bold</strong>, <em><strong>bold and italic</strong></em>.
Of course you can add links like this one pointing to <a href="http://www.google.com">google.com</a>
</p>
<p>Lists</p>
<p><strong>Ordered:</strong>
</p>
<ol>
<li>First Item</li>
<li>Second item
<ol>
<li>First sub-item
<ol>
<li>sub-sub-item</li>
</ol>
</li>
</ol>
</li>
</ol>
<p><strong>Unordered:</strong>
</p>
<ul>
<li>Item</li>
<li>Another item
<ul>
<li>Sub-item</li>
</ul>
</li>
</ul>
<p>Block quotes</p>
<blockquote>
<p>Whereof one cannot speak, thereof one must be silent”</p>
<p> Ludwig Wittgenstein</p>
</blockquote>
<p>Checkout also other examples like <a href="Trilium%20Demo/Formatting%20examples/School%20schedule.html">tables</a>,
<a
href="Trilium%20Demo/Formatting%20examples/Checkbox%20lists.html">checkbox lists,</a> <a href="Trilium%20Demo/Formatting%20examples/Highlighting.html">highlighting</a>,
<a
href="Trilium%20Demo/Formatting%20examples/Code%20blocks.html">code blocks</a>and&nbsp;<a href="Trilium%20Demo/Formatting%20examples/Math.html">math examples</a>.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,40 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>Book template</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Book template</h1>
<div class="ck-content">
<h2>Main characters</h2>
<p>… here put main characters …</p>
<p>&nbsp;</p>
<h2>Plot</h2>
<p>… describe main plot lines …</p>
<p>&nbsp;</p>
<h2>Tone</h2>
<p>&nbsp;</p>
<h2>Genre</h2>
<p>scifi / drama / romance</p>
<p>&nbsp;</p>
<h2>Similar books</h2>
<ul>
<li></li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,24 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../style.css">
<base target="_parent">
<title data-trilium-title>Highlights</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Highlights</h1>
<div class="ck-content">
<blockquote>
<p>highlght 1</p>
</blockquote>
<p>my comment</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../style.css">
<base target="_parent">
<title data-trilium-title>The Mechanical</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>The Mechanical</h1>
<div class="ck-content">
<p>This is a clone of a note. Go to its <a href="../../Journal/2021/12%20-%20December/22%20-%20Friday/The%20Mechanical.html">primary location</a>.</p>
</div>
</div>
</body>
</html>
+31
View File
@@ -0,0 +1,31 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>To read</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>To read</h1>
<div class="ck-content">
<p>Checkout Kindle daily deals: <a href="https://www.amazon.com/gp/feature.html?docId=1000677541">https://www.amazon.com/gp/feature.html?docId=1000677541</a>
</p>
<ul>
<li>Cixin Liu - <a href="https://www.amazon.com/Dark-Forest-Remembrance-Earths-Past/dp/0765386690/ref=pd_bxgy_14_img_2?_encoding=UTF8&amp;pd_rd_i=0765386690&amp;pd_rd_r=AB0J179TM9NTEAMHE240&amp;pd_rd_w=FAhxX&amp;pd_rd_wg=pLGK7&amp;psc=1&amp;refRID=AB0J179TM9NTEAMHE240">The Dark Forest</a>
</li>
<li>Ann Leckie - <a href="https://www.amazon.com/Ancillary-Sword-Imperial-Radch-Leckie/dp/0316246654/ref=pd_sim_14_1?_encoding=UTF8&amp;pd_rd_i=0316246654&amp;pd_rd_r=D7KDTGZFP7YM1YSYVY4G&amp;pd_rd_w=jkn28&amp;pd_rd_wg=JVhtw&amp;psc=1&amp;refRID=D7KDTGZFP7YM1YSYVY4G">Ancillary Sword</a>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,47 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>Checkbox lists</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Checkbox lists</h1>
<div class="ck-content">
<p>Create easy TODO-lists with checkboxes:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">buy milk&nbsp;&nbsp;</span>
</label>
</li>
<li>
<label class="todo-list__label">
<input type="checkbox" checked="checked" disabled="disabled"><span class="todo-list__label__description">do the laundry&nbsp;&nbsp;</span>
</label>
</li>
<li>
<label class="todo-list__label">
<input type="checkbox" checked="checked" disabled="disabled"><span class="todo-list__label__description">watch TV&nbsp;&nbsp;</span>
</label>
</li>
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">eat ice cream&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,33 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>Code blocks</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Code blocks</h1>
<div class="ck-content">
<p>Code blocks are useful to add short snippets of code blocks inside text
notes. Depending on your preference, it's possible to enable or disable
word wrapping for these code blocks.</p>
<p>We added syntax highlighting to code blocks as well. When a code block
is first created it will try to automatically determine the programming
language, should that fail it is possible to manually adjust it. The color
scheme for the syntax highlighting is adjustable in settings.&nbsp;</p><pre><code class="language-application-javascript-env-frontend">function helloWorld() {
alert("Hello world");
}</code></pre>
<p>For larger pieces of code it is better to use a code note, which uses
a fully-fledged code editor (CodeMirror). For an example of a code note,
see&nbsp;<a class="reference-link" href="../Scripting%20examples/Custom%20request%20handler.js">Custom request handler</a>.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,35 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>Highlighting</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Highlighting</h1>
<div class="ck-content">
<p><span class="text-big">Space Shuttle Discovery</span> (Orbiter Vehicle
Designation: <code>OV-103</code>) is one of the orbiters from NASA's Space
Shuttle program and the third of five fully operational orbiters to be
built. Its first mission, STS-41-D, flew from August 30 to September 5,
1984. Over 27 years of service it launched and landed <span style="background-color:hsl(60,75%,60%);">39 times</span>,
gathering more spaceflights than any other spacecraft to date. The shuttle
has three main components: the Space Shuttle orbiter, a central fuel tank,
and two rocket boosters. Nearly <span style="background-color:hsl(120,75%,60%);">25,000 heat resistant tiles</span> cover
the orbiter to protect it from high temperatures on re-entry.</p>
<p>Discovery became the third operational orbiter to enter service, preceded
by Columbia and Challenger. <span style="color:hsl(270,75%,60%);">It embarked on its last mission, STS-133, on February 24, 2011</span> and
touched down for the final time at Kennedy Space Center on March 9, having
spent a cumulative total of almost a full year in space. Discovery performed
both research and International Space Station (ISS) assembly missions,
and also carried the Hubble Space Telescope into orbit.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,27 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>Math</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Math</h1>
<div class="ck-content">
<p><span class="math-tex">\(% \f is defined as #1f(#2) using the macro \f\relax{x} = \int_{-\infty}^\infty &nbsp; &nbsp; \f\hat\xi\,e^{2 \pi i \xi x} &nbsp; &nbsp; \,d\xi\)</span>Some
math examples:</p><span class="math-tex">\[\displaystyle \frac{1}{\Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{\frac25 \pi}} = 1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots} } } }\]</span>
<p>Another:</p><span class="math-tex">\[\displaystyle \left( \sum_{k=1}^n a_k b_k \right)^2 \leq \left( \sum_{k=1}^n a_k^2 \right) \left( \sum_{k=1}^n b_k^2 \right)\]</span>
<p>Inline math is also possible:&nbsp;<span class="math-tex">\(c^2 = a^2 + b^2\)</span>&nbsp;</p>
<p>&nbsp;</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,69 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>School schedule</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>School schedule</h1>
<div class="ck-content">
<figure class="table">
<table>
<thead>
<tr>
<th>&nbsp;</th>
<th>Monday</th>
<th>Tuesday</th>
<th>Wednesday</th>
<th>Thursday</th>
<th>Friday</th>
</tr>
</thead>
<tbody>
<tr>
<th>9:00-10:30</th>
<td>P.E.</td>
<td>&nbsp;</td>
<td>Math</td>
<td>Computer Science</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>11:00-12:30</th>
<td>History</td>
<td>English</td>
<td>&nbsp;</td>
<td>Physics</td>
<td>Math</td>
</tr>
<tr>
<th>13:00-14:30</th>
<td>&nbsp;</td>
<td>Computer Science</td>
<td>Chemistry</td>
<td>Physics Lab</td>
<td>Geography</td>
</tr>
<tr>
<th>15:00-16:30</th>
<td>Computer Science</td>
<td>&nbsp;</td>
<td>Latin</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</tbody>
</table>
<figcaption>School schedule</figcaption>
</figure>
</div>
</div>
</body>
</html>
+25
View File
@@ -0,0 +1,25 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../style.css">
<base target="_parent">
<title data-trilium-title>Inbox</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Inbox</h1>
<div class="ck-content">
<div>
<div>
<p>This is a place I use to put notes waiting for better categorization</p>
</div>
</div>
</div>
</div>
</body>
</html>
@@ -0,0 +1,22 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>Book to read</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Book to read</h1>
<div class="ck-content">
<p>How to be a stoic from Massimo Pigliuci:</p>
<p><a href="https://www.amazon.com/gp/product/B01K3WN1BY?pf_rd_m=A2R2RITDJNW1Q6&amp;storeType=ebooks&amp;pageType=STOREFRONT&amp;pf_rd_p=8e2a96d9-c848-435b-92bd-0856850ad544&amp;pf_rd_r=4J6CT15BS4X8062XNGDF&amp;pf_rd_s=merchandised-search-5&amp;pf_rd_t=40901&amp;ref_=dbs_f_ebk_rwt_scns_mwl_ms5_kmw_8e2a96d9-c848-435b-92bd-0856850ad544_2&amp;pf_rd_i=154606011">https://www.amazon.com/gp/product/B01K3WN1BY?pf_rd_m=A2R2RITDJNW1Q6&amp;storeType=ebooks&amp;pageType=STOREFRONT&amp;pf_rd_p=8e2a96d9-c848-435b-92bd-0856850ad544&amp;pf_rd_r=4J6CT15BS4X8062XNGDF&amp;pf_rd_s=merchandised-search-5&amp;pf_rd_t=40901&amp;ref_=dbs_f_ebk_rwt_scns_mwl_ms5_kmw_8e2a96d9-c848-435b-92bd-0856850ad544_2&amp;pf_rd_i=154606011</a>&nbsp;</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,25 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>Grocery list for today</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Grocery list for today</h1>
<div class="ck-content">
<ul>
<li>cucumber</li>
<li>cheese</li>
<li>beer</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,32 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>The Last Question</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>The Last Question</h1>
<div class="ck-content">
<p>"<strong>The Last Question</strong>" is a <a href="https://en.wikipedia.org/wiki/Science_fiction">science fiction</a>
<a
href="https://en.wikipedia.org/wiki/Short_story">short story</a>by American writer <a href="https://en.wikipedia.org/wiki/Isaac_Asimov">Isaac Asimov</a>.
It first appeared in the November 1956 issue of <a href="https://en.wikipedia.org/wiki/Science_Fiction_Quarterly"><em>Science Fiction Quarterly</em></a>.</p>
<section
class="include-note" data-note-id="ZWCYra81yOFO" data-box-size="medium">&nbsp;</section>
<p>This page demonstrates two things:</p>
<ul>
<li>possibility to <a href="#root/_hidden/_help/_help_KSZ04uQ2D1St/_help_iPIMuisry3hd/_help_nBAXQFj20hS1">include one note into another</a>
</li>
<li>PDF preview - you can read PDFs directly in Trilium!</li>
</ul>
</div>
</div>
</body>
</html>
+23
View File
@@ -0,0 +1,23 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../style.css">
<base target="_parent">
<title data-trilium-title>Journal</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Journal</h1>
<div class="ck-content">
<p>You can read some explanation on how this journal works here: <a href="https://github.com/zadam/trilium/wiki/Day-notes">https://github.com/zadam/trilium/wiki/Day-notes</a>
</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>28 - Tuesday</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>28 - Tuesday</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,28 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Christmas gift ideas</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Christmas gift ideas</h1>
<div class="ck-content">
<ul>
<li>XBox</li>
<li>Candles</li>
<li><a href="https://www.amazon.ca/Anker-SoundCore-Portable-Bluetooth-Resistance/dp/B01MTB55WH?pd_rd_wg=honW8&amp;pd_rd_r=c9bb7c0f-0051-4da7-991f-4ca711a1b3e3&amp;pd_rd_w=ciUpR&amp;ref_=pd_gw_simh&amp;pf_rd_r=K10XKX0NGPDNTYYP4BS4&amp;pf_rd_p=5f1b460b-78c1-580e-929e-2878fe4859e8">Portable speakers</a>
</li>
<li>...?</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Phone call about work project</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Phone call about work project</h1>
<div class="ck-content">
<p>Bla bla bla ...</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,33 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Trusted timestamping</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Trusted timestamping</h1>
<div class="ck-content">
<p>Wiki: <a href="https://en.wikipedia.org/wiki/Trusted_timestamping">https://en.wikipedia.org/wiki/Trusted_timestamping</a>
</p>
<p>Bozho: <a href="https://techblog.bozho.net/using-trusted-timestamping-java/">https://techblog.bozho.net/using-trusted-timestamping-java/</a>
</p>
<p><strong>Trusted timestamping</strong> is the process of <a href="https://en.wikipedia.org/wiki/Computer_security">securely</a> keeping
track of the creation and modification time of a document. Security here
means that no one—not even the owner of the document—should be able to
change it once it has been recorded provided that the timestamper's integrity
is never compromised.</p>
<p>The administrative aspect involves setting up a publicly available, trusted
timestamp management infrastructure to collect, process and renew timestamps.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,27 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>18 - Monday</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>18 - Monday</h1>
<div class="ck-content">
<p>Miscellaneous notes done on monday ...</p>
<p>&nbsp;</p>
<p>Interesting video: <a href="https://www.youtube.com/watch?v=_eSAF_qT_FY&amp;feature=youtu.be">https://www.youtube.com/watch?v=_eSAF_qT_FY&amp;feature=youtu.be</a>
</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Meeting minutes</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Meeting minutes</h1>
<div class="ck-content">
<p>bla bla bla...</p>
</div>
</div>
</body>
</html>
Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

@@ -0,0 +1,19 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Send invites for christmas party</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Send invites for christmas party</h1>
<div class="ck-content"></div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>19 - Tuesday</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>19 - Tuesday</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,19 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Dentist appointment</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Dentist appointment</h1>
<div class="ck-content"></div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>20 - Wednesday</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>20 - Wednesday</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>21 - Thursday</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>21 - Thursday</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Christmas shopping</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Christmas shopping</h1>
<div class="ck-content">
<p>Bought a book!</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Office party</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Office party</h1>
<div class="ck-content">
<p>That was fun!</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>22 - Friday</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>22 - Friday</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,19 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Christmas shopping</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Christmas shopping</h1>
<div class="ck-content"></div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>The Mechanical</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>The Mechanical</h1>
<div class="ck-content">
<p>I enjoyed this book a lot. It's slow moving at times with the author taking
his time with conversations and descriptions of them. The premise is very
interesting, but I'm sad that it wasn't elaborated more deeply - e.g. the
history and development of the clakker technology with Huygens and how
Spinoza comes into the picture. Maybe the author saves it for the next
two parts of the book.</p>
<p>Language can be intimidating at first for non-native english speakers
- author uses wide range of vocabulary. Fortunately it gets better after
a while as reader adjusts.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,44 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Highlights</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Highlights</h1>
<div class="ck-content">
<blockquote>
<p>Like a raindrop rolling down dry valleys to the sea, his body sensed the
contours of agony and helplessly followed their gradient. Impelled by alchemical
compulsion rather than gravity, Jax became an unstoppable boulder careering
along gullies of human whim.</p>
</blockquote>
<blockquote>
<p>Free Will was a vacuum, a negative space. It was the absence of coercion,
the absence of compulsion, the absence of agony.</p>
</blockquote>
<blockquote>
<p>Overwhelming: he could do anything he wanted. But the grand sum of anything-at-all
was nothing-at-all. The topology of freedom offered no gradients to nudge
him, no landmarks to guide him. How did humans guide themselves? How did
they know what to do and what not to do? How did they know when to do anything
without the benefit of geasa and metageasa to prioritize every single action
of their waking lives? How did they order their daily existence without
somebody to tell them what to do?</p>
</blockquote>
<blockquote>
<p>Life as a slave was unspeakable; life as a slave who had briefly tasted
freedom was unthinkable. Clakkers carried complex geasa by dint of alchemy;
humans carried heavy obligations, too, but called them culture. Society.</p>
</blockquote>
</div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>23 - Saturday</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>23 - Saturday</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>24 - Sunday - Christmas Eve!</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>24 - Sunday - Christmas Eve!</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

@@ -0,0 +1,27 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Buy a board game for Alice</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Buy a board game for Alice</h1>
<div class="ck-content">
<figure class="image image-style-side">
<img style="aspect-ratio:209/300;" src="DONE - Buy a board game fo.jpg"
width="209" height="300">
</figure>
<p>Maybe CodeNames? <a href="https://boardgamegeek.com/boardgame/178900/codenames">https://boardgamegeek.com/boardgame/178900/codenames</a>
</p>
</div>
</div>
</body>
</html>
@@ -3,14 +3,14 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../style.css">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Mermaid Diagram</title>
<title data-trilium-title>Buy milk</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Mermaid Diagram</h1>
<h1 data-trilium-h1>Buy milk</h1>
<div class="ck-content"></div>
</div>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>30 - Thursday</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>30 - Thursday</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
@@ -0,0 +1,23 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../style.css">
<base target="_parent">
<title data-trilium-title>Epics</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Epics</h1>
<div class="ck-content">
<p>Epic is kind of medium-term events or projects spread over days or months.</p>
<p>Remember that Trilium is all free form so you can organise your stuff
in whatever way you'd like.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Christmas</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Christmas</h1>
<div class="ck-content">
<p>This christmas is going to be awesome!</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Christmas dinner</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Christmas dinner</h1>
<div class="ck-content">
<p>Carp of course!</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Christmas gift ideas</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Christmas gift ideas</h1>
<div class="ck-content">
<p>This is a clone of a note. Go to its <a href="../../../11%20-%20November/28%20-%20Tuesday/Christmas%20gift%20ideas.html">primary location</a>.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,22 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Vacation days</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Vacation days</h1>
<div class="ck-content">
<p>25. 12., 26. 12., 1. 1. - statutory holidays</p>
<p>27. 12. - 29. 12., 2. 1. - vacation days</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,21 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../../../style.css">
<base target="_parent">
<title data-trilium-title>Vacation</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Vacation</h1>
<div class="ck-content">
<p>Planning stuff etc.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,29 @@
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../../../style.css">
<base target="_parent">
<title data-trilium-title>Day template</title>
</head>
<body>
<div class="content">
<h1 data-trilium-h1>Day template</h1>
<div class="ck-content">
<p>TODO:</p>
<ul class="todo-list">
<li>
<label class="todo-list__label">
<input type="checkbox" disabled="disabled"><span class="todo-list__label__description">&nbsp;&nbsp;</span>
</label>
</li>
</ul>
</div>
</div>
</body>
</html>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 63 KiB

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