Commit Graph

154 Commits (22da19126f982f5d750e36425de5519d9d63abb4)

Author SHA1 Message Date
Charlie 036df25a17
Enhance: plugin APIs (#10399)
* enhance(plugin): call apis with the sdk ns

* enhance(plugin): types

* enhance(api): get value from the computed style

* enhance(api): types

* enhance(plugin): types

* enhance(plugin): types

* fix: lint

* fix(apis): incorrect shortcut command registion for block editing mode #10392

* fix(api): types

* enhance(apis): support register shortcuts with multi binding vals

* fix(plugins): normalize command key to make the internal keyword legal

* chore(plugin): build libs core

* chore(plugin): bump version

* enhance(apis): normalize apis cljs data

* chore(plugin): update libs user sdk

* chore(plugin): CHANGELOG.md

* fix: typo

* fix(ux): support querying plugins with right space chars
2023-12-13 15:42:21 +08:00
Andelf 5ca28a3a56 fix(electron): open assets link in folder freezes file browser
Close #10491
2023-11-28 02:39:52 +08:00
Charlie 1389836119
Feat: the new handbooks (#8524)
* feat(ui): WIP handbooks pane

* feat(ui): WIP handbooks pane

* feat(ui): WIP handbooks pane

* feat(ui): WIP handbooks popup

* feat(ui): WIP dragable & resizable for handbooks popup

* feat(ui): WIP pane navigations for handbooks popup

* feat(ui): WIP pane navigations for handbooks popup

* feat(ui): WIP handbooks markdown body

* feat(ui): WIP handbooks nodes for dashboard render

* feat(ui): WIP watch mode for development

* improve(ui): typos

* feat(ui): WIP enhance watch mode

* feat(ui): WIP support topic conent link local assets

* feat(ui): WIP support slide gallery for demo images & videos.

* fix(ui): parse value about draging position offset

* improve(ui): background color transition of handbook item card

* improve(ui): resizable of handbooks popup

* feat(handbooks): search topics

* improve(handbooks): search results within topics group

* improve(ui): better interaction for handbooks searchbar

* fix(handbooks): conflictive up/down for searchbar interaction

* improve(ux): better interaction for handbooks searchbar

* feat(ux): support youtube video for topic demos media

* fix(ui): container size of youtube video demos

* improve(handbooks): support local video for topic demos

* improve(ui): polish markdown body style for handbooks topic details

* chore: remove debugs

* chore: remove debugs

* improve(ui): polish active style for topic item card

* improve(ui): polish style of demos item

* improve(ui): help buttons still be visible when right sidebar opened

* improve(handbooks): support sub chapters for topic detail

* improve(handbooks): support sub chapters for topic detail

* improve(handbooks): support chapters searching for topics list

* fix: lint

* improve(ui): position of demo slides bullets

* fix(ui): index of chapter select

* improve(handbooks): typo

* fix(dev): lint

* fix(dev): lint

* fix(pdf): remove prefix(`@`) checking for links of org mode page

* feat(ui): WIP handbooks pane

* feat(ui): WIP handbooks pane

* feat(ui): WIP handbooks pane

* feat(ui): WIP handbooks popup

* feat(ui): WIP dragable & resizable for handbooks popup

* feat(ui): WIP pane navigations for handbooks popup

* feat(ui): WIP pane navigations for handbooks popup

* feat(ui): WIP handbooks markdown body

* feat(ui): WIP handbooks nodes for dashboard render

* feat(ui): WIP watch mode for development

* improve(ui): typos

* feat(ui): WIP enhance watch mode

* feat(ui): WIP support topic conent link local assets

* feat(ui): WIP support slide gallery for demo images & videos.

* fix(ui): parse value about draging position offset

* improve(ui): background color transition of handbook item card

* improve(ui): resizable of handbooks popup

* feat(handbooks): search topics

* improve(handbooks): search results within topics group

* improve(ui): better interaction for handbooks searchbar

* fix(handbooks): conflictive up/down for searchbar interaction

* improve(ux): better interaction for handbooks searchbar

* feat(ux): support youtube video for topic demos media

* fix(ui): container size of youtube video demos

* improve(handbooks): support local video for topic demos

* improve(ui): polish markdown body style for handbooks topic details

* chore: remove debugs

* chore: remove debugs

* improve(ui): polish active style for topic item card

* improve(ui): polish style of demos item

* improve(ui): help buttons still be visible when right sidebar opened

* improve(handbooks): support sub chapters for topic detail

* improve(handbooks): support sub chapters for topic detail

* improve(handbooks): support chapters searching for topics list

* fix: lint

* improve(ui): position of demo slides bullets

* fix(ui): index of chapter select

* improve(handbooks): typo

* fix(dev): lint

* fix(dev): lint

* improve(handbook): i18n

* fix(lint): unused translations

* fix: accessibility issues and translations

* fix(handbook): chapters navigation

* enhance(handbook): ux of the chapters select

* enhance(handbook): support link other page with markdown link syntax

* improve(ui): polish ui details of handbook topics card

* fix(handbook): parse key from href with a specific extension

* enhance(handbook): logic of chapters navigation

* enhance(handbook): ui of chapters navigation

* fix: lint

* improve(ui): display nowrap for code text

* fix(handbook): remove unnecessary source map

* fix(ui): missing component key of handbook chapter select

* enhance(handbook): WIP support panes navigation for the external links

* enhance(handbook): support panes navigation for the external links

* improve(ui): footer links of the handbook home pane

* improve(ui): footer links of the handbook home pane

* improve(ui): polish topics card

* improve(handbook): add shortcuts category card for home pane

* improve(ui): WIP the new help menu

* improve(ui): the new help menu

* fix: incorrect help link

* improve(ux): close help menu when click outside

* fix: lint

* fix(lint): remove unused translation

* fix(ui): the link of changelog

* fix(ui): the cover thumb container size of the topic card

* fix(ui): handbook popup overlay index

* enhance(ux): preivew images with lightbox modal for the handbook content

* enhance(ux): bottom border for the handbook content header when then content body scrolled

* fix: missing i18n

* improve(handbook): polish ui details

* fix: lint

* enhance(handbook): polish details

* fix(ui): incorrect safety init

* fix(ui): missing key for the help menu items

* enhance(ui): disable resize for the handbook popup container

* chore: build libs core

* fix(ui): incorrect shortcuts label

* enhance(handbook): cache discord online number

* enhance(handbook): fix heading level sizes

* enhance(handbook): improve paragraph spacing

* enhance(handbook): improve margins of media elements

* enhance(handbook): polish discord button

* enhance(plugin): make headings/font weights/colors look like in the design

* enhance(handbook): writing mode option is only available for develop mode

* enhance(handbook): polish handbook dashboard page

* enhance(handbook): typos

* enhance(ux): get discord online users count from logseq server

* fix(handbooks): incorrect var name

* enhance(handbook): polish details

---------

Co-authored-by: Bad3r <bad3r@protonmail.com>
Co-authored-by: situ2001 <yongcong2001@outlook.com>
Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
Co-authored-by: Konstantinos Kaloutas <konstantinos@logseq.com>
2023-10-27 14:33:10 +08:00
Sander Borst abb0596ed2 Change variable name 2023-10-09 21:56:08 +08:00
Sander Borst 3960e94ce8 Add function getClipboardData to preload.js 2023-10-09 21:56:08 +08:00
Andelf 8f5b1da36f fix(fs): support asset filenames with percent encoding
Fix #10188
2023-09-15 15:49:17 +09:00
Charlie 6d6da2046c
Enhance/shortcuts (#9803)
* refactor(shortcuts): simplify to build handler category map

* fix(shortcuts): redundant re-mount for the pdf shortcuts

* refactor(shortcuts): simplify names

* refactor(shortcuts): simplify user keynames

* fix(shortcuts): persist inited state for dev mode

* refactor(shortcuts): simplify handlers installation

* refactor(shortcuts): optimize shortcuts mixin

* fix: incorrect function ref

* refactor(shortcuts): shortcuts mixin

* fix(shortcuts): incorrect initialization for the pdf shortcut handler

* refactor(shortcuts): optimize binding keys map

* refactor(shortcuts): optimize shortcuts conflicts detection

* refactor(shortcuts): optimize binding ids map

* refactor(shortcuts): WIP the new keymap page

* refactor(shortcuts): WIP the new keymap related components

* feat(shortcuts): WIP fuzzy search for the shortcuts

* refactor(shortcuts): WIP the new keymap related components

* feat(shortcuts): WIP the new shorcuts record component

* feat(shortcuts): WIP the new shorcuts record component

* feat(shortcuts): WIP check shortcut conflicts component

* feat(shortcuts): WIP the new shorcuts record component

* refactor(shortcuts): WIP persist user shortcuts

* fix(shortcuts): detection for the conflicts

* feat(shortcuts): WIP detection for the conflicts

* feat(shortcuts): WIP persist user shortcuts

* refactor(shortcuts): add unit tests

* enhance(ux): search pane for the shortcuts

* feat(shortcuts): remove the existent shortcut item

* feat(shortcuts): fold/unfold categories

* feat(shortcuts): add shortcuts filters

* enhance(shortcuts): resove binding map description

* enhance(shortcuts): reactive category shortcuts

* enhance(shortcuts): register api for plugins

* feat(shortcuts): add keyboard shortcuts filters

* feat(shortcuts): impl keyboard shortcuts filters

* enhance(shortcuts): leader keys for the shortcut conflicts detection

* enhance(tests): leader keys conflicts for the shortucts

* enhance(shortcuts): parse conflicts from current binding list

* enhance(ui): polish the component of the restore shortcut action

* enhance(shortcuts): get conflicts with specific handler id

* enhance(shortcuts): polish the confilts component

* enhance(shortcuts): polish keymap conflicts component

* enhance(shortcuts): ux for handling shorcuts conflicts

* enhance(ui): polish notifications cp

* fix(shortcuts): remove reduplicate shortcuts for category

* enhance(shortcuts): polish ux for handling shorcuts conflicts

* chore(plugin): build libs core

* enhance(plugin): support shortcut command lifecycle hooks

* enhance(plugin): support shortcut command lifecycle hooks

* chore(plugin): build libs core

* enhance(shortcuts): support shortcuts saved to global config

* enhance(shortcuts): support shortcuts be saved to global config

* feat(shortcuts): support keymap manager to global settings

* enhance(shortcuts): shortcut to open keymap settings

* fix(units): tests

* fix: lints

* enhance(shortcuts): unlisten all shortcuts

* fix: lints

* fix: lints

* fix(units): tests

* fix(units): tests

* fix(units): tests

* enhance(shortcuts): unlisten/listen all shortcuts

* enhance(shortcuts): polish conflicts component

* fix(ui): modal size

* fix(ui): modal panel container

* enhance(shortcuts): i18n

* enhance(ui): layout of the shortcuts recorder component

* fix(lint): i18n

* enhance(ui): keyboard icon for the keymap settings tab

* fix(shortcuts): incorrect filters for the collaspsed shortcuts

* enhance(ui): polish details for the keymap settings

* enhance(ui): polish details for the keymap settings

* fix(shortcuts): get shortcut description error when the associated handler-id not exist

* fix(ui): the shortcut disabled label overlaps with section headers.

* refactor(shortcuts): names

* enhance(ui): filter icons
2023-08-29 19:33:48 +08:00
Konstantinos Kaloutas f9b8f69c16 handle amplify 2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas abbd35a042 handle pdfjs 2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas 677cada2ba Revert "Revert "Revert "handle magic-portal"""
This reverts commit b1f12048ac310ea80fba835f932d7e38f74056b9.
2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas deb0a43e8b Revert "Revert "handle magic-portal""
This reverts commit 9011fa7f9e54ae8a3b587da6d61affa31e3cd727.
2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas a19c5feb85 Revert "handle magic-portal"
This reverts commit 8146430b0fc88b600a8f93164e0b39d05353bbb6.
2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas 46208a7753 Revert "Revert "handle lightning-fs""
This reverts commit 840cb90ed5f0fc2704b80f975d08179050cee8b0.
2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas bffeddff4c Revert "handle lightning-fs"
This reverts commit 005f56deb42d6d40776282baf91fe79cd2c30d29.
2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas eb6a045619 handle magic-portal 2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas 20421e4cc4 handle lightning-fs 2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas 1a9017f757 handle highlight.js 2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas 56e6e934b8 handle marked js 2023-08-04 11:17:30 +08:00
Konstantinos Kaloutas 7d6aae0c08 handle mhchem 2023-07-21 10:07:06 -04:00
Konstantinos Kaloutas 86d3cad507 handle shepherd.js 2023-07-21 10:07:06 -04:00
Konstantinos Kaloutas 9fd3deb39e handle reveal.js 2023-07-21 10:07:06 -04:00
Konstantinos Kaloutas fed6dea816 convert interact.js 2023-07-10 00:54:54 +08:00
Konstantinos Kaloutas 6e100f0dd1 convert swiped events 2023-07-10 00:54:54 +08:00
Konstantinos Kaloutas 1f09012f01 convert photoswipe 2023-07-10 00:54:54 +08:00
Konstantinos Kaloutas e04d0c498d convert html2canvas and Inter 2023-07-10 00:54:54 +08:00
Allan Chain 6d0033e645 chore: include katex resources from npm 2023-06-23 10:05:45 -04:00
Allan Chain 9a8d5ea6a5
chore: update KaTeX from 0.13.18 to 0.16.7 (#9625) 2023-06-13 22:42:52 +08:00
charlie c6c58a025d refactor: react components of the tabler extension icons 2023-05-12 18:52:11 +08:00
charlie 2bc8691c23 enhance(ui): support tabler extensions icons to the react components 2023-05-12 18:52:11 +08:00
Charlie 60fbfdf2f7
Enhance: plugin-related improvements (#8787)
- fix: Select and Input elements rendered using provideUI via onMacroRendererSlotted don't function #8374
 - fix: logseq.Editor.getPageBlocksTree does not work when page uuid is passed in as param #4920
 - feat: add a plug-in flag for the plugin slash commands item
 - feat: add logseq.App.setCurrentGraphConfigs: (configs: {}) => Promise<void>
 - feat: add hook logseq.App.onTodayJournalCreated: IUserHook<{ title: string }
 - enhance: auto-check updates for the installed plugins from Marketplace
 - feat: expose template-related APIs to SDK
2023-04-12 21:27:40 +08:00
Konstantinos 95149e13f6
Feat: Export to image (#9037)
* feat: export to image

* chore: export selection on whiteboards

* fix: whiteboards zoom on export

* fix: loading position

* chore: support video thumb

* core: add export to  whiteboards context menu

* fix: context menu entry

* fix; copy image to clipboard

* fix: copy / export label

* fix: hide ui elements

* fix: remove random character

* fix: graph export

* chore: remove console log and jpg format

* style: run prettier

* fix: disable on multiple selected blocks

* fix: multiple blocks

* enhance: restrict bounds of selected shapes

* chore: export selection on whiteboards

* fix: whiteboards zoom on export

* chore: support video thumb

* core: add export to  whiteboards context menu

* fix: context menu entry

* fix; copy image to clipboard

* fix: copy / export label

* fix: hide ui elements

* fix: remove random character

* fix: graph export

* chore: remove console log and jpg format

* style: run prettier

* fix: disable on multiple selected blocks

* fix: multiple blocks

* enhance: restrict bounds of selected shapes

* Fix any html2canvas related functionality failing in publishing

* fix: portal header gradient on export

* chore: add comment about html2canvas-ignore attr

* fix: use export padding constant

* fix: export collapsed portals with size >  medium

* fix: reset export type

* enhance: export filename

---------

Co-authored-by: Gabriel Horner <gabriel@logseq.com>
Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
2023-04-12 17:39:22 +08:00
Charlie 95c5cba9db
Feat: The new login UI (#8865)
Built-in login UI instead of callback

---------

Co-authored-by: rcmerci <rcmerci@gmail.com>
Co-authored-by: Konstantinos Kaloutas <konstantinos@logseq.com>
Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
2023-03-27 19:56:18 +08:00
charlie 1df54a6b54 chore(plugin): build libs core 2023-03-06 12:05:39 +08:00
charlie ec6e99e447 fix(plugin): force disable the unloaded(error) plugin 2023-02-28 15:13:42 +08:00
Charlie 675811ccde
Enhance/plugins (#8202)
* improve(plugins): install hooks with user options

* improve(plugin): remove todos

* improve(plugin): hook for a specific plugin

* e2e tests

* improve(ui): global search bar for the results from the custom search service
2023-01-05 19:30:41 +08:00
charlie db284f1132 chore: build libs 2022-12-26 12:10:23 +08:00
Charlie 020317911f
Enhance/plugin APIs (#7555)
* feat: WIP native cli command support

* Add :shell/command-whitelist option

* Integrate cli to code block

* Add :code-block/command-whitelist option

* fix: size of icon

* improve(shell): cache user shell whitelist on application configures file

* improve(electron): promisify run cli command

* chore(libs): update version

* fix(plugin): incorrect payload of pdf highlights section hook

* improve(plugin): block renderer with specific block uuid

* improve(plugin): expose logger for user lib

* improve(plugin): block hooks type

* improve(plugin): block slot hook with specific block

* improve(plugin): auto generate key for provide UI options

* improve(plugin): style of injected ui container

* improve(plugin): types

* improve(plugin): async messaging api from host to plugin

* improve(plugin): add types

* improve(apis): get external plugin metadata

* improve(apis): invoke external plugin impls

* improve(apis): call external plugin impls for simple commands

* enhance(apis): datascript query api for predicate inputs

* enhance(apis): datascript query api for predicate inputs

* fix(apis): redundant args of datascript query api

* enhance(plugins): position of float ui container

* enhance(plugins): style of setting options

* enhance(plugins): layouts data for float ui

* chore(plugins): update CHANGELOG.md

* improve(apis): add types

* chore: fix some inclusive terms

* improve(apis): types

* chore(plugins): update CHANGELOG.md

* chore(plugins): build libs

* chore: update CHANGELOG.md

* chore: remove experiemental alda integration

* fix(lint): remove unused methods

Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
Co-authored-by: Andelf <andelf@gmail.com>
2022-12-19 20:23:25 +08:00
Charlie dda1f9bd9f
Enhance / Plugin APIs (#6945)
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
2022-11-22 22:00:29 +08:00
charlie d04a0ac66b enhance(pdf): sync page number in highlights metafile 2022-11-22 21:43:47 +08:00
charlie 438f0b9e3d chore(plugins): build libs core 2022-11-11 17:33:15 +08:00
charlie 3068868347 fix(electron): open custom protocol links as default condition 2022-10-16 12:17:44 +08:00
Konstantinos Kaloutas d238c88afd chore: add allowed protocols for openExternal 2022-10-10 13:42:22 +08:00
Charlie d53ac94bfc
Enhance/pdf improvements (#6475)
Full-text search, highlights and assets alias support 
It also exposes a plugin API for highlight context menu   
    ```ts
    /**
       * Current it's only available for pdf viewer
       * @param label - displayed name of command
       * @param action - callback for the clickable item
       * @param opts - clearSelection: clear highlight selection when callback invoked
       */
      registerHighlightContextMenuItem: (
        label: string,
        action: SimpleCommandCallback,
        opts?: {
          clearSelection: boolean
        }
      ) => unknown
    ```
2022-10-09 20:44:18 +08:00
Tienson Qin f4262cf919
Enhance/api storages for graph assets (#6488)
* improve(api): assets storage for plugin

Co-authored-by: charlie <xyhp915@qq.com>
2022-10-04 12:30:19 +08:00
charlie f8cc6378c3 improve(ui): update built-in icon mode 2022-09-21 14:49:20 +08:00
Konstantinos Kaloutas 73bbcc2ba0 fix: persist zoom level on navigation 2022-09-09 12:13:56 +08:00
charlie c7f17e905e chore: build libs core 2022-08-26 18:48:00 +08:00
Andelf fe99ca703f fix(windows): handle open dir
Fix #6438
2022-08-23 11:38:43 +08:00
charlie 7e3610077b chore: build libs core with more debug info 2022-08-22 21:54:17 +08:00
charlie 9fbea041ae chore: build libs core 2022-08-22 21:54:17 +08:00