34 lines
1.7 KiB
Go
34 lines
1.7 KiB
Go
package app
|
||
|
||
import (
|
||
v1 "git.echol.cn/loser/st/server/api/v1"
|
||
"git.echol.cn/loser/st/server/middleware"
|
||
"github.com/gin-gonic/gin"
|
||
)
|
||
|
||
type ExtensionRouter struct{}
|
||
|
||
// InitExtensionRouter 初始化扩展路由
|
||
func (r *ExtensionRouter) InitExtensionRouter(Router *gin.RouterGroup) {
|
||
extRouter := Router.Group("extension").Use(middleware.AppJWTAuth())
|
||
extApi := v1.ApiGroupApp.AppApiGroup.ExtensionApi
|
||
{
|
||
extRouter.POST("", extApi.CreateExtension) // 创建扩展
|
||
extRouter.PUT(":id", extApi.UpdateExtension) // 更新扩展
|
||
extRouter.DELETE(":id", extApi.DeleteExtension) // 删除扩展
|
||
extRouter.GET(":id", extApi.GetExtension) // 获取扩展详情
|
||
extRouter.GET("", extApi.GetExtensionList) // 获取扩展列表
|
||
extRouter.GET("enabled", extApi.GetEnabledExtensions) // 获取启用的扩展
|
||
extRouter.POST(":id/toggle", extApi.ToggleExtension) // 启用/禁用扩展
|
||
extRouter.GET(":id/settings", extApi.GetExtensionSettings) // 获取扩展设置
|
||
extRouter.PUT(":id/settings", extApi.UpdateExtensionSettings) // 更新扩展设置
|
||
extRouter.GET(":id/manifest", extApi.GetExtensionManifest) // 获取 manifest
|
||
extRouter.POST("install/url", extApi.InstallFromUrl) // 从 URL 安装
|
||
extRouter.POST("install/git", extApi.InstallFromGit) // 从 Git URL 安装
|
||
extRouter.POST(":id/upgrade", extApi.UpgradeExtension) // 升级扩展
|
||
extRouter.POST("import", extApi.ImportExtension) // 文件导入(zip/文件夹)
|
||
extRouter.GET(":id/export", extApi.ExportExtension) // 导出扩展
|
||
extRouter.POST(":id/stats", extApi.UpdateStats) // 更新统计
|
||
}
|
||
}
|