Files
lotteryAdmin/src/api/admin-users.ts

36 lines
1002 B
TypeScript

import { adminRequest } from "@/lib/admin-http";
import { API_V1_PREFIX } from "./paths";
import type {
AdminPermissionCatalogData,
AdminUserPermissionListData,
AdminUserPermissionSyncData,
} from "@/types/api/admin-user";
const A = `${API_V1_PREFIX}/admin`;
export async function getAdminUsers(params?: {
page?: number;
per_page?: number;
keyword?: string;
}): Promise<AdminUserPermissionListData> {
return adminRequest.get<AdminUserPermissionListData>(`${A}/admin-users`, {
params,
});
}
export async function getAdminUserPermissionCatalog(): Promise<AdminPermissionCatalogData> {
return adminRequest.get<AdminPermissionCatalogData>(`${A}/admin-user-permission-catalog`);
}
export async function putAdminUserPermissions(
adminUserId: number,
permissionSlugs: string[],
): Promise<AdminUserPermissionSyncData> {
return adminRequest.put<AdminUserPermissionSyncData>(
`${A}/admin-users/${adminUserId}/permissions`,
{ permission_slugs: permissionSlugs },
);
}