UnisKB/ui/src/api/tool/tool.ts

110 lines
2.5 KiB
TypeScript
Raw Normal View History

2025-05-08 08:23:03 +00:00
import { Result } from '@/request/Result'
import { get, post, del, put } from '@/request/index'
import { type Ref } from 'vue'
import type { pageRequest } from '@/api/type/common'
2025-05-15 10:21:38 +00:00
import type { toolData } from '@/api/type/tool'
2025-05-08 08:23:03 +00:00
const prefix = '/workspace'
/**
*
* @params {folder_id: string}
*/
const getToolByFolder: (
wordspace_id: string,
data?: any,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (wordspace_id, data, loading) => {
return get(`${prefix}/${wordspace_id}/tool`, data, loading)
}
/**
*
* @param
* param {
"folder_id": "string",
"name": "string",
"tool_type": "string",
}
*/
const getToolList: (
wordspace_id: string,
page: pageRequest,
param?: any,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (wordspace_id, page, param, loading) => {
return get(
`${prefix}/${wordspace_id}/tool/${page.current_page}/${page.page_size}`,
param,
loading,
)
}
2025-05-26 10:10:18 +00:00
/**
*
* @param
*/
const postTool: (
wordspace_id: string,
data: toolData,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (wordspace_id, data, loading) => {
return post(`${prefix}/${wordspace_id}/tool`, data, undefined, loading)
}
2025-05-15 10:21:38 +00:00
/**
*
* @param
*/
2025-05-26 10:10:18 +00:00
const putTool: (
2025-05-15 10:21:38 +00:00
wordspace_id: string,
tool_id: string,
data: toolData,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (wordspace_id, tool_id, data, loading) => {
return put(`${prefix}/${wordspace_id}/tool/${tool_id}`, data, undefined, loading)
}
/**
*
* @param tool_id id
* @param loading
* @returns
*/
const getToolById: (
wordspace_id: string,
tool_id: String,
loading?: Ref<boolean>,
2025-06-04 03:24:04 +00:00
) => Promise<Result<any>> = (wordspace_id, tool_id, loading) => {
return get(`${prefix}/${wordspace_id}/tool/${tool_id}`, undefined, loading)
}
const postPylint: (
wordspace_id: string,
code: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (wordspace_id, code, loading) => {
return post(`${prefix}/${wordspace_id}/tool/pylint`, { code }, {}, loading)
2025-05-15 10:21:38 +00:00
}
2025-05-26 10:10:18 +00:00
/**
*
* @param
*/
// const postToolDebug: (data: any, loading?: Ref<boolean>) => Promise<Result<any>> = (
// data: any,
// loading
// ) => {
// return post(`${prefix}/debug`, data, undefined, loading)
// }
2025-05-08 08:23:03 +00:00
export default {
getToolByFolder,
getToolList,
2025-05-26 10:10:18 +00:00
putTool,
getToolById,
2025-06-04 03:24:04 +00:00
postTool,
postPylint
2025-05-08 08:23:03 +00:00
}