import { createFileRoute, stripSearchParams } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; import { ProjectAccessControlTabs } from "@app/types/project"; import { AccessControlPage } from "./AccessControlPage"; const AccessControlPageQuerySchema = z.object({ selectedTab: z.nativeEnum(ProjectAccessControlTabs).catch(ProjectAccessControlTabs.Member), requesterEmail: z.string().catch("") }); export const Route = createFileRoute( "/_authenticate/_inject-org-details/_org-layout/projects/secret-scanning/$projectId/_secret-scanning-layout/access-management" )({ component: AccessControlPage, validateSearch: zodValidator(AccessControlPageQuerySchema), search: { middlewares: [stripSearchParams({ requesterEmail: "" })] }, beforeLoad: ({ context }) => { return { breadcrumbs: [ ...context.breadcrumbs, { label: "Access Control" } ] }; } });