1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-21 06:19:41 +02:00

refactor(namespace): migrate namespace edit to react [r8s-125] (#38)

This commit is contained in:
Ali 2024-12-11 10:15:46 +13:00 committed by GitHub
parent 40c7742e46
commit ce7e0d8d60
108 changed files with 3183 additions and 2194 deletions

View file

@ -8,19 +8,26 @@ import { PortainerNamespace } from '../types';
import { queryKeys } from './queryKeys';
type QueryParams = 'withResourceQuota';
export function useNamespaceQuery<T = PortainerNamespace>(
environmentId: EnvironmentId,
namespace: string,
{
select,
enabled,
params,
}: {
select?(namespace: PortainerNamespace): T;
params?: Record<QueryParams, string>;
enabled?: boolean;
} = {}
) {
return useQuery(
queryKeys.namespace(environmentId, namespace),
() => getNamespace(environmentId, namespace),
() => getNamespace(environmentId, namespace, params),
{
enabled: !!environmentId && !!namespace && enabled,
onError: (err) => {
notifyError('Failure', err as Error, 'Unable to get namespace.');
},
@ -32,11 +39,15 @@ export function useNamespaceQuery<T = PortainerNamespace>(
// getNamespace is used to retrieve a namespace using the Portainer backend
export async function getNamespace(
environmentId: EnvironmentId,
namespace: string
namespace: string,
params?: Record<QueryParams, string>
) {
try {
const { data: ns } = await axios.get<PortainerNamespace>(
`kubernetes/${environmentId}/namespaces/${namespace}`
`kubernetes/${environmentId}/namespaces/${namespace}`,
{
params,
}
);
return ns;
} catch (e) {