Path: blob/1.0-develop/resources/scripts/api/auth/login.ts
10277 views
import http from '@/api/http';12export interface LoginResponse {3complete: boolean;4intended?: string;5confirmationToken?: string;6}78export interface LoginData {9username: string;10password: string;11recaptchaData?: string | null;12}1314export default ({ username, password, recaptchaData }: LoginData): Promise<LoginResponse> => {15return new Promise((resolve, reject) => {16http.get('/sanctum/csrf-cookie')17.then(() =>18http.post('/auth/login', {19user: username,20password,21'g-recaptcha-response': recaptchaData,22})23)24.then((response) => {25if (!(response.data instanceof Object)) {26return reject(new Error('An error occurred while processing the login request.'));27}2829return resolve({30complete: response.data.data.complete,31intended: response.data.data.intended || undefined,32confirmationToken: response.data.data.confirmation_token || undefined,33});34})35.catch(reject);36});37};383940