diff --git a/ui/package.json b/ui/package.json index 54e4f2fdb..9fe0a14c2 100644 --- a/ui/package.json +++ b/ui/package.json @@ -20,6 +20,7 @@ "@logicflow/core": "^2.0.15", "@logicflow/extension": "^2.0.20", "@vavt/cm-extension": "^1.9.1", + "@vueuse/core": "^13.3.0", "@wecom/jssdk": "^2.3.1", "axios": "^1.8.4", "cropperjs": "^2.0.0-rc.2", diff --git a/ui/src/api/shared/document.ts b/ui/src/api/shared/document.ts new file mode 100644 index 000000000..c703495c0 --- /dev/null +++ b/ui/src/api/shared/document.ts @@ -0,0 +1,499 @@ +import { Result } from '@/request/Result' +import { get, post, del, put, exportExcel, exportFile } from '@/request/index' +import type { Ref } from 'vue' +import type { KeyValue } from '@/api/type/common' +import type { pageRequest } from '@/api/type/common' + +const prefix = '/system/shared/knowledge' + +/** + * 文档分页列表 + * @param 参数 knowledge_id, + * param { + " name": "string", + } + */ + +const getDocument: ( + knowledge_id: string, + page: pageRequest, + param: any, + loading?: Ref, +) => Promise> = (knowledge_id, page, param, loading) => { + return get( + `${prefix}/${knowledge_id}/document/${page.current_page}/${page.page_size}`, + param, + loading, + ) +} + +/** + * 文档详情 + * @param 参数 knowledge_id + */ +const getDocumentDetail: (knowledge_id: string, document_id: string) => Promise> = ( + knowledge_id, + document_id, +) => { + return get(`${prefix}/${knowledge_id}/document/${document_id}`) +} + +/** + * 修改文档 + * @param 参数 + * knowledge_id, document_id, + * { + "name": "string", + "is_active": true, + "meta": {} + } + */ +const putDocument: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data: any, loading) => { + return put(`${prefix}/${knowledge_id}/document/${document_id}`, data, undefined, loading) +} + +/** + * 删除文档 + * @param 参数 knowledge_id, document_id, + */ +const delDocument: ( + knowledge_id: string, + document_id: string, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, loading) => { + return del(`${prefix}/${knowledge_id}/document/${document_id}`, loading) +} + +/** + * 批量取消文档任务 + * @param 参数 knowledge_id, document_id, + *{ + "id_list": [ + "3fa85f64-5717-4562-b3fc-2c963f66afa6" + ], + "type": 0 +} + */ + +const putBatchCancelTask: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/${knowledge_id}/document/cancel_task/_batch`, data, undefined, loading) +} + +/** + * 取消文档任务 + * @param 参数 knowledge_id, document_id, + */ +const putCancelTask: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/cancel_task`, + data, + undefined, + loading, + ) +} + +/** + * 下载原文档 + * @param 参数 knowledge_id + */ +const getDownloadSourceFile: (knowledge_id: string, document_id: string) => Promise> = ( + knowledge_id, + document_id, +) => { + return get(`${prefix}/${knowledge_id}/document/${document_id}/download_source_file`) +} + +/** + * 导出文档 + * @param document_name 文档名称 + * @param knowledge_id 数据集id + * @param document_id 文档id + * @param loading 加载器 + * @returns + */ +const exportDocument: ( + document_name: string, + knowledge_id: string, + document_id: string, + loading?: Ref, +) => Promise = (document_name, knowledge_id, document_id, loading) => { + return exportExcel( + document_name + '.xlsx', + `${prefix}/${knowledge_id}/document/${document_id}/export`, + {}, + loading, + ) +} +/** + * 导出文档 + * @param document_name 文档名称 + * @param knowledge_id 数据集id + * @param document_id 文档id + * @param loading 加载器 + * @returns + */ +const exportDocumentZip: ( + document_name: string, + knowledge_id: string, + document_id: string, + loading?: Ref, +) => Promise = (document_name, knowledge_id, document_id, loading) => { + return exportFile( + document_name + '.zip', + `${prefix}/${knowledge_id}/document/${document_id}/export_zip`, + {}, + loading, + ) +} + +/** + * 刷新文档向量库 + * @param 参数 + * knowledge_id, document_id, + * { + "state_list": [ + "string" + ] +} + */ +const putDocumentRefresh: ( + knowledge_id: string, + document_id: string, + state_list: Array, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, state_list, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/refresh`, + { state_list }, + undefined, + loading, + ) +} + +/** + * 同步web站点类型 + * @param 参数 + * knowledge_id, document_id, + */ +const putDocumentSync: ( + knowledge_id: string, + document_id: string, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/sync`, + undefined, + undefined, + loading, + ) +} + +/** + * 创建批量文档 + * @param 参数 +{ + "name": "string", + "paragraphs": [ + { + "content": "string", + "title": "string", + "problem_list": [ + { + "id": "string", + "content": "string" + } + ], + "is_active": true + } + ], + "source_file_id": string +} + */ +const postMulDocument: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/${knowledge_id}/document/batch_create`, data, {}, loading, 1000 * 60 * 5) +} + +/** + * 批量删除文档 + * @param 参数 knowledge_id, + * { + "id_list": [String] +} + */ +const delMulDocument: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return del( + `${prefix}/${knowledge_id}/document/bach_delete`, + undefined, + { id_list: data }, + loading, + ) +} + +/** + * 批量关联 + * @param 参数 knowledge_id, +{ + "document_id_list": [ + "string" + ], + "model_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "prompt": "string", + "state_list": [ + "string" + ] +} + */ +const putBatchGenerateRelated: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/${knowledge_id}/document/batch_generate_related`, data, undefined, loading) +} + +/** + * 批量修改命中方式 + * @param knowledge_id 知识库id + * @param data + * {id_list:[],hit_handling_method:'directly_return|optimization',directly_return_similarity} + * @param loading + * @returns + */ +const putBatchEditHitHandling: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/${knowledge_id}/document/batch_hit_handling`, data, undefined, loading) +} + +/** + * 批量刷新文档向量库 + * @param knowledge_id 知识库id + * @param data +{ + "id_list": [ + "string" + ], + "state_list": [ + "string" + ] +} + * @param loading + * @returns + */ +const putBatchRefresh: ( + knowledge_id: string, + data: any, + stateList: Array, + loading?: Ref, +) => Promise> = (knowledge_id, data, stateList, loading) => { + return put( + `${prefix}/${knowledge_id}/document/batch_refresh`, + { id_list: data, state_list: stateList }, + undefined, + loading, + ) +} + +/** + * 批量同步文档 + * @param 参数 knowledge_id, + */ +const putMulSyncDocument: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/${knowledge_id}/document/batch_sync`, { id_list: data }, undefined, loading) +} + +/** + * 批量迁移文档 + * @param 参数 knowledge_id,target_knowledge_id, + + */ +const putMigrateMulDocument: ( + knowledge_id: string, + target_knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, target_knowledge_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/migrate/${target_knowledge_id}`, + data, + undefined, + loading, + ) +} + +/** + * 导入QA文档 + * @param 参数 + * file + } + */ +const postQADocument: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return post(`${prefix}/${knowledge_id}/document/qa`, data, undefined, loading) +} + +/** + * 分段预览(上传文档) + * @param 参数 file:file,limit:number,patterns:array,with_filter:boolean + */ +const postSplitDocument: (data: any, id:string) => Promise> = (data, id) => { + return post(`${prefix}/${id}/document/split`, data, undefined, undefined, 1000 * 60 * 60) +} + +/** + * 分段标识列表 + * @param loading 加载器 + * @returns 分段标识列表 + */ +const listSplitPattern: ( + loading?: Ref, +) => Promise>>> = (loading) => { + return get(`${prefix}/document/split_pattern`, {}, loading) +} + +/** + * 导入表格 + * @param 参数 + * file + */ +const postTableDocument: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return post(`${prefix}/${knowledge_id}/document/table`, data, undefined, loading) +} + +/** + * 获得QA模版 + * @param 参数 fileName,type, + */ +const exportQATemplate: (fileName: string, type: string, loading?: Ref) => void = ( + fileName, + type, + loading, +) => { + return exportExcel(fileName, `${prefix}/document/template/export`, { type }, loading) +} + +/** + * 获得table模版 + * @param 参数 fileName,type, + */ +const exportTableTemplate: (fileName: string, type: string, loading?: Ref) => void = ( + fileName, + type, + loading, +) => { + return exportExcel(fileName, `${prefix}/document/table_template/export`, { type }, loading) +} + +/** + * 创建Web站点文档 + * @param 参数 + * { + "source_url_list": [ + "string" + ], + "selector": "string" + } + } + */ +const postWebDocument: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return post(`${prefix}/${knowledge_id}/document/web`, data, undefined, loading) +} + +const getAllDocument: (knowledge_id: string, loading?: Ref) => Promise> = ( + knowledge_id, + loading, +) => { + return get(`${prefix}/${knowledge_id}/document`, undefined, loading) +} + +const putLarkDocumentSync: ( + knowledge_id: string, + document_id: string, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, loading) => { + return put( + `${prefix}/lark/${knowledge_id}/document/${document_id}/sync`, + undefined, + undefined, + loading, + ) +} + +const delMulLarkSyncDocument: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/lark/${knowledge_id}/_batch`, { id_list: data }, undefined, loading) +} + +export default { + getDocument, + getDocumentDetail, + putDocument, + delDocument, + putBatchCancelTask, + putCancelTask, + getDownloadSourceFile, + exportDocument, + exportDocumentZip, + putDocumentRefresh, + putDocumentSync, + postMulDocument, + delMulDocument, + putBatchGenerateRelated, + putBatchEditHitHandling, + putBatchRefresh, + putMulSyncDocument, + putMigrateMulDocument, + postQADocument, + postSplitDocument, + listSplitPattern, + postTableDocument, + exportQATemplate, + exportTableTemplate, + postWebDocument, + + getAllDocument, + putLarkDocumentSync, + delMulLarkSyncDocument, +} diff --git a/ui/src/api/shared/knowledge.ts b/ui/src/api/shared/knowledge.ts new file mode 100644 index 000000000..8bbe54321 --- /dev/null +++ b/ui/src/api/shared/knowledge.ts @@ -0,0 +1,354 @@ +import { Result } from '@/request/Result' +import { get, post, del, put, exportFile, exportExcel } from '@/request/index' +import { type Ref } from 'vue' +import type { pageRequest } from '@/api/type/common' +import type { knowledgeData } from '@/api/type/knowledge' + +const prefix = '/system/shared' +const workspace_id = localStorage.getItem('workspace_id') || 'default' +const getSharedWorkspaceKnowledge: (loading?: Ref) => Promise>> = ( + loading, +) => { + return get(`${prefix}/workspace/${workspace_id}/knowledge`, {}, loading) +} + +const getSharedWorkspaceKnowledgePage: ( + param: any, + loading?: Ref, +) => Promise>> = (param: any, loading) => { + return get(`${prefix}/workspace/${workspace_id}/knowledge`, param, loading) +} + +const getSharedAuthorizationKnowledgeGet: ( + knowledge_id: string, + loading?: Ref, +) => Promise>> = (knowledge_id, loading) => { + return get(`${prefix}/knowledge/${knowledge_id}/authorization`, {}, loading) +} + +const getSharedAuthorizationKnowledgePost: ( + knowledge_id: string, + param?: any, + loading?: Ref, +) => Promise>> = (knowledge_id, param, loading) => { + return post(`${prefix}/knowledge/${knowledge_id}/authorization`, param, loading) +} + +const getSharedAuthorizationToolGet: ( + knowledge_id: string, + loading?: Ref, +) => Promise>> = (knowledge_id, loading) => { + return get(`${prefix}/tool/${knowledge_id}/authorization`, {}, loading) +} + +const getSharedAuthorizationToolPost: ( + knowledge_id: string, + param?: any, + loading?: Ref, +) => Promise>> = (knowledge_id, param, loading) => { + return post(`${prefix}/tool/${knowledge_id}/authorization`, param, loading) +} + +const getSharedAuthorizationModelGet: ( + knowledge_id: string, + loading?: Ref, +) => Promise>> = (knowledge_id, loading) => { + return get(`${prefix}/model/${knowledge_id}/authorization`, {}, loading) +} + +const getSharedAuthorizationModelPost: ( + knowledge_id: string, + param?: any, + loading?: Ref, +) => Promise>> = (knowledge_id, param, loading) => { + return post(`${prefix}/model/${knowledge_id}/authorization`, param, loading) +} + +/** + * 获得知识库文件夹列表 + * @params 参数 + * {folder_id: string, + * name: string, + * user_id: string, + * desc: string,} + */ +const getKnowledgeByFolder: (data?: any, loading?: Ref) => Promise>> = ( + data, + loading, +) => { + return get(`${prefix}/knowledge`, data, loading) +} + +/** + * 知识库分页列表 + * @param 参数 + * param { + "folder_id": "string", + "name": "string", + "tool_type": "string", + desc: string, + } + */ +const getKnowledgeList: ( + page: pageRequest, + param?: any, + loading?: Ref, +) => Promise> = (page, param, loading) => { + return get(`${prefix}/knowledge/${page.current_page}/${page.page_size}`, param, loading) +} + +/** + * 知识库详情 + * @param 参数 knowledge_id + */ +const getKnowledgeDetail: (knowledge_id: string, loading?: Ref) => Promise> = ( + knowledge_id, + loading, +) => { + return get(`${prefix}/knowledge/${knowledge_id}`, undefined, loading) +} + +/** + * 修改知识库信息 + * @param 参数 + * knowledge_id + * { + "name": "string", + "desc": true + } + */ +const putKnowledge: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/knowledge/${knowledge_id}`, data, undefined, loading) +} + +/** + * 删除知识库 + * @param 参数 knowledge_id + */ +const delKnowledge: (knowledge_id: String, loading?: Ref) => Promise> = ( + knowledge_id, + loading, +) => { + return del(`${prefix}/${knowledge_id}`, undefined, {}, loading) +} + +/** + * 向量化知识库 + * @param 参数 knowledge_id + */ +const putReEmbeddingKnowledge: ( + knowledge_id: string, + loading?: Ref, +) => Promise> = (knowledge_id, loading) => { + return put(`${prefix}/knowledge/${knowledge_id}/embedding`, undefined, undefined, loading) +} + +/** + * 导出知识库 + * @param knowledge_name 知识库名称 + * @param knowledge_id 知识库id + * @returns + */ +const exportKnowledge: ( + knowledge_name: string, + knowledge_id: string, + loading?: Ref, +) => Promise = (knowledge_name, knowledge_id, loading) => { + return exportExcel( + knowledge_name + '.xlsx', + `${prefix}/${knowledge_id}/knowledge/${knowledge_id}/export`, + undefined, + loading, + ) +} +/** + *导出Zip知识库 + * @param knowledge_name 知识库名称 + * @param knowledge_id 知识库id + * @param loading 加载器 + * @returns + */ +const exportZipKnowledge: ( + knowledge_name: string, + knowledge_id: string, + loading?: Ref, +) => Promise = (knowledge_name, knowledge_id, loading) => { + return exportFile( + knowledge_name + '.zip', + `${prefix}/${knowledge_id}/knowledge/${knowledge_id}/export_zip`, + undefined, + loading, + ) +} + +/** + * 生成关联问题 + * @param knowledge_id 知识库id + * @param data + * @param loading + * @returns + */ +const putGenerateRelated: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise>> = (knowledge_id, data, loading) => { + return put(`${prefix}/${knowledge_id}/generate_related`, data, null, loading) +} + +/** + * 命中测试列表 + * @param knowledge_id + * @param loading + * @query { query_text: string, top_number: number, similarity: number } + * @returns + */ +const getKnowledgeHitTest: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise>> = (knowledge_id, data, loading) => { + return get(`${prefix}/${knowledge_id}/hit_test`, data, loading) +} + +/** + * 同步知识库 + * @param 参数 knowledge_id + * @query 参数 sync_type // 同步类型->replace:替换同步,complete:完整同步 + */ +const putSyncWebKnowledge: ( + knowledge_id: string, + sync_type: string, + loading?: Ref, +) => Promise> = (knowledge_id, sync_type, loading) => { + return put(`${prefix}/knowledge/${knowledge_id}/sync`, undefined, { sync_type }, loading) +} + +/** + * 创建知识库 + * @param 参数 + * { + "name": "string", + "folder_id": "string", + "desc": "string", + "embedding": "string" + } + */ +const postKnowledge: (data: knowledgeData, loading?: Ref) => Promise> = ( + data, + loading, +) => { + return post(`${prefix}/knowledge/base`, data, undefined, loading, 1000 * 60 * 5) +} + +/** + * 获取当前用户可使用的向量化模型列表 + * @param application_id + * @param loading + * @query { query_text: string, top_number: number, similarity: number } + * @returns + */ +const getKnowledgeEmdeddingModel: ( + knowledge_id: string, + loading?: Ref, +) => Promise>> = (knowledge_id, loading) => { + return get(`${prefix}/${knowledge_id}/emdedding_model`, loading) +} + +/** + * 获取当前用户可使用的模型列表 + * @param application_id + * @param loading + * @query { query_text: string, top_number: number, similarity: number } + * @returns + */ +const getKnowledgeModel: ( + knowledge_id: string, + loading?: Ref, +) => Promise>> = (knowledge_id, loading) => { + return get(`${prefix}/${knowledge_id}/model`, loading) +} + +/** + * 创建Web知识库 + * @param 参数 + * { + "name": "string", + "folder_id": "string", + "desc": "string", + "embedding": "string", + "source_url": "string", + "selector": "string" + } + */ +const postWebKnowledge: (data: any, loading?: Ref) => Promise> = ( + data, + loading, +) => { + return post(`${prefix}/knowledge/web`, data, undefined, loading) +} + +/** + * 获取全部知识库 + * @param 参数 + */ +const getAllKnowledge: (loading?: Ref) => Promise> = (loading) => { + return get(`${prefix}/knowledge`, undefined, loading) +} + +/** + * 获取飞书文档列表 + * @param knowledge_id + * @param folder_token + * @param loading + * @returns + */ +const getLarkDocumentList: ( + knowledge_id: string, + folder_token: string, + data: any, + loading?: Ref, +) => Promise>> = (knowledge_id, folder_token, data, loading) => { + return post(`${prefix}/lark/${knowledge_id}/${folder_token}/doc_list`, data, null, loading) +} + +const importLarkDocument: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise>> = (knowledge_id, data, loading) => { + return post(`${prefix}/lark/${knowledge_id}/import`, data, null, loading) +} + +export default { + getKnowledgeByFolder, + getKnowledgeList, + getKnowledgeDetail, + putKnowledge, + delKnowledge, + putReEmbeddingKnowledge, + exportKnowledge, + exportZipKnowledge, + putGenerateRelated, + getKnowledgeHitTest, + putSyncWebKnowledge, + postKnowledge, + getKnowledgeModel, + postWebKnowledge, + + getLarkDocumentList, + importLarkDocument, + getAllKnowledge, + getSharedWorkspaceKnowledge, + getSharedWorkspaceKnowledgePage, + getSharedAuthorizationKnowledgeGet, + getSharedAuthorizationKnowledgePost, + getSharedAuthorizationToolGet, + getSharedAuthorizationToolPost, + getSharedAuthorizationModelGet, + getSharedAuthorizationModelPost, +} diff --git a/ui/src/api/shared/model.ts b/ui/src/api/shared/model.ts new file mode 100644 index 000000000..ed7c30443 --- /dev/null +++ b/ui/src/api/shared/model.ts @@ -0,0 +1,131 @@ +import { Result } from '@/request/Result' +import { get, post, del, put } from '@/request/index' +import { type Ref } from 'vue' +import type { + ListModelRequest, + Model, + CreateModelRequest, + EditModelRequest, +} from '@/api/type/model' +import type { FormField } from '@/components/dynamics-form/type' + +const prefix = '/system/shared' + +/** + * 获得模型列表 + * @params 参数 name, model_type, model_name + */ +const getModel: ( + request?: ListModelRequest, + loading?: Ref, +) => Promise>> = (data, loading) => { + return get(`${prefix}/model`, data, loading) +} + +/** + * 获取模型参数表单 + * @param model_id 模型id + * @param loading + * @returns + */ +const getModelParamsForm: ( + model_id: string, + loading?: Ref, +) => Promise>> = (model_id, loading) => { + return get(`${prefix}/model/${model_id}/model_params_form`, {}, loading) +} + +/** + * 创建模型 + * @param request 请求对象 + * @param loading 加载器 + * @returns + */ +const createModel: ( + request: CreateModelRequest, + loading?: Ref, +) => Promise> = (request, loading) => { + return post(`${prefix}/model`, request, {}, loading) +} + +/** + * 修改模型 + * @param request 請求對象 + * @param loading 加載器 + * @returns + */ +const updateModel: ( + model_id: string, + request: EditModelRequest, + loading?: Ref, +) => Promise> = (model_id, request, loading) => { + return put(`${prefix}/model/${model_id}`, request, {}, loading) +} + +/** + * 修改模型参数配置 + * @param request 請求對象 + * @param loading 加載器 + * @returns + */ +const updateModelParamsForm: ( + model_id: string, + request: any[], + loading?: Ref, +) => Promise> = (model_id, request, loading) => { + return put(`${prefix}/model/${model_id}/model_params_form`, request, {}, loading) +} + +/** + * 获取模型详情根据模型id 包括认证信息 + * @param model_id 模型id + * @param loading 加载器 + * @returns + */ +const getModelById: (model_id: string, loading?: Ref) => Promise> = ( + model_id, + loading, +) => { + return get(`${prefix}/model/${model_id}`, {}, loading) +} +/** + * 获取模型信息不包括认证信息根据模型id + * @param model_id 模型id + * @param loading 加载器 + * @returns + */ +const getModelMetaById: (model_id: string, loading?: Ref) => Promise> = ( + model_id, + loading, +) => { + return get(`${prefix}/model/${model_id}/meta`, {}, loading) +} +/** + * 暂停下载 + * @param model_id 模型id + * @param loading 加载器 + * @returns + */ +const pauseDownload: (model_id: string, loading?: Ref) => Promise> = ( + model_id, + loading, +) => { + return put(`${prefix}/model/${model_id}/pause_download`, undefined, {}, loading) +} +const deleteModel: (model_id: string, loading?: Ref) => Promise> = ( + model_id, + loading, +) => { + return del(`${prefix}/model/${model_id}`, undefined, {}, loading) +} +export default { + getModel, + createModel, + updateModel, + deleteModel, + getModelById, + getModelMetaById, + pauseDownload, + getModelParamsForm, + updateModelParamsForm, +} diff --git a/ui/src/api/shared/paragraph.ts b/ui/src/api/shared/paragraph.ts new file mode 100644 index 000000000..4dd725cc9 --- /dev/null +++ b/ui/src/api/shared/paragraph.ts @@ -0,0 +1,268 @@ +import { Result } from '@/request/Result' +import { get, post, del, put } from '@/request/index' +import type { pageRequest } from '@/api/type/common' +import type { Ref } from 'vue' +const prefix = '/system/shared/knowledge' + +/** + * 创建段落 + * @param 参数 + * knowledge_id, document_id + * { + "content": "string", + "title": "string", + "is_active": true, + "problem_list": [ + { + "content": "string" + } + ] + } + */ +const postParagraph: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data, loading) => { + return post( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph`, + data, + undefined, + loading, + ) +} + +/** + * 段落列表 + * @param 参数 knowledge_id document_id + * param { + "title": "string", + "content": "string", + } + */ +const getParagraph: ( + knowledge_id: string, + document_id: string, + page: pageRequest, + param: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, page, param, loading) => { + return get( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/${page.current_page}/${page.page_size}`, + param, + loading, + ) +} + +/** + * 修改段落 + * @param 参数 + * knowledge_id, document_id, paragraph_id + * { + "content": "string", + "title": "string", + "is_active": true, + "problem_list": [ + { + "content": "string" + } + ] + } + */ +const putParagraph: ( + knowledge_id: string, + document_id: string, + paragraph_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, paragraph_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/${paragraph_id}`, + data, + undefined, + loading, + ) +} + +/** + * 删除段落 + * @param 参数 knowledge_id, document_id, paragraph_id + */ +const delParagraph: ( + knowledge_id: string, + document_id: string, + paragraph_id: string, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, paragraph_id, loading) => { + return del( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/${paragraph_id}`, + undefined, + {}, + loading, + ) +} + +/** + * 某段落问题列表 + * @param 参数 knowledge_id,document_id,paragraph_id + */ +const getParagraphProblem: ( + knowledge_id: string, + document_id: string, + paragraph_id: string, +) => Promise> = (knowledge_id, document_id, paragraph_id: string) => { + return get(`${prefix}/${knowledge_id}/document/${document_id}/paragraph/${paragraph_id}/problem`) +} + +/** + * 给某段落创建问题 + * @param 参数 + * knowledge_id, document_id, paragraph_id + * { + content": "string" + } + */ +const postParagraphProblem: ( + knowledge_id: string, + document_id: string, + paragraph_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, paragraph_id, data: any, loading) => { + return post( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/${paragraph_id}/problem`, + data, + {}, + loading, + ) +} + +/** + * 添加某段落关联问题 + * @param knowledge_id 数据集id + * @param document_id 文档id + * @param loading 加载器 + * @query data { + * paragraph_id 段落id problem_id 问题id + * } + */ +const putAssociationProblem: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/association`, + {}, + data, + loading, + ) +} + +/** + * 批量删除段落 + * @param 参数 knowledge_id, document_id + */ +const putMulParagraph: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/batch_delete`, + { id_list: data }, + undefined, + loading, + ) +} + +/** + * 批量关联问题 + * @param 参数 knowledge_id, document_id + * { + "paragraph_id_list": [ + "3fa85f64-5717-4562-b3fc-2c963f66afa6" + ], + "model_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "prompt": "string", + "document_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6" + } + */ +const putBatchGenerateRelated: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/batch_generate_related`, + data, + undefined, + loading, + ) +} + +/** + * 批量迁移段落 + * @param 参数 knowledge_id,target_knowledge_id, + */ +const putMigrateMulParagraph: ( + knowledge_id: string, + document_id: string, + target_knowledge_id: string, + target_document_id: string, + data: any, + loading?: Ref, +) => Promise> = ( + knowledge_id, + document_id, + target_knowledge_id, + target_document_id, + data, + loading, +) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/migrate/dataset/${target_knowledge_id}/document/${target_document_id}`, + data, + undefined, + loading, + ) +} + +/** + * 解除某段落关联问题 + * @param 参数 dataset_id, document_id, + * @query data { + * paragraph_id 段落id problem_id 问题id + * } + */ +const putDisassociationProblem: ( + dataset_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (dataset_id, document_id, data, loading) => { + return put( + `${prefix}/${dataset_id}/document/${document_id}/paragraph/unassociation`, + {}, + data, + loading, + ) +} + +export default { + postParagraph, + getParagraph, + putParagraph, + delParagraph, + getParagraphProblem, + postParagraphProblem, + putAssociationProblem, + putMulParagraph, + putBatchGenerateRelated, + putMigrateMulParagraph, + putDisassociationProblem, +} diff --git a/ui/src/api/shared/problem.ts b/ui/src/api/shared/problem.ts new file mode 100644 index 000000000..0675f1948 --- /dev/null +++ b/ui/src/api/shared/problem.ts @@ -0,0 +1,121 @@ +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' + +const prefix = '/system/shared/knowledge' + +/** + * 创建问题 + * @param 参数 knowledge_id + * data: array[string] + */ +const postProblems: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return post(`${prefix}/${knowledge_id}/problem`, data, undefined, loading) +} + +/** + * 问题分页列表 + * @param 参数 knowledge_id, + * query { + "content": "string", + } + */ + +const getProblems: ( + knowledge_id: string, + page: pageRequest, + param: any, + loading?: Ref, +) => Promise> = (knowledge_id, page, param, loading) => { + return get( + `${prefix}/${knowledge_id}/problem/${page.current_page}/${page.page_size}`, + param, + loading, + ) +} + +/** + * 修改问题 + * @param 参数 + * knowledge_id, problem_id, + * { + "content": "string", + } + */ +const putProblems: ( + knowledge_id: string, + problem_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, problem_id, data: any, loading) => { + return put(`${prefix}/${knowledge_id}/problem/${problem_id}`, data, undefined, loading) +} + +/** + * 删除问题 + * @param 参数 knowledge_id, problem_id, + */ +const delProblems: ( + knowledge_id: string, + problem_id: string, + loading?: Ref, +) => Promise> = (knowledge_id, problem_id, loading) => { + return del(`${prefix}/${knowledge_id}/problem/${problem_id}`, loading) +} + +/** + * 问题详情 + * @param 参数 + * knowledge_id, problem_id, + */ +const getDetailProblems: ( + knowledge_id: string, + problem_id: string, + loading?: Ref, +) => Promise> = (knowledge_id, problem_id, loading) => { + return get(`${prefix}/${knowledge_id}/problem/${problem_id}/paragraph`, undefined, loading) +} + +/** + * 批量关联段落 + * @param 参数 knowledge_id, + * { + "problem_id_list": "Array", + "paragraph_list": "Array", + } + */ +const putMulAssociationProblem: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/${knowledge_id}/problem/batch_association`, data, undefined, loading) +} + +/** + * 批量删除问题 + * @param 参数 knowledge_id, + * data: array[string] + */ +const putMulProblem: ( + knowledge_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, data, loading) => { + return put(`${prefix}/${knowledge_id}/problem/batch_delete`, data, undefined, loading) +} + +export default { + postProblems, + getProblems, + putProblems, + delProblems, + getDetailProblems, + putMulAssociationProblem, + putMulProblem, +} diff --git a/ui/src/api/shared/provider.ts b/ui/src/api/shared/provider.ts new file mode 100644 index 000000000..9376b7d63 --- /dev/null +++ b/ui/src/api/shared/provider.ts @@ -0,0 +1,86 @@ +import {Result} from '@/request/Result' +import {get, post} from '@/request/index' +import type {Ref} from 'vue' +import type {Provider, BaseModel} from '@/api/type/model' +import type {FormField} from '@/components/dynamics-form/type' +import type {KeyValue} from '../type/common' + +const prefix_provider = '/provider' +/** + * 获得供应商列表 + */ +const getProvider: (loading?: Ref) => Promise>> = (loading) => { + return get(`${prefix_provider}`, {}, loading) +} + +/** + * 获得供应商列表 + */ +const getProviderByModelType: ( + model_type: string, + loading?: Ref, +) => Promise>> = (model_type, loading) => { + return get(`${prefix_provider}`, {model_type}, loading) +} + +/** + * 获取模型创建表单 + * @param provider + * @param model_type + * @param model_name + * @param loading + * @returns + */ +const getModelCreateForm: ( + provider: string, + model_type: string, + model_name: string, + loading?: Ref, +) => Promise>> = (provider, model_type, model_name, loading) => { + return get(`${prefix_provider}/model_form`, {provider, model_type, model_name}, loading) +} + +/** + * 获取模型类型列表 + * @param provider 供应商 + * @param loading 加载器 + * @returns 模型类型列表 + */ +const listModelType: ( + provider: string, + loading?: Ref, +) => Promise>>> = (provider, loading?: Ref) => { + return get(`${prefix_provider}/model_type_list`, {provider}, loading) +} + +/** + * 获取基础模型列表 + * @param provider + * @param model_type + * @param loading + * @returns + */ +const listBaseModel: ( + provider: string, + model_type: string, + loading?: Ref, +) => Promise>> = (provider, model_type, loading) => { + return get(`${prefix_provider}/model_list`, {provider, model_type}, loading) +} + +const listBaseModelParamsForm: ( + provider: string, + model_type: string, + model_name: string, + loading?: Ref, +) => Promise>> = (provider, model_type, model_name, loading) => { + return get(`${prefix_provider}/model_params_form`, {provider, model_type, model_name}, loading) +} +export default { + getProvider, + getModelCreateForm, + getProviderByModelType, + listModelType, + listBaseModel, + listBaseModelParamsForm, +} diff --git a/ui/src/api/shared/tool.ts b/ui/src/api/shared/tool.ts new file mode 100644 index 000000000..f82d59bc3 --- /dev/null +++ b/ui/src/api/shared/tool.ts @@ -0,0 +1,135 @@ +import { Result } from '@/request/Result' +import { get, post, del, put, exportFile } from '@/request/index' +import { type Ref } from 'vue' +import type { pageRequest } from '@/api/type/common' +import type { toolData } from '@/api/type/tool' + +const prefix = '/system/shared' + +/** + * 获得工具文件夹列表 + * @params 参数 {folder_id: string} + */ +const getToolByFolder: (data?: any, loading?: Ref) => Promise>> = ( + data, + loading, +) => { + return get(`${prefix}/tool`, data, loading) +} + +/** + * 工具列表 + * @param 参数 + * param { + "folder_id": "string", + "name": "string", + "tool_type": "string", + } + */ +const getToolList: ( + page: pageRequest, + param?: any, + loading?: Ref, +) => Promise> = (page, param, loading) => { + return get(`${prefix}/tool/${page.current_page}/${page.page_size}`, param, loading) +} + +/** + * 创建工具 + * @param 参数 + */ +const postTool: (data: toolData, loading?: Ref) => Promise> = ( + data, + loading, +) => { + return post(`${prefix}/tool`, data, undefined, loading) +} + +/** + * 修改工具 + * @param 参数 + + */ +const putTool: (tool_id: string, data: toolData, loading?: Ref) => Promise> = ( + tool_id, + data, + loading, +) => { + return put(`${prefix}/tool/${tool_id}`, data, undefined, loading) +} + +/** + * 获取工具详情 + * @param tool_id 工具id + * @param loading 加载器 + * @returns 函数详情 + */ +const getToolById: (tool_id: string, loading?: Ref) => Promise> = ( + tool_id, + loading, +) => { + return get(`${prefix}/tool/${tool_id}`, undefined, loading) +} + +/** + * 删除工具 + * @param 参数 tool_id + */ +const delTool: (tool_id: String, loading?: Ref) => Promise> = ( + tool_id, + loading, +) => { + return del(`${prefix}/${tool_id}`, undefined, {}, loading) +} + +const putToolIcon: (id: string, data: any, loading?: Ref) => Promise> = ( + id, + data, + loading, +) => { + return put(`${prefix}/${id}/edit_icon`, data, undefined, loading) +} + +const exportTool = (id: string, name: string, loading?: Ref) => { + return exportFile(name + '.fx', `${prefix}/${id}/export`, undefined, loading) +} + +/** + * 调试工具 + * @param 参数 + + */ +const postToolDebug: (data: any, loading?: Ref) => Promise> = ( + data: any, + loading, +) => { + return post(`${prefix}/debug`, data, undefined, loading) +} + +const postImportTool: (data: any, loading?: Ref) => Promise> = ( + data, + loading, +) => { + return post(`${prefix}/import`, data, undefined, loading) +} + +const postPylint: (code: string, loading?: Ref) => Promise> = ( + code, + loading, +) => { + return post(`${prefix}/tool/pylint`, { code }, {}, loading) +} + +export default { + getToolByFolder, + getToolList, + putTool, + getToolById, + postTool, + postToolDebug, + postImportTool, + postPylint, + exportTool, + putToolIcon, + delTool, +} diff --git a/ui/src/components/app-icon/icons/common.ts b/ui/src/components/app-icon/icons/common.ts index db410605e..97bbb40e9 100644 --- a/ui/src/components/app-icon/icons/common.ts +++ b/ui/src/components/app-icon/icons/common.ts @@ -65,4 +65,116 @@ export default { ]) }, }, + 'right-outlined': { + iconReader: () => { + return h('i', [ + h( + 'svg', + { + viewBox: '0 0 12 12', + version: '1.1', + xmlns: 'http://www.w3.org/2000/svg', + }, + [ + h('path', { + d: 'M8.13909 6L4.07322 1.93414C3.97559 1.83651 3.97559 1.67822 4.07322 1.58059L4.42678 1.22703C4.52441 1.1294 4.6827 1.1294 4.78033 1.22703L9.19975 5.64645C9.39501 5.84171 9.39501 6.15829 9.19975 6.35356L4.78033 10.773C4.6827 10.8706 4.52441 10.8706 4.42678 10.773L4.07322 10.4194C3.97559 10.3218 3.97559 10.1635 4.07322 10.0659L8.13909 6Z', + fill: 'currentColor', + }), + ], + ), + ]) + }, + }, + 'app-folder-share-active': { + iconReader: () => { + return h('i', [ + h( + 'svg', + { + viewBox: '0 0 20 20', + version: '1.1', + xmlns: 'http://www.w3.org/2000/svg', + }, + [ + h('path', { + d: 'M0.833334 3.33333C0.833334 2.8731 1.20643 2.5 1.66667 2.5H8.65164C8.96728 2.5 9.25583 2.67834 9.39699 2.96066L10 4.16667H18.3333C18.7936 4.16667 19.1667 4.53976 19.1667 5V16.6667C19.1667 17.1269 18.7936 17.5 18.3333 17.5H1.66667C1.20643 17.5 0.833334 17.1269 0.833334 16.6667V3.33333Z', + fill: '#3370FF', + }), + h('path', { + d: 'M10.5403 9.27428C10.505 9.15191 10.4861 9.02261 10.4861 8.88889C10.4861 8.12183 11.1079 7.5 11.875 7.5C12.6421 7.5 13.2639 8.12183 13.2639 8.88889C13.2639 9.65595 12.6421 10.2778 11.875 10.2778C11.492 10.2778 11.1451 10.1227 10.8939 9.87195L9.39028 10.7604C9.42555 10.8828 9.44444 11.0121 9.44444 11.1458C9.44444 11.2379 9.43549 11.3278 9.41841 11.4149L11.3337 12.3342C11.5885 12.0321 11.9697 11.8403 12.3958 11.8403C13.1629 11.8403 13.7847 12.4621 13.7847 13.2292C13.7847 13.9962 13.1629 14.6181 12.3958 14.6181C11.6288 14.6181 11.0069 13.9962 11.0069 13.2292C11.0069 13.1371 11.0159 13.0472 11.033 12.9601L9.11769 12.0408C8.86291 12.3429 8.48164 12.5347 8.05556 12.5347C7.28849 12.5347 6.66667 11.9129 6.66667 11.1458C6.66667 10.3788 7.28849 9.75694 8.05556 9.75694C8.43859 9.75694 8.78541 9.912 9.03667 10.1628L10.5403 9.27428Z', + fill: 'white', + }), + ], + ), + ]) + }, + }, + 'app-folder-share': { + iconReader: () => { + return h('i', [ + h( + 'svg', + { + viewBox: '0 0 20 20', + version: '1.1', + xmlns: 'http://www.w3.org/2000/svg', + }, + [ + h('path', { + d: 'M10.4015 9.13532C10.3663 9.01295 10.3474 8.88365 10.3474 8.74993C10.3474 7.98287 10.9692 7.36104 11.7363 7.36104C12.5033 7.36104 13.1251 7.98287 13.1251 8.74993C13.1251 9.51699 12.5033 10.1388 11.7363 10.1388C11.3532 10.1388 11.0064 9.98377 10.7551 9.733L9.25154 10.6215C9.2868 10.7439 9.3057 10.8732 9.3057 11.0069C9.3057 11.0989 9.29675 11.1889 9.27967 11.2759L11.195 12.1952C11.4497 11.8932 11.831 11.7013 12.2571 11.7013C13.0242 11.7013 13.646 12.3231 13.646 13.0902C13.646 13.8573 13.0242 14.4791 12.2571 14.4791C11.49 14.4791 10.8682 13.8573 10.8682 13.0902C10.8682 12.9982 10.8772 12.9082 10.8942 12.8212L8.97894 11.9019C8.72417 12.2039 8.3429 12.3958 7.91681 12.3958C7.14975 12.3958 6.52792 11.7739 6.52792 11.0069C6.52792 10.2398 7.14975 9.61799 7.91681 9.61799C8.29985 9.61799 8.64667 9.77304 8.89793 10.0238L10.4015 9.13532Z', + fill: '#1F2329', + }), + h('path', { + d: 'M0.833344 3.33333V16.6667C0.833344 17.1269 1.22421 17.5 1.70636 17.5H18.2937C18.7758 17.5 19.1667 17.1269 19.1667 16.6667V5C19.1667 4.53976 18.7758 4.16667 18.2937 4.16667H10L9.397 2.96066C9.25584 2.67834 8.96729 2.5 8.65165 2.5H1.66668C1.20644 2.5 0.833344 2.8731 0.833344 3.33333ZM2.50001 15.8333V5.83333H17.5V15.8333H2.50001Z', + fill: '#1F2329', + }), + ], + ), + ]) + }, + }, + 'moments-categories': { + iconReader: () => { + return h('i', [ + h( + 'svg', + { + viewBox: '0 0 20 20', + version: '1.1', + xmlns: 'http://www.w3.org/2000/svg', + }, + [ + h('path', { + d: 'M10.2239 2.22566L18.6144 7.56512C18.8717 7.72885 18.8717 8.10444 18.6144 8.26817L10.2239 13.6076C10.0874 13.6945 9.91296 13.6945 9.77647 13.6076L1.3859 8.26817C1.12861 8.10444 1.12861 7.72885 1.3859 7.56512L9.77647 2.22566C9.91296 2.13881 10.0874 2.13881 10.2239 2.22566ZM3.93789 7.91664L10.0002 11.7745L16.0625 7.91664L10.0002 4.05883L3.93789 7.91664Z', + fill: '#1F2329', + }), + h('path', { + d: 'M2.16387 11.5717C1.96769 11.4515 1.71114 11.513 1.59086 11.7092L1.15526 12.4196C1.03498 12.6158 1.0965 12.8723 1.29268 12.9926L8.92197 17.6705C9.45728 17.9987 10.1264 17.9987 10.6617 17.6705L18.291 12.9926C18.4871 12.8723 18.5487 12.6158 18.4284 12.4196L17.9928 11.7092C17.8725 11.513 17.6159 11.4515 17.4198 11.5717L9.90072 16.182C9.8339 16.223 9.74974 16.223 9.68292 16.182L2.16387 11.5717Z', + fill: '#1F2329', + }), + ], + ), + ]) + }, + }, + 'close-outlined': { + iconReader: () => { + return h('i', [ + h( + 'svg', + { + viewBox: '0 0 16 16', + version: '1.1', + xmlns: 'http://www.w3.org/2000/svg', + }, + [ + h('path', { + d: 'M8.00023 7.05718L12.4786 2.57883C12.6087 2.44866 12.8198 2.44866 12.95 2.57883L13.4214 3.05024C13.5516 3.18041 13.5516 3.39147 13.4214 3.52164L8.94304 7.99998L13.4214 12.4783C13.5516 12.6085 13.5516 12.8196 13.4214 12.9497L12.95 13.4211C12.8198 13.5513 12.6087 13.5513 12.4786 13.4211L8.00023 8.94279L3.52189 13.4211C3.39171 13.5513 3.18066 13.5513 3.05048 13.4211L2.57908 12.9497C2.4489 12.8196 2.4489 12.6085 2.57908 12.4783L7.05742 7.99998L2.57908 3.52164C2.4489 3.39147 2.4489 3.18041 2.57908 3.05024L3.05048 2.57883C3.18066 2.44866 3.39171 2.44866 3.52189 2.57883L8.00023 7.05718Z', + fill: '#8F959E', + }), + ], + ), + ]) + }, + }, } diff --git a/ui/src/components/app-icon/icons/menu.ts b/ui/src/components/app-icon/icons/menu.ts index a2be9a7b3..a2882279c 100644 --- a/ui/src/components/app-icon/icons/menu.ts +++ b/ui/src/components/app-icon/icons/menu.ts @@ -62,17 +62,17 @@ export default { { viewBox: '0 0 20 20', version: '1.1', - xmlns: 'http://www.w3.org/2000/svg' + xmlns: 'http://www.w3.org/2000/svg', }, [ h('path', { d: 'M3.60734 16.4448L3.34807 16.1624C2.44036 15.1737 1.75935 13.9944 1.36011 12.7066L1.24756 12.3435L2.95427 10.0001L1.24756 7.65668L1.36011 7.29361C1.75935 6.00574 2.44036 4.82649 3.34807 3.83779L3.60734 3.55539L6.47552 3.86889L7.64049 1.21319L8.01405 1.12909C8.66134 0.983366 9.32633 0.90918 10.0004 0.90918C10.6744 0.90918 11.3394 0.983366 11.9867 1.12909L12.3603 1.21319L13.5252 3.86889L16.3934 3.55539L16.6527 3.83779C17.5604 4.82649 18.2414 6.00574 18.6406 7.29361L18.7532 7.65668L17.0465 10.0001L18.7532 12.3435L18.6406 12.7066C18.2414 13.9944 17.5604 15.1737 16.6527 16.1624L16.3934 16.4448L13.5252 16.1313L12.3603 18.787L11.9867 18.8711C11.3394 19.0168 10.6744 19.091 10.0004 19.091C9.32633 19.091 8.66134 19.0168 8.01405 18.8711L7.64049 18.787L6.47552 16.1313L3.60734 16.4448ZM6.51159 14.6031C7.05002 14.5443 7.56436 14.8417 7.78194 15.3377L8.71565 17.4662C9.13677 17.5389 9.56603 17.5758 10.0004 17.5758C10.4347 17.5758 10.864 17.5389 11.2851 17.4662L12.2188 15.3377C12.4364 14.8417 12.9507 14.5443 13.4892 14.6031L15.7844 14.854C16.3387 14.1868 16.7757 13.4286 17.0741 12.6116L15.7038 10.7301C15.3869 10.295 15.3869 9.70511 15.7038 9.26999L17.0741 7.38847C16.7757 6.57146 16.3387 5.81331 15.7844 5.14609L13.4892 5.39696C12.9507 5.45581 12.4364 5.1584 12.2188 4.66238L11.2851 2.53389C10.864 2.46117 10.4347 2.42429 10.0004 2.42429C9.56603 2.42429 9.13677 2.46117 8.71565 2.53389L7.78194 4.66238C7.56436 5.1584 7.05002 5.45581 6.51159 5.39696L4.21641 5.14609C3.66208 5.81331 3.22502 6.57146 2.92666 7.38847L4.29697 9.26999C4.61387 9.70511 4.61387 10.295 4.29697 10.7301L2.92666 12.6116C3.22502 13.4286 3.66208 14.1868 4.21641 14.854L6.51159 14.6031ZM10.0004 13.788C7.91555 13.788 6.22693 12.0913 6.22693 10.0001C6.22693 7.9089 7.91555 6.2122 10.0004 6.2122C12.0852 6.2122 13.7738 7.9089 13.7738 10.0001C13.7738 12.0913 12.0852 13.788 10.0004 13.788ZM10.0004 12.2729C11.2468 12.2729 12.2587 11.2561 12.2587 10.0001C12.2587 8.74413 11.2468 7.72741 10.0004 7.72741C8.75397 7.72741 7.74208 8.74413 7.74208 10.0001C7.74208 11.2561 8.75397 12.2729 10.0004 12.2729Z', - fill: 'currentColor' - }) - ] - ) + fill: 'currentColor', + }), + ], + ), ]) - } + }, }, 'app-setting-active': { iconReader: () => { @@ -82,16 +82,16 @@ export default { { viewBox: '0 0 20 20', version: '1.1', - xmlns: 'http://www.w3.org/2000/svg' + xmlns: 'http://www.w3.org/2000/svg', }, [ h('path', { d: 'M3.26425 16.2151C2.35478 15.2292 1.65887 14.0432 1.25 12.7305L2.70785 10.7384C3.02952 10.2988 3.02952 9.70154 2.70785 9.26197L1.25 7.26979C1.65887 5.95714 2.35478 4.77112 3.26425 3.78522L5.71416 4.05172C6.25589 4.11065 6.77338 3.81185 6.99316 3.31321L7.98848 1.05505C8.63579 0.910018 9.30896 0.833496 10 0.833496C10.691 0.833496 11.3642 0.910018 12.0115 1.05505L13.0068 3.31321C13.2266 3.81185 13.7441 4.11065 14.2858 4.05172L16.7357 3.78522C17.6452 4.77112 18.3411 5.95714 18.75 7.26979L17.2921 9.26197C16.9705 9.70154 16.9705 10.2988 17.2921 10.7384L18.75 12.7305C18.3411 14.0432 17.6452 15.2292 16.7357 16.2151L14.2858 15.9486C13.7441 15.8897 13.2266 16.1885 13.0068 16.6871L12.0115 18.9453C11.3642 19.0903 10.691 19.1668 10 19.1668C9.30896 19.1668 8.63579 19.0903 7.98848 18.9453L6.99316 16.6871C6.77338 16.1885 6.25589 15.8897 5.71416 15.9486L3.26425 16.2151ZM10 13.3335C11.8409 13.3335 13.3333 11.8411 13.3333 10.0002C13.3333 8.15921 11.8409 6.66683 10 6.66683C8.15905 6.66683 6.66667 8.15921 6.66667 10.0002C6.66667 11.8411 8.15905 13.3335 10 13.3335Z', - fill: 'currentColor' - }) - ] - ) + fill: 'currentColor', + }), + ], + ), ]) - } - }, + }, + } } diff --git a/ui/src/components/app-icon/index.ts b/ui/src/components/app-icon/index.ts index eaf5b0eb9..a9c939f2e 100644 --- a/ui/src/components/app-icon/index.ts +++ b/ui/src/components/app-icon/index.ts @@ -166,3 +166,4 @@ export const iconMap: any = { // 动态加载的图标 ...dynamicIcons, } +console.log(iconMap); diff --git a/ui/src/components/card-box/index.vue b/ui/src/components/card-box/index.vue index f987bc7f1..0dd51e564 100644 --- a/ui/src/components/card-box/index.vue +++ b/ui/src/components/card-box/index.vue @@ -17,6 +17,7 @@ +
{{t('views.system.shared')}}
@@ -60,8 +61,9 @@ const props = withDefaults( * 是否展示icon */ showIcon?: boolean + isShared?: boolean }>(), - { title: t('common.title'), description: '', showIcon: true, border: true }, + { title: t('common.title'), description: '', showIcon: true, border: true, isShared: false }, ) const show = ref(false) @@ -102,6 +104,28 @@ function subHoveredEnter() { } } + .shared { + position: absolute; + right: 20px; + top: 17px; + font-weight: 400; + font-size: 12px; + line-height: 20px; + color: #646a73; + + &::after { + content: ''; + background-color: #1f23291a; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 32px; + height: 20px; + border-radius: 4px; + } + } + .card-footer { position: absolute; bottom: 8px; diff --git a/ui/src/components/codemirror-editor/index.vue b/ui/src/components/codemirror-editor/index.vue index eb2dd5b24..f11affa72 100644 --- a/ui/src/components/codemirror-editor/index.vue +++ b/ui/src/components/codemirror-editor/index.vue @@ -44,7 +44,7 @@ import {Codemirror} from 'vue-codemirror' import {python} from '@codemirror/lang-python' import {oneDark} from '@codemirror/theme-one-dark' import {linter, type Diagnostic} from '@codemirror/lint' -import ToolApi from '@/api/tool/tool' +import ToolApi from '@/api/shared/tool' defineOptions({name: 'CodemirrorEditor'}) diff --git a/ui/src/components/folder-tree/index.vue b/ui/src/components/folder-tree/index.vue index 2b208e524..3975a9417 100644 --- a/ui/src/components/folder-tree/index.vue +++ b/ui/src/components/folder-tree/index.vue @@ -7,6 +7,18 @@ clearable class="p-8" /> +
+ + {{ $t('views.system.share_knowledge') }} +
- {{ node.label }} + {{ node.label }}
@@ -31,6 +43,7 @@ + diff --git a/ui/src/layout/layout-template/MainLayout.vue b/ui/src/layout/layout-template/MainLayout.vue index e00ba76e6..1762eea43 100644 --- a/ui/src/layout/layout-template/MainLayout.vue +++ b/ui/src/layout/layout-template/MainLayout.vue @@ -1,7 +1,8 @@ diff --git a/ui/src/views/document-shared-system/component/EmbeddingContentDialog.vue b/ui/src/views/document-shared-system/component/EmbeddingContentDialog.vue new file mode 100644 index 000000000..1aa740d6f --- /dev/null +++ b/ui/src/views/document-shared-system/component/EmbeddingContentDialog.vue @@ -0,0 +1,48 @@ + + + diff --git a/ui/src/views/document-shared-system/component/ImportDocumentDialog.vue b/ui/src/views/document-shared-system/component/ImportDocumentDialog.vue new file mode 100644 index 000000000..1f8b8eeef --- /dev/null +++ b/ui/src/views/document-shared-system/component/ImportDocumentDialog.vue @@ -0,0 +1,233 @@ + + + diff --git a/ui/src/views/document-shared-system/component/SelectDatasetDialog.vue b/ui/src/views/document-shared-system/component/SelectDatasetDialog.vue new file mode 100644 index 000000000..aa5d7e4c4 --- /dev/null +++ b/ui/src/views/document-shared-system/component/SelectDatasetDialog.vue @@ -0,0 +1,142 @@ + + + diff --git a/ui/src/views/document-shared-system/component/Status.vue b/ui/src/views/document-shared-system/component/Status.vue new file mode 100644 index 000000000..13bf0e2f4 --- /dev/null +++ b/ui/src/views/document-shared-system/component/Status.vue @@ -0,0 +1,87 @@ + + + diff --git a/ui/src/views/document-shared-system/component/StatusTable.vue b/ui/src/views/document-shared-system/component/StatusTable.vue new file mode 100644 index 000000000..02c7b909a --- /dev/null +++ b/ui/src/views/document-shared-system/component/StatusTable.vue @@ -0,0 +1,109 @@ + + + diff --git a/ui/src/views/document-shared-system/index.vue b/ui/src/views/document-shared-system/index.vue new file mode 100644 index 000000000..81046fa83 --- /dev/null +++ b/ui/src/views/document-shared-system/index.vue @@ -0,0 +1,1015 @@ + + + diff --git a/ui/src/views/document-shared-system/upload/ResultSuccess.vue b/ui/src/views/document-shared-system/upload/ResultSuccess.vue new file mode 100644 index 000000000..73de7d359 --- /dev/null +++ b/ui/src/views/document-shared-system/upload/ResultSuccess.vue @@ -0,0 +1,90 @@ + + + diff --git a/ui/src/views/document-shared-system/upload/SetRules.vue b/ui/src/views/document-shared-system/upload/SetRules.vue new file mode 100644 index 000000000..e675a296d --- /dev/null +++ b/ui/src/views/document-shared-system/upload/SetRules.vue @@ -0,0 +1,284 @@ + + + diff --git a/ui/src/views/document-shared-system/upload/UploadComponent.vue b/ui/src/views/document-shared-system/upload/UploadComponent.vue new file mode 100644 index 000000000..dd337bcbf --- /dev/null +++ b/ui/src/views/document-shared-system/upload/UploadComponent.vue @@ -0,0 +1,327 @@ + + + diff --git a/ui/src/views/hit-test-shared-system/index.vue b/ui/src/views/hit-test-shared-system/index.vue new file mode 100644 index 000000000..52f2c223c --- /dev/null +++ b/ui/src/views/hit-test-shared-system/index.vue @@ -0,0 +1,434 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/AuthorizedWorkspace.vue b/ui/src/views/knowledge-shared-system/AuthorizedWorkspace.vue new file mode 100644 index 000000000..a0b60894f --- /dev/null +++ b/ui/src/views/knowledge-shared-system/AuthorizedWorkspace.vue @@ -0,0 +1,304 @@ + + + + diff --git a/ui/src/views/knowledge-shared-system/ImportDocumentKnowledge.vue b/ui/src/views/knowledge-shared-system/ImportDocumentKnowledge.vue new file mode 100644 index 000000000..72e930355 --- /dev/null +++ b/ui/src/views/knowledge-shared-system/ImportDocumentKnowledge.vue @@ -0,0 +1,290 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/KnowledgeSetting.vue b/ui/src/views/knowledge-shared-system/KnowledgeSetting.vue new file mode 100644 index 000000000..8e53c97f8 --- /dev/null +++ b/ui/src/views/knowledge-shared-system/KnowledgeSetting.vue @@ -0,0 +1,284 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/SharedWorkspace.vue b/ui/src/views/knowledge-shared-system/SharedWorkspace.vue new file mode 100644 index 000000000..8ac506b4c --- /dev/null +++ b/ui/src/views/knowledge-shared-system/SharedWorkspace.vue @@ -0,0 +1,461 @@ + + + + diff --git a/ui/src/views/knowledge-shared-system/component/BaseForm.vue b/ui/src/views/knowledge-shared-system/component/BaseForm.vue new file mode 100644 index 000000000..a653e9274 --- /dev/null +++ b/ui/src/views/knowledge-shared-system/component/BaseForm.vue @@ -0,0 +1,146 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/component/EditParagraphDialog.vue b/ui/src/views/knowledge-shared-system/component/EditParagraphDialog.vue new file mode 100644 index 000000000..9fffaddc7 --- /dev/null +++ b/ui/src/views/knowledge-shared-system/component/EditParagraphDialog.vue @@ -0,0 +1,135 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/component/KnowledgeIcon.vue b/ui/src/views/knowledge-shared-system/component/KnowledgeIcon.vue new file mode 100644 index 000000000..f7405a6ec --- /dev/null +++ b/ui/src/views/knowledge-shared-system/component/KnowledgeIcon.vue @@ -0,0 +1,25 @@ + + diff --git a/ui/src/views/knowledge-shared-system/component/ParagraphList.vue b/ui/src/views/knowledge-shared-system/component/ParagraphList.vue new file mode 100644 index 000000000..eed592425 --- /dev/null +++ b/ui/src/views/knowledge-shared-system/component/ParagraphList.vue @@ -0,0 +1,109 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/component/ParagraphPreview.vue b/ui/src/views/knowledge-shared-system/component/ParagraphPreview.vue new file mode 100644 index 000000000..ae780c017 --- /dev/null +++ b/ui/src/views/knowledge-shared-system/component/ParagraphPreview.vue @@ -0,0 +1,70 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/component/SyncWebDialog.vue b/ui/src/views/knowledge-shared-system/component/SyncWebDialog.vue new file mode 100644 index 000000000..f3b67c8ae --- /dev/null +++ b/ui/src/views/knowledge-shared-system/component/SyncWebDialog.vue @@ -0,0 +1,87 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/create-component/CreateKnowledgeDialog.vue b/ui/src/views/knowledge-shared-system/create-component/CreateKnowledgeDialog.vue new file mode 100644 index 000000000..40dd97aa2 --- /dev/null +++ b/ui/src/views/knowledge-shared-system/create-component/CreateKnowledgeDialog.vue @@ -0,0 +1,70 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/create-component/CreateWebKnowledgeDialog copy.vue b/ui/src/views/knowledge-shared-system/create-component/CreateWebKnowledgeDialog copy.vue new file mode 100644 index 000000000..b5a118f8e --- /dev/null +++ b/ui/src/views/knowledge-shared-system/create-component/CreateWebKnowledgeDialog copy.vue @@ -0,0 +1,222 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/create-component/CreateWebKnowledgeDialog.vue b/ui/src/views/knowledge-shared-system/create-component/CreateWebKnowledgeDialog.vue new file mode 100644 index 000000000..c4cd32f1c --- /dev/null +++ b/ui/src/views/knowledge-shared-system/create-component/CreateWebKnowledgeDialog.vue @@ -0,0 +1,125 @@ + + + diff --git a/ui/src/views/knowledge-shared-system/index.vue b/ui/src/views/knowledge-shared-system/index.vue new file mode 100644 index 000000000..e19a504df --- /dev/null +++ b/ui/src/views/knowledge-shared-system/index.vue @@ -0,0 +1,469 @@ + + + + diff --git a/ui/src/views/knowledge/index.vue b/ui/src/views/knowledge/index.vue index 34dd04b21..572c83e6f 100644 --- a/ui/src/views/knowledge/index.vue +++ b/ui/src/views/knowledge/index.vue @@ -7,9 +7,11 @@ :currentNodeKey="currentFolder?.id" @handleNodeClick="folderClickHandel" class="p-8" + isShared /> - + + + + + + diff --git a/ui/src/views/model-shared-system/component/CreateModelDialog.vue b/ui/src/views/model-shared-system/component/CreateModelDialog.vue new file mode 100644 index 000000000..4b0730339 --- /dev/null +++ b/ui/src/views/model-shared-system/component/CreateModelDialog.vue @@ -0,0 +1,494 @@ + + + diff --git a/ui/src/views/model-shared-system/component/EditModel.vue b/ui/src/views/model-shared-system/component/EditModel.vue new file mode 100644 index 000000000..8c5e3f061 --- /dev/null +++ b/ui/src/views/model-shared-system/component/EditModel.vue @@ -0,0 +1,308 @@ + + + diff --git a/ui/src/views/model-shared-system/component/ModelCard.vue b/ui/src/views/model-shared-system/component/ModelCard.vue new file mode 100644 index 000000000..3e1bf3731 --- /dev/null +++ b/ui/src/views/model-shared-system/component/ModelCard.vue @@ -0,0 +1,281 @@ + + + diff --git a/ui/src/views/model-shared-system/component/ParamSettingDialog.vue b/ui/src/views/model-shared-system/component/ParamSettingDialog.vue new file mode 100644 index 000000000..1b60a56ce --- /dev/null +++ b/ui/src/views/model-shared-system/component/ParamSettingDialog.vue @@ -0,0 +1,166 @@ + + + + + diff --git a/ui/src/views/model-shared-system/component/Provider.vue b/ui/src/views/model-shared-system/component/Provider.vue new file mode 100644 index 000000000..48c6b2956 --- /dev/null +++ b/ui/src/views/model-shared-system/component/Provider.vue @@ -0,0 +1,178 @@ + + + diff --git a/ui/src/views/model-shared-system/component/SelectProviderDialog.vue b/ui/src/views/model-shared-system/component/SelectProviderDialog.vue new file mode 100644 index 000000000..0dbed9d93 --- /dev/null +++ b/ui/src/views/model-shared-system/component/SelectProviderDialog.vue @@ -0,0 +1,88 @@ + + + diff --git a/ui/src/views/model-shared-system/component/data.ts b/ui/src/views/model-shared-system/component/data.ts new file mode 100644 index 000000000..97806c5ff --- /dev/null +++ b/ui/src/views/model-shared-system/component/data.ts @@ -0,0 +1,18 @@ +import { modelType } from '@/enums/model' +import { t } from '@/locales' +export const modelTypeList = [ + { text: t(modelType['LLM']), value: 'LLM' }, + { text: t(modelType['EMBEDDING']), value: 'EMBEDDING' }, + { text: t(modelType['RERANKER']), value: 'RERANKER' }, + { text: t(modelType['STT']), value: 'STT' }, + { text: t(modelType['TTS']), value: 'TTS' }, + { text: t(modelType['IMAGE']), value: 'IMAGE' }, + { text: t(modelType['TTI']), value: 'TTI' } +] + + +export const allObj = { + icon: '', + provider: '', + name: t('views.model.modelType.allModel'), +} diff --git a/ui/src/views/model-shared-system/index.vue b/ui/src/views/model-shared-system/index.vue new file mode 100644 index 000000000..8eb97f744 --- /dev/null +++ b/ui/src/views/model-shared-system/index.vue @@ -0,0 +1,263 @@ + + + + + diff --git a/ui/src/views/paragraph-shared-system/component/ParagraphCard.vue b/ui/src/views/paragraph-shared-system/component/ParagraphCard.vue new file mode 100644 index 000000000..8883af440 --- /dev/null +++ b/ui/src/views/paragraph-shared-system/component/ParagraphCard.vue @@ -0,0 +1,179 @@ + + + diff --git a/ui/src/views/paragraph-shared-system/component/ParagraphDialog.vue b/ui/src/views/paragraph-shared-system/component/ParagraphDialog.vue new file mode 100644 index 000000000..13731085e --- /dev/null +++ b/ui/src/views/paragraph-shared-system/component/ParagraphDialog.vue @@ -0,0 +1,152 @@ + + + diff --git a/ui/src/views/paragraph-shared-system/component/ParagraphForm.vue b/ui/src/views/paragraph-shared-system/component/ParagraphForm.vue new file mode 100644 index 000000000..70d500e50 --- /dev/null +++ b/ui/src/views/paragraph-shared-system/component/ParagraphForm.vue @@ -0,0 +1,174 @@ + + + diff --git a/ui/src/views/paragraph-shared-system/component/ProblemComponent.vue b/ui/src/views/paragraph-shared-system/component/ProblemComponent.vue new file mode 100644 index 000000000..7611e8be2 --- /dev/null +++ b/ui/src/views/paragraph-shared-system/component/ProblemComponent.vue @@ -0,0 +1,200 @@ + + + diff --git a/ui/src/views/paragraph-shared-system/component/SelectDocumentDialog.vue b/ui/src/views/paragraph-shared-system/component/SelectDocumentDialog.vue new file mode 100644 index 000000000..39fd273cb --- /dev/null +++ b/ui/src/views/paragraph-shared-system/component/SelectDocumentDialog.vue @@ -0,0 +1,181 @@ + + + diff --git a/ui/src/views/paragraph-shared-system/index.vue b/ui/src/views/paragraph-shared-system/index.vue new file mode 100644 index 000000000..96dd5ead7 --- /dev/null +++ b/ui/src/views/paragraph-shared-system/index.vue @@ -0,0 +1,371 @@ + + + diff --git a/ui/src/views/problem-shared-system/component/CreateProblemDialog.vue b/ui/src/views/problem-shared-system/component/CreateProblemDialog.vue new file mode 100644 index 000000000..6d452b9e2 --- /dev/null +++ b/ui/src/views/problem-shared-system/component/CreateProblemDialog.vue @@ -0,0 +1,92 @@ + + + diff --git a/ui/src/views/problem-shared-system/component/DetailProblemDrawer.vue b/ui/src/views/problem-shared-system/component/DetailProblemDrawer.vue new file mode 100644 index 000000000..e3e1da162 --- /dev/null +++ b/ui/src/views/problem-shared-system/component/DetailProblemDrawer.vue @@ -0,0 +1,206 @@ + + + + diff --git a/ui/src/views/problem-shared-system/component/RelateProblemDialog.vue b/ui/src/views/problem-shared-system/component/RelateProblemDialog.vue new file mode 100644 index 000000000..82746fbcd --- /dev/null +++ b/ui/src/views/problem-shared-system/component/RelateProblemDialog.vue @@ -0,0 +1,330 @@ + + + diff --git a/ui/src/views/problem-shared-system/index.vue b/ui/src/views/problem-shared-system/index.vue new file mode 100644 index 000000000..465393644 --- /dev/null +++ b/ui/src/views/problem-shared-system/index.vue @@ -0,0 +1,388 @@ + + + diff --git a/ui/src/views/tool-shared-system/ToolDebugDrawer.vue b/ui/src/views/tool-shared-system/ToolDebugDrawer.vue new file mode 100644 index 000000000..371df2b8f --- /dev/null +++ b/ui/src/views/tool-shared-system/ToolDebugDrawer.vue @@ -0,0 +1,184 @@ + + + + diff --git a/ui/src/views/tool-shared-system/ToolFormDrawer.vue b/ui/src/views/tool-shared-system/ToolFormDrawer.vue new file mode 100644 index 000000000..efccca853 --- /dev/null +++ b/ui/src/views/tool-shared-system/ToolFormDrawer.vue @@ -0,0 +1,449 @@ + + + + diff --git a/ui/src/views/tool-shared-system/component/AddInternalFunctionDialog.vue b/ui/src/views/tool-shared-system/component/AddInternalFunctionDialog.vue new file mode 100644 index 000000000..312fc6e98 --- /dev/null +++ b/ui/src/views/tool-shared-system/component/AddInternalFunctionDialog.vue @@ -0,0 +1,88 @@ + + + diff --git a/ui/src/views/tool-shared-system/component/EditAvatarDialog.vue b/ui/src/views/tool-shared-system/component/EditAvatarDialog.vue new file mode 100644 index 000000000..b8fadc982 --- /dev/null +++ b/ui/src/views/tool-shared-system/component/EditAvatarDialog.vue @@ -0,0 +1,120 @@ + + + diff --git a/ui/src/views/tool-shared-system/component/FieldFormDialog.vue b/ui/src/views/tool-shared-system/component/FieldFormDialog.vue new file mode 100644 index 000000000..900182d8b --- /dev/null +++ b/ui/src/views/tool-shared-system/component/FieldFormDialog.vue @@ -0,0 +1,116 @@ + + + diff --git a/ui/src/views/tool-shared-system/component/InitParamDrawer.vue b/ui/src/views/tool-shared-system/component/InitParamDrawer.vue new file mode 100644 index 000000000..1cd880dd9 --- /dev/null +++ b/ui/src/views/tool-shared-system/component/InitParamDrawer.vue @@ -0,0 +1,87 @@ + + + + diff --git a/ui/src/views/tool-shared-system/component/InternalDescDrawer.vue b/ui/src/views/tool-shared-system/component/InternalDescDrawer.vue new file mode 100644 index 000000000..ae7a74af7 --- /dev/null +++ b/ui/src/views/tool-shared-system/component/InternalDescDrawer.vue @@ -0,0 +1,99 @@ + + + + diff --git a/ui/src/views/tool-shared-system/component/UserFieldFormDialog.vue b/ui/src/views/tool-shared-system/component/UserFieldFormDialog.vue new file mode 100644 index 000000000..1131fc625 --- /dev/null +++ b/ui/src/views/tool-shared-system/component/UserFieldFormDialog.vue @@ -0,0 +1,169 @@ + + + diff --git a/ui/src/views/tool-shared-system/index.vue b/ui/src/views/tool-shared-system/index.vue new file mode 100644 index 000000000..e1905672e --- /dev/null +++ b/ui/src/views/tool-shared-system/index.vue @@ -0,0 +1,448 @@ + + + + + diff --git a/ui/src/views/tool/ToolDebugDrawer.vue b/ui/src/views/tool/ToolDebugDrawer.vue index 7cd9aa08e..371df2b8f 100644 --- a/ui/src/views/tool/ToolDebugDrawer.vue +++ b/ui/src/views/tool/ToolDebugDrawer.vue @@ -110,7 +110,7 @@