浏览代码

Revert "feat(plguin): integration"

This reverts commit ba6b6429a92217fe81a88d3274dd1b74aa9b73bf.
Tienson Qin 4 年之前
父节点
当前提交
a14a6a5346

+ 0 - 2
resources/electron-dev.html

@@ -30,7 +30,6 @@
 </head>
 </head>
 <body>
 <body>
 <div id="root"></div>
 <div id="root"></div>
-<script>window.__LSP__HOST__ = true</script>
 <script>window.user = null</script>
 <script>window.user = null</script>
 <script src="./js/magic_portal.js"></script>
 <script src="./js/magic_portal.js"></script>
 <script>let worker = new Worker('./js/worker.js')
 <script>let worker = new Worker('./js/worker.js')
@@ -50,7 +49,6 @@ const portal = new MagicPortal(worker);
 </script>
 </script>
 <script defer src="./js/highlight.min.js"></script>
 <script defer src="./js/highlight.min.js"></script>
 <script defer src="./js/interact.min.js"></script>
 <script defer src="./js/interact.min.js"></script>
-<script defer src="./js/lsplugin.core.js"></script>
 <script defer src="./js/main.js"></script>
 <script defer src="./js/main.js"></script>
 <script defer src="./js/code-editor.js"></script>
 <script defer src="./js/code-editor.js"></script>
 <script defer src="./js/age-encryption.js"></script>
 <script defer src="./js/age-encryption.js"></script>

+ 0 - 2
resources/electron.html

@@ -31,7 +31,6 @@
 </head>
 </head>
 <body>
 <body>
 <div id="root"></div>
 <div id="root"></div>
-<script>window.__LSP__HOST__ = true</script>
 <script>window.user = null</script>
 <script>window.user = null</script>
 <script src="./js/magic_portal.js"></script>
 <script src="./js/magic_portal.js"></script>
 <script>let worker = new Worker('./js/worker.js')
 <script>let worker = new Worker('./js/worker.js')
@@ -51,7 +50,6 @@ const portal = new MagicPortal(worker);
 </script>
 </script>
 <script defer src="./js/highlight.min.js"></script>
 <script defer src="./js/highlight.min.js"></script>
 <script defer src="./js/interact.min.js"></script>
 <script defer src="./js/interact.min.js"></script>
-<script defer src="./js/lsplugin.core.js"></script>
 <script defer src="./js/main.js"></script>
 <script defer src="./js/main.js"></script>
 <script defer src="./js/code-editor.js"></script>
 <script defer src="./js/code-editor.js"></script>
 <script defer src="./js/age-encryption.js"></script>
 <script defer src="./js/age-encryption.js"></script>

+ 1 - 5
resources/js/preload.js

@@ -1,6 +1,6 @@
 const fs = require('fs')
 const fs = require('fs')
 const path = require('path')
 const path = require('path')
-const { ipcRenderer, contextBridge, shell, clipboard, webFrame } = require('electron')
+const { ipcRenderer, contextBridge, shell, clipboard } = require('electron')
 
 
 const IS_MAC = process.platform === 'darwin'
 const IS_MAC = process.platform === 'darwin'
 const IS_WIN32 = process.platform === 'win32'
 const IS_WIN32 = process.platform === 'win32'
@@ -136,8 +136,4 @@ contextBridge.exposeInMainWorld('apis', {
 
 
   getFilePathFromClipboard,
   getFilePathFromClipboard,
   isClipboardHasImage,
   isClipboardHasImage,
-
-  setZoomFactor (factor) {
-    webFrame.setZoomFactor(factor)
-  }
 })
 })

+ 0 - 31
src/electron/electron/handler.cljs

@@ -89,25 +89,6 @@
                 (remove nil?))]
                 (remove nil?))]
     (vec (cons {:path (fix-win-path! path)} result))))
     (vec (cons {:path (fix-win-path! path)} result))))
 
 
