mirror of
https://github.com/Noooste/garage-ui.git
synced 2026-08-30 00:47:16 +00:00
@@ -8,6 +8,7 @@ import type {
|
||||
ClusterHealth,
|
||||
ClusterStatistics,
|
||||
ClusterStatus,
|
||||
GarageCapabilities,
|
||||
GarageMetrics,
|
||||
MultiNodeResponse,
|
||||
MultiNodeStatisticsResponse,
|
||||
@@ -87,6 +88,11 @@ api.interceptors.response.use(
|
||||
return Promise.reject(error);
|
||||
}
|
||||
|
||||
// 501 Not Implemented = expected for unsupported Garage version features
|
||||
if (error.response?.status === 501) {
|
||||
return Promise.reject(error);
|
||||
}
|
||||
|
||||
// Handle axios errors
|
||||
if (error.response) {
|
||||
// Server responded with error status
|
||||
@@ -167,6 +173,14 @@ export const healthApi = {
|
||||
},
|
||||
};
|
||||
|
||||
// Capabilities API
|
||||
export const capabilitiesApi = {
|
||||
get: async (): Promise<GarageCapabilities> => {
|
||||
const response = await api.get('/v1/capabilities');
|
||||
return response.data.data;
|
||||
},
|
||||
};
|
||||
|
||||
// Bucket API
|
||||
export const bucketsApi = {
|
||||
list: async (): Promise<Bucket[]> => {
|
||||
|
||||
@@ -40,4 +40,8 @@ export const queryKeys = {
|
||||
all: ['dashboard'] as const,
|
||||
metrics: () => [...queryKeys.dashboard.all, 'metrics'] as const,
|
||||
},
|
||||
capabilities: {
|
||||
all: ['capabilities'] as const,
|
||||
get: () => [...queryKeys.capabilities.all, 'get'] as const,
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user