🎨 添加文档 && 新增正则脚本模块

Signed-off-by: Echo <1711788888@qq.com>
This commit is contained in:
2026-02-28 15:11:12 +08:00
parent a6234e7bb0
commit 3bfa59cf3e
17 changed files with 26980 additions and 1 deletions

113
web-app/src/api/regex.ts Normal file
View File

@@ -0,0 +1,113 @@
import apiClient from './client'
// 类型定义
export interface RegexScript {
id: number
userId: number
name: string
findRegex: string
replaceWith: string
trimStrings: string[]
placement: number
disabled: boolean
markdownOnly: boolean
runOnEdit: boolean
promptOnly: boolean
substituteRegex: boolean
minDepth?: number
maxDepth?: number
scope: number
ownerCharId?: number
ownerPresetId?: number
order: number
extensions: Record<string, any>
createdAt: string
updatedAt: string
}
export interface CreateRegexScriptRequest {
name: string
findRegex: string
replaceWith?: string
trimStrings?: string[]
placement?: number
disabled?: boolean
markdownOnly?: boolean
runOnEdit?: boolean
promptOnly?: boolean
substituteRegex?: boolean
minDepth?: number
maxDepth?: number
scope?: number
ownerCharId?: number
ownerPresetId?: number
order?: number
extensions?: Record<string, any>
}
export interface UpdateRegexScriptRequest {
name?: string
findRegex?: string
replaceWith?: string
trimStrings?: string[]
placement?: number
disabled?: boolean
markdownOnly?: boolean
runOnEdit?: boolean
promptOnly?: boolean
substituteRegex?: boolean
minDepth?: number
maxDepth?: number
scope?: number
ownerCharId?: number
ownerPresetId?: number
order?: number
extensions?: Record<string, any>
}
export interface GetRegexScriptListRequest {
page?: number
pageSize?: number
keyword?: string
scope?: number
}
export interface RegexScriptListResponse {
list: RegexScript[]
total: number
page: number
pageSize: number
}
// API 方法
export const regexScriptApi = {
// 创建正则脚本
createRegexScript: (data: CreateRegexScriptRequest): Promise<{ data: RegexScript }> => {
return apiClient.post('/app/regex', data)
},
// 获取正则脚本列表
getRegexScriptList: (params?: GetRegexScriptListRequest): Promise<{ data: RegexScriptListResponse }> => {
return apiClient.get('/app/regex', { params })
},
// 获取正则脚本详情
getRegexScriptById: (id: number): Promise<{ data: RegexScript }> => {
return apiClient.get(`/app/regex/${id}`)
},
// 更新正则脚本
updateRegexScript: (id: number, data: UpdateRegexScriptRequest) => {
return apiClient.put(`/app/regex/${id}`, data)
},
// 删除正则脚本
deleteRegexScript: (id: number) => {
return apiClient.delete(`/app/regex/${id}`)
},
// 测试正则脚本
testRegexScript: (id: number, testString: string): Promise<{ data: { result: string } }> => {
return apiClient.post(`/app/regex/${id}/test`, { testString })
},
}