-(defn- get-ls-dotdir-root
-  []
-  (let [lg-dir (str (.getPath app "home") "/.logseq")]
-    (if-not (fs/existsSync lg-dir)
-      (and (fs/mkdirSync lg-dir) lg-dir)
-      lg-dir)))
-
-(defn- get-ls-default-plugins
-  []
-  (let [plugins-root (path/join (get-ls-dotdir-root) "plugins")
-        _ (if-not (fs/existsSync plugins-root)
-            (fs/mkdirSync plugins-root))
-        dirs (js->clj (fs/readdirSync plugins-root #js{"withFileTypes" true}))
-        dirs (->> dirs
-                  (filter #(.isDirectory %))
-                  (filter #(not (string/starts-with? (.-name %) "_")))
-                  (map #(path/join plugins-root (.-name %))))]
-    dirs))
-
 (defmethod handle :openDir [^js window _messages]
 (defmethod handle :openDir [^js window _messages]
   (let [result (.showOpenDialogSync dialog (bean/->js
   (let [result (.showOpenDialogSync dialog (bean/->js
                                             {:properties ["openDirectory" "createDirectory" "promptToCreate"]}))
                                             {:properties ["openDirectory" "createDirectory" "promptToCreate"]}))
@@ -197,18 +178,6 @@
   (when dir
   (when dir
     (watch-dir! window dir)))
     (watch-dir! window dir)))
 
 
-(defmethod handle :openDialogSync [^js window _messages]
-  (let [result (.showOpenDialogSync dialog (bean/->js
-                                             {:properties ["openDirectory"]}))
-        path (first result)]
-    path))
-
-(defmethod handle :getLogseqDotDirRoot []
-  (get-ls-dotdir-root))
-
-(defmethod handle :getUserDefaultPlugins []
-  (get-ls-default-plugins))
-
 (defmethod handle :default [args]
 (defmethod handle :default [args]
   (println "Error: no ipc handler for: " (bean/->js args)))
   (println "Error: no ipc handler for: " (bean/->js args)))
 
 

+ 0 - 10
src/main/frontend/components/header.cljs

@@ -15,7 +15,6 @@
             [frontend.components.repo :as repo]
             [frontend.components.repo :as repo]
             [frontend.components.search :as search]
             [frontend.components.search :as search]
             [frontend.components.export :as export]
             [frontend.components.export :as export]
-            [frontend.components.plugins :as plugins]
             [frontend.components.right-sidebar :as sidebar]
             [frontend.components.right-sidebar :as sidebar]
             [frontend.handler.page :as page-handler]
             [frontend.handler.page :as page-handler]
             [frontend.handler.web.nfs :as nfs]
             [frontend.handler.web.nfs :as nfs]
@@ -72,7 +71,6 @@
 (rum/defc dropdown-menu < rum/reactive
 (rum/defc dropdown-menu < rum/reactive
   [{:keys [me current-repo t default-home]}]
   [{:keys [me current-repo t default-home]}]
   (let [projects (state/sub [:me :projects])
   (let [projects (state/sub [:me :projects])
-        developer-mode? (state/sub [:ui/developer-mode?])
         logged? (state/logged?)]
         logged? (state/logged?)]
     (ui/dropdown-with-links
     (ui/dropdown-with-links
      (fn [{:keys [toggle-fn]}]
      (fn [{:keys [toggle-fn]}]
@@ -116,14 +114,6 @@
           :options {:on-click #(ui-handler/toggle-settings-modal!)}
           :options {:on-click #(ui-handler/toggle-settings-modal!)}
           :icon svg/settings-sm})
           :icon svg/settings-sm})
 
 
-       (when developer-mode?
-         {:title (t :plugins)
-          :options {:href (rfe/href :plugins)}})
-
-       (when developer-mode?
-         {:title (t :themes)
-          :options {:on-click #(plugins/open-select-theme!)}})
-
        (when current-repo
        (when current-repo
          {:title (t :export)
          {:title (t :export)
           :options {:on-click #(state/set-modal! export/export)}
           :options {:on-click #(state/set-modal! export/export)}

+ 5 - 6
src/main/frontend/components/plugins.cljs

@@ -81,8 +81,7 @@
        [:sup.inline-block.px-1.text-xs.opacity-30 version]]
        [:sup.inline-block.px-1.text-xs.opacity-30 version]]
       [:div.desc.text-xs.opacity-60
       [:div.desc.text-xs.opacity-60
        [:p description]
        [:p description]
-       ;;[:small (js/JSON.stringify (bean/->js settings))]
-]
+       [:small (js/JSON.stringify (bean/->js settings))]]
       [:div.flag
       [:div.flag
        [:p.text-xs.text-gray-300.pr-2.flex.justify-between.dark:opacity-40
        [:p.text-xs.text-gray-300.pr-2.flex.justify-between.dark:opacity-40
         [:small author]
         [:small author]
@@ -147,9 +146,9 @@
   ([type payload opts]
   ([type payload opts]
    (let [id (str "slot__" (util/rand-str 8))]
    (let [id (str "slot__" (util/rand-str 8))]
      (rum/use-effect!
      (rum/use-effect!
-      (fn []
-        (plugin-handler/hook-plugin-app type {:slot id :payload payload} nil)
-        #())
-      [])
+       (fn []
+         (plugin-handler/hook-plugin-app type {:slot id :payload payload} nil)
+         #())
+       [])
      [:div.lsp-hook-ui-slot
      [:div.lsp-hook-ui-slot
       (merge opts {:id id})])))
       (merge opts {:id id})])))

+ 2 - 5
src/main/frontend/components/settings.cljs

@@ -244,7 +244,7 @@
                               (config-handler/set-config! :date-formatter format))))}
                               (config-handler/set-config! :date-formatter format))))}
             (for [format (sort (date/journal-title-formatters))]
             (for [format (sort (date/journal-title-formatters))]
               [:option (cond->
               [:option (cond->
-                        {:key format}
+                           {:key format}
                          (= format custom-date-format)
                          (= format custom-date-format)
                          (assoc :selected "selected"))
                          (assoc :selected "selected"))
                format])]]]]
                format])]]]]
@@ -352,10 +352,7 @@
          [:div.mt-1.sm:mt-0.sm:col-span-2
          [:div.mt-1.sm:mt-0.sm:col-span-2
           [:div.rounded-md.sm:max-w-xs
           [:div.rounded-md.sm:max-w-xs
            (ui/toggle developer-mode?
            (ui/toggle developer-mode?
-                      (fn []
-                        (let [mode (not developer-mode?)]
-                          (state/set-developer-mode! mode)
-                          (and mode (js/alert (t :developer-mode-alert)))))
+                      #(state/set-developer-mode! (not developer-mode?))
                       true)]]]
                       true)]]]
         [:div.text-sm.opacity-50
         [:div.text-sm.opacity-50
          (t :settings-page/developer-mode-desc)]
          (t :settings-page/developer-mode-desc)]

+ 1 - 3
src/main/frontend/components/theme.cljs

@@ -2,7 +2,6 @@
   (:require [rum.core :as rum]
   (:require [rum.core :as rum]
             [frontend.util :as util]
             [frontend.util :as util]
             [frontend.handler.route :as route-handler]
             [frontend.handler.route :as route-handler]
-            [frontend.handler.plugin :as plugin-handler]
             [frontend.components.svg :as svg]))
             [frontend.components.svg :as svg]))
 
 
 (rum/defc container
 (rum/defc container
@@ -13,8 +12,7 @@
       (.setAttribute doc "data-theme" (if (= theme "white") "light" theme))
       (.setAttribute doc "data-theme" (if (= theme "white") "light" theme))
       (if (= theme "dark")                                 ;; for tailwind dark mode
       (if (= theme "dark")                                 ;; for tailwind dark mode
         (.add cls "dark")
         (.add cls "dark")
-        (.remove cls "dark"))
-      (plugin-handler/hook-plugin-app :theme-mode-changed theme nil))
+        (.remove cls "dark")))
    [theme])
    [theme])
 
 
   (rum/use-effect!
   (rum/use-effect!

+ 0 - 9
src/main/frontend/components/theme.css

@@ -214,12 +214,3 @@ html.is-resizing-buf {
     transition: none;
     transition: none;
   }
   }
 }
 }
-
-body[data-page=plugins] {
-  .cp__sidebar-main-content {
-    max-width: 1280px;
-    width: 80%;
-    padding-left: 30px;
-    padding-right: 30px;
-  }
-}

+ 1 - 3
src/main/frontend/core.cljs

@@ -1,7 +1,6 @@
 (ns frontend.core
 (ns frontend.core
   (:require [rum.core :as rum]
   (:require [rum.core :as rum]
             [frontend.handler :as handler]
             [frontend.handler :as handler]
-            [frontend.handler.plugin :as plugin-handler]
             [frontend.handler.route :as route]
             [frontend.handler.route :as route]
             [frontend.page :as page]
             [frontend.page :as page]
             [frontend.routes :as routes]
             [frontend.routes :as routes]
@@ -45,8 +44,7 @@
   ;; this is called in the index.html and must be exported
   ;; this is called in the index.html and must be exported
   ;; so it is available even in :advanced release builds
   ;; so it is available even in :advanced release builds
 
 
-  (plugin-handler/setup!
-   #(handler/start! start))
+  (handler/start! start)
 
 
   ;; popup to notify user, could be toggled in settings
   ;; popup to notify user, could be toggled in settings
   ;; (handler/request-notifications-if-not-asked)
   ;; (handler/request-notifications-if-not-asked)

+ 0 - 6
src/main/frontend/dicts.cljs

@@ -325,9 +325,6 @@ title: How to take dummy notes?
         :all-journals "All journals"
         :all-journals "All journals"
         :my-publishing "My publishing"
         :my-publishing "My publishing"
         :settings "Settings"
         :settings "Settings"
-        :plugins "Plugins"
-        :themes "Themes"
-        :developer-mode-alert "If you want enable plugin system just now, please restart app."
         :import "Import"
         :import "Import"
         :join-community "Join the community"
         :join-community "Join the community"
         :sponsor-us "Sponsor Us"
         :sponsor-us "Sponsor Us"
@@ -1051,9 +1048,6 @@ title: How to take dummy notes?
            :all-files "所有文件"
            :all-files "所有文件"
            :my-publishing "我的发布"
            :my-publishing "我的发布"
            :settings "设置"
            :settings "设置"
-           :plugins "插件"
-           :themes "主题"
-           :developer-mode-alert "如果希望插件功能立刻生效, 请重启应用"
            :import "导入"
            :import "导入"
            :join-community "加入社区"
            :join-community "加入社区"
            :sponsor-us "赞助我们!"
            :sponsor-us "赞助我们!"

+ 1 - 4
src/main/frontend/handler/plugin.cljs

@@ -4,7 +4,6 @@
             [frontend.util :as util]
             [frontend.util :as util]
             [frontend.fs :as fs]
             [frontend.fs :as fs]
             [frontend.handler.notification :as notifications]
             [frontend.handler.notification :as notifications]
-            [frontend.storage :as storage]
             [camel-snake-kebab.core :as csk]
             [camel-snake-kebab.core :as csk]
             [frontend.state :as state]
             [frontend.state :as state]
             [medley.core :as md]
             [medley.core :as md]
@@ -12,9 +11,7 @@
             [cljs-bean.core :as bean]
             [cljs-bean.core :as bean]
             [clojure.string :as string]))
             [clojure.string :as string]))
 
 
-(defonce lsp-enabled?
-  (and (util/electron?)
-       (= (storage/get "developer-mode") "true")))
+(defonce lsp-enabled? (util/electron?))
 
 
 ;; state handlers
 ;; state handlers
 (defn register-plugin
 (defn register-plugin

+ 0 - 6
src/main/frontend/handler/route.cljs

@@ -77,11 +77,6 @@
         title (get-title (:name data) path-params)]
         title (get-title (:name data) path-params)]
     (util/set-title! title)))
     (util/set-title! title)))
 
 
-(defn update-page-label!
-  [route]
-  (let [{:keys [data]} route]
-    (set! (. js/document.body.dataset -page) (name (:name data)))))
-
 (defn jump-to-anchor!
 (defn jump-to-anchor!
   [anchor-text]
   [anchor-text]
   (when anchor-text
   (when anchor-text
@@ -92,7 +87,6 @@
   (let [route route]
   (let [route route]
     (swap! state/state assoc :route-match route)
     (swap! state/state assoc :route-match route)
     (update-page-title! route)
     (update-page-title! route)
-    (update-page-label! route)
     (when-let [anchor (get-in route [:query-params :anchor])]
     (when-let [anchor (get-in route [:query-params :anchor])]
       (jump-to-anchor! anchor)
       (jump-to-anchor! anchor)
       (util/scroll-to-top))))
       (util/scroll-to-top))))

+ 0 - 2
src/main/frontend/page.cljs

@@ -3,7 +3,6 @@
             [frontend.state :as state]
             [frontend.state :as state]
             [frontend.ui :as ui]
             [frontend.ui :as ui]
             [frontend.components.sidebar :as sidebar]
             [frontend.components.sidebar :as sidebar]
-            [frontend.handler.plugin :as plugin-handler]
             [frontend.context.i18n :as i18n]))
             [frontend.context.i18n :as i18n]))
 
 
 (rum/defc route-view
 (rum/defc route-view
@@ -16,7 +15,6 @@
                    (state/setup-electron-updater!)
                    (state/setup-electron-updater!)
                    (ui/inject-document-devices-envs!)
                    (ui/inject-document-devices-envs!)
                    (ui/inject-dynamic-style-node!)
                    (ui/inject-dynamic-style-node!)
-                   (plugin-handler/host-mounted!)
                    (let [teardown-fn (comp (ui/setup-patch-ios-fixed-bottom-position!))]
                    (let [teardown-fn (comp (ui/setup-patch-ios-fixed-bottom-position!))]
                      (assoc state ::teardown teardown-fn)))
                      (assoc state ::teardown teardown-fn)))
    :will-unmount (fn [state]
    :will-unmount (fn [state]

+ 1 - 6
src/main/frontend/routes.cljs

@@ -4,7 +4,6 @@
             [frontend.components.file :as file]
             [frontend.components.file :as file]
             [frontend.components.page :as page]
             [frontend.components.page :as page]
             [frontend.components.diff :as diff]
             [frontend.components.diff :as diff]
-            [frontend.components.plugins :as plugins]
             [frontend.components.journal :as journal]
             [frontend.components.journal :as journal]
             [frontend.components.search :as search]
             [frontend.components.search :as search]
             [frontend.components.settings :as settings]
             [frontend.components.settings :as settings]
@@ -66,8 +65,4 @@
 
 
    ["/all-journals"
    ["/all-journals"
     {:name :all-journals
     {:name :all-journals
-     :view journal/all-journals}]
-
-   ["/plugins"
-    {:name :plugins
-     :view plugins/installed-page}]])
+     :view journal/all-journals}]])

