Compare commits

...

551 Commits

Author SHA1 Message Date
zadam cb8e551ee0 release 0.47.3 2021-05-15 23:05:20 +02:00
zadam f6dd1110e8 fix sync status 2021-05-15 22:00:53 +02:00
zadam 623200b92b fix "force note sync" 2021-05-15 14:04:01 +02:00
zadam 4ff40ba14f fix sync status in-progress 2021-05-15 13:44:12 +02:00
zadam cecce1df20 electron upgrade 2021-05-14 22:23:11 +02:00
zadam 2030c8e995 fallback value for isErased for 0173 migration, #1937 2021-05-14 21:52:14 +02:00
zadam de6108f95d protected session is now global application state to avoid weird issues with multiple tabs/windows/reloads 2021-05-07 22:23:49 +02:00
zadam fddab59265 added note.executeScript() 2021-05-07 21:23:10 +02:00
zadam f22c76d9fb fix focusing tree from note detail, closes #1897 2021-04-27 23:05:28 +02:00
zadam b1131844d6 fix filling entity changes from Options' Advanced tab, closes #1898 2021-04-27 22:59:08 +02:00
zadam 03f3e46f8b release 0.47.2 2021-04-26 22:32:54 +02:00
zadam 6f1b0b92fe fix searchForNote backend API method 2021-04-26 22:27:12 +02:00
zadam 5e40c03fc9 use Map instead of object where keys can be (reserved) words, fixes #1895 2021-04-26 21:12:46 +02:00
zadam 3b1fb8024f handle undefined in the search ordering 2021-04-26 21:04:22 +02:00
FliegendeWurst 6f49f870ed Exit on SIGTERM (#1891)
Stopping the systemd service running the server now works properly.
2021-04-25 11:05:09 +02:00
zadam b9133cb683 fix keyboard shortcut for "open externally" 2021-04-24 22:18:25 +02:00
zadam ccac46527c opened file change detection now useable on all note types 2021-04-24 21:56:44 +02:00
zadam dcd35b1ea2 fix broken inline PDF viewer, #1833 2021-04-24 20:27:42 +02:00
zadam a74741343e upload of modified open file WIP 2021-04-24 11:39:59 +02:00
zadam 4ff7e0813d upload of modified open file WIP 2021-04-24 11:39:44 +02:00
zadam 6d2d72fa7f add ERR_ADDRESS_UNREACHABLE as expected sync exception, #1888 2021-04-24 10:17:21 +02:00
zadam 30ec706d37 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	package.json
#	src/services/build.js
2021-04-22 21:25:15 +02:00
zadam 25ce2e4253 release 0.46.9 2021-04-22 20:50:22 +02:00
zadam b5674223e5 fixed some incorrect order by behavior, #1881 2021-04-22 20:28:26 +02:00
zadam 02988ed2b3 added random ordering 2021-04-22 19:53:11 +02:00
zadam c27f573eed fix line continuation in the release script 2021-04-22 19:39:57 +02:00
zadam c5b0c60797 Merge remote-tracking branch 'origin/master' 2021-04-21 23:03:16 +02:00
zadam 025af8df02 ckeditor 27.1 2021-04-21 23:03:09 +02:00
chee d9e8cff00f Only add widgets that are executable (#1875)
closes #1874
2021-04-21 22:25:52 +02:00
zadam 1a4f35470c Merge remote-tracking branch 'origin/stable' 2021-04-21 22:04:33 +02:00
zadam 1d99c4e80b fix moving notes with keyboard on Firefox, closes #1865 2021-04-21 22:03:41 +02:00
zadam dc7c64a94d Merge remote-tracking branch 'origin/stable' into stable 2021-04-21 20:38:15 +02:00
zadam dc6a530d8c clear note selection anytime a new note is activated 2021-04-21 20:38:07 +02:00
chee 38b0d05c20 Add .includes to the type check (#1871)
beforehand it would always be `true`
fixes #1869
2021-04-21 20:16:15 +02:00
zadam 6e010dfbd7 fix note preview, closes #1869 2021-04-21 20:14:37 +02:00
zadam 172bdb6118 release 0.47.1-beta 2021-04-19 22:43:03 +02:00
zadam 6136243d61 release 0.47.1-beta 2021-04-19 22:40:50 +02:00
zadam a88a32acae support OPML from MindManager, fixes #1862 2021-04-19 22:33:58 +02:00
zadam 583df35231 log warning about unsucessful login 2021-04-19 21:41:29 +02:00
zadam 634baae796 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	src/services/build.js
2021-04-19 20:56:56 +02:00
zadam a674a12706 disable tar polluting build log 2021-04-19 20:56:05 +02:00
zadam c29f1af48f use n to force node version
(cherry picked from commit 51d1d8efb8)
2021-04-19 20:51:06 +02:00
zadam 51d1d8efb8 use n to force node version 2021-04-19 20:26:58 +02:00
zadam a8d72c46e4 release 0.46.8 2021-04-18 21:47:45 +02:00
zadam ec36fbd83e release 0.46.8 2021-04-18 21:46:35 +02:00
zadam aedb05cbab release 0.46.8 2021-04-18 21:39:01 +02:00
zadam bb16840a72 release 0.46.8 2021-04-18 21:30:43 +02:00
zadam 7b5d44a329 use official gh client instead of github-release to execute releases 2021-04-18 21:29:10 +02:00
zadam d3cccae2df implemented audio/video in note content renderer + streaming API #886 2021-04-18 12:40:12 +02:00
zadam 9ba514d930 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	package-lock.json
#	trilium.iml
2021-04-18 12:39:19 +02:00
zadam 8e1b8ab26c show not set keyboard shortcuts as "not set", #1851 2021-04-15 21:45:37 +02:00
zadam 197537b159 idea config stuff 2021-04-13 21:54:34 +02:00
zadam 917b259e92 add new sync status "unknown" to differentiate from "can't connect", #1844 2021-04-13 21:54:07 +02:00
zadam a53a65be1f clipper fix, closes #1840 2021-04-12 23:29:02 +02:00
zadam 44aa2834b3 release 0.47.0-beta 2021-04-11 22:29:56 +02:00
zadam 58e4bd4974 Merge remote-tracking branch 'origin/stable' 2021-04-11 22:28:30 +02:00
zadam 44af431a93 ctrl + click / middle click now opens image in a text note in a new tab 2021-04-11 22:24:21 +02:00
zadam 479d742e85 partly reverted wrong change, #1820 2021-04-10 23:24:17 +02:00
zadam 3337487063 fixes 2021-04-10 23:23:43 +02:00
zadam beb42f18fe linux server better-sqlite3 binary 2021-04-10 11:15:13 +02:00
zadam 00a27313fb linux desktop and mac better-sqlite3 binaries 2021-04-09 23:40:42 +02:00
zadam 564fea43a9 don't open new tab after duplicating subtree 2021-04-09 23:40:15 +02:00
zadam 3d3142e20c Merge remote-tracking branch 'origin/master' 2021-04-08 21:22:54 +02:00
zadam 9c679aef20 added #runOnInstance and #runAtHour 2021-04-08 21:22:47 +02:00
Davi Alexandre d47a55d23a Avoid resetting all background properties on note-icons (#1834)
This ensures only the background-color property will be changed transparent,
avoiding to reset any other properties (background-image, for example) that
might have been set by some custom CSS rules applied in combination with
#iconClass
2021-04-08 20:24:19 +02:00
zadam 052f584bf4 edit note button is now just an icon 2021-04-08 20:17:35 +02:00
MatAsmania 1dfebdf6db Fix for Evernote workaround and support for en-todo (#1827) 2021-04-07 22:48:49 +02:00
zadam 5314446980 fix seeing only part of the PDF preview 2021-04-07 22:45:46 +02:00
zadam 6b41c26d2b disable entering new line in the attribute editor 2021-04-07 22:35:06 +02:00
zadam 463071ea4d make global button more consistent with sync button 2021-04-07 22:15:44 +02:00
zadam 79c5645964 various javaDoc improvements 2021-04-07 22:01:52 +02:00
zadam 2f58b6b3c8 fix bottom margin/padding styling in tooltip 2021-04-07 21:21:06 +02:00
zadam e7909d25c6 fix linking to notes 2021-04-07 21:12:55 +02:00
zadam f739dbfe87 ckeditor 5.60.0 2021-04-06 22:16:34 +02:00
zadam c43b20ec2b script api search ignores hoisting by default 2021-04-06 21:56:46 +02:00
zadam 2d0cb5b66e update electron to 13 beta 2021-04-06 20:19:34 +02:00
zadam caf38c94c7 fix search route 2021-04-06 20:18:34 +02:00
zadam 51db6761c8 fix opening links with single click outside of the ckeditor instance 2021-04-06 20:18:16 +02:00
zadam 4d110aa143 updated render note help 2021-04-05 22:37:12 +02:00
zadam 9c436cb61f Merge remote-tracking branch 'origin/stable' 2021-04-05 21:39:35 +02:00
zadam caa11b8f7e fix inheriting inheritable attributes through template, closes #1828 2021-04-05 20:52:19 +02:00
zadam 926e9e12c0 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	package-lock.json
#	package.json
2021-04-05 11:44:42 +02:00
zadam c4d35fb44e fix reference link widget in attr editor after CKEditor 27 upgrade 2021-04-05 11:28:34 +02:00
zadam 1b41b92e02 publish xml2js into backend script api 2021-04-05 11:18:56 +02:00
zadam 41cce4dcb9 improved task manager with allowed year range, #1823 2021-04-04 23:57:55 +02:00
zadam 858072cc10 fix lexer to parse correctly quoted empty strings, #1825 2021-04-04 23:13:18 +02:00
zadam 855c5e0e67 fix unit tests 2021-04-04 22:44:22 +02:00
WPum 903e6b7ccc correct a typo in #1820 fix (#1824)
Thanks!
2021-04-04 22:11:42 +02:00
zadam c71f3c35b8 Merge remote-tracking branch 'origin/stable' 2021-04-04 22:03:00 +02:00
zadam f0cc3d0bcd use entity changes instead of actual tables to fill in sector to sync, fixes #1809 2021-04-04 22:02:40 +02:00
zadam 7672f22ce0 release 0.46.7 2021-04-03 22:37:04 +02:00
zadam ef37a52a06 when leaving protected session don't forget to reset note cache (titles), #1810 2021-04-03 22:02:25 +02:00
zadam 2318d615bb make note cache decryption more robust - one failure will not crash the whole process, #1810 2021-04-03 21:48:16 +02:00
zadam 2e82b7380b hide relationMapLink and template relations from link map, fixes #1820 2021-04-03 11:28:11 +02:00
zadam bc14c3d665 backport not deforming standard top widget in small window size from master 2021-03-31 22:59:07 +02:00
zadam b89ea9a684 check for note cache branch existence, #1808 2021-03-31 22:35:10 +02:00
zadam 6c9ac5b5ec jquery 3.6.0 2021-03-30 23:32:44 +02:00
zadam 9cd45299b1 grid items in note list are clickable as a whole 2021-03-30 23:26:14 +02:00
zadam f1f4f45c9d display note icon in note list 2021-03-30 23:13:16 +02:00
zadam 8644c38abc hide sync status on extra window until the sync status is known 2021-03-30 22:59:25 +02:00
zadam e569ae1a0d one sync status tooltip did not have data-toggle="tooltip" 2021-03-30 22:53:23 +02:00
zadam da741b522e note cache fixes, #1805 2021-03-30 21:39:42 +02:00
zadam e055d4e15e ckeditor 27 2021-03-29 23:29:14 +02:00
zadam 58200d6431 fix dragabilly webpack build 2021-03-29 22:01:01 +02:00
zadam 57db945558 set cssClass and other note related classes on the root widget instead, fixes #1799 2021-03-28 22:24:24 +02:00
zadam 2e6cd5f809 Merge remote-tracking branch 'origin/master' 2021-03-28 00:07:45 +01:00
zadam 6541523e88 empty page on new tab nw offers list of available workspaces 2021-03-28 00:07:38 +01:00
Igor f60b282e09 * Russian README added (#1794)
* * Russian README added

* Links to another READMEs added

* * Fix inline images

Co-authored-by: mopsicus <lii@rstgames.com>
2021-03-27 20:32:01 +01:00
bavis-m 744ed27d91 If the database hasn't been initialized (new install?) don't attempt to update our last synced id, as there is no db to grab it from (prevents running the server as a fresh install completely) (#1797)
Co-authored-by: Mark <mark@mhack.io>
2021-03-27 20:30:40 +01:00
zadam a254199746 Merge remote-tracking branch 'origin/stable' 2021-03-26 21:47:24 +01:00
zadam 496767a52b release 0.46.6 2021-03-25 20:28:57 +01:00
zadam 9139c597e5 use only one label for icon class, fixes #1791 2021-03-25 19:46:10 +01:00
zadam 942132c01d release 0.46.6 2021-03-23 23:57:48 +01:00
zadam 928c8bfdf7 Merge remote-tracking branch 'origin/stable' 2021-03-23 22:47:42 +01:00
zadam 1862acd1ff avoid getting refreshes on note title 2021-03-23 22:46:18 +01:00
zadam ce7e18d0b0 fix syncing protected notes in case there wasn't any other change, closes #1778 2021-03-23 22:18:23 +01:00
zadam 65280d5ba3 avoid ugly error in the logs, #1778 2021-03-22 23:27:41 +01:00
zadam 7e3d424e23 fix deleting all revisions, closes #1774 2021-03-22 23:07:43 +01:00
zadam d5f38c0f88 sync status style fix 2021-03-21 23:45:15 +01:00
zadam 56f97f1081 dragging the tab vertically by 100px will now move it to a new window (chrome like behavior) 2021-03-21 23:35:13 +01:00
zadam e648505ad3 avoid weird button shrinking when window size is too small, fixes #1745 2021-03-21 23:12:34 +01:00
zadam 71c3fd5cbb don't use special layout for "extra window" 2021-03-21 23:05:31 +01:00
zadam f9b0418333 sync status widget tweaks 2021-03-21 22:46:45 +01:00
zadam 392a00ac17 sync status widget 2021-03-21 22:43:41 +01:00
zadam 1a9919a866 sync status widget WIP 2021-03-21 00:01:28 +01:00
zadam 9dd95b62a9 added ScrollingContainer to guarantee scrolling to top when switching notes 2021-03-20 19:44:43 +01:00
zadam 135b4fe88e Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	src/public/app/layouts/mobile_layout.js
2021-03-20 12:49:37 +01:00
zadam bff04c121a fix scrolling in mobile frontend, closes #1768 2021-03-20 12:47:47 +01:00
zadam b79d81a94d sync status widget WIP 2021-03-20 00:00:49 +01:00
zadam 7e2186721f added "re-render note" menu item & shortcut, closes #1766 2021-03-19 22:34:56 +01:00
zadam 6a70e0ab97 add trilium-no-cert-check bat/shell file in order to be able to connect to the sync server even without valid server certificate 2021-03-18 23:49:28 +01:00
zadam b38a63d336 delete notes dialog provides checkbox to switch between delete all clones and normal delete 2021-03-18 23:42:30 +01:00
zadam d62558d97a delete notes dialog WIP 2021-03-18 23:23:35 +01:00
zadam 76aa7d1451 Merge remote-tracking branch 'origin/master' 2021-03-18 22:11:45 +01:00
zadam 4f401d71a2 Merge remote-tracking branch 'origin/stable' 2021-03-18 21:11:56 +01:00
Patrick Moriarty eb437ff642 Add mobile dropdown for plugin buttons (#1762)
* Add mobile toolbar buttons

* cleanup

* more cleanup

* Mobile plugin buttons: Add else block & change icon
2021-03-18 21:09:08 +01:00
zadam 6edc6e2825 load search result only on explicit action (expand node, execute search), #1759 2021-03-18 21:05:43 +01:00
zadam e8903e82a1 add option to disable note tree auto collapse, fixes #1751 2021-03-18 20:11:58 +01:00
zadam 59e8cb8c8b Merge remote-tracking branch 'origin/stable' 2021-03-17 23:20:28 +01:00
zadam 0cfd95d9b8 not finding node for a note path does not have to be always an error 2021-03-17 23:17:54 +01:00
zadam 1aa5349628 make edit button visible for empty readonly notes, fixes #1760 2021-03-17 22:41:37 +01:00
Patrick Moriarty a4bffbfa60 Mobile view: iOS sizing/styling changes (#1756)
* Fix dark themed action-button text color on mobile safari

* Fix note view scrolling on ios safari

* Fix scroll issues on tree view on ios safari

* Fix mobile firefox/chrome sizing issues

* Fix scroll-to-active-note
2021-03-17 22:07:53 +01:00
zadam 70656d240b better-sqlite3 built for electron 12 windows 2021-03-15 23:49:08 +01:00
zadam 42067b3c1e Merge remote-tracking branch 'origin/stable' 2021-03-15 23:40:44 +01:00
zadam 0bc91da0bb added possibility to zoom into images using mousewheel 2021-03-15 22:24:56 +01:00
zadam 4e21d12202 fix nodejs 10 compatibility, closes #1746 2021-03-15 20:31:12 +01:00
zadam fdce218e88 release 0.46.5 2021-03-14 22:56:27 +01:00
zadam 5b72b577b8 delete notes preview dialog WIP 2021-03-14 22:54:39 +01:00
zadam ec2f8ec796 added subtree note count into info widget 2021-03-14 20:47:33 +01:00
zadam cd3f8a41af removed (112) migrations originating before first public release (0.20 in Sept 2018) 2021-03-14 20:37:35 +01:00
zadam aa8bf0e60a Revert "Revert "delete notes skeleton dialog""
This reverts commit 584fea19
2021-03-14 19:54:40 +01:00
zadam 5b3a6b5e9d Merge remote-tracking branch 'origin/stable' 2021-03-14 19:53:51 +01:00
zadam 6c8d20288d fix 0.46 regression to set up sync from client, fixes #1742 2021-03-13 22:54:00 +01:00
zadam 88d04772c4 make sure the CLS entity changes are cleared after roll backed transaction, #1736 2021-03-12 23:48:14 +01:00
zadam 9fd26a9b9f when creating new note into inbox use current hoisted note in new tab as well 2021-03-12 21:47:26 +01:00
zadam 98f02c3c9a added "hoistedInbox" label 2021-03-12 21:29:50 +01:00
zadam 584fea1992 Revert "delete notes skeleton dialog"
This reverts commit 03a11e6f
2021-03-12 20:44:19 +01:00
zadam af50a1ec52 Merge remote-tracking branch 'origin/stable' into stable 2021-03-12 20:39:51 +01:00
zadam 4e76d1fa85 hide some "boring" attributes from book listing view 2021-03-12 20:39:42 +01:00
zadam 81e226af6f Merge remote-tracking branch 'origin/stable' 2021-03-12 20:27:05 +01:00
zadam 03a11e6f77 delete notes skeleton dialog 2021-03-11 22:35:53 +01:00
zadam cb558e1378 Merge remote-tracking branch 'origin/stable' 2021-03-11 21:14:58 +01:00
zadam e1a16b4a9f defensive check, #1736 2021-03-11 20:28:07 +01:00
zadam 12b468d3dc release 0.46.4-beta 2021-03-10 23:35:12 +01:00
zadam 6f901e6852 use icons instead of plain text to differentiate between different paths in note paths widget 2021-03-10 23:11:48 +01:00
zadam 09e9ac4d00 prevent cycles in resolving the notepath, fixes #1730 2021-03-10 22:54:55 +01:00
zadam 723a0e479e ckeditor 26.0 2021-03-10 20:02:23 +01:00
zadam 5b8e876b77 upgrade to electron 12 2021-03-09 22:36:41 +01:00
zadam a33ac65fdf fix focus on moving notes with keyboard 2021-03-09 22:24:59 +01:00
zadam f8fb071a6f added option to bring back plain (non-markdown) headings, closes #1678 2021-03-09 22:06:40 +01:00
zadam a654078e56 fix broken template copy, closes #1724 2021-03-09 20:51:57 +01:00
zadam fba68681aa when resolving note path check if there's a hoisted note in it, if not, try again to find some path with hoisted note, closes #1718 2021-03-09 20:37:56 +01:00
zadam 50c84e0f5f release 0.46.3-beta 2021-03-08 23:11:11 +01:00
zadam f27370d44f fix putting focus back to the note tree after note deletion 2021-03-08 23:10:34 +01:00
zadam c6c9202c00 fix note icon color in dark mode 2021-03-08 22:06:26 +01:00
zadam 2cafda5f66 note paths visually distinguishes between different note paths, closes #1669 2021-03-08 22:04:52 +01:00
zadam 873953cbaf fix bug 2021-03-08 00:09:48 +01:00
zadam d51744ce19 make note paths current path underlined 2021-03-08 00:07:00 +01:00
zadam 7df8c940b6 have paths in "note paths" widget also sorted by priority 2021-03-08 00:04:43 +01:00
zadam 9bac2a4819 refresh inherited attribute list after attr change, closes #1717 2021-03-07 23:31:56 +01:00
zadam 88147f7a0a fixed "create note after" position issue 2021-03-06 23:53:10 +01:00
zadam ca77211b38 improved template code with better heuristics on when to copy things from the template 2021-03-06 21:34:03 +01:00
zadam 4606e8d118 non-search notes should have no children limit, #1673 2021-03-06 20:31:12 +01:00
zadam 9f002fa802 change the heuristics to choose the best note path when ambiguous/incomplete/just noteId is provided, #1711 2021-03-06 20:23:29 +01:00
zadam 060d4fc27b fix duplication of hoisted note tree when hoisted note has clones 2021-03-04 23:19:27 +01:00
zadam bf0fbe201e hack when hoisted note is cloned then it could be filtered multiple times while we want only 1 2021-03-03 23:00:16 +01:00
zadam 721e5da672 use notePath instead of noteId for note creation to correctly work with cloned ancestors 2021-03-03 22:48:06 +01:00
zadam 8192b51b8a cleanup of createTopLevelNote 2021-03-03 22:27:57 +01:00
zadam 73514a63d8 when resolving note path attempt to find one going through hoisted note 2021-03-03 21:49:57 +01:00
zadam f8c310eb8f added license mention into the README noting AGPL v3+, #1708 2021-03-03 21:41:44 +01:00
zadam b9422b0efd cssClass is now added also to link map and relation map, closes #1702 2021-03-02 23:20:53 +01:00
zadam 14ced949a9 fix modifying index in note cache when deleting attribute, closes #1706 2021-03-02 23:10:42 +01:00
zadam 5b5c2a2dbb fix null utcDateChanged in entity_changes, closes #1705 2021-03-02 22:08:29 +01:00
zadam 2c958eaacb Merge branch 'sort-by' 2021-02-28 23:40:37 +01:00
zadam 4aa27b6033 added "sort by" dialog 2021-02-28 23:40:15 +01:00
zadam 89a0c5a1c9 fix "no data" when switching between tabs with different hoisted notes, closes #1699 2021-02-28 19:46:04 +01:00
zadam 78e48095e6 prompt user when there are unsaved changes, #1692 2021-02-27 23:39:02 +01:00
zadam 02016ed031 fix create full search note 2021-02-27 21:19:54 +01:00
zadam cb91dadeca add possibility to define search home for hoisted notes, #1694 2021-02-27 21:18:10 +01:00
zadam 2c755bcc38 don't fail (immediatelly) when sql insert doesn't return lastInsertRowid, #1665 2021-02-27 21:09:13 +01:00
zadam 3c7a6bc1e4 use longer update interval for web 2021-02-27 21:08:27 +01:00
zadam 3fe87259e2 if search note would end up outside of current hoisting, save it under the hoisted note, closes #1694 2021-02-26 23:33:22 +01:00
zadam d476dfc53b fix searching the second time in quick search, #1694 2021-02-26 23:20:49 +01:00
zadam 19821b634f release 0.46.2-beta 2021-02-25 22:41:35 +01:00
zadam cde41b268e allow copying type, mime, content from template only for text and code note types, fixes #1689 2021-02-25 22:33:26 +01:00
zadam 1c59bc4d3c sort child notes by ... WIP 2021-02-25 22:26:46 +01:00
zadam cb6d35236c update correctly "multi-parent" node status, fixes #1688 2021-02-25 21:16:21 +01:00
zadam 7572ee284b set search note title correctly during creation 2021-02-25 20:02:49 +01:00
zadam d0eaf623a8 activate node after calling "scroll to active note", fixes #1685 2021-02-24 22:41:24 +01:00
zadam 25c2db6c3a sort parent relationships so that clones in search notes appear last, fixes #1686 2021-02-24 22:38:26 +01:00
zadam 5a173ff14e quick search now allows clicking anywhere 2021-02-24 22:19:09 +01:00
zadam 7fab75b085 Merge remote-tracking branch 'origin/master' 2021-02-23 22:01:10 +01:00
zadam 0f065536d0 use 100 children limit on only search notes (as was initially intended), fixes #1673 2021-02-23 22:01:02 +01:00
sigaloid d0747abded no h1 headings (#1679)
#1552
2021-02-23 21:23:23 +01:00
Mirwaisse Djanbaz f62b4a581e Typo in export.js (#1682) 2021-02-23 21:20:19 +01:00
Mirwaisse Djanbaz dcf1c62ec1 Typo in appearance settings (#1683) 2021-02-23 21:19:57 +01:00
zadam 93d55b3e7b put back waiting for sync after frontend API backend request 2021-02-22 22:43:54 +01:00
zadam 90c6852423 hide auto links by default in relation map, allow configuring displayed relations, fixes #1674 2021-02-22 22:34:33 +01:00
zadam 208baa56e9 error handling 2021-02-22 21:59:37 +01:00
zadam ddf8438b22 fix edited notes widget note transitions, fixes #1672 2021-02-21 22:45:32 +01:00
zadam 6008dc891f fix note activation right after creation from calendar 2021-02-21 21:54:16 +01:00
zadam cc887a00f2 runOnBackend now does not automatically wait for the maxSyncId since it can easily result in infinite cycle 2021-02-21 21:28:00 +01:00
zadam fbbd51d0b1 small changes for better debugging infos 2021-02-20 23:17:29 +01:00
zadam 081b8b126a fix note_reordering not updating note cache 2021-02-20 21:28:22 +01:00
zadam 7a6bb81345 display note path in search results 2021-02-20 20:10:45 +01:00
zadam 1d5714c411 release 0.46.1-beta 2021-02-19 23:15:18 +01:00
zadam 56506d33a7 small fixes 2021-02-19 22:58:53 +01:00
zadam c94fb7a62d created a specific widget for search result to add "no results" message 2021-02-19 22:15:56 +01:00
zadam 4160da70be implemented "targetRelationCount" and exposed more of them in order by widget, fixes #1658 2021-02-19 20:42:34 +01:00
zadam 2cfd093cae allow search result to be moved from tree to relation map, fixes #1650 2021-02-18 22:30:55 +01:00
zadam 859465841d add possibility to debug search queries by logging expression tree, #1655 2021-02-18 22:10:49 +01:00
zadam 0c9a11db6f bring back "create and link note" into more places, fixes #1653 2021-02-18 20:10:44 +01:00
zadam 4cbf9c2e86 show "reset to default icon" button only when there is an explicit icon 2021-02-18 20:06:14 +01:00
zadam 1f7997eeed added "reset to default icon" button to icon picker 2021-02-18 19:33:12 +01:00
zadam 8e730c6ecf add frontend API method openTabWithNote, #1645 2021-02-17 23:55:51 +01:00
zadam 600a312b2a fix parsing of "!=" operator, #1651 2021-02-17 23:41:15 +01:00
zadam ec2e973165 allow only valid attr name characters for relation map relations, closes #1649 2021-02-17 23:22:14 +01:00
zadam faeb55bc90 don't allow to bring up delete dialog on saved search results (consistency with context menu) 2021-02-17 23:03:34 +01:00
zadam 23ebe360a6 small fixes 2021-02-17 20:59:44 +01:00
zadam d905335935 correct placement of imported root note (at the end) 2021-02-16 23:38:05 +01:00
zadam f49f510459 fixes in "other notes with relation..." 2021-02-16 23:07:40 +01:00
zadam e78b495bd3 reduce flickering of import by disabling entityChanges notification of frontend 2021-02-16 22:51:00 +01:00
zadam 5542c9dc57 fixed saved note migration - need to be migrated as last, #1647 2021-02-16 21:40:17 +01:00
zadam 2388da7cfb fixed "show in full search" click and keyboard shortcuts for collapse tree and scroll to active note actions, #1647 2021-02-16 21:19:07 +01:00
zadam 3b4fa0c5fc update section container on attribute change, closes #1646 2021-02-16 20:58:17 +01:00
zadam 1af98056bb release 0.46.0-beta 2021-02-15 22:29:35 +01:00
zadam c0edcc1bfe split icon list data into separate file 2021-02-15 22:18:37 +01:00
zadam 597e595c32 filtering for the icon picker 2021-02-15 22:11:38 +01:00
zadam e212a37c84 fixes for SQL console 2021-02-15 20:44:55 +01:00
zadam c41448f5da consistency check for wrong lastSyncedPush 2021-02-15 20:44:31 +01:00
zadam aab49946f8 prototype of note icon picker 2021-02-14 23:27:28 +01:00
zadam cc4d04416b added "delete note revisions" search action 2021-02-14 21:35:13 +01:00
zadam 66c5606d46 implemented "rawContent", #1637 2021-02-14 19:27:31 +01:00
zadam 50bcf45113 fixed "duplicate subtree" creating extra entities in case subtrees contains multiple clones 2021-02-14 12:14:33 +01:00
zadam 08cba1e1ce fixed "duplicate subtree" 2021-02-14 11:43:31 +01:00
zadam f528799fed added "limit" search modifier to search definition 2021-02-13 23:52:52 +01:00
zadam a78c8ddad7 small search help improvements 2021-02-13 23:38:31 +01:00
zadam 3cc93157bf basic support for audio/video preview in file notes (no seeking) 2021-02-13 23:20:22 +01:00
zadam 3dbd80d5a6 relocated note paths widget into note title row 2021-02-13 22:47:06 +01:00
zadam 076b4a6651 small tweaks 2021-02-13 21:52:31 +01:00
zadam 378987e61c added icon to note title row 2021-02-13 20:07:08 +01:00
zadam 5eb850bf59 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	src/services/search/services/search.js
2021-02-13 12:27:10 +01:00
zadam 4914160590 fix correct application of <small> tag, closes #1635 2021-02-13 12:23:50 +01:00
zadam 00c106aba6 fix update of value from autocomplete, #1557 2021-02-13 12:11:58 +01:00
zadam 5e6d2c8336 db migration fix 2021-02-12 23:52:16 +01:00
zadam d45a59aa4e sync fixes 2021-02-12 23:30:11 +01:00
zadam 9f19cf8046 don't sync recent_notes 2021-02-12 22:39:38 +01:00
zadam c0dfd23191 fix merge conflict 2021-02-11 23:08:37 +01:00
zadam b9539117d8 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	src/services/auth.js
#	src/services/setup.js
2021-02-11 23:07:20 +01:00
zadam d616a77d6b release 0.45.10 2021-02-11 23:05:48 +01:00
zadam 5b679930de revert accidentally committed auth changes, #1629 2021-02-11 23:04:42 +01:00
zadam 3d7beefad0 sync fixes 2021-02-11 22:50:32 +01:00
zadam 8850de51f5 sync fixes 2021-02-10 22:56:23 +01:00
zadam 18b13657fd don't compare hashes of note_reordering entity_changes 2021-02-09 23:27:09 +01:00
zadam 43ac712fca fix searchForNotes API method to look for archived notes as well 2021-02-09 22:32:25 +01:00
zadam bf231d31a2 fancytree 2.38.0 2021-02-09 21:33:55 +01:00
zadam 7dd19c0366 correct reloading of note subtree when relevant labels change 2021-02-09 20:26:10 +01:00
zadam 0040334e89 fix infinite cycle when template is descendant of an instance 2021-02-09 20:15:14 +01:00
zadam 96a5cb23f3 Merge remote-tracking branch 'origin/stable' 2021-02-08 21:16:14 +01:00
zadam 067ca9ab16 fallback for incorrectly parsed pane widths, #1621 2021-02-08 20:51:38 +01:00
zadam be65e2e62f fixed custom header authentication 2021-02-07 21:50:34 +01:00
zadam bed7bdfd00 "move to new window" respects note hoisting of original tab 2021-02-07 21:27:09 +01:00
zadam cd5be59413 tab row is detecting workspace changes 2021-02-07 20:55:49 +01:00
zadam 2a67d9eae2 added unhoist button to the tree node + onclick fixes 2021-02-06 19:58:12 +01:00
zadam 0f05d6258e small fixes 2021-02-05 23:19:43 +01:00
zadam 45516fa7b4 Merge remote-tracking branch 'origin/stable' 2021-02-05 22:54:50 +01:00
zadam 70708b36ef using custom header for sync authorization to avoid tripping security proxies 2021-02-05 21:59:56 +01:00
zadam fb3d5f25ac release 0.45.9 2021-02-05 21:38:32 +01:00
zadam 397f0d1326 fix collapse tree 2021-02-04 23:08:16 +01:00
zadam 6469937393 fix note tree flickering (note cache was not updated when expanded status changed) 2021-02-04 22:05:32 +01:00
zadam 48cb4d2ab9 one line overflow for note properties 2021-02-02 23:36:27 +01:00
zadam 3a94b04ef4 quick search impl finished 2021-02-01 23:51:04 +01:00
zadam d406df48a8 edited notes doesn't wrap long note titles 2021-02-01 20:55:35 +01:00
zadam 9447d3f9b5 quick search widget WIP 2021-01-31 22:45:45 +01:00
zadam 2ac78c2e03 global menu does not need "menu" title 2021-01-31 20:36:30 +01:00
zadam 17073096cf disable property widgets if not applicable 2021-01-31 20:07:56 +01:00
zadam 6068bd7c44 added note properties widget 2021-01-31 12:15:36 +01:00
zadam 56a35b85a6 Merge remote-tracking branch 'origin/stable' 2021-01-30 22:49:19 +01:00
zadam 9d7d79ef94 avoid errors from missing note cache during startup 2021-01-30 22:25:40 +01:00
zadam eb1a6b78ff updated schema 2021-01-30 22:17:29 +01:00
zadam 60d000b9cb VACUUM for migration 2021-01-30 22:12:38 +01:00
zadam 61ddd8afc6 small fixes to migration scripts 2021-01-30 22:00:09 +01:00
zadam 69bdcdd74a changed sidebar widget expanders to be consistent with tree expanders 2021-01-30 21:28:10 +01:00
zadam 17c6f53397 fix "twitching" tree nodes on hover 2021-01-30 21:03:39 +01:00
zadam 1c51419db5 image properties converted to collapsible section container 2021-01-30 20:21:44 +01:00
zadam 1ba1f28006 let's try "display: flex" fix for the include note positioning bug, #1590 2021-01-30 20:07:56 +01:00
zadam 6b306ac426 alert for missing file preview 2021-01-30 15:59:59 +01:00
zadam ae26f22114 class moving 2021-01-30 15:50:46 +01:00
zadam 552d213817 file properties converted to collapsible section container 2021-01-30 15:47:24 +01:00
zadam 8fb7dd451e small fixes 2021-01-30 11:50:45 +01:00
zadam 01a82bed09 extra window layout updated to be consistent with main window 2021-01-29 23:36:33 +01:00
zadam 77bc5f9944 disabling tree expand animation to avoid "recursion" errors 2021-01-29 23:33:41 +01:00
zadam 6081c3540e refactoring 2021-01-29 22:44:59 +01:00
zadam 0a10764ed4 Merge remote-tracking branch 'origin/stable' 2021-01-29 21:19:48 +01:00
zadam ba33a0d330 fix conflict between CKEditor build content style and externally provided content style (which are not needed when build CSS is available), #1590 2021-01-29 20:27:16 +01:00
zadam aea81c9872 fix include note rendering over floating elements, #1590 2021-01-29 20:09:03 +01:00
zadam 8019e23ee4 note list displays correct paging 2021-01-28 23:29:10 +01:00
zadam 5eb9b8fe42 included notes are not displayed in children overview 2021-01-28 23:15:58 +01:00
zadam d19a929237 removed auto book as it is no longer needed 2021-01-28 22:34:35 +01:00
zadam 67e0e0888e Merge remote-tracking branch 'origin/stable' 2021-01-28 22:17:46 +01:00
zadam 810fd9e819 fix glitches on drag & drop, fixes #1587 2021-01-28 21:19:01 +01:00
zadam 2dc742f5b8 don't recompress animated images, #1585 2021-01-28 20:17:57 +01:00
zadam 48b7108da0 add meta theme-color tag to mobile version, #1576 2021-01-27 20:58:20 +01:00
zadam 806ab22fa8 hide note paths dropdown on changed note, #1572 2021-01-27 20:44:58 +01:00
zadam fbabdef272 added ancestor depth search criteria 2021-01-26 23:25:18 +01:00
zadam a1f67e830d search script UI 2021-01-26 22:22:17 +01:00
zadam ee78413ecb improvements to the search spec 2021-01-26 15:54:41 +01:00
zadam b936a63db3 improvements to the search spec help button 2021-01-26 14:44:53 +01:00
zadam 80354d09fb search definition more fixed layout 2021-01-26 14:10:34 +01:00
zadam 87925f72a3 search definition action refactoring 2021-01-26 10:48:28 +01:00
zadam 898c941333 search definition refactoring 2021-01-26 10:42:55 +01:00
zadam 8b0a1e546d search fixes 2021-01-25 23:43:36 +01:00
zadam ec351137d4 search definition refactoring 2021-01-25 21:24:02 +01:00
zadam cf5127dcec split up search definition options to more classes 2021-01-24 22:30:53 +01:00
zadam 345de752d1 Merge remote-tracking branch 'origin/stable' 2021-01-23 21:53:21 +01:00
zadam 9c2b98915e fix glitch in switching between different types of notes 2021-01-23 21:52:39 +01:00
zadam 7b0fd639f6 improved heuristic of displaing attributes in note list and tooltips #1558 2021-01-23 21:41:02 +01:00
zadam 6408a47a8a Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	src/services/note_cache/entities/note.js
2021-01-23 21:09:47 +01:00
zadam f2ca9276d6 fix/improve behavior of "sorted" attribute 2021-01-23 21:00:59 +01:00
zadam 872e81fe1f search now supports searching / ordering by note size 2021-01-22 22:20:17 +01:00
zadam 480aec1667 size calculation is always on demand 2021-01-22 15:16:08 +01:00
zadam 35ea877c7d Merge remote-tracking branch 'origin/stable' 2021-01-21 22:06:17 +01:00
zadam 41ca4b8d2e fix relation map view 2021-01-21 22:05:56 +01:00
zadam 8375a1b5ab optimize usage of note path and attributes in the note tooltip, #1558 2021-01-21 21:48:06 +01:00
zadam 48b697f408 select attr name in attr detail dialog did not trigger update, closes #1557 2021-01-21 20:18:33 +01:00
zadam c33d496cf3 note info widget provides basic info on note (and subtree) size 2021-01-21 20:02:40 +01:00
zadam 200982655f WIP for counting note and subtree size 2021-01-20 22:17:40 +01:00
zadam d67e1552ee more impl for search actions 2021-01-20 21:45:30 +01:00
zadam ce09e4a1eb basic backend implementation of search actions 2021-01-20 20:31:24 +01:00
zadam 7bf6ec3ff2 bootstrap 4.6.0 2021-01-19 22:28:43 +01:00
zadam 1f923403de UI for search actions (WIP) 2021-01-19 22:10:24 +01:00
zadam cb2361e9c4 Merge remote-tracking branch 'origin/master' 2021-01-19 19:45:57 +01:00
zadam d7e46263be UI fixes to search definition + backend support 2021-01-18 22:52:07 +01:00
王登辉 138903cf28 fix config.ini Network host not work (#1546) 2021-01-18 17:46:48 +01:00
zadam 3fa2535862 basic interactivity of search definition actions 2021-01-17 23:01:01 +01:00
zadam 5bb490e1ff basic interactivity of search definition 2021-01-17 21:11:01 +01:00
zadam f2e44e5617 fix tree's enhanced item buttons 2021-01-15 23:05:19 +01:00
zadam 58a93f748b Merge remote-tracking branch 'origin/stable' 2021-01-15 22:23:56 +01:00
zadam e1e185e5db added "safe mode" environment variable switch which disables startup scripts and resets tabs 2021-01-15 20:12:14 +01:00
zadam 199b49c1f7 fix partial syncs 2021-01-14 23:22:13 +01:00
zadam cbc1f63732 Merge remote-tracking branch 'origin/stable' 2021-01-14 21:53:05 +01:00
zadam 3f2e8717b3 sanitize also clipper content, #1532 2021-01-14 21:52:44 +01:00
zadam e06c5703ee config value to disable backups, closes #1533 2021-01-12 21:50:05 +01:00
zadam cd858a73c1 Merge remote-tracking branch 'origin/stable' 2021-01-11 22:49:08 +01:00
zadam 69353f12b5 partial sync requests WIP 2021-01-11 22:48:51 +01:00
zadam fe3bb2c5f6 release 0.45.8 2021-01-11 22:47:11 +01:00
zadam 6afc299efb release 0.45.8 2021-01-11 22:29:31 +01:00
zadam 369274ead7 new env variable to specify start note, #1532 2021-01-11 22:29:02 +01:00
zadam 7f8b19aee4 WIP partial sync requests 2021-01-10 21:56:40 +01:00
zadam cd653b9f0c add link dialog should recognize external links, closes #1521 2021-01-08 21:44:43 +01:00
zadam 9fcd659df4 mock up of search definition changes 2021-01-08 19:57:49 +01:00
zadam c08c4531db fix empty range items handling 2021-01-05 14:24:25 +01:00
zadam f8bec35893 use selected text to apply filtering for add link dialog, closes #1515 2021-01-05 14:22:11 +01:00
zadam 04e6431c09 use correct class in exported HTMLs so that content style is applied, #1504 2020-12-30 23:20:12 +01:00
zadam 7aadd57d2f search help dropdown button 2020-12-30 23:09:29 +01:00
zadam 02d9752abf refactoring of sql console into separate widgets 2020-12-29 22:27:31 +01:00
zadam 1d64129572 lazy loading of note list 2020-12-27 22:19:27 +01:00
zadam e89057a771 search note content only if not excluded by other expressions 2020-12-25 20:46:04 +01:00
zadam 95760f1d28 don't display similar notes under search 2020-12-25 13:06:58 +01:00
zadam 75c3bd8ae3 Merge remote-tracking branch 'origin/stable' 2020-12-25 13:02:05 +01:00
zadam 4f27254e64 fix top margin of images and tables which can obscure their handles 2020-12-25 13:01:35 +01:00
zadam 479d6ba964 Merge remote-tracking branch 'origin/stable' 2020-12-25 12:56:34 +01:00
zadam 577dc95ab8 convert &nbsp; into whitespace also for large notes 2020-12-25 12:55:16 +01:00
zadam a266d6a3d5 don't strip tags for very large text notes, #1500 2020-12-24 23:37:21 +01:00
zadam 749b6cb57e don't strip tags for very large text notes, #1500 2020-12-24 23:33:42 +01:00
zadam 9f472b353a simplified table stats 2020-12-23 21:22:41 +01:00
zadam 4c614aee90 note paths CSS tweaks 2020-12-23 21:03:01 +01:00
zadam f17be0ef9b Merge remote-tracking branch 'origin/stable' 2020-12-22 22:38:37 +01:00
zadam b0b2951ff6 cleanup 2020-12-22 22:30:04 +01:00
zadam 1f3d73b9fd release 0.45.7 2020-12-22 20:21:15 +01:00
zadam 7dde78e98a Merge remote-tracking branch 'origin/stable' 2020-12-21 23:19:25 +01:00
zadam bdfd760b9d fixed some encryption issues 2020-12-21 23:19:03 +01:00
zadam 8c0662ab82 fix displaying protected notes outside of protected session 2020-12-21 23:10:08 +01:00
zadam cc3addebd4 date notes respect their parent's isProtected status, #1483 2020-12-21 23:00:39 +01:00
zadam 7133e60267 make encryption more robust in face of null values, #1483 2020-12-21 22:08:55 +01:00
zadam fc4edf4aa7 better comment for instanceName 2020-12-21 21:05:34 +01:00
zadam eaf93a70cd fix inverse relation creation, closes #1498 2020-12-21 20:55:01 +01:00
zadam a1b2e22ba5 add possibility to add whole iso date as date pattern, #1496 2020-12-20 22:49:42 +01:00
zadam f8936f3bc8 use trilium.sid as a session ID to avoid session ID conflicts 2020-12-20 22:20:21 +01:00
Steven Tang 015c9d2ccd rename session cookie from connect.sid to trilium (#1495)
to prevent collisions with other express-session apps
2020-12-20 22:18:57 +01:00
zadam 95ccfd2521 use bootstrap default monospace fonts for code notes, fixes #1489 2020-12-18 22:37:29 +01:00
zadam 6c15d299e0 isErased fixes 2020-12-18 22:35:40 +01:00
zadam b093569ec5 increase toast size limit 2020-12-18 21:23:51 +01:00
zadam f8089ba370 fixed saved search refresh 2020-12-17 21:19:52 +01:00
zadam 053162fef2 bootstrap 4.5.3 2020-12-17 15:20:20 +01:00
zadam 71bbf2eb16 close note type dropdown after click 2020-12-17 15:19:22 +01:00
zadam f723433970 fix deleting notes 2020-12-17 15:04:04 +01:00
zadam 1cc7917b6e renamed remnants of "sync" to "entity_change" 2020-12-16 22:17:42 +01:00
zadam cdc2721ac1 DB migration fixes 2020-12-16 20:58:43 +01:00
zadam 4a15127e58 removal of isErased from old entities 2020-12-16 15:05:36 +01:00
zadam c5ec57e08e cleanup of isErased obsolete usage 2020-12-16 15:01:20 +01:00
zadam d0578971f7 fix manual erasing note revisions 2020-12-16 14:36:24 +01:00
zadam 1b0bb22273 drop isDeleted index 2020-12-15 15:30:46 +01:00
zadam bf653a9a5c ckeditor 24 content styles 2020-12-15 15:18:45 +01:00
zadam 5467dc62cd extra case sensitivity tests 2020-12-15 15:15:41 +01:00
zadam 96eff4c410 fixed search tests 2020-12-15 15:09:00 +01:00
zadam 3a12181a57 search fixes WIP 2020-12-14 23:59:05 +01:00
zadam fccce2ff1e small fixes 2020-12-14 23:04:56 +01:00
zadam c949dcb449 fixes and optimizations 2020-12-14 22:12:26 +01:00
zadam 8b99f065d5 fixes of recent entity changes 2020-12-14 14:17:51 +01:00
zadam 6d7b9e0db3 erasing rows of deleted entities 2020-12-14 13:58:02 +01:00
zadam 248fa780e8 erasing rows of deleted entities 2020-12-14 13:47:33 +01:00
zadam 20c7c657da moving isErased into entity_changes 2020-12-14 13:15:32 +01:00
zadam 0a896cc19c tree fixes 2020-12-13 23:27:42 +01:00
zadam 0bb548d0d1 ckeditor 24 2020-12-13 20:27:57 +01:00
zadam de1584eab8 note list improvements 2020-12-13 20:13:57 +01:00
zadam 60e2026850 improved note list pager for many pages 2020-12-12 12:07:15 +01:00
zadam 5098dda376 load initial tree from note cache 2020-12-11 22:06:12 +01:00
zadam 35e47f866a fix root branch 2020-12-11 15:27:57 +01:00
zadam 199d89c1a6 optimizations and fixes 2020-12-11 15:24:44 +01:00
zadam be543737a9 sorting search results occurences in the note title 2020-12-11 13:54:41 +01:00
zadam 0b6fa4ab06 Merge remote-tracking branch 'origin/optimize-tree' 2020-12-10 22:54:16 +01:00
zadam 8f1b2fa226 move entity hash to entity_changes table 2020-12-10 22:53:52 +01:00
zadam 5010175b84 adding few missing isErased = 0 conditions 2020-12-10 21:56:48 +01:00
zadam 0ac42608f7 faster tree loading of many notes at once #1480 2020-12-10 21:27:21 +01:00
zadam 4633c68a0c avoid resorting children on every child add, fixes #1480 2020-12-10 16:10:10 +01:00
zadam 33571e0ef3 better logging for un/protect errors 2020-12-09 22:49:55 +01:00
zadam 31876d2cf9 fix automatically scheduled note deletion 2020-12-09 22:45:34 +01:00
zadam 81c6043cb6 fix printing notes with math, closes #1484 2020-12-09 21:59:30 +01:00
zadam 7f3ef2cb8b move entity hash to entity_changes table WIP 2020-12-07 23:04:17 +01:00
zadam 1982d054ef inherit also note type and mime from template note, closes #1475 2020-12-07 09:35:39 +01:00
zadam 16c4b8aa43 added also "sqlConsoleHome" 2020-12-07 09:19:27 +01:00
zadam e56979c482 add button to erase deleted notes now into the options 2020-12-06 22:11:49 +01:00
zadam 4078b32e9d fix "show in full text search" in jump to note dialog 2020-12-05 23:19:02 +01:00
zadam 90d33f56c3 implemented "search in subtree" 2020-12-05 23:00:28 +01:00
zadam b0e5ab7533 smaller search improvements 2020-12-04 22:57:54 +01:00
zadam 526bd81b50 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	src/public/app/widgets/attribute_list.js
2020-12-04 22:09:27 +01:00
zadam 58555b3660 release 0.45.6 2020-12-04 22:08:24 +01:00
zadam b7b1324dd0 fixed disabled prefix in case of unsafe import to conform to new attribute name pattern constraints 2020-12-04 22:05:29 +01:00
zadam a1fb84f14d unification of tooltip and note list renderers 2020-12-03 22:54:24 +01:00
zadam bc520edd19 fix usage of async .getHeaders() 2020-12-03 21:50:41 +01:00
zadam 5f4f0d3086 experimental markdown-like headings 2020-12-01 22:01:58 +01:00
zadam a68c61b2f0 improvements to saved search 2020-11-30 23:20:12 +01:00
zadam 2a6978c349 added button for entering workspace 2020-11-29 22:32:31 +01:00
zadam 1c5425c9eb workaround for filter + create child problems 2020-11-29 20:55:24 +01:00
zadam 2338a13749 added "add child note" button to note tree 2020-11-27 23:13:48 +01:00
zadam 6df6fe03fa fix display of attr detail 2020-11-27 22:38:15 +01:00
zadam e318acc977 fix incorrectly set isInheritable on inherited attrs 2020-11-27 22:33:33 +01:00
zadam b0217ee04c added new "create note" button 2020-11-27 22:21:13 +01:00
zadam 2a54ce803e layout tweaks 2020-11-27 22:02:55 +01:00
zadam 642bf9d113 layout tweaks 2020-11-27 21:57:41 +01:00
zadam 31746e7baf Merge remote-tracking branch 'origin/master' 2020-11-27 20:40:40 +01:00
zadam 48b1703725 moved "global buttons" on the tree 2020-11-27 20:40:32 +01:00
baddate 72d6440de7 add chinese version README. (#1465) 2020-11-27 08:37:08 +01:00
zadam eaed7ec86f improvements in search UI 2020-11-26 23:00:27 +01:00
zadam 02043d9109 note list is now separate widget which allows more flexibility in its usage 2020-11-25 23:18:30 +01:00
zadam b9c0823abf added workspace icon and background color 2020-11-25 20:25:55 +01:00
zadam 61f30373d4 hoisting improvements 2020-11-24 23:24:05 +01:00
zadam 9889166afc Merge remote-tracking branch 'origin/stable' 2020-11-24 23:19:16 +01:00
zadam 8ae82f5b69 fix "open in new tab" in tree context menu 2020-11-24 23:18:53 +01:00
zadam 26442f418a fix "open in new window" link context menu 2020-11-24 23:06:37 +01:00
zadam 35d5036aaa hoisting fixes 2020-11-24 22:32:22 +01:00
zadam 14f5b46ece Merge remote-tracking branch 'origin/stable' 2020-11-24 20:31:16 +01:00
zadam 23a432e7d8 don't show imageLinks in link map when they are connecting parent (text note) and child (image), closes #1461 2020-11-24 20:12:49 +01:00
zadam ac636b6649 WIP per-tab hoisting 2020-11-23 23:11:21 +01:00
zadam 52b8162d01 WIP per-tab hoisting 2020-11-23 22:52:48 +01:00
zadam 167b6974fe Merge remote-tracking branch 'origin/stable' 2020-11-23 21:20:06 +01:00
zadam 984ecaf99c show again the table handle and type around 2020-11-23 20:56:14 +01:00
zadam 21b73a86b2 show also keyboard shortcut for duplicateSubtree in context menu 2020-11-23 20:17:53 +01:00
zadam 7d8277699c add keyboard shortcut for duplicate subtree, #1451 2020-11-23 19:44:49 +01:00
zadam 4bd86a6dfa WIP per-tab hoisting 2020-11-22 23:05:02 +01:00
zadam 5bbec118e4 Merge remote-tracking branch 'origin/stable' 2020-11-22 22:48:26 +01:00
zadam 928ed7a034 add keyboard shortcut for include note, closes #1410 2020-11-22 22:44:06 +01:00
zadam 473229f03a Merge remote-tracking branch 'origin/stable' 2020-11-21 20:44:37 +01:00
zadam 882b6be580 release 0.45.5 2020-11-20 22:50:10 +01:00
zadam e5fa1e0ed5 hide table's selection handle, fixes #1448 2020-11-20 21:01:44 +01:00
zadam af1fd5bd06 improvements to collapsible section container 2020-11-19 23:02:25 +01:00
zadam c737a3adc9 Merge remote-tracking branch 'origin/stable' 2020-11-19 21:42:49 +01:00
zadam 1047aecfbd template subtree is now deep-duplicated on template assignment 2020-11-19 14:29:26 +01:00
zadam 314e0a453f "duplicate note" now duplicates whole note subtree instead of just individual note 2020-11-19 14:06:32 +01:00
zadam 8ec476ba96 fix ENEX import note saving 2020-11-19 13:30:39 +01:00
zadam 8e2bf7795c Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	src/routes/api/attributes.js
#	src/routes/api/sender.js
2020-11-18 22:42:37 +01:00
zadam a346ba7038 removed outstandingPushes counting which is not needed 2020-11-18 22:30:00 +01:00
zadam fd6b2f1e7f enex import cleanup 2020-11-18 21:30:56 +01:00
zadam 6662b9dbf9 rate limiting to improve responsiveness during / after import 2020-11-17 23:05:05 +01:00
zadam c0a29ede05 small fixes to ENEX import 2020-11-17 22:35:20 +01:00
zadam 845907b8d2 fix recent changes to show all deleted notes (also without note revisions) 2020-11-17 21:06:38 +01:00
zadam b12008e313 more robust search in face of inconsistent cache 2020-11-17 20:44:38 +01:00
zadam a108ef91a0 fixed .createNoteLink API documentation 2020-11-17 20:11:10 +01:00
ohdearaugustin 4fd9e7f14f Drop privileges (#1422) 2020-11-15 20:51:47 +01:00
zadam b5480b4137 fix sync check - it was always reporting success even in failure cases 2020-11-15 20:50:24 +01:00
zadam 47d61c416d release 0.45.4 2020-11-12 22:15:23 +01:00
zadam 6c57b2220f fix export download, fixes #1411 2020-11-12 22:13:59 +01:00
zadam 99f01b9ccf fix overwriting / deleting auto links, closes #1406 2020-11-11 23:15:48 +01:00
zadam d5a9abd911 fix duplicating relations after change, closes #1405 2020-11-11 23:02:14 +01:00
zadam a3a2bc0a74 fix "reviving" deleted attributes, closes #1404 2020-11-11 22:44:13 +01:00
zadam 7859aca006 Merge remote-tracking branch 'origin/stable' 2020-11-11 21:28:11 +01:00
zadam 402e5c4d81 release 0.45.3 2020-11-10 22:54:40 +01:00
zadam 5157fc15e9 electron update 2020-11-10 22:54:03 +01:00
zadam 1403acd808 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	src/public/app/services/note_content_renderer.js
2020-11-08 21:06:48 +01:00
zadam 4bd87b1796 update ckeditor5-math which fixes focus and placeholder issues 2020-11-07 21:28:12 +01:00
zadam ce33eb3abd fix wrong behavior when customResourceProvider has empty value, fixes #1393 2020-11-06 21:52:57 +01:00
zadam f988935a33 fixed & refactored opening/downloading file notes 2020-11-05 21:26:24 +01:00
zadam 9b05d30b47 update boxicons to 2.0.7 2020-11-03 22:44:50 +01:00
Praxis | Darian e258de329c Use user theme on mobile (#1374) 2020-11-02 20:53:43 +01:00
zadam 044bcf6f05 Merge remote-tracking branch 'origin/stable' 2020-11-01 21:25:38 +01:00
zadam 9e97fdcc49 convert H1 to H2 also during import 2020-11-01 20:38:39 +01:00
zadam 2c028f7c45 new CollapsibleSectionContainer WIP 2020-10-31 22:47:15 +01:00
zadam 435200ec5a new CollapsibleSectionContainer WIP 2020-10-30 22:57:26 +01:00
zadam 3d808d638a Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	package-lock.json
#	package.json
#	src/public/app/services/note_content_renderer.js
2020-10-30 15:40:57 +01:00
zadam 8e8148ce42 fix math rendering in note revisions, fixes #1359 2020-10-30 15:06:11 +01:00
zadam bb0ee0b36c expand all / collapse all will re-render list instead of doing that manually 2020-10-26 22:52:12 +01:00
zadam b70ee742e8 Merge remote-tracking branch 'origin/math2'
# Conflicts:
#	package-lock.json
2020-10-26 21:44:18 +01:00
zadam 4281111344 initial integration of note list renderer into search results 2020-10-25 23:02:12 +01:00
zadam 37e111d8a9 trim content for grid view 2020-10-25 11:00:27 +01:00
zadam 4202af96c8 image scaling improvements 2020-10-25 00:12:07 +02:00
zadam d0efd67d5e grid view improvements, remembering grid/list status 2020-10-24 23:50:32 +02:00
zadam aeb6c34d27 note list rendering WIP 2020-10-24 00:02:38 +02:00
zadam a3f4fc7762 fix case where parents of templates are not loaded 2020-10-24 00:02:10 +02:00
zadam 6517188b39 fix tree loading (partial revert of previous commit) 2020-10-24 00:00:24 +02:00
zadam c4acecd510 fix loading unnecessary notes into the cache 2020-10-23 23:19:29 +02:00
zadam c7d8bddf24 conversion of note list renderer to class 2020-10-23 22:11:39 +02:00
zadam 29c1d05540 frontend dayjs update 2020-10-23 21:24:16 +02:00
zadam 55f04436c0 saving expanded status as label 2020-10-23 00:11:44 +02:00
zadam 4ce2eaa919 note list paging 2020-10-22 23:50:52 +02:00
zadam 489e064932 expand/collapse all 2020-10-22 23:07:35 +02:00
zadam 1369603ed9 note list renderer WIP 2020-10-22 22:49:22 +02:00
zadam 79431d8b4b Merge remote-tracking branch 'origin/master'
# Conflicts:
#	package-lock.json
#	package.json
#	src/routes/api/sender.js
2020-10-21 23:23:55 +02:00
zadam 4591899df0 Merge branch 'math2'
# Conflicts:
#	package-lock.json
#	package.json
2020-10-21 23:23:19 +02:00
zadam dfa7d3f186 Update README.md 2020-10-21 22:40:34 +02:00
Casey Doran a7c13ceacc if the sender request contains a label and/or a labelValue, apply it (#1310) 2020-10-16 19:40:30 +02:00
zadam b2b3c80192 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	package-lock.json
#	package.json
2020-10-15 20:47:10 +02:00
zadam badb678b69 note list renderer improvements, still WIP 2020-10-08 23:46:48 +02:00
zadam 5933b17b47 Merge remote-tracking branch 'origin/stable'
# Conflicts:
#	libraries/ckeditor/ckeditor.js.map
2020-10-07 23:29:10 +02:00
zadam 761912c3bd basic separation of note list renderer from book type 2020-10-07 23:08:17 +02:00
zadam 99f35b2588 Merge remote-tracking branch 'origin/stable' 2020-10-06 21:03:28 +02:00
FliegendeWurst 51eb9f18f7 Jump to note dialog: fix duplicate event triggers (#1283)
This fixes an issue where the current path (above the note tree) displays parts multiple times, e.g. A / A / B / B instead of A / B.

The same issue could also affect other event handlers, but I didn't look around the codebase further.
2020-10-02 21:12:13 +02:00
zadam 4b8ca31091 Merge remote-tracking branch 'origin/stable' 2020-09-30 22:50:33 +02:00
zadam 2706f1b02f Merge remote-tracking branch 'origin/stable' 2020-09-26 23:28:50 +02:00
zadam 6710476768 new saved search UI wip 2020-09-25 23:52:24 +02:00
zadam de30095737 change salts on password change + more robust handling of decryption failures 2020-09-25 20:55:45 +02:00
541 changed files with 31281 additions and 15316 deletions
-3
View File
@@ -6,9 +6,6 @@
<option name="TAB_SIZE" value="2" />
</value>
</option>
<H2CodeStyleSettings version="5">
<option name="USE_GENERAL_STYLE" value="false" />
</H2CodeStyleSettings>
<JSCodeStyleSettings version="0">
<option name="USE_EXPLICIT_JS_EXTENSION" value="TRUE" />
</JSCodeStyleSettings>
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JavaScriptLibraryMappings">
<file url="PROJECT" libraries="{@types/jquery}" />
<includedPredefinedLibrary name="Node.js Core" />
</component>
</project>
+1 -1
View File
@@ -3,7 +3,7 @@
<component name="JavaScriptSettings">
<option name="languageLevel" value="ES6" />
</component>
<component name="ProjectRootManager">
<component name="ProjectRootManager" version="2" languageLevel="JDK_16" project-jdk-name="openjdk-16" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>
+1
View File
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="SqlDialectMappings">
<file url="file://$PROJECT_DIR$" dialect="SQLite" />
<file url="PROJECT" dialect="SQLite" />
</component>
</project>
Generated
+1 -2
View File
@@ -2,6 +2,5 @@
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
</component>
</project>
</project>
+2
View File
@@ -23,5 +23,7 @@ RUN set -x \
# Bundle app source
COPY . .
USER node
EXPOSE 8080
CMD [ "node", "./src/www" ]
+60
View File
@@ -0,0 +1,60 @@
# Trilium注意事项
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md)
[![Join the chat at https://gitter.im/trilium-notes/Lobby](https://badges.gitter.im/trilium-notes/Lobby.svg)](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
Trilium Notes是一个分层的笔记应用程序,专注于建立大型个人知识库。请参阅[屏幕截图](https://github.com/zadam/trilium/wiki/Screenshot-tour)以快速了解:
![](https://raw.githubusercontent.com/wiki/zadam/trilium/images/screenshot.png)
## 特性
* 笔记可以排列成任意深的树。单个笔记可以放在树中的多个位置(请参阅[克隆](https://github.com/zadam/trilium/wiki/Cloning-notes)
* 丰富的所见即所得笔记编辑功能,包括带有markdown[自动格式化功能的](https://github.com/zadam/trilium/wiki/Text-notes#autoformat)表格,图像和[数学](https://github.com/zadam/trilium/wiki/Text-notes#math-support)
* 支持编辑[使用源代码的笔记](https://github.com/zadam/trilium/wiki/Code-notes),包括语法高亮显示
* 笔记之间快速[导航](https://github.com/zadam/trilium/wiki/Note-navigation),全文搜索和[笔记挂起](https://github.com/zadam/trilium/wiki/Note-hoisting)
* 无缝[笔记版本控制](https://github.com/zadam/trilium/wiki/Note-revisions)
* 笔记[属性](https://github.com/zadam/trilium/wiki/Attributes)可用于笔记组织,查询和高级[脚本编写](https://github.com/zadam/trilium/wiki/Scripts)
* [同步](https://github.com/zadam/trilium/wiki/Synchronization)与自托管同步服务器
* 具有按笔记粒度的强大的[笔记加密](https://github.com/zadam/trilium/wiki/Protected-notes)
* [关系图](https://github.com/zadam/trilium/wiki/Relation-map)和[链接图](https://github.com/zadam/trilium/wiki/Link-map),用于可视化笔记及其关系
* [脚本](https://github.com/zadam/trilium/wiki/Scripts)-请参阅[高级展示](https://github.com/zadam/trilium/wiki/Advanced-showcases)
* 可用性和性能均能很好地扩展至超过10万个笔记
* 针对智能手机和平板电脑进行触摸优化的[移动前端](https://github.com/zadam/trilium/wiki/Mobile-frontend)
* [夜间主题](https://github.com/zadam/trilium/wiki/Themes)
* [Evernote](https://github.com/zadam/trilium/wiki/Evernote-import)和[Markdown导入导出](https://github.com/zadam/trilium/wiki/Markdown)
* [Web Clipper](https://github.com/zadam/trilium/wiki/Web-clipper)可轻松保存Web内容
## 构建
Trilium是作为桌面应用程序(Linux和Windows)或服务器上托管的Web应用程序(Linux)提供的。Mac OS桌面版本可用,但[不受支持](https://github.com/zadam/trilium/wiki/FAQ#mac-os-support)。
* 如果要在桌面上使用Trilium,请从[最新版本](https://github.com/zadam/trilium/releases/latest)下载适用于您平台的二进制[版本](https://github.com/zadam/trilium/releases/latest),解压缩该软件包并运行`trilium`可执行文件。
* 如果要在服务器上安装Trilium,请遵循[此页面](https://github.com/zadam/trilium/wiki/Server-installation)。
* 当前仅支持(经过测试)最新的Chrome和Firefox浏览器。
## 文档
[有关文档页面的完整列表,请参见Wiki。](https://github.com/zadam/trilium/wiki/)
您还可以阅读[个人知识库模式](https://github.com/zadam/trilium/wiki/Patterns-of-personal-knowledge-base),以获取有关如何使用Trilium的灵感。
## 贡献
使用基于浏览器的开发环境
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/zadam/trilium)
或在本地克隆并运行
```
npm install
npm run start-server
```
## 致谢
* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - 市场上最好的所见即所得编辑器,互动性强且聆听能力强的团队
* [FancyTree](https://github.com/mar10/fancytree) - 一个非常丰富的关于树的库,强大的没有对手。没有它,Trilium Notes将不会如此。
* [CodeMirror](https://github.com/codemirror/CodeMirror) - 支持大量语言的代码编辑器
* [jsPlumb](https://github.com/jsplumb/jsplumb)强大的可视化连接库。- 用于[关系图](https://github.com/zadam/trilium/wiki/Relation-map)和[链接图](https://github.com/zadam/trilium/wiki/Link-map)
+8 -2
View File
@@ -1,5 +1,7 @@
# Trilium Notes
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md)
[![Join the chat at https://gitter.im/trilium-notes/Lobby](https://badges.gitter.im/trilium-notes/Lobby.svg)](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
Trilium Notes is a hierarchical note taking application with focus on building large personal knowledge bases. See [screenshots](https://github.com/zadam/trilium/wiki/Screenshot-tour) for quick overview:
@@ -8,7 +10,7 @@ Trilium Notes is a hierarchical note taking application with focus on building l
## Features
* Notes can be arranged into arbitrarily deep tree. Single note can be placed into multiple places in the tree (see [cloning](https://github.com/zadam/trilium/wiki/Cloning-notes))
* Rich WYSIWYG note editing including e.g. tables and images with markdown [autoformat](https://github.com/zadam/trilium/wiki/Text-notes#autoformat)
* Rich WYSIWYG note editing including e.g. tables, images and [math](https://github.com/zadam/trilium/wiki/Text-notes#math-support) with markdown [autoformat](https://github.com/zadam/trilium/wiki/Text-notes#autoformat)
* Support for editing [notes with source code](https://github.com/zadam/trilium/wiki/Code-notes), including syntax highlighting
* Fast and easy [navigation between notes](https://github.com/zadam/trilium/wiki/Note-navigation), full text search and [note hoisting](https://github.com/zadam/trilium/wiki/Note-hoisting)
* Seamless [note versioning](https://github.com/zadam/trilium/wiki/Note-revisions)
@@ -54,4 +56,8 @@ npm run start-server
* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - best WYSIWYG editor on the market, very interactive and listening team
* [FancyTree](https://github.com/mar10/fancytree) - very feature rich tree library without real competition. Trilium Notes would not be the same without it.
* [CodeMirror](https://github.com/codemirror/CodeMirror) - code editor with support for huge amount of languages
* [jsPlumb](https://github.com/jsplumb/jsplumb) - visual connectivity library without competition. Used in [relation maps](https://github.com/zadam/trilium/wiki/Relation-map) and [link maps](https://github.com/zadam/trilium/wiki/Link-map)
* [jsPlumb](https://github.com/jsplumb/jsplumb) - visual connectivity library without competition. Used in [relation maps](https://github.com/zadam/trilium/wiki/Relation-map) and [link maps](https://github.com/zadam/trilium/wiki/Link-map)
## License
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+63
View File
@@ -0,0 +1,63 @@
# Trilium Notes
[English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md)
[![Join the chat at https://gitter.im/trilium-notes/Lobby](https://badges.gitter.im/trilium-notes/Lobby.svg)](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
Trilium Notes – это приложение для заметок с иерархической структурой, ориентированное на создание больших персональных баз знаний. Для быстрого ознакомления посмотрите [скриншот-тур](https://github.com/zadam/trilium/wiki/Screenshot-tour):
![](https://raw.githubusercontent.com/wiki/zadam/trilium/images/screenshot.png)
## Возможности
* Заметки можно расположить в виде дерева произвольной глубины. Отдельную заметку можно разместить в нескольких местах дерева (см. [клонирование](https://github.com/zadam/trilium/wiki/Cloning-notes))
* Продвинутый визуальный редактор (WYSIWYG) позволяет работать с таблицами, изображениями, [формулами](https://github.com/zadam/trilium/wiki/Text-notes#math-support) и разметкой markdown, имеет [автоформатирование](https://github.com/zadam/trilium/wiki/Text-notes#autoformat)
* Редактирование [заметок с исходным кодом](https://github.com/zadam/trilium/wiki/Code-notes), включая подсветку синтаксиса
* Быстрая и простая [навигация между заметками](https://github.com/zadam/trilium/wiki/Note-navigation), полнотекстовый поиск и [выделение заметок](https://github.com/zadam/trilium/wiki/Note-hoisting) в отдельный блок
* Бесшовное [версионирование заметки](https://github.com/zadam/trilium/wiki/Note-revisions)
* Специальные [атрибуты](https://github.com/zadam/trilium/wiki/Attributes) позволяют гибко организовать структуру, используются для поиска и продвинутого [скриптинга](https://github.com/zadam/trilium/wiki/Scripts)
* [Синхронизация](https://github.com/zadam/trilium/wiki/Synchronization) заметок со своим сервером
* Надёжное [шифрование](https://github.com/zadam/trilium/wiki/Protected-notes) с детализацией по каждой заметке
* [Карты связей](https://github.com/zadam/trilium/wiki/Relation-map) и [карты ссылок](https://github.com/zadam/trilium/wiki/Link-map) для визуализации их взяимосвязей
* [Скрипты](https://github.com/zadam/trilium/wiki/Scripts) - см. [продвинутые примеры](https://github.com/zadam/trilium/wiki/Advanced-showcases)
* Хорошо масштабируется, как по удобству использования, так и по производительности до 100000 заметок
* Оптимизированный [мобильный фронтенд](https://github.com/zadam/trilium/wiki/Mobile-frontend) смартфонов и планшетов
* [Темная тема](https://github.com/zadam/trilium/wiki/Themes)
* Импорт и экпорт [Evernote](https://github.com/zadam/trilium/wiki/Evernote-import) и данных в [markdown](https://github.com/zadam/trilium/wiki/Markdown) формате
* [Web Clipper](https://github.com/zadam/trilium/wiki/Web-clipper) для удобного сохранения веб-контента
## Сборки
Trilium предоставляется в виде десктопного приложения (Linux и Windows) или веб-приложения, размещенного на вашем сервере (Linux). Доступна сборка Mac OS, но она [не поддерживается](https://github.com/zadam/trilium/wiki/FAQ#mac-os-support).
* Если вы хотите использовать Trilium на десктопе, скачайте архив для своей платформы со страницы [релизов](https://github.com/zadam/trilium/releases/latest), распакуйте и запустите исполняемый файл ```trilium```.
* Если вы хотите установить Trilium на сервере, следуйте этой [инструкции](https://github.com/zadam/trilium/wiki/Server-installation).
* В данный момент поддерживаются (протестированы) последние версии браузеров Chrome и Firefox.
## Документация
[Полный список страниц документации доступен в Wiki.](https://github.com/zadam/trilium/wiki/)
Вы также можете ознакомиться с [шаблонами персональных баз знаний](https://github.com/zadam/trilium/wiki/Patterns-of-personal-knowledge-base), чтобы получить представление о том, как можно использовать Trilium.
## Участвуйте в разработке
Используйте онлайн среду разработки в браузере
[![Открыть в Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/zadam/trilium)
Или склонируйте на своё устройство и запустите
```
npm install
npm run start-server
```
## Благодарности
* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - лучший WYSIWYG редактор, очень активная и внимательная команда.
* [FancyTree](https://github.com/mar10/fancytree) - многофункциональная библиотека для создания древовидных структур. Вне конкуренции. Без него Trilium Notes не были бы таким.
* [CodeMirror](https://github.com/codemirror/CodeMirror) - редактор кода с поддержкой огромного количество языков.
* [jsPlumb](https://github.com/jsplumb/jsplumb) - библиотека для визуализации связей. Вне конкуренции. Используется в [картах связей](https://github.com/zadam/trilium/wiki/Relation-map) и [картах ссылок](https://github.com/zadam/trilium/wiki/Link-map).
## Лицензия
Эта программа является бесплатным программным обеспечением: вы можете распространять и/или изменять ее в соответствии с условиями GNU Affero General Public License, опубликованной Free Software Foundation, либо версии 3 Лицензии, либо (по вашему выбору) любой более поздней версии.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+5 -2
View File
@@ -27,8 +27,11 @@ cp images/app-icons/png/128x128.png $BUILD_DIR/icon.png
# removing software WebGL binaries because they are pretty huge and not necessary
rm -r $BUILD_DIR/swiftshader
cp bin/tpl/portable-trilium.sh $BUILD_DIR/
chmod 755 $BUILD_DIR/portable-trilium.sh
cp bin/tpl/trilium-portable.sh $BUILD_DIR/
chmod 755 $BUILD_DIR/trilium-portable.sh
cp bin/tpl/trilium-no-cert-check.sh $BUILD_DIR/
chmod 755 $BUILD_DIR/trilium-no-cert-check.sh
echo "Packaging linux x64 electron distribution..."
VERSION=`jq -r ".version" package.json`
+2 -2
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
PKG_DIR=dist/trilium-linux-x64-server
NODE_VERSION=12.19.0
NODE_VERSION=14.16.1
if [ "$1" != "DONTCOPY" ]
then
@@ -10,7 +10,7 @@ fi
cd dist
wget https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.xz
tar xvfJ node-v${NODE_VERSION}-linux-x64.tar.xz
tar xfJ node-v${NODE_VERSION}-linux-x64.tar.xz
rm node-v${NODE_VERSION}-linux-x64.tar.xz
cd ..
+2 -1
View File
@@ -25,7 +25,8 @@ mv "./dist/Trilium Notes-win32-x64" $BUILD_DIR
# removing software WebGL binaries because they are pretty huge and not necessary
rm -r $BUILD_DIR/swiftshader
cp bin/tpl/portable-trilium.bat $BUILD_DIR/
cp bin/tpl/trilium-portable.bat $BUILD_DIR/
cp bin/tpl/trilium-no-cert-check.bat $BUILD_DIR/
echo "Zipping windows x64 electron distribution..."
VERSION=`jq -r ".version" package.json`
+2 -2
View File
@@ -5,7 +5,7 @@ if [[ $# -eq 0 ]] ; then
exit 1
fi
npm run webpack
n exec 12 npm run webpack
DIR=$1
@@ -27,7 +27,7 @@ cp -r electron.js $DIR/
cp webpack-* $DIR/
# run in subshell (so we return to original dir)
(cd $DIR && npm install --only=prod)
(cd $DIR && n exec 12 npm install --only=prod)
# cleanup of useless files in dependencies
rm -r $DIR/node_modules/image-q/demo
+3 -3
View File
@@ -8,9 +8,9 @@ fi
VERSION=$1
SERIES=${VERSION:0:4}-latest
sudo docker push zadam/trilium:$VERSION
sudo docker push zadam/trilium:$SERIES
docker push zadam/trilium:$VERSION
docker push zadam/trilium:$SERIES
if [[ $1 != *"beta"* ]]; then
sudo docker push zadam/trilium:latest
docker push zadam/trilium:latest
fi
+12 -39
View File
@@ -55,47 +55,20 @@ echo "Creating release in GitHub"
EXTRA=
if [[ $TAG == *"beta"* ]]; then
EXTRA=--pre-release
EXTRA=--prerelease
fi
github-release release \
--tag $TAG \
--name "$TAG release" $EXTRA
echo "$GITHUB_CLI_AUTH_TOKEN" | gh auth login --with-token
echo "Uploading debian x64 package"
github-release upload \
--tag $TAG \
--name "$DEBIAN_X64_BUILD" \
--file "dist/$DEBIAN_X64_BUILD"
echo "Uploading linux x64 build"
github-release upload \
--tag $TAG \
--name "$LINUX_X64_BUILD" \
--file "dist/$LINUX_X64_BUILD"
echo "Uploading windows x64 build"
github-release upload \
--tag $TAG \
--name "$WINDOWS_X64_BUILD" \
--file "dist/$WINDOWS_X64_BUILD"
echo "Uploading mac x64 build"
github-release upload \
--tag $TAG \
--name "$MAC_X64_BUILD" \
--file "dist/$MAC_X64_BUILD"
echo "Uploading linux x64 server build"
github-release upload \
--tag $TAG \
--name "$SERVER_BUILD" \
--file "dist/$SERVER_BUILD"
gh release create "$TAG" \
--title "$TAG release" \
--notes "" \
$EXTRA \
"dist/$DEBIAN_X64_BUILD" \
"dist/$LINUX_X64_BUILD" \
"dist/$WINDOWS_X64_BUILD" \
"dist/$MAC_X64_BUILD" \
"dist/$SERVER_BUILD"
echo "Building docker image"
@@ -105,4 +78,4 @@ echo "Pushing docker image to dockerhub"
bin/push-docker-image.sh $VERSION
echo "Release finished!"
echo "Release finished!"
+4
View File
@@ -0,0 +1,4 @@
SET DIR=%~dp0
set NODE_TLS_REJECT_UNAUTHORIZED=0
cd %DIR%
start trilium.exe
+7
View File
@@ -0,0 +1,7 @@
#!/usr/bin/env sh
DIR=`dirname "$0"`
export NODE_TLS_REJECT_UNAUTHORIZED=0
"$DIR/trilium"
+4 -1
View File
@@ -1,10 +1,13 @@
[General]
# Instance name can be used to distinguish between different instances
# 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
BIN
View File
Binary file not shown.
-11
View File
@@ -1,11 +0,0 @@
DROP TABLE IF EXISTS anchors;
DROP TABLE IF EXISTS attachments;
DROP TABLE IF EXISTS bookmarks;
DROP TABLE IF EXISTS custom_properties;
DROP TABLE IF EXISTS deletions;
DROP TABLE IF EXISTS deletions_attachments;
DROP TABLE IF EXISTS formatting;
DROP TABLE IF EXISTS icons;
DROP TABLE IF EXISTS tags;
DROP TABLE IF EXISTS tags_notes;
DROP TABLE IF EXISTS tasks;
@@ -1,3 +0,0 @@
CREATE TABLE notes_mig AS SELECT note_id, note_title, note_text, note_clone_id, date_created, date_modified, encryption FROM notes;
DROP TABLE notes;
ALTER TABLE notes_mig RENAME TO notes;
@@ -1 +0,0 @@
ALTER TABLE notes ADD COLUMN is_deleted INTEGER NOT NULL DEFAULT 0
@@ -1 +0,0 @@
ALTER TABLE notes_tree ADD COLUMN date_modified INTEGER NOT NULL DEFAULT 0
-1
View File
@@ -1 +0,0 @@
DELETE FROM options WHERE opt_name IN ('is_readonly', 'prop_modified', 'doc_title', 'doc_UID', 'format_version', 'flask_secret_key')
@@ -1,3 +0,0 @@
CREATE TABLE notes_history_mig AS SELECT id, note_id, note_title, note_text, date_modified AS date_modified_from, date_modified AS date_modified_to FROM notes_history;
DROP TABLE notes_history;
ALTER TABLE notes_history_mig RENAME TO notes_history;
@@ -1 +0,0 @@
ALTER TABLE notes_history ADD COLUMN encryption INTEGER DEFAULT 0
-15
View File
@@ -1,15 +0,0 @@
CREATE TABLE `notes_history_mig` (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
`note_id` INT,
`note_title` TEXT,
`note_text` TEXT,
`date_modified_from` INT,
`date_modified_to` INT,
`encryption` INTEGER DEFAULT 0
);
INSERT INTO notes_history (id, note_id, note_title, note_text, date_modified_from, date_modified_to, encryption)
SELECT id, note_id, note_title, note_text, date_modified_from, date_modified_to, encryption FROM notes_history;
DROP TABLE notes_history;
ALTER TABLE notes_history_mig RENAME TO notes_history;
-41
View File
@@ -1,41 +0,0 @@
CREATE INDEX `IDX_notes_history_note_id` ON `notes_history` (
`note_id`
);
CREATE INDEX `IDX_images_note_id` ON `images` (
`note_id`
);
CREATE INDEX `IDX_links_note_id` ON `links` (
`note_id`
);
CREATE INDEX `IDX_audit_log_note_id` ON `audit_log` (
`note_id`
);
CREATE INDEX `IDX_audit_log_date_modified` ON `audit_log` (
`date_modified`
);
CREATE TABLE `notes_mig` (
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`note_clone_id` TEXT,
`date_created` INT,
`date_modified` INT,
`encryption` INT,
`is_deleted` INTEGER NOT NULL DEFAULT 0,
PRIMARY KEY(`note_id`)
);
INSERT INTO notes_mig (note_id, note_title, note_text, note_clone_id, date_created, date_modified, encryption)
SELECT note_id, note_title, note_text, note_clone_id, date_created, date_modified, encryption FROM notes;
DROP TABLE notes;
ALTER TABLE notes_mig RENAME TO notes;
CREATE INDEX `IDX_notes_is_deleted` ON `notes` (
`is_deleted`
);
@@ -1,5 +0,0 @@
ALTER TABLE notes_tree ADD COLUMN is_deleted INTEGER NOT NULL DEFAULT 0;
CREATE INDEX `IDX_notes_tree_is_deleted` ON `notes_tree` (
`is_deleted`
);
@@ -1 +0,0 @@
INSERT INTO options (opt_name, opt_value) VALUES ('last_synced', 0)
@@ -1,5 +0,0 @@
CREATE UNIQUE INDEX `IDX_notes_history_note_from_to` ON `notes_history` (
`note_id`,
`date_modified_from`,
`date_modified_to`
);
@@ -1,3 +0,0 @@
UPDATE options SET opt_name = 'last_synced_pull' WHERE opt_name = 'last_synced';
INSERT INTO options (opt_name, opt_value) VALUES ('last_synced_push', 0);
@@ -1,16 +0,0 @@
CREATE TABLE `audit_log_mig` (
`id` TEXT NOT NULL PRIMARY KEY,
`date_modified` INTEGER NOT NULL,
`category` TEXT NOT NULL,
`browser_id` TEXT,
`note_id` TEXT,
`change_from` TEXT,
`change_to` TEXT,
`comment` TEXT
);
INSERT INTO audit_log_mig (id, date_modified, category, browser_id, note_id, change_from, change_to)
SELECT id, date_modified, category, browser_id, note_id, change_from, change_to FROM audit_log;
DROP TABLE audit_log;
ALTER TABLE audit_log_mig RENAME TO audit_log;
-6
View File
@@ -1,6 +0,0 @@
UPDATE notes SET note_id = substr(note_id, 0, 22);
UPDATE notes_tree SET note_id = substr(note_id, 0, 22), note_pid = substr(note_pid, 0, 22);
UPDATE notes_history SET note_id = substr(note_id, 0, 22);
UPDATE audit_log SET note_id = substr(note_id, 0, 22);
UPDATE links SET note_id = substr(note_id, 0, 22);
UPDATE images SET note_id = substr(note_id, 0, 22);
-6
View File
@@ -1,6 +0,0 @@
UPDATE notes SET note_id = substr(note_id, 0, 13);
UPDATE notes_tree SET note_id = substr(note_id, 0, 13), note_pid = substr(note_pid, 0, 13);
UPDATE notes_history SET note_id = substr(note_id, 0, 13);
UPDATE audit_log SET note_id = substr(note_id, 0, 13);
UPDATE links SET note_id = substr(note_id, 0, 13);
UPDATE images SET note_id = substr(note_id, 0, 13);
-1
View File
@@ -1 +0,0 @@
INSERT INTO options (opt_name, opt_value) VALUES ('document_id', '');
-1
View File
@@ -1 +0,0 @@
INSERT INTO options (opt_name, opt_value) VALUES ('document_secret', '');
@@ -1 +0,0 @@
ALTER TABLE options ADD COLUMN date_modified INTEGER NOT NULL DEFAULT 0
-15
View File
@@ -1,15 +0,0 @@
CREATE TABLE `sync` (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
`entity_name` TEXT NOT NULL,
`entity_id` TEXT NOT NULL,
`sync_date` INTEGER NOT NULL
);
CREATE UNIQUE INDEX `IDX_sync_entity_name_id` ON `sync` (
`entity_name`,
`entity_id`
);
CREATE INDEX `IDX_sync_sync_date` ON `sync` (
`sync_date`
);
@@ -1 +0,0 @@
ALTER TABLE sync ADD COLUMN source_id TEXT
@@ -1,7 +0,0 @@
ALTER TABLE notes_history ADD COLUMN note_history_id TEXT;
UPDATE notes_history SET note_history_id = id;
CREATE UNIQUE INDEX `IDX_note_history_note_history_id` ON `notes_history` (
`note_history_id`
);
@@ -1,27 +0,0 @@
CREATE TABLE `notes_history_mig` (
`note_history_id` TEXT NOT NULL PRIMARY KEY,
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`encryption` INT,
`date_modified_from` INT,
`date_modified_to` INT
);
INSERT INTO notes_history_mig (note_history_id, note_id, note_title, note_text, encryption, date_modified_from, date_modified_to)
SELECT note_history_id, note_id, note_title, note_text, encryption, date_modified_from, date_modified_to FROM notes_history;
DROP TABLE notes_history;
ALTER TABLE notes_history_mig RENAME TO notes_history;
CREATE INDEX `IDX_notes_history_note_id` ON `notes_history` (
`note_id`
);
CREATE INDEX `IDX_notes_history_note_date_modified_from` ON `notes_history` (
`date_modified_from`
);
CREATE INDEX `IDX_notes_history_note_date_modified_to` ON `notes_history` (
`date_modified_to`
);
@@ -1,11 +0,0 @@
CREATE TABLE `options_mig` (
`opt_name` TEXT NOT NULL PRIMARY KEY,
`opt_value` TEXT,
`date_modified` INT
);
INSERT INTO options_mig (opt_name, opt_value, date_modified)
SELECT opt_name, opt_value, date_modified FROM options;
DROP TABLE options;
ALTER TABLE options_mig RENAME TO options;
-10
View File
@@ -1,10 +0,0 @@
CREATE TABLE `event_log` (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
`note_id` TEXT,
`comment` TEXT,
`date_added` INTEGER NOT NULL
);
CREATE INDEX `IDX_event_log_date_added` ON `event_log` (
`date_added`
);
@@ -1,4 +0,0 @@
CREATE TABLE `recent_notes` (
`note_id` TEXT NOT NULL PRIMARY KEY,
`date_accessed` INTEGER NOT NULL
);
@@ -1 +0,0 @@
ALTER TABLE recent_notes ADD COLUMN is_deleted INT;
@@ -1,52 +0,0 @@
UPDATE audit_log SET category = 'PROTECTED' WHERE category = 'ENCRYPTION';
DELETE FROM notes WHERE note_clone_id IS NOT NULL AND note_clone_id != '';
CREATE TABLE `notes_mig` (
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`date_created` INT,
`date_modified` INT,
`is_protected` INT NOT NULL DEFAULT 0,
`is_deleted` INT NOT NULL DEFAULT 0,
PRIMARY KEY(`note_id`)
);
INSERT INTO notes_mig (note_id, note_title, note_text, date_created, date_modified, is_protected, is_deleted)
SELECT note_id, note_title, note_text, date_created, date_modified, encryption, is_deleted FROM notes;
DROP TABLE notes;
ALTER TABLE notes_mig RENAME TO notes;
CREATE INDEX `IDX_notes_is_deleted` ON `notes` (
`is_deleted`
);
CREATE TABLE `notes_history_mig` (
`note_history_id` TEXT NOT NULL PRIMARY KEY,
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`is_protected` INT,
`date_modified_from` INT,
`date_modified_to` INT
);
INSERT INTO notes_history_mig (note_history_id, note_id, note_title, note_text, is_protected, date_modified_from, date_modified_to)
SELECT note_history_id, note_id, note_title, note_text, encryption, date_modified_from, date_modified_to FROM notes_history;
DROP TABLE notes_history;
ALTER TABLE notes_history_mig RENAME TO notes_history;
CREATE INDEX `IDX_notes_history_note_id` ON `notes_history` (
`note_id`
);
CREATE INDEX `IDX_notes_history_note_date_modified_from` ON `notes_history` (
`date_modified_from`
);
CREATE INDEX `IDX_notes_history_note_date_modified_to` ON `notes_history` (
`date_modified_to`
);
@@ -1 +0,0 @@
UPDATE options SET opt_name = 'protected_session_timeout' WHERE opt_name = 'encryption_session_timeout';
-1
View File
@@ -1 +0,0 @@
module.exports = async () => console.log("heeeelllooo!!!");
@@ -1,44 +0,0 @@
const sql = require('../services/sql');
const data_encryption = require('../services/data_encryption');
const password_encryption = require('../services/password_encryption');
const readline = require('readline');
const cl = readline.createInterface(process.stdin, process.stdout);
function question(q) {
return new Promise( (res, rej) => {
cl.question( q, answer => {
res(answer);
})
});
}
module.exports = async () => {
const password = await question("Enter password: ");
const dataKey = await password_encryption.getDecryptedDataKey(password);
const protectedNotes = await sql.getRows("SELECT * FROM notes WHERE is_protected = 1");
for (const note of protectedNotes) {
const decryptedTitle = data_encryption.decrypt(dataKey, note.note_title);
note.note_title = data_encryption.encrypt(dataKey, "0" + note.note_id, decryptedTitle);
const decryptedText = data_encryption.decrypt(dataKey, note.note_text);
note.note_text = data_encryption.encrypt(dataKey, "1" + note.note_id, decryptedText);
await sql.execute("UPDATE notes SET note_title = ?, note_text = ? WHERE note_id = ?", [note.note_title, note.note_text, note.note_id]);
}
const protectedNotesHistory = await sql.getRows("SELECT * FROM notes_history WHERE is_protected = 1");
for (const noteHistory of protectedNotesHistory) {
const decryptedTitle = data_encryption.decrypt(dataKey, noteHistory.note_title);
noteHistory.note_title = data_encryption.encrypt(dataKey, "0" + noteHistory.note_history_id, decryptedTitle);
const decryptedText = data_encryption.decrypt(dataKey, noteHistory.note_text);
noteHistory.note_text = data_encryption.encrypt(dataKey, "1" + noteHistory.note_history_id, decryptedText);
await sql.execute("UPDATE notes SET note_title = ?, note_text = ? WHERE note_id = ?", [noteHistory.note_title, noteHistory.note_text, noteHistory.note_history_id]);
}
};
@@ -1 +0,0 @@
INSERT INTO options (opt_name, opt_value) VALUES ('encrypted_data_key_iv', '')
@@ -1,25 +0,0 @@
const password_encryption = require('../services/password_encryption');
const readline = require('readline');
const cl = readline.createInterface(process.stdin, process.stdout);
function question(q) {
return new Promise( (res, rej) => {
cl.question( q, answer => {
res(answer);
})
});
}
module.exports = async () => {
const password = await question("Enter password: ");
let dataKey = await password_encryption.getDecryptedDataKey(password);
console.log("Original data key: ", dataKey);
dataKey = dataKey.slice(0, 16);
console.log("Trimmed data key: ", dataKey);
await password_encryption.setDataKey(password, dataKey);
};
-5
View File
@@ -1,5 +0,0 @@
CREATE TABLE `source_ids` (
`source_id` TEXT NOT NULL,
`date_created` INTEGER NOT NULL,
PRIMARY KEY(`source_id`)
);
@@ -1 +0,0 @@
UPDATE notes_tree SET note_pid = 'root' WHERE note_pid = ''
-1
View File
@@ -1 +0,0 @@
DELETE FROM sync;
-21
View File
@@ -1,21 +0,0 @@
CREATE TABLE [notes_tree_mig] (
[note_tree_id] VARCHAR(30) PRIMARY KEY NOT NULL,
[note_id] VARCHAR(30) UNIQUE NOT NULL,
[note_pid] VARCHAR(30) NOT NULL,
[note_pos] INTEGER NOT NULL,
[is_expanded] BOOLEAN NULL ,
date_modified INTEGER NOT NULL DEFAULT 0,
is_deleted INTEGER NOT NULL DEFAULT 0
);
INSERT INTO notes_tree_mig (note_tree_id, note_id, note_pid, note_pos, is_expanded, date_modified, is_deleted)
SELECT 'TT' || SUBSTR(note_id, 3), note_id, note_pid, note_pos, is_expanded, date_modified, is_deleted FROM notes_tree;
UPDATE notes_tree_mig SET note_pid = 'TT' || SUBSTR(note_pid, 3) WHERE note_pid != 'root';
DROP TABLE notes_tree;
ALTER TABLE notes_tree_mig RENAME TO notes_tree;
CREATE INDEX `IDX_notes_tree_note_id` ON `notes_tree` (
`note_tree_id`
);
@@ -1 +0,0 @@
UPDATE options SET opt_name = 'start_note_tree_id' WHERE opt_name = 'start_node';
@@ -1,7 +0,0 @@
DROP TABLE recent_notes;
CREATE TABLE `recent_notes` (
`note_tree_id` TEXT NOT NULL PRIMARY KEY,
`date_accessed` INTEGER NOT NULL ,
is_deleted INT
);
-6
View File
@@ -1,6 +0,0 @@
UPDATE
notes_tree
SET
note_pid = (SELECT parent.note_id FROM notes_tree parent WHERE notes_tree.note_pid = parent.note_tree_id)
WHERE
note_pid != 'root'
@@ -1,7 +0,0 @@
DROP TABLE recent_notes;
CREATE TABLE `recent_notes` (
`note_path` TEXT NOT NULL PRIMARY KEY,
`date_accessed` INTEGER NOT NULL ,
is_deleted INT
);
@@ -1,24 +0,0 @@
CREATE TABLE "notes_tree_mig" (
[note_tree_id] VARCHAR(30) PRIMARY KEY NOT NULL,
[note_id] VARCHAR(30) NOT NULL,
[note_pid] VARCHAR(30) NOT NULL,
[note_pos] INTEGER NOT NULL,
[is_expanded] BOOLEAN NULL ,
date_modified INTEGER NOT NULL DEFAULT 0,
is_deleted INTEGER NOT NULL DEFAULT 0
);
INSERT INTO notes_tree_mig (note_tree_id, note_id, note_pid, note_pos, is_expanded, date_modified, is_deleted)
SELECT note_tree_id, note_id, note_pid, note_pos, is_expanded, date_modified, is_deleted FROM notes_tree;
DROP TABLE notes_tree;
ALTER TABLE notes_tree_mig RENAME TO notes_tree;
CREATE INDEX `IDX_notes_tree_note_tree_id` ON `notes_tree` (
`note_tree_id`
);
CREATE INDEX `IDX_notes_tree_note_id_note_pid` ON `notes_tree` (
`note_id`,
`note_pid`
);
-3
View File
@@ -1,3 +0,0 @@
DELETE FROM sync;
UPDATE options SET opt_value = 0 WHERE opt_name IN ('last_synced_push', 'last_synced_pull');
-1
View File
@@ -1 +0,0 @@
DROP TABLE audit_log;
@@ -1 +0,0 @@
ALTER TABLE notes_tree ADD COLUMN `prefix` TEXT
@@ -1,2 +0,0 @@
DROP TABLE IF EXISTS links;
DROP TABLE IF EXISTS images;
-1
View File
@@ -1 +0,0 @@
SELECT 1;
@@ -1,10 +0,0 @@
DROP TABLE recent_notes;
CREATE TABLE `recent_notes` (
'note_tree_id'TEXT NOT NULL PRIMARY KEY,
`note_path` TEXT NOT NULL,
`date_accessed` INTEGER NOT NULL ,
is_deleted INT
);
DELETE FROM sync WHERE entity_name = 'recent_notes';
@@ -1 +0,0 @@
UPDATE options SET opt_name = 'start_note_path' WHERE opt_name = 'start_note_tree_id';
-156
View File
@@ -1,156 +0,0 @@
DROP TABLE migrations;
-- Sync
CREATE TABLE `sync_mig` (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
`entity_name` TEXT NOT NULL,
`entity_id` TEXT NOT NULL,
`source_id` TEXT NOT NULL,
`sync_date` TEXT NOT NULL);
INSERT INTO sync_mig (id, entity_name, entity_id, source_id, sync_date)
SELECT id, entity_name, entity_id, source_id, strftime('%Y-%m-%dT%H:%M:%S.000Z', sync_date, 'unixepoch') FROM sync;
DROP TABLE sync;
ALTER TABLE sync_mig RENAME TO sync;
CREATE UNIQUE INDEX `IDX_sync_entity_name_id` ON `sync` (
`entity_name`,
`entity_id`
);
CREATE INDEX `IDX_sync_sync_date` ON `sync` (
`sync_date`
);
-- Options
UPDATE options SET opt_value = strftime('%Y-%m-%dT%H:%M:%S.000Z', opt_value, 'unixepoch') WHERE opt_name IN ('last_backup_date');
UPDATE options SET date_modified = strftime('%Y-%m-%dT%H:%M:%S.000Z', date_modified, 'unixepoch');
-- Event log
CREATE TABLE `event_log_mig` (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
`note_id` TEXT,
`comment` TEXT,
`date_added` TEXT NOT NULL
);
INSERT INTO event_log_mig (id, note_id, comment, date_added)
SELECT id, note_id, comment, strftime('%Y-%m-%dT%H:%M:%S.000Z', date_added, 'unixepoch') FROM event_log;
DROP TABLE event_log;
ALTER TABLE event_log_mig RENAME TO event_log;
CREATE INDEX `IDX_event_log_date_added` ON `event_log` (
`date_added`
);
-- Notes
CREATE TABLE IF NOT EXISTS "notes_mig" (
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`is_protected` INT NOT NULL DEFAULT 0,
`is_deleted` INT NOT NULL DEFAULT 0,
`date_created` TEXT NOT NULL,
`date_modified` TEXT NOT NULL,
PRIMARY KEY(`note_id`)
);
INSERT INTO notes_mig (note_id, note_title, note_text, is_protected, is_deleted, date_created, date_modified)
SELECT note_id, note_title, note_text, is_protected, is_deleted,
strftime('%Y-%m-%dT%H:%M:%S.000Z', date_created, 'unixepoch'),
strftime('%Y-%m-%dT%H:%M:%S.000Z', date_modified, 'unixepoch')
FROM notes;
DROP TABLE notes;
ALTER TABLE notes_mig RENAME TO notes;
CREATE INDEX `IDX_notes_is_deleted` ON `notes` (
`is_deleted`
);
-- note history
CREATE TABLE IF NOT EXISTS "notes_history_mig" (
`note_history_id` TEXT NOT NULL PRIMARY KEY,
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`is_protected` INT NOT NULL DEFAULT 0,
`date_modified_from` TEXT NOT NULL,
`date_modified_to` TEXT NOT NULL
);
INSERT INTO notes_history_mig (note_history_id, note_id, note_title, note_text, is_protected, date_modified_from, date_modified_to)
SELECT note_history_id, note_id, note_title, note_text, is_protected,
strftime('%Y-%m-%dT%H:%M:%S.000Z', date_modified_from, 'unixepoch'),
strftime('%Y-%m-%dT%H:%M:%S.000Z', date_modified_to, 'unixepoch')
FROM notes_history;
DROP TABLE notes_history;
ALTER TABLE notes_history_mig RENAME TO notes_history;
CREATE INDEX `IDX_notes_history_note_id` ON `notes_history` (
`note_id`
);
CREATE INDEX `IDX_notes_history_note_date_modified_from` ON `notes_history` (
`date_modified_from`
);
CREATE INDEX `IDX_notes_history_note_date_modified_to` ON `notes_history` (
`date_modified_to`
);
-- Source IDs
DROP TABLE source_ids;
CREATE TABLE `source_ids` (
`source_id` TEXT NOT NULL,
`date_created` TEXT NOT NULL,
PRIMARY KEY(`source_id`)
);
-- Recent notes
DROP TABLE recent_notes;
CREATE TABLE `recent_notes` (
`note_tree_id` TEXT NOT NULL PRIMARY KEY,
`note_path` TEXT NOT NULL,
`date_accessed` TEXT NOT NULL,
is_deleted INT
);
-- Notes tree
CREATE TABLE IF NOT EXISTS "notes_tree_mig" (
`note_tree_id` TEXT NOT NULL,
`note_id` TEXT NOT NULL,
`note_pid` TEXT NOT NULL,
`note_pos` INTEGER NOT NULL,
`prefix` TEXT,
`is_expanded` BOOLEAN,
`is_deleted` INTEGER NOT NULL DEFAULT 0,
`date_modified` TEXT NOT NULL,
PRIMARY KEY(`note_tree_id`)
);
INSERT INTO notes_tree_mig (note_tree_id, note_id, note_pid, note_pos, prefix, is_expanded, is_deleted, date_modified)
SELECT note_tree_id, note_id, note_pid, note_pos, prefix, is_expanded, is_deleted,
strftime('%Y-%m-%dT%H:%M:%S.000Z', date_modified, 'unixepoch')
FROM notes_tree;
DROP TABLE notes_tree;
ALTER TABLE notes_tree_mig RENAME TO notes_tree;
CREATE INDEX `IDX_notes_tree_note_tree_id` ON `notes_tree` (
`note_tree_id`
);
CREATE INDEX `IDX_notes_tree_note_id_note_pid` ON `notes_tree` (
`note_id`,
`note_pid`
);
@@ -1,5 +0,0 @@
DROP index IDX_notes_tree_note_tree_id;
CREATE INDEX `IDX_notes_tree_note_id` ON `notes_tree` (
`note_id`
);
-8
View File
@@ -1,8 +0,0 @@
INSERT OR IGNORE INTO sync (entity_name, entity_id, sync_date, source_id)
SELECT 'notes', note_id, strftime('%Y-%m-%dT%H:%M:%S.000Z', 'now'), 'IMPORT' FROM notes;
INSERT OR IGNORE INTO sync (entity_name, entity_id, sync_date, source_id)
SELECT 'notes_tree', note_tree_id, strftime('%Y-%m-%dT%H:%M:%S.000Z', 'now'), 'IMPORT' FROM notes_tree;
INSERT OR IGNORE INTO sync (entity_name, entity_id, sync_date, source_id)
SELECT 'notes_history', note_history_id, strftime('%Y-%m-%dT%H:%M:%S.000Z', 'now'), 'IMPORT' FROM notes_history;
@@ -1,18 +0,0 @@
delete from notes where note_id in ('FfZylYxt','HqzAEsR2fFEZ','KgTQDh67+1Mh','TKMbAYl0AFyQ','W+bGM185c6gw',
'YXBdhv4dYKMy','aF4/6p1zTpIS','nsLnrrDktl/s','wkhFImoPuxky');
delete from notes_tree where note_tree_id in ('TTy5N2y2S6JP','TTkL3rWDexpp','TTEhtomZekUk','TTvP7zW01zwg','TTuYmMTZyKRt'
,'TToaClamxbBF','TTKvNCe5X2dj','TTE7jFx5A0zW','TTc79bscyrHX','TTcw8ZyDy2Cc','TTdFzAOWA9hZ','TTUyVLqyIvVg','TTy85NKSBDyO'
,'TTCyuireAWBv','TTDpVyuzbj1a','TTYznrYvAeIs','TTocvv15VMyu','TTjtxQkBT5vj','TToyyRzbBF0T','TTFt8NE9vSyZ','TTfzFZOuuDqv'
,'TT2e2oUYcxG6','TToXselUpPAy','TTEM68gGukg0','TTkZxxwtUOzW','TTAZNxBtgmmh','TTK1YErdBE3x','TTzjKiEf54o6','TTPWd5Ou1xET'
,'TTxQtjf22rTL','TTJAGaI4c89V','TTUQmsxSTdV3','TTGAOf5Lvr6b','TTECSDRN4ZPW','TTZZXLiGNWv4','TTxSLphulRct','TT8vld7x0qWF'
,'TTuuxXnv2Kpw','TT3RkLZ9AI6t','TTuEbI4Cj3qC','TT4CXXRyWRqm','TTQCuFgnMqxX','TTxnDEMz1bd4','TTMOnqhBesjs','TTHblx55gRHN'
,'TTMHW8HIGCjR','TTxzg3qqyLjw','TTluvD7yS8Rv','TT88qK2j3ggk','TTF7oHhS5ANF','TTOH275JiUSy','TToIt2dQ5tYH','TTBPgixQgbAq'
,'TTeN46707CJl','TTDb3GC2y6nN','TTlIXFwpICko','TTE6M9AxLh2U','TTjqhB8zXjD6','TT9NPeLg4FjK','TTj12jDX7TM3','TTPRjf7EdvDX'
,'TTBnu09pxOmn','TTZxyAkJQ9Cf','TTlvqeof2IBS','TT5R5xtIqRQf','TTiiD6hFjlVH','TTNVjGHSqNgo','TTrORSHCsAVQ','TT5Ei5fngqkv'
,'TTQ4hdpcIX3C','TTQgxq4CoiHU','TTJayLjI6BSE','TTYyraNy0CVT','TTnAJ3AK3wHz','TTJwKcgs1s0X','TT4FiatgbLEs','TTEdp5Zx1n5F');
update notes_tree set is_deleted = 1 where note_tree_id in ('TTiaU9xqnrca','TTQAy9c1vDId','TTHXWBJB2Y24','TTDV8DUK2IZA'
,'TTI5JHODZYV5','TTBEZ8TMSJV4','TT1MDWZXE8ZI','TTJV7ZOA8907','TTUGE6N99QSO','TTN0OS17T0KM');
delete from notes_history where note_history_id in ('KHAp5viTrrOfugzQ', 'xmhaS76piZn0QGzn', '25aL96ke8xmud9Bt');
@@ -1,3 +0,0 @@
DELETE FROM notes_tree WHERE note_tree_id IN ('cb94QGgnCwOD', 'c3FWKhcVYyaQ');
DELETE FROM notes_history WHERE note_history_id IN ('cdUD6ycs3l9h', 'OW4uh0HLtXaw');
@@ -1 +0,0 @@
UPDATE options SET opt_value = (SELECT MAX(id) FROM sync) WHERE opt_name = 'last_synced_push';
-13
View File
@@ -1,13 +0,0 @@
DELETE FROM recent_notes;
DELETE FROM sync;
INSERT OR IGNORE INTO sync (entity_name, entity_id, sync_date, source_id)
SELECT 'notes', note_id, strftime('%Y-%m-%dT%H:%M:%S.000Z', 'now'), 'IMPORT' FROM notes;
INSERT OR IGNORE INTO sync (entity_name, entity_id, sync_date, source_id)
SELECT 'notes_tree', note_tree_id, strftime('%Y-%m-%dT%H:%M:%S.000Z', 'now'), 'IMPORT' FROM notes_tree;
INSERT OR IGNORE INTO sync (entity_name, entity_id, sync_date, source_id)
SELECT 'notes_history', note_history_id, strftime('%Y-%m-%dT%H:%M:%S.000Z', 'now'), 'IMPORT' FROM notes_history;
UPDATE options SET opt_value = (SELECT MAX(id) FROM sync) WHERE opt_name IN ('last_synced_push', 'last_synced_pull');
-101
View File
@@ -1,101 +0,0 @@
INSERT INTO notes (note_id, note_title, note_text, date_created, date_modified)
VALUES ('root', 'root', 'root', strftime('%Y-%m-%dT%H:%M:%S.000Z', 'now'), strftime('%Y-%m-%dT%H:%M:%S.000Z', 'now'));
CREATE TABLE IF NOT EXISTS "notes_mig" (
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`is_protected` INT NOT NULL DEFAULT 0,
`is_deleted` INT NOT NULL DEFAULT 0,
`date_created` TEXT NOT NULL,
`date_modified` TEXT NOT NULL,
PRIMARY KEY(`note_id`)
);
INSERT INTO notes_mig (note_id, note_title, note_text, is_protected, is_deleted, date_created, date_modified)
SELECT note_id, note_title, note_text, is_protected, is_deleted, date_created, date_modified FROM notes;
DROP TABLE notes;
ALTER TABLE notes_mig RENAME TO notes;
CREATE INDEX `IDX_notes_is_deleted` ON `notes` (
`is_deleted`
);
CREATE TABLE IF NOT EXISTS "notes_tree_mig" (
`note_tree_id` TEXT NOT NULL,
`note_id` TEXT NOT NULL,
`parent_note_id` TEXT NOT NULL,
`note_position` INTEGER NOT NULL,
`prefix` TEXT,
`is_expanded` BOOLEAN,
`is_deleted` INTEGER NOT NULL DEFAULT 0,
`date_modified` TEXT NOT NULL,
FOREIGN KEY(note_id) REFERENCES notes(note_id),
FOREIGN KEY(parent_note_id) REFERENCES notes(note_id),
PRIMARY KEY(`note_tree_id`)
);
INSERT INTO notes_tree_mig (note_tree_id, note_id, parent_note_id, note_position, prefix, is_expanded, is_deleted, date_modified)
SELECT note_tree_id, note_id, note_pid, note_pos, prefix, is_expanded, is_deleted, date_modified FROM notes_tree;
DROP TABLE notes_tree;
ALTER TABLE notes_tree_mig RENAME TO notes_tree;
CREATE INDEX `IDX_notes_tree_note_tree_id` ON `notes_tree` (
`note_tree_id`
);
CREATE INDEX `IDX_notes_tree_note_id_parent_note_id` ON `notes_tree` (
`note_id`,
`parent_note_id`
);
CREATE INDEX `IDX_notes_tree_note_id` ON `notes_tree` (
`note_id`
);
CREATE TABLE IF NOT EXISTS "notes_history_mig" (
`note_history_id` TEXT NOT NULL PRIMARY KEY,
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`is_protected` INT NOT NULL DEFAULT 0,
`date_modified_from` TEXT NOT NULL,
`date_modified_to` TEXT NOT NULL,
FOREIGN KEY(note_id) REFERENCES notes(note_id)
);
INSERT INTO notes_history_mig (note_history_id, note_id, note_title, note_text, is_protected, date_modified_from, date_modified_to)
SELECT note_history_id, note_id, note_title, note_text, is_protected, date_modified_from, date_modified_to FROM notes_history;
DROP TABLE notes_history;
ALTER TABLE notes_history_mig RENAME TO notes_history;
CREATE INDEX `IDX_notes_history_note_id` ON `notes_history` (
`note_id`
);
CREATE INDEX `IDX_notes_history_note_date_modified_from` ON `notes_history` (
`date_modified_from`
);
CREATE INDEX `IDX_notes_history_note_date_modified_to` ON `notes_history` (
`date_modified_to`
);
DROP TABLE recent_notes;
CREATE TABLE `recent_notes` (
`note_tree_id` TEXT NOT NULL PRIMARY KEY,
`note_path` TEXT NOT NULL,
`date_accessed` TEXT NOT NULL,
is_deleted INT,
FOREIGN KEY(note_tree_id) REFERENCES notes_tree(note_tree_id)
);
DROP TABLE event_log;
CREATE TABLE `event_log` (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
`note_id` TEXT,
`comment` TEXT,
`date_added` TEXT NOT NULL,
FOREIGN KEY(note_id) REFERENCES notes(note_id)
);
@@ -1,29 +0,0 @@
CREATE TABLE IF NOT EXISTS "notes_tree_mig" (
`note_tree_id` TEXT NOT NULL,
`note_id` TEXT NOT NULL,
`parent_note_id` TEXT NOT NULL,
`note_position` INTEGER NOT NULL,
`prefix` TEXT,
`is_expanded` BOOLEAN,
`is_deleted` INTEGER NOT NULL DEFAULT 0,
`date_modified` TEXT NOT NULL,
FOREIGN KEY(note_id) REFERENCES notes(note_id),
PRIMARY KEY(`note_tree_id`)
);
INSERT INTO notes_tree_mig (note_tree_id, note_id, parent_note_id, note_position, prefix, is_expanded, is_deleted, date_modified)
SELECT note_tree_id, note_id, parent_note_id, note_position, prefix, is_expanded, is_deleted, date_modified FROM notes_tree;
DROP TABLE notes_tree;
ALTER TABLE notes_tree_mig RENAME TO notes_tree;
CREATE INDEX `IDX_notes_tree_note_tree_id` ON `notes_tree` (
`note_tree_id`
);
CREATE INDEX `IDX_notes_tree_note_id_parent_note_id` ON `notes_tree` (
`note_id`,
`parent_note_id`
);
CREATE INDEX `IDX_notes_tree_note_id` ON `notes_tree` (
`note_id`
);
@@ -1,28 +0,0 @@
CREATE TABLE IF NOT EXISTS "notes_tree_mig" (
`note_tree_id` TEXT NOT NULL,
`note_id` TEXT NOT NULL,
`parent_note_id` TEXT NOT NULL,
`note_position` INTEGER NOT NULL,
`prefix` TEXT,
`is_expanded` BOOLEAN,
`is_deleted` INTEGER NOT NULL DEFAULT 0,
`date_modified` TEXT NOT NULL,
PRIMARY KEY(`note_tree_id`)
);
INSERT INTO notes_tree_mig (note_tree_id, note_id, parent_note_id, note_position, prefix, is_expanded, is_deleted, date_modified)
SELECT note_tree_id, note_id, parent_note_id, note_position, prefix, is_expanded, is_deleted, date_modified FROM notes_tree;
DROP TABLE notes_tree;
ALTER TABLE notes_tree_mig RENAME TO notes_tree;
CREATE INDEX `IDX_notes_tree_note_tree_id` ON `notes_tree` (
`note_tree_id`
);
CREATE INDEX `IDX_notes_tree_note_id_parent_note_id` ON `notes_tree` (
`note_id`,
`parent_note_id`
);
CREATE INDEX `IDX_notes_tree_note_id` ON `notes_tree` (
`note_id`
);
@@ -1,34 +0,0 @@
CREATE TABLE IF NOT EXISTS "notes_history_mig" (
`note_history_id` TEXT NOT NULL PRIMARY KEY,
`note_id` TEXT NOT NULL,
`note_title` TEXT,
`note_text` TEXT,
`is_protected` INT NOT NULL DEFAULT 0,
`date_modified_from` TEXT NOT NULL,
`date_modified_to` TEXT NOT NULL
);
INSERT INTO notes_history_mig (note_history_id, note_id, note_title, note_text, is_protected, date_modified_from, date_modified_to)
SELECT note_history_id, note_id, note_title, note_text, is_protected, date_modified_from, date_modified_to FROM notes_history;
DROP TABLE notes_history;
ALTER TABLE notes_history_mig RENAME TO notes_history;
CREATE INDEX `IDX_notes_history_note_id` ON `notes_history` (
`note_id`
);
CREATE INDEX `IDX_notes_history_note_date_modified_from` ON `notes_history` (
`date_modified_from`
);
CREATE INDEX `IDX_notes_history_note_date_modified_to` ON `notes_history` (
`date_modified_to`
);
DROP TABLE recent_notes;
CREATE TABLE `recent_notes` (
`note_tree_id` TEXT NOT NULL PRIMARY KEY,
`note_path` TEXT NOT NULL,
`date_accessed` TEXT NOT NULL,
is_deleted INT
);
@@ -1,6 +0,0 @@
DROP INDEX IDX_notes_tree_note_id_parent_note_id;
CREATE UNIQUE INDEX `IDX_notes_tree_note_id_parent_note_id` ON `notes_tree` (
`note_id`,
`parent_note_id`
);
@@ -1,9 +0,0 @@
DROP INDEX IDX_notes_tree_note_id_parent_note_id;
CREATE INDEX `IDX_notes_tree_note_id_parent_note_id` ON `notes_tree` (
`note_id`,
`parent_note_id`
);
-- dropping this as it's just duplicate of primary key
DROP INDEX IDX_notes_tree_note_tree_id;
-11
View File
@@ -1,11 +0,0 @@
CREATE TABLE images
(
image_id TEXT PRIMARY KEY NOT NULL,
format TEXT NOT NULL,
checksum TEXT NOT NULL,
name TEXT NOT NULL,
data BLOB,
is_deleted INT NOT NULL DEFAULT 0,
date_modified TEXT NOT NULL,
date_created TEXT NOT NULL
);
@@ -1,16 +0,0 @@
DROP TABLE images;
CREATE TABLE images
(
image_id TEXT PRIMARY KEY NOT NULL,
note_id TEXT NOT NULL,
format TEXT NOT NULL,
checksum TEXT NOT NULL,
name TEXT NOT NULL,
data BLOB,
is_deleted INT NOT NULL DEFAULT 0,
date_modified TEXT NOT NULL,
date_created TEXT NOT NULL
);
CREATE INDEX images_note_id_index ON images (note_id);
-27
View File
@@ -1,27 +0,0 @@
DROP TABLE images;
CREATE TABLE images
(
image_id TEXT PRIMARY KEY NOT NULL,
format TEXT NOT NULL,
checksum TEXT NOT NULL,
name TEXT NOT NULL,
data BLOB,
is_deleted INT NOT NULL DEFAULT 0,
date_modified TEXT NOT NULL,
date_created TEXT NOT NULL
);
CREATE TABLE notes_image
(
note_image_id TEXT PRIMARY KEY NOT NULL,
note_id TEXT NOT NULL,
image_id TEXT NOT NULL,
is_deleted INT NOT NULL DEFAULT 0,
date_modified TEXT NOT NULL,
date_created TEXT NOT NULL
);
CREATE INDEX notes_image_note_id_index ON notes_image (note_id);
CREATE INDEX notes_image_image_id_index ON notes_image (image_id);
CREATE INDEX notes_image_note_id_image_id_index ON notes_image (note_id, image_id);
@@ -1,12 +0,0 @@
CREATE TABLE attributes
(
attribute_id TEXT PRIMARY KEY NOT NULL,
note_id TEXT NOT NULL,
name TEXT NOT NULL,
value TEXT,
date_created TEXT NOT NULL,
date_modified TEXT NOT NULL
);
CREATE INDEX attributes_note_id_index ON attributes (note_id);
CREATE UNIQUE INDEX attributes_note_id_name_index ON attributes (note_id, name);
@@ -1,5 +0,0 @@
ALTER TABLE options ADD COLUMN is_synced INTEGER NOT NULL DEFAULT 0;
UPDATE options SET is_synced = 1 WHERE opt_name IN ('username', 'password_verification_hash', 'password_verification_salt',
'password_derived_key_salt', 'encrypted_data_key', 'encrypted_data_key_iv',
'protected_session_timeout', 'history_snapshot_time_interval');
-1
View File
@@ -1 +0,0 @@
ALTER TABLE notes ADD COLUMN type TEXT NOT NULL DEFAULT 'text';
-1
View File
@@ -1 +0,0 @@
ALTER TABLE notes ADD COLUMN mime TEXT NOT NULL DEFAULT 'text/html';
@@ -1,207 +0,0 @@
CREATE TABLE "options_mig" (
`name` TEXT NOT NULL PRIMARY KEY,
`value` TEXT,
`dateModified` INT,
isSynced INTEGER NOT NULL DEFAULT 0);
INSERT INTO options_mig (name, value, dateModified, isSynced)
SELECT opt_name, opt_value, date_modified, is_synced FROM options;
DROP TABLE options;
ALTER TABLE options_mig RENAME TO options;
CREATE TABLE "sync_mig" (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
`entityName` TEXT NOT NULL,
`entityId` TEXT NOT NULL,
`sourceId` TEXT NOT NULL,
`syncDate` TEXT NOT NULL);
INSERT INTO sync_mig (id, entityName, entityId, sourceId, syncDate)
SELECT id, entity_name, entity_id, source_id, sync_date FROM sync;
DROP TABLE sync;
ALTER TABLE sync_mig RENAME TO sync;
CREATE UNIQUE INDEX `IDX_sync_entityName_entityId` ON `sync` (
`entityName`,
`entityId`
);
CREATE INDEX `IDX_sync_syncDate` ON `sync` (
`syncDate`
);
CREATE TABLE `source_ids_mig` (
`sourceId` TEXT NOT NULL,
`dateCreated` TEXT NOT NULL,
PRIMARY KEY(`sourceId`)
);
INSERT INTO source_ids_mig (sourceId, dateCreated)
SELECT source_id, date_created FROM source_ids;
DROP TABLE source_ids;
ALTER TABLE source_ids_mig RENAME TO source_ids;
CREATE TABLE "notes_mig" (
`noteId` TEXT NOT NULL,
`title` TEXT,
`content` TEXT,
`isProtected` INT NOT NULL DEFAULT 0,
`isDeleted` INT NOT NULL DEFAULT 0,
`dateCreated` TEXT NOT NULL,
`dateModified` TEXT NOT NULL,
type TEXT NOT NULL DEFAULT 'text',
mime TEXT NOT NULL DEFAULT 'text/html',
PRIMARY KEY(`noteId`)
);
INSERT INTO notes_mig (noteId, title, content, isProtected, isDeleted, dateCreated, dateModified, type, mime)
SELECT note_id, note_title, note_text, is_protected, is_deleted, date_created, date_modified, type, mime FROM notes;
DROP TABLE notes;
ALTER TABLE notes_mig RENAME TO notes;
CREATE INDEX `IDX_notes_isDeleted` ON `notes` (
`isDeleted`
);
CREATE TABLE `event_log_mig` (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
`noteId` TEXT,
`comment` TEXT,
`dateAdded` TEXT NOT NULL,
FOREIGN KEY(noteId) REFERENCES notes(noteId)
);
INSERT INTO event_log_mig (id, noteId, comment, dateAdded)
SELECT id, note_id, comment, date_added FROM event_log;
DROP TABLE event_log;
ALTER TABLE event_log_mig RENAME TO event_log;
CREATE TABLE "note_tree" (
`noteTreeId` TEXT NOT NULL,
`noteId` TEXT NOT NULL,
`parentNoteId` TEXT NOT NULL,
`notePosition` INTEGER NOT NULL,
`prefix` TEXT,
`isExpanded` BOOLEAN,
`isDeleted` INTEGER NOT NULL DEFAULT 0,
`dateModified` TEXT NOT NULL,
PRIMARY KEY(`noteTreeId`)
);
INSERT INTO note_tree (noteTreeId, noteId, parentNoteId, notePosition, prefix, isExpanded, isDeleted, dateModified)
SELECT note_tree_id, note_id, parent_note_id, note_position, prefix, is_expanded, is_deleted, date_modified FROM notes_tree;
DROP TABLE notes_tree;
CREATE INDEX `IDX_note_tree_noteId` ON `note_tree` (
`noteId`
);
CREATE INDEX `IDX_note_tree_noteId_parentNoteId` ON `note_tree` (
`noteId`,
`parentNoteId`
);
CREATE TABLE "note_revisions" (
`noteRevisionId` TEXT NOT NULL PRIMARY KEY,
`noteId` TEXT NOT NULL,
`title` TEXT,
`content` TEXT,
`isProtected` INT NOT NULL DEFAULT 0,
`dateModifiedFrom` TEXT NOT NULL,
`dateModifiedTo` TEXT NOT NULL
);
INSERT INTO note_revisions (noteRevisionId, noteId, title, content, isProtected, dateModifiedFrom, dateModifiedTo)
SELECT note_history_id, note_id, note_title, note_text, is_protected, date_modified_from, date_modified_to FROM notes_history;
DROP TABLE notes_history;
CREATE INDEX `IDX_note_revisions_noteId` ON `note_revisions` (
`noteId`
);
CREATE INDEX `IDX_note_revisions_dateModifiedFrom` ON `note_revisions` (
`dateModifiedFrom`
);
CREATE INDEX `IDX_note_revisions_dateModifiedTo` ON `note_revisions` (
`dateModifiedTo`
);
CREATE TABLE `recent_notes_mig` (
`noteTreeId` TEXT NOT NULL PRIMARY KEY,
`notePath` TEXT NOT NULL,
`dateAccessed` TEXT NOT NULL,
isDeleted INT
);
INSERT INTO recent_notes_mig (noteTreeId, notePath, dateAccessed, isDeleted)
SELECT note_tree_id, note_path, date_accessed, is_deleted FROM recent_notes;
DROP TABLE recent_notes;
ALTER TABLE recent_notes_mig RENAME TO recent_notes;
CREATE TABLE images_mig
(
imageId TEXT PRIMARY KEY NOT NULL,
format TEXT NOT NULL,
checksum TEXT NOT NULL,
name TEXT NOT NULL,
data BLOB,
isDeleted INT NOT NULL DEFAULT 0,
dateModified TEXT NOT NULL,
dateCreated TEXT NOT NULL
);
INSERT INTO images_mig (imageId, format, checksum, name, data, isDeleted, dateModified, dateCreated)
SELECT image_id, format, checksum, name, data, is_deleted, date_modified, date_created FROM images;
DROP TABLE images;
ALTER TABLE images_mig RENAME TO images;
CREATE TABLE note_images
(
noteImageId TEXT PRIMARY KEY NOT NULL,
noteId TEXT NOT NULL,
imageId TEXT NOT NULL,
isDeleted INT NOT NULL DEFAULT 0,
dateModified TEXT NOT NULL,
dateCreated TEXT NOT NULL
);
INSERT INTO note_images (noteImageId, noteId, imageId, isDeleted, dateModified, dateCreated)
SELECT note_image_id, note_id, image_id, is_deleted, date_modified, date_created FROM notes_image;
DROP TABLE notes_image;
CREATE INDEX IDX_note_images_noteId ON note_images (noteId);
CREATE INDEX IDX_note_images_imageId ON note_images (imageId);
CREATE INDEX IDX_note_images_noteId_imageId ON note_images (noteId, imageId);
CREATE TABLE attributes_mig
(
attributeId TEXT PRIMARY KEY NOT NULL,
noteId TEXT NOT NULL,
name TEXT NOT NULL,
value TEXT,
dateCreated TEXT NOT NULL,
dateModified TEXT NOT NULL
);
INSERT INTO attributes_mig (attributeId, noteId, name, value, dateCreated, dateModified)
SELECT attribute_id, note_id, name, value, date_created, date_modified FROM attributes;
DROP TABLE attributes;
ALTER TABLE attributes_mig RENAME TO attributes;
CREATE INDEX IDX_attributes_noteId ON attributes (noteId);
CREATE UNIQUE INDEX IDX_attributes_noteId_name ON attributes (noteId, name);
@@ -1,4 +0,0 @@
UPDATE sync SET entityName = 'note_images' WHERE entityName = 'notes_image';
UPDATE sync SET entityName = 'note_tree' WHERE entityName = 'notes_tree';
UPDATE sync SET entityName = 'note_revisions' WHERE entityName = 'notes_history';
UPDATE sync SET entityName = 'note_reordering' WHERE entityName = 'notes_reordering';
@@ -1 +0,0 @@
DROP INDEX IDX_attributes_noteId_name;
@@ -1 +0,0 @@
ALTER TABLE attributes ADD COLUMN isDeleted INT NOT NULL DEFAULT 0;
@@ -1 +0,0 @@
ALTER TABLE attributes ADD COLUMN position INT NOT NULL DEFAULT 0;
-7
View File
@@ -1,7 +0,0 @@
CREATE TABLE IF NOT EXISTS "api_tokens"
(
apiTokenId TEXT PRIMARY KEY NOT NULL,
token TEXT NOT NULL,
dateCreated TEXT NOT NULL,
isDeleted INT NOT NULL DEFAULT 0
);

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