import axios from 'axios';
import { sha512 } from 'js-sha512';

// Interfejs zgodny z Twoją dokumentacją [cite: 74-79]
export interface AuthResponse {
  status: "ok";
  name: string;
  role: "user" | "admin";
  token: string;
}

export const loginUser = async (name: string, pass: string): Promise<AuthResponse> => {
  // Wysyłamy POST zgodnie ze specyfikacją dokumentacji [cite: 68]
  const response = await axios.post('https://twoj-backend.pl/api/v1/user/signIn', {
    name: name,
    password: sha512(pass) // Wymagane SHA-512 [cite: 71]
  });

  // Jeśli sukces, zapisujemy token JWT [cite: 78]
  if (response.data.status === "ok") {
    localStorage.setItem('token', response.data.token);
  }

  return response.data;
};