auth.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. import { get } from "../config/request";
  2. import axiosAPI from "../config/axios";
  3. import { createLog } from "./log";
  4. import { getCsrf } from "./security";
  5. export const login = async (username, password) => {
  6. const data = {
  7. username,
  8. password,
  9. };
  10. const response = await axiosAPI.post("/auth/login", data, {
  11. headers: {
  12. "Content-Type": "application/json",
  13. },
  14. });
  15. return response.data;
  16. };
  17. export const refreshToken = async () => {
  18. try {
  19. const response = await axiosAPI.get("/token");
  20. return response.data;
  21. } catch (error) {
  22. if (error.response) return error.response.data;
  23. }
  24. };
  25. export const getUser = async () => {
  26. try {
  27. const response = await get("/user");
  28. return response.data;
  29. } catch (error) {
  30. if (error.response) return error.response.data;
  31. }
  32. };
  33. export const logout = async (_csrf) => {
  34. try {
  35. const response = await axiosAPI.delete(`/auth/logout?_csrf=${_csrf}`);
  36. return response.data;
  37. } catch (error) {
  38. if (error.response) return error.response.data;
  39. }
  40. };
  41. export const loginToPt = async (lembaga_id, password, _csrf) => {
  42. const data = {
  43. lembaga_id,
  44. password,
  45. };
  46. const response = await axiosAPI.post(`/auth/login-to-pt?_csrf=${_csrf}`, data, {
  47. headers: {
  48. "Content-Type": "application/json",
  49. },
  50. });
  51. return response.data;
  52. };
  53. export const getkontakpt = async () => {
  54. try {
  55. const response = await get("/kontak");
  56. return response.data;
  57. } catch (error) {
  58. if (error.response) return error.response.data;
  59. }
  60. };
  61. export const createotp = async (data, token) => {
  62. try {
  63. const response = await axiosAPI.post(`/auth/otp`, data, { headers: { Authorization: token } });
  64. return response.data;
  65. } catch (error) {
  66. if (error.response) return error.response.data;
  67. }
  68. };
  69. export const createkontak = async (data, token) => {
  70. try {
  71. const response = await axiosAPI.post(`/kontak`, data, { headers: { Authorization: token } });
  72. return response.data;
  73. } catch (error) {
  74. return { error: error.response.data };
  75. // if (error.response) return error.response.data;
  76. }
  77. };