- Marked all user preferences actions as complete in TODO.md. - Updated `user-preferences-client.ts` to remove outdated mutation methods, now handled by server actions. - Deleted unused API routes for column visibility, kanban filters, and view preferences. - Refactored `UserPreferencesContext.tsx` to utilize server actions for updates, improving performance with `useTransition`.
29 lines
820 B
TypeScript
29 lines
820 B
TypeScript
import { httpClient } from './base/http-client';
|
|
import { UserPreferences } from '@/lib/types';
|
|
|
|
export interface UserPreferencesResponse {
|
|
success: boolean;
|
|
data?: UserPreferences;
|
|
message?: string;
|
|
error?: string;
|
|
}
|
|
|
|
/**
|
|
* Client HTTP pour les préférences utilisateur (lecture seule)
|
|
* Les mutations sont gérées par les server actions dans actions/preferences.ts
|
|
*/
|
|
export const userPreferencesClient = {
|
|
/**
|
|
* Récupère toutes les préférences utilisateur
|
|
*/
|
|
async getPreferences(): Promise<UserPreferences> {
|
|
const response = await httpClient.get<UserPreferencesResponse>('/user-preferences');
|
|
|
|
if (!response.success || !response.data) {
|
|
throw new Error(response.error || 'Erreur lors de la récupération des préférences');
|
|
}
|
|
|
|
return response.data;
|
|
}
|
|
};
|