mirror of
https://github.com/truewhile/MeBox.git
synced 2026-09-29 19:36:36 +08:00
5baf9515ea
## TG Bot 交互命令系统 (新增) - telegram_bot.go: 命令路由 + /start /help /status /search /downloads /stats - telegram_webhook.go: Webhook 接收 + Polling 管理端点 - Polling 模式: 无需公网 HTTPS, 服务器启动自动轮询 - HTML parse_mode 统一消息格式 ## 通知配置 BUG 修复 - validateChannel 添加 email 类型支持 - 前后端字段统一: channel_type -> type - ListByType 新增仓库方法 ## UI 深度优化 - glass-panel: 添加 rounded-2xl + 可见边框 + padding - card: 添加 p-4 sm:p-6 - 全局 rounded-md -> rounded-xl, 裸 rounded -> rounded-lg - 500+ 深色硬编码类名清零 - text-gray-400 -> gray-500 色差提升 - 按钮组 flex-wrap 防溢出 - data-table 表格溢出截断
30 lines
993 B
TypeScript
30 lines
993 B
TypeScript
import { api } from './client'
|
|
import type { NotifyChannel } from '../types'
|
|
|
|
// Payload accepted by create / update. `events` and `enabled` are optional.
|
|
export interface NotifyChannelInput {
|
|
name: string
|
|
type: NotifyChannel['type']
|
|
config: Record<string, string>
|
|
events?: string[]
|
|
enabled?: boolean
|
|
}
|
|
|
|
// notifyChannelsAPI wraps the admin /admin/notify/channels surface.
|
|
export const notifyChannelsAPI = {
|
|
list: () =>
|
|
api.get<NotifyChannel[]>('/admin/notify/channels').then((r) => r.data ?? []),
|
|
|
|
create: (input: NotifyChannelInput) =>
|
|
api.post<NotifyChannel>('/admin/notify/channels', input).then((r) => r.data),
|
|
|
|
update: (id: string, input: NotifyChannelInput) =>
|
|
api.put<NotifyChannel>(`/admin/notify/channels/${id}`, input).then((r) => r.data),
|
|
|
|
remove: (id: string) =>
|
|
api.delete(`/admin/notify/channels/${id}`).then((r) => r.data),
|
|
|
|
test: (id: string) =>
|
|
api.post<{ message: string }>(`/admin/notify/channels/${id}/test`).then((r) => r.data),
|
|
}
|