Merge pull request #1693 from Pallavikumarimdb/fix/sorting-resources-alphabetically-by-default

Sorting Resources Alphabetically by Default
This commit is contained in:
Owen Schwartz
2025-10-18 10:03:28 -07:00
committed by GitHub
2 changed files with 20 additions and 7 deletions

View File

@@ -43,7 +43,7 @@ export default async function ResourcesPage(props: ResourcesPageProps) {
await authCookieHeader() await authCookieHeader()
); );
resources = res.data.data.resources; resources = res.data.data.resources;
} catch (e) {} } catch (e) { }
let siteResources: ListAllSiteResourcesByOrgResponse["siteResources"] = []; let siteResources: ListAllSiteResourcesByOrgResponse["siteResources"] = [];
try { try {
@@ -51,7 +51,7 @@ export default async function ResourcesPage(props: ResourcesPageProps) {
AxiosResponse<ListAllSiteResourcesByOrgResponse> AxiosResponse<ListAllSiteResourcesByOrgResponse>
>(`/org/${params.orgId}/site-resources`, await authCookieHeader()); >(`/org/${params.orgId}/site-resources`, await authCookieHeader());
siteResources = res.data.data.siteResources; siteResources = res.data.data.siteResources;
} catch (e) {} } catch (e) { }
let org = null; let org = null;
try { try {
@@ -88,8 +88,8 @@ export default async function ResourcesPage(props: ResourcesPageProps) {
resource.passwordId !== null || resource.passwordId !== null ||
resource.whitelist || resource.whitelist ||
resource.headerAuthId resource.headerAuthId
? "protected" ? "protected"
: "not_protected", : "not_protected",
enabled: resource.enabled, enabled: resource.enabled,
domainId: resource.domainId || undefined, domainId: resource.domainId || undefined,
ssl: resource.ssl ssl: resource.ssl
@@ -128,6 +128,10 @@ export default async function ResourcesPage(props: ResourcesPageProps) {
defaultView={ defaultView={
env.flags.enableClients ? defaultView : "proxy" env.flags.enableClients ? defaultView : "proxy"
} }
defaultSort={{
id: "name",
desc: false
}}
/> />
</OrgProvider> </OrgProvider>
</> </>

View File

@@ -100,6 +100,10 @@ type ResourcesTableProps = {
internalResources: InternalResourceRow[]; internalResources: InternalResourceRow[];
orgId: string; orgId: string;
defaultView?: "proxy" | "internal"; defaultView?: "proxy" | "internal";
defaultSort?: {
id: string;
desc: boolean;
};
}; };
@@ -143,7 +147,8 @@ export default function ResourcesTable({
resources, resources,
internalResources, internalResources,
orgId, orgId,
defaultView = "proxy" defaultView = "proxy",
defaultSort
}: ResourcesTableProps) { }: ResourcesTableProps) {
const router = useRouter(); const router = useRouter();
const searchParams = useSearchParams(); const searchParams = useSearchParams();
@@ -171,12 +176,16 @@ export default function ResourcesTable({
const [isCreateDialogOpen, setIsCreateDialogOpen] = useState(false); const [isCreateDialogOpen, setIsCreateDialogOpen] = useState(false);
const [sites, setSites] = useState<Site[]>([]); const [sites, setSites] = useState<Site[]>([]);
const [proxySorting, setProxySorting] = useState<SortingState>([]); const [proxySorting, setProxySorting] = useState<SortingState>(
defaultSort ? [defaultSort] : []
);
const [proxyColumnFilters, setProxyColumnFilters] = const [proxyColumnFilters, setProxyColumnFilters] =
useState<ColumnFiltersState>([]); useState<ColumnFiltersState>([]);
const [proxyGlobalFilter, setProxyGlobalFilter] = useState<any>([]); const [proxyGlobalFilter, setProxyGlobalFilter] = useState<any>([]);
const [internalSorting, setInternalSorting] = useState<SortingState>([]); const [internalSorting, setInternalSorting] = useState<SortingState>(
defaultSort ? [defaultSort] : []
);
const [internalColumnFilters, setInternalColumnFilters] = const [internalColumnFilters, setInternalColumnFilters] =
useState<ColumnFiltersState>([]); useState<ColumnFiltersState>([]);
const [internalGlobalFilter, setInternalGlobalFilter] = useState<any>([]); const [internalGlobalFilter, setInternalGlobalFilter] = useState<any>([]);