mirror of
https://github.com/fosrl/pangolin.git
synced 2026-07-08 15:14:52 +02:00
♻️ rename query, add query
This commit is contained in:
@@ -90,7 +90,7 @@ export default function CreateShareLinkForm({
|
|||||||
const t = useTranslations();
|
const t = useTranslations();
|
||||||
|
|
||||||
const { data: allResources = [] } = useQuery(
|
const { data: allResources = [] } = useQuery(
|
||||||
orgQueries.resources({ orgId: org?.org.orgId ?? "" })
|
orgQueries.proxyResources({ orgId: org?.org.orgId ?? "" })
|
||||||
);
|
);
|
||||||
|
|
||||||
const [selectedResource, setSelectedResource] =
|
const [selectedResource, setSelectedResource] =
|
||||||
|
|||||||
@@ -348,7 +348,7 @@ function ResourceMultiSelect({
|
|||||||
const [debounced] = useDebounce(q, 150);
|
const [debounced] = useDebounce(q, 150);
|
||||||
|
|
||||||
const { data: resources = [] } = useQuery(
|
const { data: resources = [] } = useQuery(
|
||||||
orgQueries.resources({ orgId, query: debounced, perPage: 10 })
|
orgQueries.proxyResources({ orgId, query: debounced, perPage: 10 })
|
||||||
);
|
);
|
||||||
|
|
||||||
const shown = useMemo(() => {
|
const shown = useMemo(() => {
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ export function ResourceSelector({
|
|||||||
const [debouncedSearchQuery] = useDebounce(resourceSearchQuery, 150);
|
const [debouncedSearchQuery] = useDebounce(resourceSearchQuery, 150);
|
||||||
|
|
||||||
const { data: resources = [] } = useQuery(
|
const { data: resources = [] } = useQuery(
|
||||||
orgQueries.resources({
|
orgQueries.proxyResources({
|
||||||
orgId: orgId,
|
orgId: orgId,
|
||||||
query: debouncedSearchQuery,
|
query: debouncedSearchQuery,
|
||||||
perPage: 10
|
perPage: 10
|
||||||
|
|||||||
+78
-4
@@ -7,7 +7,10 @@ import type {
|
|||||||
QueryConnectionAuditLogResponse,
|
QueryConnectionAuditLogResponse,
|
||||||
QueryRequestAuditLogResponse
|
QueryRequestAuditLogResponse
|
||||||
} from "@server/routers/auditLogs/types";
|
} from "@server/routers/auditLogs/types";
|
||||||
import type { ListClientsResponse } from "@server/routers/client";
|
import type {
|
||||||
|
ListClientsResponse,
|
||||||
|
ListUserDevicesResponse
|
||||||
|
} from "@server/routers/client";
|
||||||
import type {
|
import type {
|
||||||
GetDNSRecordsResponse,
|
GetDNSRecordsResponse,
|
||||||
ListDomainsResponse
|
ListDomainsResponse
|
||||||
@@ -25,6 +28,7 @@ import type {
|
|||||||
import type { ListRolesResponse } from "@server/routers/role";
|
import type { ListRolesResponse } from "@server/routers/role";
|
||||||
import type { ListSitesResponse } from "@server/routers/site";
|
import type { ListSitesResponse } from "@server/routers/site";
|
||||||
import type {
|
import type {
|
||||||
|
ListAllSiteResourcesByOrgResponse,
|
||||||
ListSiteResourceClientsResponse,
|
ListSiteResourceClientsResponse,
|
||||||
ListSiteResourceRolesResponse,
|
ListSiteResourceRolesResponse,
|
||||||
ListSiteResourceUsersResponse
|
ListSiteResourceUsersResponse
|
||||||
@@ -38,7 +42,7 @@ import {
|
|||||||
queryOptions
|
queryOptions
|
||||||
} from "@tanstack/react-query";
|
} from "@tanstack/react-query";
|
||||||
import type { AxiosResponse } from "axios";
|
import type { AxiosResponse } from "axios";
|
||||||
import z from "zod";
|
import z, { meta } from "zod";
|
||||||
import { remote } from "./api";
|
import { remote } from "./api";
|
||||||
import { durationToMs } from "./durationToMs";
|
import { durationToMs } from "./durationToMs";
|
||||||
import type { ListOrgLabelsResponse } from "@server/routers/labels/types";
|
import type { ListOrgLabelsResponse } from "@server/routers/labels/types";
|
||||||
@@ -138,6 +142,38 @@ export const orgQueries = {
|
|||||||
return res.data.data.clients;
|
return res.data.data.clients;
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
|
userDevices: ({
|
||||||
|
orgId,
|
||||||
|
query,
|
||||||
|
perPage = 10_000
|
||||||
|
}: {
|
||||||
|
orgId: string;
|
||||||
|
query?: string;
|
||||||
|
perPage?: number;
|
||||||
|
}) =>
|
||||||
|
queryOptions({
|
||||||
|
queryKey: [
|
||||||
|
"ORG",
|
||||||
|
orgId,
|
||||||
|
"USER_DEVICES",
|
||||||
|
{ 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<ListUserDevicesResponse>
|
||||||
|
>(`/org/${orgId}/user-devices?${sp.toString()}`, { signal });
|
||||||
|
|
||||||
|
return res.data.data.devices;
|
||||||
|
}
|
||||||
|
}),
|
||||||
users: ({
|
users: ({
|
||||||
orgId,
|
orgId,
|
||||||
query,
|
query,
|
||||||
@@ -282,7 +318,7 @@ export const orgQueries = {
|
|||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
|
|
||||||
resources: ({
|
proxyResources: ({
|
||||||
orgId,
|
orgId,
|
||||||
query,
|
query,
|
||||||
perPage = 10_000
|
perPage = 10_000
|
||||||
@@ -292,7 +328,12 @@ export const orgQueries = {
|
|||||||
perPage?: number;
|
perPage?: number;
|
||||||
}) =>
|
}) =>
|
||||||
queryOptions({
|
queryOptions({
|
||||||
queryKey: ["ORG", orgId, "RESOURCES", { query, perPage }] as const,
|
queryKey: [
|
||||||
|
"ORG",
|
||||||
|
orgId,
|
||||||
|
"PROXY_RESOURCES",
|
||||||
|
{ query, perPage }
|
||||||
|
] as const,
|
||||||
queryFn: async ({ signal, meta }) => {
|
queryFn: async ({ signal, meta }) => {
|
||||||
const sp = new URLSearchParams({
|
const sp = new URLSearchParams({
|
||||||
pageSize: perPage.toString()
|
pageSize: perPage.toString()
|
||||||
@@ -310,6 +351,39 @@ export const orgQueries = {
|
|||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
privateResources: ({
|
||||||
|
orgId,
|
||||||
|
query,
|
||||||
|
perPage = 10_000
|
||||||
|
}: {
|
||||||
|
orgId: string;
|
||||||
|
query?: string;
|
||||||
|
perPage?: number;
|
||||||
|
}) =>
|
||||||
|
queryOptions({
|
||||||
|
queryKey: [
|
||||||
|
"ORG",
|
||||||
|
orgId,
|
||||||
|
"PRIVATE_RESOURCES",
|
||||||
|
{ 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<ListAllSiteResourcesByOrgResponse>
|
||||||
|
>(`/org/${orgId}/site-resources?${sp.toString()}`, { signal });
|
||||||
|
|
||||||
|
return res.data.data.siteResources;
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
|
||||||
healthChecks: ({
|
healthChecks: ({
|
||||||
orgId,
|
orgId,
|
||||||
perPage = 10_000
|
perPage = 10_000
|
||||||
|
|||||||
Reference in New Issue
Block a user