feat(web): Add Feishu and Yuque knowledge base sync support
- Add API endpoints for creating sync tasks and checking Feishu/Yuque authentication - Add new sync-related UI components for Feishu and Yuque platform integration - Add internationalization strings for sync operations and authentication messages in English and Chinese - Add form fields for Feishu (App ID, App Secret, Folder Token) and Yuque (User ID, Token) credentials - Add web crawler configuration fields (entry URL, max pages, delay, timeout, user agent) - Add sync status messages (syncing, success, completed, timeout, failed, error states) - Update CreateDataset component to support new data source types - Update KnowledgeBase types to include new sync-related properties - Enable users to synchronize knowledge base content from Feishu and Yuque platforms with proper authentication and error handling
This commit is contained in:
@@ -597,6 +597,18 @@ export const en = {
|
||||
last_at: 'Last Updated',
|
||||
private: 'Private',
|
||||
share: 'Share',
|
||||
syncNow: 'Sync Now',
|
||||
syncing: 'Syncing...',
|
||||
syncSuccess: 'Sync started successfully',
|
||||
syncCompleted: 'Sync completed, data loaded successfully',
|
||||
syncTimeout: 'Sync timeout (1 minute), please try again later or check the sync status',
|
||||
syncFailed: 'Sync failed',
|
||||
syncError: 'Unable to sync, knowledge base not found',
|
||||
yuqueAuthRequired: 'Please enter Yuque User ID and Token',
|
||||
yuqueAuthSuccess: 'Yuque authentication successful',
|
||||
feishuAuthRequired: 'Please enter Feishu App ID, App Secret and Folder Token',
|
||||
feishuAuthSuccess: 'Feishu authentication successful',
|
||||
authFailed: 'Authentication failed, please check your credentials',
|
||||
recallTest: 'Recall Test',
|
||||
testQuestion: 'Test Question',
|
||||
doc_num: 'Document Number',
|
||||
@@ -636,6 +648,7 @@ export const en = {
|
||||
customText: 'Custom Text',
|
||||
customContent: 'Custom Content',
|
||||
createContentError: 'Failed to create custom content',
|
||||
createLinkError: 'Failed to create link content',
|
||||
manuallyInputText: 'Manually input a text as dataset',
|
||||
importTemplate: 'Template Import',
|
||||
importBackup: 'Backup Import',
|
||||
@@ -835,6 +848,36 @@ export const en = {
|
||||
embeddingRequired: 'Please select an embedding model',
|
||||
nameRequired: 'Please enter a name',
|
||||
modelRequired: 'Please select a model',
|
||||
entryUrl: 'Entry URL',
|
||||
entryUrlRequired: 'Please enter entry URL',
|
||||
entryUrlInvalid: 'Please enter a valid URL',
|
||||
maxPages: 'Max Pages',
|
||||
maxPagesRequired: 'Please enter max pages',
|
||||
delaySeconds: 'Delay Seconds',
|
||||
delaySecondsRequired: 'Please enter delay seconds',
|
||||
timeoutSeconds: 'Timeout Seconds',
|
||||
timeoutSecondsRequired: 'Please enter timeout seconds',
|
||||
userAgent: 'User Agent',
|
||||
userAgentRequired: 'Please enter user agent',
|
||||
platform: 'Platform',
|
||||
platformRequired: 'Please select a platform',
|
||||
yuque: 'Yuque',
|
||||
feishu: 'Feishu',
|
||||
yuqueUserId: 'User ID',
|
||||
yuqueUserIdRequired: 'Please enter Yuque User ID',
|
||||
yuqueUserIdPlaceholder: 'Enter your Yuque User ID',
|
||||
yuqueToken: 'Token',
|
||||
yuqueTokenRequired: 'Please enter Yuque Token',
|
||||
yuqueTokenPlaceholder: 'Enter your Yuque Token',
|
||||
feishuAppId: 'Feishu Application ID',
|
||||
feishuAppIdRequired: 'Please enter Feishu Application ID',
|
||||
feishuAppIdPlaceholder: 'Enter your Feishu Application ID',
|
||||
feishuAppSecret: 'Feishu Application Secret',
|
||||
feishuAppSecretRequired: 'Please enter Feishu Application Secret',
|
||||
feishuAppSecretPlaceholder: 'Enter your Feishu Application Secret',
|
||||
feishuFolderToken: 'Folder Token',
|
||||
feishuFolderTokenRequired: 'Please enter Folder Token',
|
||||
feishuFolderTokenPlaceholder: 'Enter your Feishu Folder Token',
|
||||
}
|
||||
},
|
||||
api: {
|
||||
|
||||
@@ -139,6 +139,18 @@ export const zh = {
|
||||
last_at: '最后更新',
|
||||
private: '私有',
|
||||
share: '分享',
|
||||
syncNow: '立即同步',
|
||||
syncing: '同步中...',
|
||||
syncSuccess: '同步已启动',
|
||||
syncCompleted: '同步完成,数据加载成功',
|
||||
syncTimeout: '同步超时(1分钟),请稍后重试或检查同步状态',
|
||||
syncFailed: '同步失败',
|
||||
syncError: '无法同步,未找到知识库',
|
||||
yuqueAuthRequired: '请输入语雀用户 ID 和 Token',
|
||||
yuqueAuthSuccess: '语雀认证成功',
|
||||
feishuAuthRequired: '请输入飞书应用 ID、应用密钥和文件夹 Token',
|
||||
feishuAuthSuccess: '飞书认证成功',
|
||||
authFailed: '认证失败,请检查您的凭证',
|
||||
recallTest: '召回测试',
|
||||
testQuestion: '测试问题',
|
||||
doc_num: '文档数量',
|
||||
@@ -375,6 +387,36 @@ export const zh = {
|
||||
embeddingRequired: '请选择嵌入模型',
|
||||
nameRequired: '请输入名称',
|
||||
modelRequired: '请选择模型',
|
||||
entryUrl: '入口网址',
|
||||
entryUrlRequired: '请输入入口网址',
|
||||
entryUrlInvalid: '请输入有效的网址',
|
||||
maxPages: '最大页面数',
|
||||
maxPagesRequired: '请输入最大页面数',
|
||||
delaySeconds: '延迟秒数',
|
||||
delaySecondsRequired: '请输入延迟秒数',
|
||||
timeoutSeconds: '超时秒数',
|
||||
timeoutSecondsRequired: '请输入超时秒数',
|
||||
userAgent: '用户代理',
|
||||
userAgentRequired: '请输入用户代理',
|
||||
platform: '平台',
|
||||
platformRequired: '请选择平台',
|
||||
yuque: '语雀',
|
||||
feishu: '飞书',
|
||||
yuqueUserId: '用户 ID',
|
||||
yuqueUserIdRequired: '请输入语雀用户 ID',
|
||||
yuqueUserIdPlaceholder: '请输入您的语雀用户 ID',
|
||||
yuqueToken: 'Token',
|
||||
yuqueTokenRequired: '请输入语雀 Token',
|
||||
yuqueTokenPlaceholder: '请输入您的语雀 Token',
|
||||
feishuAppId: '飞书应用 ID',
|
||||
feishuAppIdRequired: '请输入飞书应用 ID',
|
||||
feishuAppIdPlaceholder: '请输入您的飞书应用 ID',
|
||||
feishuAppSecret: '飞书应用密钥',
|
||||
feishuAppSecretRequired: '请输入飞书应用密钥',
|
||||
feishuAppSecretPlaceholder: '请输入您的飞书应用密钥',
|
||||
feishuFolderToken: '文件夹 Token',
|
||||
feishuFolderTokenRequired: '请输入文件夹 Token',
|
||||
feishuFolderTokenPlaceholder: '请输入您的飞书文件夹 Token',
|
||||
}
|
||||
},
|
||||
application: {
|
||||
|
||||
Reference in New Issue
Block a user