This commit is contained in:
mangomqy
2025-11-13 02:54:06 +00:00
commit c5e51ed069
254 changed files with 54901 additions and 0 deletions

197
frontend/src/api/index.ts Normal file
View File

@ -0,0 +1,197 @@
/**
* API Client entry point
* Export configured API client, generated functions, and friendly aliases.
*/
type AxiosOptions<T extends (...args: any) => any> = Parameters<T>[2];
import {
deleteClustersClusterId,
deleteClustersClusterIdInstancesInstanceId,
deleteRegistriesRegistryId,
getClusters,
getClustersClusterId,
getClustersClusterIdHealth,
getClustersClusterIdInstances,
getClustersClusterIdInstancesInstanceId,
getClustersClusterIdInstancesInstanceIdEntries,
getMonitoringClusters,
getMonitoringClustersClusterId,
getMonitoringClustersClusterIdNodes,
getMonitoringSummary,
getRegistries,
getRegistriesRegistryId,
getRegistriesRegistryIdHealth,
getRegistriesRegistryIdRepositories,
getRegistriesRegistryIdRepositoriesRepositoryNameArtifacts,
getRegistriesRegistryIdRepositoriesRepositoryNameArtifactsReference,
getRegistriesRegistryIdRepositoriesRepositoryNameArtifactsReferenceValuesSchema,
postAuthLogin,
postAuthRefresh,
postAuthRegister,
postClusters,
postClustersClusterIdInstances,
postRegistries,
putClustersClusterId,
putClustersClusterIdInstancesInstanceId,
putRegistriesRegistryId,
} from './generated-orval/api';
import type {
DeleteClustersClusterIdInstancesInstanceIdPathParameters,
DeleteClustersClusterIdPathParameters,
DeleteRegistriesRegistryIdPathParameters,
GetClustersClusterIdInstancesInstanceIdPathParameters,
GetClustersClusterIdInstancesPathParameters,
GetRegistriesRegistryIdHealthPathParameters,
GetRegistriesRegistryIdPathParameters,
GetRegistriesRegistryIdRepositoriesPathParameters,
GetRegistriesRegistryIdRepositoriesRepositoryNameArtifactsPathParameters,
GetRegistriesRegistryIdRepositoriesRepositoryNameArtifactsReferencePathParameters,
GetRegistriesRegistryIdRepositoriesRepositoryNameArtifactsReferenceValuesSchemaPathParameters,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoArtifactResponse as GeneratedArtifactResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoAuthResponse as GeneratedAuthResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoClusterMetricsResponse as GeneratedClusterMetricsResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoClusterResponse as GeneratedClusterResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoCreateClusterRequest as GeneratedCreateClusterRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoCreateInstanceRequest as GeneratedCreateInstanceRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoCreateRegistryRequest as GeneratedCreateRegistryRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoInstanceEntryResponse as GeneratedInstanceEntry,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoInstanceResponse as GeneratedInstanceResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoLoginRequest as GeneratedLoginRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoMonitoringSummaryResponse as GeneratedMonitoringSummary,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoNodeMetricsResponse as GeneratedNodeMetricsResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoRefreshTokenRequest as GeneratedRefreshTokenRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoRegisterRequest as GeneratedRegisterRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoRegistryHealthResponse as GeneratedRegistryHealthResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoRegistryResponse as GeneratedRegistryResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoRepositoryListResponse as GeneratedRepositoryListResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoTagResponse as GeneratedTagResponse,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoUpdateClusterRequest as GeneratedUpdateClusterRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoUpdateInstanceRequest as GeneratedUpdateInstanceRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoUpdateRegistryRequest as GeneratedUpdateRegistryRequest,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoUserResponse as GeneratedUserResponse,
PutClustersClusterIdInstancesInstanceIdPathParameters,
PutClustersClusterIdPathParameters,
PutRegistriesRegistryIdPathParameters,
} from './generated-orval/api.schemas';
import {
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoInstanceResponseLastOperation as GeneratedInstanceLastOperationEnum,
GithubComOcdpClusterServiceInternalAdapterInputHttpDtoInstanceResponseStatus as GeneratedInstanceStatusEnum,
} from './generated-orval/api.schemas';
export { AXIOS_INSTANCE, customAxiosInstance, setAuthToken } from './axios-mutator';
export { keysToCamel, keysToSnake, snakeToCamel, camelToSnake } from '@/shared/utils/case-converter';
// Re-export raw generated APIs/types for advanced usages
export * from './generated-orval/api';
export type * from './generated-orval/api.schemas';
// ---------- Friendly type aliases ----------
export type AuthResponse = GeneratedAuthResponse;
export type RegisterBody = GeneratedRegisterRequest;
export type LoginBody = GeneratedLoginRequest;
export type RefreshTokenBody = GeneratedRefreshTokenRequest;
export type UserResponse = GeneratedUserResponse;
export type ClusterResponse = GeneratedClusterResponse;
export type CreateClusterRequest = GeneratedCreateClusterRequest;
export type UpdateClusterRequest = GeneratedUpdateClusterRequest;
export type RegistryResponse = GeneratedRegistryResponse;
export type CreateRegistryRequest = GeneratedCreateRegistryRequest;
export type UpdateRegistryRequest = GeneratedUpdateRegistryRequest;
export type RegistryHealthResponse = GeneratedRegistryHealthResponse;
export type InstanceResponse = GeneratedInstanceResponse;
export type CreateInstanceRequest = GeneratedCreateInstanceRequest;
export type UpdateInstanceRequest = GeneratedUpdateInstanceRequest;
export type InstanceEntry = GeneratedInstanceEntry;
export const INSTANCE_STATUS = GeneratedInstanceStatusEnum;
export type InstanceStatus = NonNullable<InstanceResponse['status']>;
export const INSTANCE_LAST_OPERATION = GeneratedInstanceLastOperationEnum;
export type InstanceLastOperation = NonNullable<InstanceResponse['lastOperation']>;
export type ArtifactResponse = GeneratedArtifactResponse;
export type ArtifactListItem = GeneratedTagResponse;
export type ListRepositories200Item =
| {
name?: string;
artifact_count?: number;
artifactCount?: number;
}
| string;
export type RepositoryListResponse = GeneratedRepositoryListResponse;
export type ListArtifactsFilter = 'all' | 'chart' | 'image' | 'other';
export type ClusterMonitoring = GeneratedClusterMetricsResponse;
export type ClusterMonitoringStatus = ClusterMonitoring['status'];
export type MonitoringSummary = GeneratedMonitoringSummary;
export type NodeMetricsResponse = GeneratedNodeMetricsResponse;
// ---------- Friendly function aliases ----------
export const login = postAuthLogin;
export const register = postAuthRegister;
export const refreshAuth = postAuthRefresh;
export const listClusters = getClusters;
export const createCluster = postClusters;
export const getCluster = getClustersClusterId;
export const updateCluster = putClustersClusterId;
export const deleteCluster = deleteClustersClusterId;
export const getClusterHealth = getClustersClusterIdHealth;
export const listInstances = getClustersClusterIdInstances;
export const createInstance = postClustersClusterIdInstances;
export const getInstance = getClustersClusterIdInstancesInstanceId;
export const updateInstance = putClustersClusterIdInstancesInstanceId;
export const deleteInstance = deleteClustersClusterIdInstancesInstanceId;
export const listInstanceEntries = getClustersClusterIdInstancesInstanceIdEntries;
export const listRegistries = getRegistries;
export const createRegistry = postRegistries;
export const getRegistry = getRegistriesRegistryId;
export const updateRegistry = putRegistriesRegistryId;
export const deleteRegistry = deleteRegistriesRegistryId;
export const checkRegistryHealth = getRegistriesRegistryIdHealth;
export const listRepositories = getRegistriesRegistryIdRepositories;
type ListArtifactsRequestOptions = AxiosOptions<typeof getRegistriesRegistryIdRepositoriesRepositoryNameArtifacts>;
export const listArtifacts = (
params: GetRegistriesRegistryIdRepositoriesRepositoryNameArtifactsPathParameters,
options?: { filter?: ListArtifactsFilter },
axiosOptions?: ListArtifactsRequestOptions,
) => {
const query =
options?.filter && options.filter !== 'all'
? { media_type: options.filter }
: undefined;
return getRegistriesRegistryIdRepositoriesRepositoryNameArtifacts(params, query, axiosOptions);
};
export const getArtifact = getRegistriesRegistryIdRepositoriesRepositoryNameArtifactsReference;
export const getValuesSchema = getRegistriesRegistryIdRepositoriesRepositoryNameArtifactsReferenceValuesSchema;
export const listClusterMonitoring = getMonitoringClusters;
export const getClusterMonitoring = getMonitoringClustersClusterId;
export const getClusterNodeMetrics = getMonitoringClustersClusterIdNodes;
export const getMonitoringSummaryData = getMonitoringSummary;
// Re-export parameter types with friendly names for caller convenience
export type DeleteClusterPathParameters = DeleteClustersClusterIdPathParameters;
export type UpdateClusterPathParameters = PutClustersClusterIdPathParameters;
export type ClusterInstancesPathParameters = GetClustersClusterIdInstancesPathParameters;
export type InstancePathParameters = GetClustersClusterIdInstancesInstanceIdPathParameters;
export type UpdateInstancePathParameters = PutClustersClusterIdInstancesInstanceIdPathParameters;
export type DeleteInstancePathParameters = DeleteClustersClusterIdInstancesInstanceIdPathParameters;
export type RegistryPathParameters = GetRegistriesRegistryIdPathParameters;
export type UpdateRegistryPathParameters = PutRegistriesRegistryIdPathParameters;
export type DeleteRegistryPathParameters = DeleteRegistriesRegistryIdPathParameters;
export type RegistryHealthPathParameters = GetRegistriesRegistryIdHealthPathParameters;
export type ListRepositoriesPathParameters = GetRegistriesRegistryIdRepositoriesPathParameters;
export type ListArtifactsPathParameters = GetRegistriesRegistryIdRepositoriesRepositoryNameArtifactsPathParameters;
export type ListArtifactsParams = { filter?: ListArtifactsFilter };
export type GetArtifactPathParameters = GetRegistriesRegistryIdRepositoriesRepositoryNameArtifactsReferencePathParameters;
export type GetValuesSchemaPathParameters = GetRegistriesRegistryIdRepositoriesRepositoryNameArtifactsReferenceValuesSchemaPathParameters;