mirror of
https://github.com/logseq/logseq.git
synced 2026-02-01 22:47:36 +00:00
* 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 * feat(ui): add package * Update .gitignore * feat(ui): set up shui infrastructure * feat(ui): add storybook macro * enhance(ui): storybook themes * feat(ui): adapt ui button to classic * enhance(ui): shui story * feat(ui): shui toaster * enhance(ui): shui toaster * feat(ui): imperative API for shui toaster * enhance(shui): update API for shui toaster * enhance(shui): update hooks for shui toaster * enhance(shui): remove debug * feat(ui): story for the shui toaster * feat(ui): story * feat(ui): story docs * feat(ui): more variants for the shui toaster * feat(ui): story * fix(ux): support querying plugins with right space chars * feat(ui): add shui `Alert` component * enhance(ui): shui demo * feat(ui): add logseq UI readme * enhance(ui): default shui theme * feat(ui): add shui `Badge` component & demo * fix(ui): outline theme for shui button * feat(ui): custom icon for the toaster item * feat(ui): add shui dropdown & demo * feat(ui): WIP shui form related components * feat(ui): WIP shui form-related components * feat(ui): WIP shui form * feat(ui): WIP shui form state for validation * fix(ui): missing rounded for ui button * feat(ui): add yup for shui form as default validation resolver * enhance(ui): simplify validation schema input for the shui form * fix(ui): accent ring color for input * feat(ui): add shui switch * feat(ui): add shui checkbox & switch * feat(ui): add shui radio group * fix(ui): missing file * feat(ui): add Textarea component * feat(ui): add shui card & skeleton * feat(ui): add shui context menu component & demo * fix(ui): accent color for the context menu item * feat(ui): add shui select component & demo * enhance(ui): ui css priority * feat(ui): add shui calendar & ui details * feat(ui): add shui popover * feat(ui): add date picker & demo * feat(ui): add shui dialog * feat(ui): WIP add shui dialog * feat(ui): WIP shui dialog as modal * feat(ui): WIP imperative APIs for the shui modal * feat(ui): imperative APIs for the shui modal/alert * feat(ui): support imperative API alert!/confirm! return promise * feat(ui): simplify shui components resources * feat(ui): response layout for the demo ui page * feat(ui): simplify colors * feat(ui): simplify colors * feat(ui): simplify colors * refactor(ui): WIP Adapt to the new button component * refactor(ui): polish new button & colors * fix(ui): the new theme color for the plugin settings nav item link * fix(ui): blockquote colors * enhance(ui): more custom colors for shui button * feat(ui): WIP make logseq green as a theme color * enhance(ui): polish logseq classical theme color * fix(ui): theme details of all pages * enhance(ui): polish logseq theme color for dark mode * fix(ui): missing table style * refactor(ui): simplify the all shui buttons & shortcuts for the cmdk component * fix(ui): missing file * refactor(ui): clear up stuff * fix(ui): theme color related issues * enhance(ui): polish button style * enhance(ui): polish the keymap setting pane * fix(ui): hint button from the cmdk pane footer * fix(ui): logseq colors for the storybook * enhance(ui): stories for the shui components * fix(ui): active color for the old toggle component * enhance(ui): keep the constant size of the settings pane * fix(ui): polish search input for the plugins pane * enhance(ui): polish number list bullet colors * feat(ui): add shui tooltip component * chore: build ui * chore(ui): clean up resources * fix: lint * fix: lint * fix: lint * fix(ui): alignment of the keymap title from the settings pane * fix: tests * fix(ui): close button for the classic notification tip * fix(ui): polish toaster viewport * enhance(ui): polish the ghost button colors * enhance(ui): demos for tips * fix(ui): accent colors for the rc-datepicker * fix(ui): accent color for the menu item * refactor(ui): remove unless code for the accent colors * enhance(ui): polish pdf viewer background color for the accent color mode * fix: lint * fix: lint * fix: lint * enhance(ui): support button with the custom href link * enhance(ui): polish aside setting items * enhance(ui): polish accent color for buttons * enhance(ui): polish all pages --------- Co-authored-by: Gabriel Horner <97210743+logseq-cldwalker@users.noreply.github.com>
126 lines
6.2 KiB
Clojure
126 lines
6.2 KiB
Clojure
;; shadow-cljs configuration
|
|
{:deps true
|
|
:nrepl {:port 8701}
|
|
|
|
;; "." for /static
|
|
:dev-http {3001 ["static" "."]}
|
|
|
|
:js-options {:js-package-dirs ["node_modules" "tldraw/apps"]}
|
|
|
|
:builds
|
|
{:app {:target :browser
|
|
:module-loader true
|
|
:js-options {:ignore-asset-requires true
|
|
:resolve {"react" {:target :global
|
|
:global "React"}
|
|
"react-dom" {:target :global
|
|
:global "ReactDOM"}}} ;; handle `require(xxx.css)`
|
|
:modules {:main
|
|
{:init-fn frontend.core/init}
|
|
:code-editor
|
|
{:entries [frontend.extensions.code]
|
|
:depends-on #{:main}}
|
|
:excalidraw
|
|
{:entries [frontend.extensions.excalidraw]
|
|
:depends-on #{:main}}
|
|
:tldraw
|
|
{:entries [frontend.extensions.tldraw]
|
|
:depends-on #{:main}}}
|
|
|
|
:output-dir "./static/js"
|
|
:asset-path "/static/js"
|
|
:release {:asset-path "https://asset.logseq.com/static/js"}
|
|
:compiler-options {:infer-externs :auto
|
|
:output-feature-set :es-next-in
|
|
:source-map true
|
|
:externs ["datascript/externs.js"
|
|
"externs.js"]
|
|
:warnings {:fn-deprecated false
|
|
:redef false}}
|
|
:build-hooks [(shadow.hooks/git-revision-hook "--long --always --dirty")]
|
|
:closure-defines {goog.debug.LOGGING_ENABLED true
|
|
frontend.modules.instrumentation.sentry/SENTRY-DSN #shadow/env "LOGSEQ_SENTRY_DSN"
|
|
frontend.modules.instrumentation.posthog/POSTHOG-TOKEN #shadow/env "LOGSEQ_POSTHOG_TOKEN"
|
|
frontend.config/ENABLE-PLUGINS #shadow/env ["ENABLE_PLUGINS" :as :bool :default true]
|
|
;; Set to switch file sync server to dev, set this to false in `yarn watch`
|
|
frontend.config/ENABLE-FILE-SYNC-PRODUCTION #shadow/env ["ENABLE_FILE_SYNC_PRODUCTION" :as :bool :default true]
|
|
frontend.config/TEST #shadow/env ["LOGSEQ_CI" :as :bool :default false]
|
|
frontend.config/REVISION #shadow/env ["LOGSEQ_REVISION" :default "dev"]} ;; set by git-revision-hook
|
|
|
|
;; NOTE: electron, browser/mobile-app use different asset-paths.
|
|
;; For browser/mobile-app devs, assets are located in /static/js(via HTTP root).
|
|
;; For electron devs, assets are located in ./js(via relative path).
|
|
;; :dev {:asset-path "./js"}
|
|
:devtools {:before-load frontend.core/stop ;; before live-reloading any code call this function
|
|
:after-load frontend.core/start ;; after live-reloading finishes call this function
|
|
:watch-path "/static"
|
|
:preloads [devtools.preload
|
|
shadow.remote.runtime.cljs.browser]}}
|
|
|
|
:electron {:target :node-script
|
|
:output-to "static/electron.js"
|
|
:main electron.core/main
|
|
:devtools {:before-load electron.core/stop
|
|
:after-load electron.core/start}
|
|
:compiler-options {:infer-externs :auto
|
|
:source-map true
|
|
:source-map-include-sources-content true
|
|
:source-map-detail-level :all
|
|
|
|
:externs ["datascript/externs.js"
|
|
"externs.js"]
|
|
:warnings {:fn-deprecated false
|
|
:redef false}}}
|
|
|
|
:test {:target :node-test
|
|
:output-to "static/tests.js"
|
|
:closure-defines {frontend.util/NODETEST true
|
|
logseq.shui.util/NODETEST true}
|
|
:devtools {:enabled false}
|
|
;; disable :static-fns to allow for with-redefs and repl development
|
|
:compiler-options {:static-fns false}
|
|
:main frontend.test.frontend-node-test-runner/main}
|
|
|
|
:gen-malli-kondo-config {:target :node-script
|
|
:closure-defines {frontend.util/NODETEST true}
|
|
:devtools {:enabled false}
|
|
:compiler-options {:static-fns false}
|
|
:output-to "static/gen-malli-kondo-config.js"
|
|
:main gen-malli-kondo-config.core/main}
|
|
|
|
:publishing {:target :browser
|
|
:module-loader true
|
|
:js-options {:ignore-asset-requires true}
|
|
:modules {:main
|
|
{:init-fn frontend.publishing/init}
|
|
:code-editor
|
|
{:entries [frontend.extensions.code]
|
|
:depends-on #{:main}}
|
|
:excalidraw
|
|
{:entries [frontend.extensions.excalidraw]
|
|
:depends-on #{:main}}
|
|
:tldraw
|
|
{:entries [frontend.extensions.tldraw]
|
|
:depends-on #{:main}}}
|
|
|
|
:output-dir "./static/js/publishing"
|
|
:asset-path "static/js"
|
|
:closure-defines {frontend.config/PUBLISHING true
|
|
goog.debug.LOGGING_ENABLED true}
|
|
:compiler-options {:infer-externs :auto
|
|
:output-feature-set :es-next
|
|
:externs ["datascript/externs.js"
|
|
"externs.js"]
|
|
:warnings {:fn-deprecated false
|
|
:redef false}}
|
|
:devtools {:before-load frontend.core/stop
|
|
:after-load frontend.core/start
|
|
:preloads [devtools.preload]}}
|
|
|
|
:stories-dev {:target :npm-module
|
|
:entries [logseq.shui.storybook]
|
|
:output-dir "packages/ui/.storybook/cljs"
|
|
:devtools {:enabled true}
|
|
:compiler-options {:optimizations :simple}}}}
|
|
|