saleor-dashboard/src/permissionGroups/sort.ts
2023-01-16 10:45:12 +01:00

26 lines
649 B
TypeScript

import { StaffMemberFragment } from "@dashboard/graphql";
import { getUserName } from "@dashboard/misc";
import { MembersListUrlSortField } from "./urls";
export const sortMembers = (sort: string, asc: boolean) => (
a: StaffMemberFragment,
b: StaffMemberFragment,
) => {
let valueA;
let valueB;
switch (sort) {
case MembersListUrlSortField.name:
valueA = getUserName(a);
valueB = getUserName(b);
break;
case MembersListUrlSortField.email:
valueA = a.email;
valueB = b.email;
break;
}
return asc
? ("" + valueA).localeCompare(valueB)
: ("" + valueA).localeCompare(valueB) * -1;
};