Re_Figma_Code/src/services/userApi.ts

40 lines
1.0 KiB
TypeScript

import apiClient from './authApi';
export interface UserSummary {
userId: string;
email: string;
displayName?: string;
firstName?: string;
lastName?: string;
department?: string;
designation?: string;
isActive?: boolean;
}
export async function searchUsers(query: string, limit: number = 10): Promise<UserSummary[]> {
const res = await apiClient.get('/users/search', { params: { q: query, limit } });
const data = (res.data?.data || res.data) as any[];
return data as UserSummary[];
}
/**
* Ensure user exists in database (creates if not exists)
* Call this when a user is selected/tagged to pre-create their record
*/
export async function ensureUserExists(userData: {
userId: string;
email: string;
displayName?: string;
firstName?: string;
lastName?: string;
department?: string;
phone?: string;
}): Promise<UserSummary> {
const res = await apiClient.post('/users/ensure', userData);
return (res.data?.data || res.data) as UserSummary;
}
export default { searchUsers, ensureUserExists };