@aot-tech/clockify-mcp-server
Version:
MCP Server for Clockify time tracking integration with AI tools
41 lines (40 loc) • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.usersService = void 0;
const api_1 = require("../config/api");
function UsersService() {
async function getCurrent() {
const newApi = (0, api_1.getApi)();
return await newApi.get("user");
}
async function getAllUsers(params) {
const searchParams = new URLSearchParams();
if (params.name)
searchParams.append("name", params.name);
if (params.projectId) {
searchParams.append("project-id", params.projectId);
}
const newApi = (0, api_1.getApi)();
return await newApi.get(`/workspaces/${params.workspaceId}/users?${searchParams.toString()}&page-size=200&page=1`);
}
async function getAllGroups(params) {
const searchParams = new URLSearchParams();
if (params.name)
searchParams.append("name", params.name);
if (params.projectId)
searchParams.append("projectId", params.projectId);
const newApi = (0, api_1.getApi)();
return await newApi.get(`/workspaces/${params.workspaceId}/user-groups?${searchParams.toString()}`);
}
async function getTeamManagers(params) {
try {
const newApi = (0, api_1.getApi)();
return await newApi.get(`/workspaces/${params.workspaceId}/users/${params.userId}/managers`);
}
catch (error) {
throw error;
}
}
return { getCurrent, getAllUsers, getAllGroups, getTeamManagers };
}
exports.usersService = UsersService();