refactor: modularize API client by splitting resources into individual files and standardizing HTTP request handling.
This commit is contained in:
40
apps/frontend/src/lib/api/resources/onboarding.ts
Normal file
40
apps/frontend/src/lib/api/resources/onboarding.ts
Normal file
@@ -0,0 +1,40 @@
|
||||
import type {
|
||||
OnboardingCompleteInput,
|
||||
OnboardingCompleteResponse,
|
||||
OnboardingResendOtpInput,
|
||||
OnboardingResendOtpResponse,
|
||||
OnboardingStartInput,
|
||||
OnboardingStartResponse,
|
||||
OnboardingVerifyOtpInput,
|
||||
OnboardingVerifyOtpResponse,
|
||||
} from '@repo/api-contract';
|
||||
import { http } from '../http';
|
||||
|
||||
export async function start(payload: OnboardingStartInput) {
|
||||
const response = await http.post<OnboardingStartResponse>('/api/onboarding/start', payload);
|
||||
return response.data;
|
||||
}
|
||||
|
||||
export async function verifyOtp(payload: OnboardingVerifyOtpInput) {
|
||||
const response = await http.post<OnboardingVerifyOtpResponse>(
|
||||
'/api/onboarding/verify-otp',
|
||||
payload
|
||||
);
|
||||
return response.data;
|
||||
}
|
||||
|
||||
export async function resendOtp(payload: OnboardingResendOtpInput) {
|
||||
const response = await http.post<OnboardingResendOtpResponse>(
|
||||
'/api/onboarding/resend-otp',
|
||||
payload
|
||||
);
|
||||
return response.data;
|
||||
}
|
||||
|
||||
export async function complete(payload: OnboardingCompleteInput) {
|
||||
const response = await http.post<OnboardingCompleteResponse>(
|
||||
'/api/onboarding/complete',
|
||||
payload
|
||||
);
|
||||
return response.data;
|
||||
}
|
||||
Reference in New Issue
Block a user