mirror of
https://github.com/router-for-me/CLIProxyAPI.git
synced 2026-02-03 04:50:52 +08:00
73 lines
2.3 KiB
Go
73 lines
2.3 KiB
Go
// Package api exposes helpers for embedding CLIProxyAPI.
|
|
//
|
|
// It wraps internal management handler types so external projects can integrate
|
|
// management endpoints without importing internal packages.
|
|
package api
|
|
|
|
import (
|
|
"github.com/gin-gonic/gin"
|
|
internalmanagement "github.com/router-for-me/CLIProxyAPI/v6/internal/api/handlers/management"
|
|
coreauth "github.com/router-for-me/CLIProxyAPI/v6/sdk/cliproxy/auth"
|
|
"github.com/router-for-me/CLIProxyAPI/v6/sdk/config"
|
|
)
|
|
|
|
// ManagementTokenRequester exposes a limited subset of management endpoints for requesting tokens.
|
|
type ManagementTokenRequester interface {
|
|
RequestAnthropicToken(*gin.Context)
|
|
RequestGeminiCLIToken(*gin.Context)
|
|
RequestCodexToken(*gin.Context)
|
|
RequestAntigravityToken(*gin.Context)
|
|
RequestQwenToken(*gin.Context)
|
|
RequestIFlowToken(*gin.Context)
|
|
RequestIFlowCookieToken(*gin.Context)
|
|
GetAuthStatus(c *gin.Context)
|
|
PostOAuthCallback(c *gin.Context)
|
|
}
|
|
|
|
type managementTokenRequester struct {
|
|
handler *internalmanagement.Handler
|
|
}
|
|
|
|
// NewManagementTokenRequester creates a limited management handler exposing only token request endpoints.
|
|
func NewManagementTokenRequester(cfg *config.Config, manager *coreauth.Manager) ManagementTokenRequester {
|
|
return &managementTokenRequester{
|
|
handler: internalmanagement.NewHandlerWithoutConfigFilePath(cfg, manager),
|
|
}
|
|
}
|
|
|
|
func (m *managementTokenRequester) RequestAnthropicToken(c *gin.Context) {
|
|
m.handler.RequestAnthropicToken(c)
|
|
}
|
|
|
|
func (m *managementTokenRequester) RequestGeminiCLIToken(c *gin.Context) {
|
|
m.handler.RequestGeminiCLIToken(c)
|
|
}
|
|
|
|
func (m *managementTokenRequester) RequestCodexToken(c *gin.Context) {
|
|
m.handler.RequestCodexToken(c)
|
|
}
|
|
|
|
func (m *managementTokenRequester) RequestAntigravityToken(c *gin.Context) {
|
|
m.handler.RequestAntigravityToken(c)
|
|
}
|
|
|
|
func (m *managementTokenRequester) RequestQwenToken(c *gin.Context) {
|
|
m.handler.RequestQwenToken(c)
|
|
}
|
|
|
|
func (m *managementTokenRequester) RequestIFlowToken(c *gin.Context) {
|
|
m.handler.RequestIFlowToken(c)
|
|
}
|
|
|
|
func (m *managementTokenRequester) RequestIFlowCookieToken(c *gin.Context) {
|
|
m.handler.RequestIFlowCookieToken(c)
|
|
}
|
|
|
|
func (m *managementTokenRequester) GetAuthStatus(c *gin.Context) {
|
|
m.handler.GetAuthStatus(c)
|
|
}
|
|
|
|
func (m *managementTokenRequester) PostOAuthCallback(c *gin.Context) {
|
|
m.handler.PostOAuthCallback(c)
|
|
}
|