You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
1.7 KiB

1 month ago
import{_ as e}from"./api-Dpfxb1ca.js";import{c as t,s as n}from"./index-BpfnlerO.js";import{t as r}from"./loginFeedback-DApueHnF.js";function i(e,n){if(t.isAxiosError(e)){let t=e.response?.data,i=t&&typeof t==`object`?t:{},a=typeof i.message==`string`?i.message.trim():``,o=i.errors&&typeof i.errors==`object`?Object.values(i.errors).flat().join(`
1 month ago
`).trim():``,s=a||o;return s&&!r(s)?s:n}return e instanceof Error&&e.message.trim()&&!r(e.message)?e.message.trim():n}async function a(e){try{let{data:t}=await n.post(`/auth/login`,e);return s(t,`platform`)}catch(e){throw Error(i(e,`登录失败`))}}async function o(n){try{let{data:r}=await t.post(`${e()}/api/v1/manage/auth/login`,n,{headers:{Accept:`application/json`,"Content-Type":`application/json`}});return s(r)}catch(e){throw Error(i(e,`登录失败`))}}function s(e,t){if(e&&typeof e==`object`){let n=e,r=n.data,i=(typeof n.token==`string`?n.token:void 0)??(typeof n.access_token==`string`?n.access_token:void 0)??(r&&typeof r.token==`string`?r.token:void 0);if(typeof i==`string`){let e=n.user??n.admin??r?.user,a=n.kind??r?.kind??t,o=n.competition??r?.competition;return{token:i,kind:a===`competition`?`competition`:`platform`,user:e,competition:o&&typeof o==`object`?o:void 0}}}throw Error(`登录失败,请稍后重试`)}async function c(e){try{await n.patch(`/auth/password`,e)}catch(e){throw Error(i(e,`修改密码失败`))}}async function l(n){try{let r=localStorage.getItem(`cxxfds_admin_token`)??``;await t.patch(`${e()}/api/v1/manage/auth/password`,n,{headers:{Accept:`application/json`,"Content-Type":`application/json`,...r?{Authorization:`Bearer ${r}`}:{}}})}catch(e){throw Error(i(e,`修改密码失败`))}}export{o as i,c as n,l as r,a as t};