|
import { del, get, patch, post } from './base' |
|
import type { App, AppCategory } from '@/models/explore' |
|
|
|
export const fetchAppList = () => { |
|
return get<{ |
|
categories: AppCategory[] |
|
recommended_apps: App[] |
|
}>('/explore/apps') |
|
} |
|
|
|
export const fetchAppDetail = (id: string): Promise<any> => { |
|
return get(`/explore/apps/${id}`) |
|
} |
|
|
|
export const fetchInstalledAppList = () => { |
|
return get('/installed-apps') |
|
} |
|
|
|
export const installApp = (id: string) => { |
|
return post('/installed-apps', { |
|
body: { |
|
app_id: id, |
|
}, |
|
}) |
|
} |
|
|
|
export const uninstallApp = (id: string) => { |
|
return del(`/installed-apps/${id}`) |
|
} |
|
|
|
export const updatePinStatus = (id: string, isPinned: boolean) => { |
|
return patch(`/installed-apps/${id}`, { |
|
body: { |
|
is_pinned: isPinned, |
|
}, |
|
}) |
|
} |
|
|
|
export const getToolProviders = () => { |
|
return get('/workspaces/current/tool-providers') |
|
} |
|
|