feat: add subjects and tasks API, hooks, and related types

- Implemented subjects API with functions for creating, updating, and retrieving subjects, including history and bibliography.
- Added tasks API for managing user tasks, including listing and marking tasks as completed.
- Created hooks for managing AI interactions, authentication, subjects, tasks, and metadata queries.
- Established query keys for caching and managing query states.
- Introduced Supabase client and environment variable management for better configuration.
- Defined types for database and domain models to ensure type safety across the application.
This commit is contained in:
2026-01-09 09:00:33 -06:00
parent 8704b63b46
commit 65a73ca99f
25 changed files with 1819 additions and 0 deletions

28
src/data/hooks/useAI.ts Normal file
View File

@@ -0,0 +1,28 @@
import { useMutation } from "@tanstack/react-query";
import {
ai_plan_chat,
ai_plan_improve,
ai_subject_chat,
ai_subject_improve,
library_search,
} from "../api/ai.api";
export function useAIPlanImprove() {
return useMutation({ mutationFn: ai_plan_improve });
}
export function useAIPlanChat() {
return useMutation({ mutationFn: ai_plan_chat });
}
export function useAISubjectImprove() {
return useMutation({ mutationFn: ai_subject_improve });
}
export function useAISubjectChat() {
return useMutation({ mutationFn: ai_subject_chat });
}
export function useLibrarySearch() {
return useMutation({ mutationFn: library_search });
}