36 lines
1002 B
TypeScript
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 },
|
|
);
|
|
}
|