* actually using result from deepMerge when updating settings
* replacing merge from lodash with merge from deepmerge
---------
Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
Added
1. All configurations of current graph.
App.getCurrentGraphConfigs: () => Promise<any>
2. All favorite pages list of current graph.
App.getCurrentGraphFavorites: () => Promise<Array<string> | null>
3. All recent pages list of current graph.
App.getCurrentGraphRecent: () => Promise<Array<string> | null>
4. Clear right sidebar blocks.
App.clearRightSidebarBlocks: (opts?: { close: boolean }) => void
5. Support register CodeMirror enhancer. #Experiment feature
Experiments.registerExtensionsEnhancer<T = any>(type: 'katex' | 'codemirror', enhancer: (v: T) => Promise<any>)
6. Support hooks for app search service. #Alpha stage
App.registerSearchService<T extends IPluginSearchServiceHooks>(s: T): void
7. Support focus option for App.insertBlock. Credit to [[tennox]] #PR
Fixed
1. Adjust build script to be compatible for shadow-cljs bundler.
How to set up a clojurescript project with shadow-cljs?
https://github.com/rlhk/logseq-url-plus/blob/main/doc/dev-notes.md
* 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