Commit Graph

57 Commits

Author SHA1 Message Date
Yue Yang
a842818ab6 fix: use name to detect default theme 2022-11-17 17:50:56 +08:00
charlie
7c6c829d87 fix(plugin): strategy to validate plugin id duplicated 2022-11-11 17:33:15 +08:00
charlie
955c8502b6 improve(ux): shortcut items for plugins bar 2022-11-11 17:33:15 +08:00
Gabriel Horner
0c570a0300 Fix more bugs, move plugins.edn and add enabled
- Move plugins.edn to config/ as it is user configuration
- Add plugin-config enabled flag and moved plugin enabled
- Fixed bugs with manual install
- Refactored plugin-config component to have its own listener
- Split out shared plugin fns to a common ns - plugin-config shouldn't
  need to depend on a component like plugin-handler
- Bump rewrite-edn to include upstream fix and avoid tons of cljs
  warnings with earlier versions
- Fix react warning introduced outside this PR in ui/icon
2022-10-17 10:13:27 -04:00
Gabriel Horner
c8cda90373 Fix plugin install bugs and add plugin-config tests
- Add validation for plugins.edn with malli
- Add bb task using malli schema
- Add first async test that interacts with frontend.fs
- Add test helpers to make future async testing easier
2022-10-17 10:13:27 -04:00
Gabriel Horner
bf79db9d54 Install and uninstall plugins from file
Change plugins.edn to key off id as it is unique and all operations
work off of it.
Note: there are still some bugs with certain plugin installs
2022-10-17 10:13:27 -04:00
Gabriel Horner
da6c617a5b First pass at writing plugins.edn on install/update/uninstall 2022-10-17 10:13:27 -04:00
Gabriel Horner
1f0e22275d Add ns docstrings for most ns in src/main
- Added to CI now that it passes
- Added no-doc for docstrings that don't add any more than what's in the
ns name or for ones where I didn't know the ns that well
2022-09-27 13:55:16 +08:00
Gabriel Horner
2ce6dfad41 Use catch :default for default error handling in cljs
This is considered normal practice for cljs. See
https://clojure.atlassian.net/browse/CLJS-661 for when it was introduced
and background on it
2022-09-23 02:00:55 +08:00
Gabriel Horner
b1d210d26b Merge configs and create global config file if not present
- Cleanup repo and global config with system components
- test merging
- fix edge cases
2022-09-08 12:34:27 +08:00
Gabriel Horner
9c0bb02dcd Can access read global config file from UI
Only for reload case
2022-09-08 12:34:27 +08:00
charlie
5dd26a0180 fix: lint vars 2022-08-26 18:48:00 +08:00
charlie
04e04e4005 improve(plugin): plugin perf tips for initial loader 2022-08-26 18:48:00 +08:00
charlie
560d8fb5dc fix(plugin): initial pluign core with fatal argument of empty plugin root path 2022-08-13 15:06:38 +08:00
Charlie
7c4d7cd61a improve(plugin): fetch marketplace plugins list via system proxy if no proxy configured. (#5716) 2022-06-20 10:33:35 +08:00
charlie
5b14b6f50f fix(plugin): repeat registration key to plugin ui items 2022-06-20 10:33:02 +08:00
charlie
6029a2998f improve(plugin): pin or unpin for plugin ui button from toolbar 2022-06-16 01:43:49 +08:00
charlie
f3bedb200e improve(plugin): add theme changed hook 2022-06-16 01:43:49 +08:00
charlie
3b0e1c58a3 improve(plugin): WIP api of http request 2022-06-16 01:43:49 +08:00
charlie
de9ab5ed44 enhance(plugin): change marketplace metadata requests to node fetch client 2022-06-13 15:23:07 +08:00
Yue Yang
17b91e51c3 feat: custom theme switching (#4741)
* feat: custom theme switching

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* chore: handle reset-custom-theme

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* fix: unregisterTheme

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* fix: format with ts-standard

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* chore: reset extra formats

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* chore: simplify array types

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* Update lsplugin.core.js

* fix: sync upstream

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* chore: add `no mode` themes into panel

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* fix: ci

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* fix: remove first <hr />

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* fix: lockfile

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* chore: update

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* chore: set-theme! => set-theme-mode!

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* fix: selectTheme

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

* perf: reduce unnecessary logic

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>
2022-05-19 10:18:43 +08:00
Gabriel Horner
657bb09591 Add mldoc integration test and start mldoc split 2022-05-10 20:22:48 -04:00
charlie
a0e494f7c7 improve(plugin): add katex hooks 2022-04-29 18:51:25 +08:00
Charlie
79bc33e1e3 Enhance/more ns plugin api (#4828)
* improve(plugin): WIP add settings schema

* improve(plugin): add identity for settings modal

* improve(plugin): WIP add settings input

* fix(ui): scrollbar overlay of modal panel content

* improve(plugin): WIP add more render types of setting item

* improve(plugin): WIP polish settings items

* improve(plugin): WIP settings list of plugins

* improve(plugin): more settings types & polish releated ui

* fix(plugin): sometimes disable plugin not work

* improve(plugin): polish ui of plugin settings

* fix(dev): warning of lint

* improve(plugin): add api of settings changed

* chore: build libs core

* fix(ui): width of settings panel wrap

* improve(plugin): separate layouts data from settings aio file

* imporve(plugin): container size of single plugin settings

* fix: add missing state

* improve(plugin): add Git ns

* improve(plugin): git related api

* improve(api): type of git result

* chore: build libs core

* fix(dev): kondo lint

* fix(plugin): use cdn sdk when js entry

* chore: build libs core

* fix(plugin): env condition

* improve(plugin): add UI ns

* fix(api): arguments of datascript query

* enhance(api): manageable message instance of UI tools

* enhance(api): WIP add experiments api

* enhance(api): WIP add resources state of plugin

* improve(plugin): add status of loading script resources

* improve(plugin): more opts for script loader

* improve(plugin): WIP add fenced code renderer hook

* improve(plugin): fenced code renderer hook

* fix(plugin): resource root path of plugin fs location

* imporve(plugin): support local files for loading scripts

* improve(plugin): types of expirements api

* fix: typo of class

* enhance(api): add namespace related apis

* enhance(api): add linked refrences related apis

* enhance(plugin): add sample links to related api comments

* improve(plugin): add db changed hook & optimize strategy of caller for hooks

* improve(plugin): compatible commands registration for old sdk

* improve(plugin): collect user sdk version for plugin local

* improve(plugin): add internal callable apis for user sdk

* chore(plugin): missing files & bump libs version

* improve(plugin): compatiable for old sdk about hook messaging optimization

* improve(plugin): db hook optimization for old sdk

* enhance(ux): auto focus searchbar when open plugins list

* improve(plugin): api of a hook from specific block changed event

* improve(plugin): api of db block change hook

* improve(plugin): add show bracket user config of api

* improve(plugin): api of db block change hook

* fix(api): toggle collapsed of block

* improve(api): try to init grpah with git before exec git commands

* improve(plugin): attributes of sandbox container

* improve(dev): support register command with keybinding

* improve(plugin): add api of register shortcut command

* fix(plugin): reubild slash commands when new command registration

* fix(dev): lint

* improve(dev): lint script of libs codebase

* chore(dev): remove useless codes

* improve(plugin):sanitize path string of plugin repo value

* fix(plugin): rebuild commands list when unregister a plugin

* fix(ui): overflow width of query result table

* chore: rebuild libs core

* improve(plugin): add assets related apis

* chore: rebuild libs core

* improve(plugin): support replace state of into block in page api

* improve(plugin): prepend/append child block in page

* improve(plugin): polished exceptions message of plugin update/install

* fix(plugin): update settings within gui

* improve(ux): debounce change event of input for plugin settings gui

* chore: rebuild libs core

* enhance(plugin): catch exception of hook plugin
2022-04-21 18:43:16 +08:00
Gabriel Horner
5635469d7a Split out command and category descs
Move them to a more appropriate ns that is just dictionary focused.
This _majorly_ slims down dependencies for the main translation ns
Also:
- add tests
- make medley requires consistent
- alter spec to reflect how command data is actually being used in
  command palette component
- add basic translation tests
2022-03-28 11:05:42 -04:00
Yue Yang
1987d7dc79 BREAKING CHANGE: unify light mode identifier (#4652)
* chore: unify light mode identifier

Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>

Co-authored-by: charlie <xyhp915@qq.com>
Co-authored-by: Andelf <andelf@gmail.com>
2022-03-25 13:14:52 +08:00
Charlie
24b0236b7d Enhance/Settings UI of plugins (#4035)
more settings types & polish releated ui
2022-02-17 10:00:53 +08:00
charlie
2e3becef1c fix(lint): bad condition branch 2022-01-17 10:57:43 +08:00
Gabriel Horner
3ec587d6eb lint :all-the-things: 2022-01-16 12:42:34 +08:00
charlie
7e4eff1a92 fix(ui): redundant notifications when checking single plugin 2022-01-13 22:29:21 +08:00
charlie
53a8c8b96f fix(marketplace): download updates state when network issues 2022-01-12 23:31:22 +08:00
charlie
579b906c4c improve(marketplace): take more for batching updates 2022-01-12 23:31:22 +08:00
charlie
de1ea231e3 feat(marketplace): download updates with one click 2022-01-12 23:31:22 +08:00
Charlie
3ea7635daa Enhance/marketplace (#3686)
Marketplace enhancement

Nested modal support
2022-01-07 19:00:35 +08:00
charlie
a02cef0d4c fix(ui): preboot logo color on dark mode 2021-12-10 22:33:04 +08:00
Charlie
c2b882b57d Feat/support keybinding for plugin commands (#3176)
register shortcut and shortcut for palette commands
2021-11-22 15:44:27 +08:00
Tienson Qin
40b315de6b fix: can't open new graph on Linux
close #3202
2021-11-19 13:39:36 +08:00
Junyi Du
daae4932ad Some fix according to lint 2021-11-18 21:13:35 +08:00
Charlie
72c038e6fe Feat/moveable plugin UI container (#3045)
* improve(plugin): add container for main ui frame

* feat(plugin): support draggable & resizable UI container for main ui

* feat: support fork sub layout container

* improve(plugin): add editor selection api

* improve(plugin): click outside configure for float container

* improve(plugin): api of journal for create-page

* improve(plugin): api of open-in-right-sidebar

* improve(plugin): add full screen api

* improve(plugin): api of register-palette-command

* improve(plugin): add apis
2021-11-15 16:57:20 +08:00
charlie
0530a345a7 improve(plugin): clear theme effects before update plugin 2021-09-17 11:02:21 +08:00
charlie
07063f1592 fix(plugin): restart app not work 2021-09-14 22:09:27 +08:00
Charlie
18b7a7864b Feat/plugin marketplace (#2766)
* Squashed commit of the following:

commit ea9af272e4
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Fri Aug 27 00:23:24 2021 +0800

    feat: type c to git commit

    also, fixed an issue that backspace can delete selected blocks
    when there's a dialog.

commit 78e24f7479
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Fri Aug 27 00:01:21 2021 +0800

    fix: add patch parser worker to yarn watch

commit 7f6e777bcd
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Thu Aug 26 23:57:46 2021 +0800

    fix: add several shortcuts to the Others category

commit 509697b276
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Thu Aug 26 23:55:40 2021 +0800

    fix: git username and email configuration

* Squashed commit of the following:

commit 401d85be5f
Author: Peng Xiao <pengxiao@outlook.com>
Date:   Fri Aug 27 11:10:32 2021 +0800

    feat: add protobuf mode

commit dc1e9fdfc9
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Fri Aug 27 13:33:47 2021 +0800

    chore: replace : with comma for git path

    ':' is a reserved character on Windows

commit ea9af272e4
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Fri Aug 27 00:23:24 2021 +0800

    feat: type c to git commit

    also, fixed an issue that backspace can delete selected blocks
    when there's a dialog.

commit 78e24f7479
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Fri Aug 27 00:01:21 2021 +0800

    fix: add patch parser worker to yarn watch

commit 7f6e777bcd
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Thu Aug 26 23:57:46 2021 +0800

    fix: add several shortcuts to the Others category

commit 509697b276
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Thu Aug 26 23:55:40 2021 +0800

    fix: git username and email configuration

* feat(plugin): ui of marketplace plugins list

* improve(plugin): support reload

* improve(plugin): installation from marketplace

* fix conflicts

* improve(plugin): installation from github public repo

* chore: remove unwanted dependency

* chore: remove console

* improve(plugin): add shortcuts

* ui(plugin): polish LOADING indicator

* improve(plugin): support up-to-date of marketplace plugin

* fix: remove debug option

* improve(plugin): better interaction of themes picker

* improve(plugin): better experience when installing theme from marketplace

* fix(plugin): downloads label of marketplace plugin

* improve(plugin): update package name field

* improve(plugin): change marketplace packages repo to `logseq/marketplace`

* fix(plugin): plugin title when updating notification

* fix: conflicts

* enhance(plugin): i18n related marketplace & lifecycle of plugin installation

* improve(plugin): handle offline situation

* ui(plugin): header plugin icons container

* fix(ui): add class identity for journal page with date page name

* improve(plugin): remote readme for marketplace plugin

* enhance(plugin): polish plugin card

* chore(plugin): build libs core

* Squashed commit of the following:

commit 751db4828c
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Tue Sep 7 16:58:25 2021 +0800

    enhance: log git errors

commit c2dbbc77bf
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Tue Sep 7 16:27:00 2021 +0800

    enhance: display refresh status

commit f734b6db37
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Tue Sep 7 16:03:57 2021 +0800

    fix: .git doesn't work well with third-party cloud services

commit 7e44d81f1d
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Tue Sep 7 13:52:38 2021 +0800

    fix: git init into the current graph folder

    instead of a separate git directory because .gitdir might has
    different paths on multiple devices, another reason is that the graph
    might have different histories considering the .git directory is not
    synced.

commit b86a801514
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 23:23:27 2021 +0800

    enhance: don't show diff if there's only blank changes

commit 0b55d119aa
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 22:39:06 2021 +0800

    fix: save the previous content in Logseq first and commit it

    to avoid overwritten when syncing with iCloud/Dropbox/syncthing.

commit e0baf4b05c
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 22:18:45 2021 +0800

    fix: close file watcher when exit the app

commit 10e7a9fbd6
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 21:05:38 2021 +0800

    fix: disable cut selections in the query result block

commit 90c2bd7cc2
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 18:42:17 2021 +0800

    fix: terminate parser and persist dbs when reloading the app (electron)

commit 571c81af30
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 17:57:33 2021 +0800

    enhance: add sync from local files (the old refresh way)

commit a16e5c98ba
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 17:23:57 2021 +0800

    fix: Dragging blocks to update notes does not synchronize updates to
    the notes file in real time.

    close #2744

commit 6897a22a3f
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 16:43:30 2021 +0800

    fix: disable page/block auto-complete once the cursor went outside

commit feb4404874
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 13:28:47 2021 +0800

    fix: wrong page metadata saved for another graph

commit b96332122f
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 13:08:28 2021 +0800

    enhance: catch errors when app quits

commit 1ee0c240c3
Author: Jiang Hailong <gombiuda@gmail.com>
Date:   Wed Sep 1 20:54:13 2021 +0800

    FIX: Linked reference is not refresh after file altering #2694

commit 0550c8a876
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 12:25:39 2021 +0800

    fix: display logbook for scheduled tasks

commit 2a5f0cee7c
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 12:21:19 2021 +0800

    fix: spent hours for logbook

commit 1f2c9e4d3f
Author: leizhe <lzhes43@gmail.com>
Date:   Sat Sep 4 12:59:09 2021 +0900

    fix(timestamp): remove old SCHEDULED/DEADLINE timestamp

    When using `date-picker` to update the SCHEDULED/DEADLINE timestamp by
    clicking an existing one, logseq will add a new timestamp instead of
    updating the old one. This patch fixs this issue.

commit cb23b967e4
Author: leizhe <lzhes43@gmail.com>
Date:   Sat Sep 4 11:36:34 2021 +0900

    fix(repeat): more consistent with orgmode style

    Ref: https://orgmode.org/manual/Tracking-your-habits.html

commit 229c7f2594
Author: leizhe <lzhes43@gmail.com>
Date:   Sat Sep 4 15:11:07 2021 +0900

    enhance(property): remove empty properties drawer

commit a76df9ce97
Author: leizhe <lzhes43@gmail.com>
Date:   Sat Sep 4 10:27:30 2021 +0900

    fix(clock): duplicate clock-in log twice

    1. `set-marker` will not log time anymore. The time logging is moved
    to `with-timetracking`
    2. Concat `logbook` only if `new-clocks` is nil, which fixs the
    duplication of clock-in log.

commit c79e9f9e3e
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 12:04:16 2021 +0800

    code: cleanup

commit 9ec85db09a
Author: DarshanSudhakar <$K3Ug1i&>
Date:   Mon Sep 6 08:32:07 2021 +0530

    Fixing typo  for the tooltip 'Block reference'

commit eec677873b
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 11:49:58 2021 +0800

    enhance: page history support reverting back

commit 7273112a00
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 11:23:31 2021 +0800

    git: revert back

commit cd853b5864
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 10:39:08 2021 +0800

    git: should compare ignored-files with disk content

commit a84dfb5eff
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 10:31:16 2021 +0800

    git: add ignore-files to avoid repeated notifications

commit 86577e7ebf
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 10:07:39 2021 +0800

    fix: ignore permission denied error when git add all

commit 8dc0ca9ff5
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 09:54:03 2021 +0800

    fix: run git config core.safecrlf false on windows

commit 9edaae559d
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 09:20:06 2021 +0800

    refactor: extract file ops

commit f12f58d3fa
Author: tiagodevezas <tiagodevezas@gmail.com>
Date:   Fri Sep 3 23:25:07 2021 +0100

    fix typos

commit 9e82f0117c
Author: tiagodevezas <tiagodevezas@gmail.com>
Date:   Fri Sep 3 21:32:03 2021 +0100

    Translate shortcuts to Portuguese (pt-PT)

commit 9a2c17bb05
Author: tiagodevezas <tiagodevezas@gmail.com>
Date:   Fri Sep 3 20:58:33 2021 +0100

    Translate new settings to pt-PT

commit c05034cc34
Author: Sebastian Bensusan <sbensu@gmail.com>
Date:   Sat Sep 4 07:57:07 2021 -0700

    feat(calc): Understand percentages

commit bfe6a5d6cb
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 6 08:46:30 2021 +0800

    enhance: commit the content in logseq when detecting any disk changes

* improve(plugin): add install plugin api

* fix(plugin): protected plugin installation api

* improve(plugin): tweak readme display for local

* fix: conflicts

* fix(plugin): get block option with include children

* improve(plugin): copy more marketplace manifest fields to plugin

* fix: conflicts

* improve(plugin): shortcut for copying plugin id

* Squashed commit of the following:

commit e51ea54a75
Author: Tienson Qin <tiensonqin@gmail.com>
Date:   Mon Sep 13 10:40:25 2021 +0800

    fix: change ack timeout

* fix(plugin): non blank icon string

* fix: conflicts

* fix: e name

* fix: remove debug from state

* chore(plugin): bump libs minor version

Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
2021-09-13 19:49:51 +08:00
llcc
fef5bbf068 enhance(clock): support recording in repeated block // cleanup unused namespaces (#2777)
* enhance(clock): support recording in repeated block

* cleanup: unused namespaces

* cleanup: missing-else-branch if --> when

* enhance: wider search results window for mobile browser

* fix: namespace requirement
2021-09-08 10:23:16 +08:00
charlie
d8d69c0e51 improve(plugin): run installed plugin in isolated domain 2021-08-25 16:24:56 +08:00
charlie
6afa07ae48 fix(plugin): description modal 2021-08-16 16:21:45 +08:00
charlie
981bcf5ec6 improve(plugin): add types and api of scrolling to block in page 2021-07-19 19:36:33 +08:00
rcmerci
b674cda211 feat: md export add indent-style 2021-07-07 22:03:57 +08:00
charlie
e947acf7bd feat(plugin): support configurable UI api for toolbar action items 2021-06-29 17:55:06 +08:00
charlie
a623b31d42 improve(ui): details of plugin item 2021-06-07 21:12:46 +08:00
charlie
33dc32a6e8 improve(plugin): add sidebar-open? hook & insert block api 2021-05-19 17:11:32 +08:00