anujjoshi3105's picture
first commit
3d23b0f
import * as provider from '../provider';
import * as formatters from '../utils/formatters';
import {
DailyProblemData,
SelectProblemData,
ProblemSetQuestionListData,
} from '../types';
export async function getDailyProblem(raw: boolean = false): Promise<any> {
try {
const data = await provider.fetchDailyProblem();
if (raw) return data;
return formatters.formatDailyData(data);
} catch (error: any) {
console.error('LeetCode Daily Problem Error:', error.message);
throw new Error('Error fetching LeetCode daily problem');
}
}
export async function getSelectProblem(titleSlug: string, raw: boolean = false): Promise<any> {
try {
const data = await provider.fetchSelectProblem(titleSlug);
if (raw) return data;
return formatters.formatQuestionData(data);
} catch (error: any) {
console.error('LeetCode Select Problem Error:', error.message);
throw new Error('Error fetching LeetCode selected problem');
}
}
export async function getProblems(params: any): Promise<any> {
try {
const data = await provider.fetchProblems(params);
return formatters.formatProblemsData(data);
} catch (error: any) {
console.error('LeetCode Problems Error:', error.message);
throw new Error('Error fetching LeetCode problems');
}
}
export async function getOfficialSolution(titleSlug: string): Promise<any> {
try {
return await provider.fetchOfficialSolution(titleSlug);
} catch (error: any) {
console.error('LeetCode Official Solution Error:', error.message);
throw new Error('Error fetching LeetCode official solution');
}
}