Add managed plugins with lifecycle cleanup and editor extensions
This commit is contained in:
1 parent
9fd7e2a948
commit
8ce4a11b33
25 files changed
+1731
-73
No files matched your search
+10
-1
@@ -40,7 +40,9 @@ type Server struct {
|
||||
// OnSetup 在首次初始化完成后调用(用于删除启动码文件)
|
||||
OnSetup func()
|
||||
// ThemesDir 指向数据目录中的主题目录;为空时只有内置主题。
|
||||
ThemesDir string
|
||||
ThemesDir string
|
||||
PluginsDir string
|
||||
pluginsMu sync.Mutex
|
||||
}
|
||||
|
||||
func New(v *vault.Vault, a *auth.Manager, st *store.Store, hub *events.Hub, index *search.Index) *Server {
|
||||
@@ -91,6 +93,13 @@ func (s *Server) routes() []route {
|
||||
|
||||
{"GET /api/v1/settings", authed, s.getSettings},
|
||||
{"PATCH /api/v1/settings", sessionOnly, s.patchSettings},
|
||||
{"GET /api/v1/plugins", sessionOnly, s.listPlugins},
|
||||
{"POST /api/v1/plugins", sessionOnly, s.installPlugin},
|
||||
{"PATCH /api/v1/plugins/{id}", sessionOnly, s.togglePlugin},
|
||||
{"DELETE /api/v1/plugins/{id}", sessionOnly, s.uninstallPlugin},
|
||||
{"GET /api/v1/plugins/{id}/assets/{revision}/{path...}", sessionOnly, s.pluginAsset},
|
||||
{"GET /api/v1/plugins/{id}/data", sessionOnly, s.getPluginData},
|
||||
{"PUT /api/v1/plugins/{id}/data", sessionOnly, s.putPluginData},
|
||||
{"GET /api/v1/themes", authed, s.listThemes},
|
||||
{"GET /api/v1/themes/{id}", authed, s.getTheme},
|
||||
{"GET /api/v1/shares", sessionOnly, s.listShares},
|
||||
|
||||
Reference in new issue
Block a user