feat: connect explore datasets to backend
This commit is contained in:
@@ -4,6 +4,17 @@ import '@arco-design/web-react/dist/css/arco.css'
|
||||
import '../App.css'
|
||||
import { ApiError, login, setApiBaseUrl, type ApiSession } from '../api/client'
|
||||
import { createAISession, listAIExperts, listAISessions, type CreateAISessionInput } from '../api/ai'
|
||||
import {
|
||||
createDatasetSource,
|
||||
deleteDatasetSource,
|
||||
listDatasetItems,
|
||||
listDatasetSources,
|
||||
queueDatasetSync,
|
||||
updateDatasetItem,
|
||||
updateDatasetSource,
|
||||
type DatasetItemUpdate,
|
||||
type DatasetSourceInput,
|
||||
} from '../api/dataset'
|
||||
import { analyzeInboxItem, confirmInboxItem } from '../api/inbox'
|
||||
import { mapWorkspace } from '../api/mappers'
|
||||
import {
|
||||
@@ -59,6 +70,41 @@ function App() {
|
||||
return createAISession(session, projectId, input, signal)
|
||||
}, [session])
|
||||
|
||||
const handleListDatasetSources = useCallback((signal?: AbortSignal) => {
|
||||
if (!session) return Promise.reject(new Error('未登录'))
|
||||
return listDatasetSources(session, signal)
|
||||
}, [session])
|
||||
|
||||
const handleListDatasetItems = useCallback((signal?: AbortSignal) => {
|
||||
if (!session) return Promise.reject(new Error('未登录'))
|
||||
return listDatasetItems(session, undefined, signal)
|
||||
}, [session])
|
||||
|
||||
const handleCreateDatasetSource = useCallback((input: DatasetSourceInput) => {
|
||||
if (!session) return Promise.reject(new Error('未登录'))
|
||||
return createDatasetSource(session, input)
|
||||
}, [session])
|
||||
|
||||
const handleUpdateDatasetSource = useCallback((sourceId: string, input: DatasetSourceInput) => {
|
||||
if (!session) return Promise.reject(new Error('未登录'))
|
||||
return updateDatasetSource(session, sourceId, input)
|
||||
}, [session])
|
||||
|
||||
const handleDeleteDatasetSource = useCallback((sourceId: string) => {
|
||||
if (!session) return Promise.reject(new Error('未登录'))
|
||||
return deleteDatasetSource(session, sourceId)
|
||||
}, [session])
|
||||
|
||||
const handleUpdateDatasetItem = useCallback((itemId: string, input: DatasetItemUpdate) => {
|
||||
if (!session) return Promise.reject(new Error('未登录'))
|
||||
return updateDatasetItem(session, itemId, input)
|
||||
}, [session])
|
||||
|
||||
const handleQueueDatasetSync = useCallback(() => {
|
||||
if (!session) return Promise.reject(new Error('未登录'))
|
||||
return queueDatasetSync(session)
|
||||
}, [session])
|
||||
|
||||
const dark = theme === 'dark'
|
||||
const activeWorkspace = workspaces.find((workspace) => workspace.project.id === activeProjectID) ?? workspaces[0]
|
||||
const activeTagOptions = activeWorkspace?.tags.filter((tag) => tag !== 'all' && tag !== '全部') ?? []
|
||||
@@ -365,6 +411,13 @@ function App() {
|
||||
onListAISessions={handleListAISessions}
|
||||
onListAIExperts={handleListAIExperts}
|
||||
onCreateAISession={handleCreateAISession}
|
||||
onListDatasetSources={handleListDatasetSources}
|
||||
onListDatasetItems={handleListDatasetItems}
|
||||
onCreateDatasetSource={handleCreateDatasetSource}
|
||||
onUpdateDatasetSource={handleUpdateDatasetSource}
|
||||
onDeleteDatasetSource={handleDeleteDatasetSource}
|
||||
onUpdateDatasetItem={handleUpdateDatasetItem}
|
||||
onQueueDatasetSync={handleQueueDatasetSync}
|
||||
/>
|
||||
) : (
|
||||
<Spin loading />
|
||||
|
||||
Reference in New Issue
Block a user