+ 0 - 19
src/main/frontend/state.cljs

@@ -112,16 +112,6 @@
     :electron/updater-pending? false
     :electron/updater-pending? false
     :electron/updater {}
     :electron/updater {}
 
 
-    ;; plugin
-    :plugin/indicator-text        nil
-    :plugin/installed-plugins     {}
-    :plugin/installed-themes      []
-    :plugin/installed-commands    {}
-    :plugin/simple-commands       {}
-    :plugin/selected-theme        nil
-    :plugin/selected-unpacked-pkg nil
-    :plugin/active-readme         nil
-
     ;; all notification contents as k-v pairs
     ;; all notification contents as k-v pairs
     :notification/contents {}
     :notification/contents {}
     :graph/syncing? false
     :graph/syncing? false
@@ -1040,15 +1030,6 @@
   []
   []
   (:commands (get-config)))
   (:commands (get-config)))
 
 
-(defn get-plugins-commands
-  []
-  (mapcat seq (flatten (vals (:plugin/installed-commands @state)))))
-
-(defn get-plugins-commands-with-type
-  [type]
-  (filterv #(= (keyword (first %)) (keyword type))
-           (apply concat (vals (:plugin/simple-commands @state)))))
-
 (defn get-scheduled-future-days
 (defn get-scheduled-future-days
   []
   []
   (let [days (:scheduled/future-days (get-config))]
   (let [days (:scheduled/future-days (get-config))]