diff --git a/backend/src/services/get-endpoints/index.ts b/backend/src/services/get-endpoints/index.ts index e23a2b74..7f2f98bb 100644 --- a/backend/src/services/get-endpoints/index.ts +++ b/backend/src/services/get-endpoints/index.ts @@ -438,6 +438,13 @@ export class GetEndpointsService { ) parameters.push(`${searchingForPublic}`) } + if (getEndpointParams.endpointValidated) { + whereFilter.push( + `endpoint."userSet" = $${argNumber++}`, + ) + parameters.push(getEndpointParams.endpointValidated) + } + if (whereFilter.length > 0) { whereFilterString = `WHERE ${whereFilter.join(" AND ")}` } diff --git a/common/src/api/endpoint.ts b/common/src/api/endpoint.ts index ed82c87a..10d7d03d 100644 --- a/common/src/api/endpoint.ts +++ b/common/src/api/endpoint.ts @@ -17,6 +17,7 @@ export const GetEndpointParamsSchema = z.object({ searchQuery: z.string().optional(), isAuthenticated: z.string().optional(), hostType: z.nativeEnum(HostType).optional().default(HostType.ANY), + endpointValidated: z.enum(["true", "false"]).optional(), offset: z .union([z.number(), z.string().regex(/^\d+$/).transform(Number)]) .optional(), diff --git a/frontend/src/components/EndpointList/Filters.tsx b/frontend/src/components/EndpointList/Filters.tsx index ae86b1b5..2e2d034e 100644 --- a/frontend/src/components/EndpointList/Filters.tsx +++ b/frontend/src/components/EndpointList/Filters.tsx @@ -310,6 +310,38 @@ const EndpointFilters: React.FC = React.memo( /> + + + +