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.

1 line
2.5 KiB

import{u as e}from"./api-CH6mod_b.js";import{S as t,_ as n,d as r,f as i,m as a,r as o,x as s}from"./index-D8PaKRyd.js";function c(e){if(!e||typeof e!=`object`)throw Error(`列表响应格式无效`);let t=e;if(Array.isArray(t.data)&&typeof t.current_page==`number`){let e=t.data;return{data:e,meta:{current_page:t.current_page,last_page:typeof t.last_page==`number`?t.last_page:1,per_page:typeof t.per_page==`number`?t.per_page:e.length||15,total:typeof t.total==`number`?t.total:e.length}}}let n=t.data??t,r=n.data,i=n.meta;if(Array.isArray(r)&&i&&typeof i==`object`)return{data:r,meta:i};if(Array.isArray(t.data)){let e=t.data;return{data:e,meta:{current_page:1,last_page:1,per_page:e.length,total:e.length}}}throw Error(`列表响应格式无效`)}async function l(t){if(e()){let e=a(),n=t.page??1,r=t.per_page??15,i=(n-1)*r;return{data:e.slice(i,i+r),meta:{current_page:n,last_page:Math.max(1,Math.ceil(e.length/r)),per_page:r,total:e.length}}}let{data:n}=await o.get(`/competitions`,{params:t});return c(n)}async function u(t){if(e()){let e=i(t);if(!e)throw Error(`赛事不存在`);return e}let{data:n}=await o.get(`/competitions/${t}`),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`赛事详情无效`);return r}async function d(t){if(e())return s(t);let{data:n}=await o.post(`/competitions`,t),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function f(t,n){if(e()){let e=i(t);if(!e)throw Error(`赛事不存在`);return s({...e,...n,id:t})}let{data:r}=await o.put(`/competitions/${t}`,n),a=r?.data??r;if(!a||typeof a!=`object`)throw Error(`更新响应无效`);return a}async function p(t,n){if(e()){let e=i(t);if(!e)throw Error(`赛事不存在`);return s({...e,...n,id:t})}let{data:r}=await o.patch(`/competitions/${t}`,n),a=r?.data??r;if(!a||typeof a!=`object`)throw Error(`更新响应无效`);return a}async function m(t){if(e())return n(t);let{data:r}=await o.get(`/competitions/${t}/tracks`),i=r?.data??r;if(!Array.isArray(i))throw Error(`赛道列表无效`);return i}async function h(n,r){if(e())return t(n,{...r});let{data:i}=await o.post(`/competitions/${n}/tracks`,r),a=i?.data??i;if(!a||typeof a!=`object`)throw Error(`创建赛道无效`);return a}async function g(n,r,i){if(e())return t(n,{...i,id:r});let{data:a}=await o.put(`/competitions/${n}/tracks/${r}`,i),s=a?.data??a;if(!s||typeof s!=`object`)throw Error(`更新赛道无效`);return s}async function _(t,n){if(e()){r(t,n);return}await o.delete(`/competitions/${t}/tracks/${n}`)}export{l as a,f as c,u as i,g as l,h as n,m as o,_ as r,p as s,d as t};