roleService.ts 814 Bytes
import { createApiClient } from "../lib/apiClient";
import type { PagedResultDto, RoleDto, RoleGetListInput } from "../types/role";

const api = createApiClient({
  getToken: () => {
    try {
      return localStorage.getItem("access_token") ?? localStorage.getItem("token") ?? null;
    } catch {
      return null;
    }
  },
});

// ABP Conventional Controller for RoleService
const PATH = "/role";

export async function getRoles(input: RoleGetListInput, signal?: AbortSignal): Promise<PagedResultDto<RoleDto>> {
  return api.requestJson<PagedResultDto<RoleDto>>({
    path: PATH,
    method: "GET",
    query: {
      SkipCount: input.skipCount,
      MaxResultCount: input.maxResultCount,
      RoleName: input.roleName,
      RoleCode: input.roleCode,
      State: input.state,
    },
    signal,
  });
}