show sites and labels for non admins

This commit is contained in:
miloschwartz
2026-07-01 12:17:36 -04:00
parent 75f481bc3d
commit 87e1a509ce
10 changed files with 583 additions and 16 deletions

View File

@@ -48,7 +48,9 @@ import type { ListResourcePoliciesResponse } from "@server/routers/resource/type
import type { GetResourcePolicyResponse } from "@server/routers/policy";
import type {
ListLauncherGroupsResponse,
ListLauncherLabelsResponse,
ListLauncherResourcesResponse,
ListLauncherSitesResponse,
ListLauncherViewsResponse,
LauncherListQuery,
LauncherViewConfig
@@ -1190,6 +1192,72 @@ export const launcherQueries = {
return res.data.data.views;
}
}),
sites: ({
orgId,
query,
perPage = 500
}: {
orgId: string;
query?: string;
perPage?: number;
}) =>
queryOptions({
queryKey: [
"ORG",
orgId,
"LAUNCHER",
"SITES",
{ query, perPage }
] as const,
queryFn: async ({ signal, meta }) => {
const sp = new URLSearchParams({
pageSize: perPage.toString()
});
if (query?.trim()) {
sp.set("query", query);
}
const res = await meta!.api.get<
AxiosResponse<ListLauncherSitesResponse>
>(`/org/${orgId}/launcher/sites?${sp.toString()}`, { signal });
return res.data.data.sites;
}
}),
labels: ({
orgId,
query,
perPage = 500
}: {
orgId: string;
query?: string;
perPage?: number;
}) =>
queryOptions({
queryKey: [
"ORG",
orgId,
"LAUNCHER",
"LABELS",
{ query, perPage }
] as const,
queryFn: async ({ signal, meta }) => {
const sp = new URLSearchParams({
pageSize: perPage.toString()
});
if (query?.trim()) {
sp.set("query", query);
}
const res = await meta!.api.get<
AxiosResponse<ListLauncherLabelsResponse>
>(`/org/${orgId}/launcher/labels?${sp.toString()}`, {
signal
});
return res.data.data.labels;
}
}),
groups: (orgId: string, filters: LauncherQueryFilters) =>
infiniteQueryOptions({
queryKey: ["ORG", orgId, "LAUNCHER", "GROUPS", filters] as const,