parent
14dd5e7509
commit
518d22878d
@ -0,0 +1,16 @@
|
||||
<?php
|
||||
|
||||
namespace App\Support;
|
||||
|
||||
use Carbon\CarbonInterface;
|
||||
|
||||
/** 业务展示时间统一按北京时间输出。 */
|
||||
final class BizDateTime
|
||||
{
|
||||
public const TIMEZONE = 'Asia/Shanghai';
|
||||
|
||||
public static function toIso8601(?CarbonInterface $dt): ?string
|
||||
{
|
||||
return $dt?->copy()->timezone(self::TIMEZONE)->toIso8601String();
|
||||
}
|
||||
}
|
||||
@ -0,0 +1 @@
|
||||
.dashboard[data-v-d3c6b461]{max-width:1360px;margin:0 auto}.dashboard-head[data-v-d3c6b461]{border-bottom:1px solid var(--el-border-color-lighter);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding-bottom:16px;display:flex}.eyebrow[data-v-d3c6b461]{color:var(--el-text-color-secondary);margin-bottom:6px;font-size:12px}.dashboard-head h1[data-v-d3c6b461]{margin:0;font-size:24px;font-weight:650}.meta-line[data-v-d3c6b461],.time-line[data-v-d3c6b461]{color:var(--el-text-color-regular);flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;font-size:13px;display:flex}.time-line[data-v-d3c6b461]{color:var(--el-text-color-secondary)}.head-actions[data-v-d3c6b461]{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.metric-grid[data-v-d3c6b461]{grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin-bottom:16px;display:grid}.metric-card[data-v-d3c6b461],.panel[data-v-d3c6b461]{background:var(--el-bg-color);border:1px solid var(--el-border-color-lighter);border-radius:6px}.metric-card[data-v-d3c6b461]{padding:14px 16px}.metric-label[data-v-d3c6b461]{color:var(--el-text-color-secondary);font-size:13px}.metric-value[data-v-d3c6b461]{color:var(--el-text-color-primary);margin-top:8px;font-size:28px;font-weight:700;line-height:1}.metric-hint[data-v-d3c6b461]{color:var(--el-text-color-secondary);margin-top:8px;font-size:12px}.main-grid[data-v-d3c6b461]{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:16px;margin-bottom:16px;display:grid}.main-grid--wide[data-v-d3c6b461]{grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr)}.panel[data-v-d3c6b461]{min-width:0;padding:16px}.panel-head[data-v-d3c6b461]{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.panel-head h2[data-v-d3c6b461]{margin:0;font-size:16px;font-weight:650}.panel-subtitle[data-v-d3c6b461]{color:var(--el-text-color-secondary);font-size:12px}.setup-list[data-v-d3c6b461]{gap:10px;display:grid}.setup-row[data-v-d3c6b461]{border-bottom:1px solid var(--el-border-color-extra-light);grid-template-columns:58px minmax(0,1fr) 48px;align-items:center;gap:10px;padding:8px 0;display:grid}.setup-row[data-v-d3c6b461]:last-child{border-bottom:0}.setup-copy[data-v-d3c6b461]{flex-direction:column;gap:3px;min-width:0;display:flex}.setup-copy strong[data-v-d3c6b461]{color:var(--el-text-color-primary);font-size:14px}.setup-copy span[data-v-d3c6b461]{color:var(--el-text-color-secondary);font-size:12px}.progress-kpis[data-v-d3c6b461]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.progress-kpis div[data-v-d3c6b461]{background:var(--el-fill-color-lighter);border-radius:6px;padding:10px 12px}.progress-kpis strong[data-v-d3c6b461]{font-size:22px;line-height:1.1;display:block}.progress-kpis span[data-v-d3c6b461]{color:var(--el-text-color-secondary);margin-top:5px;font-size:12px;display:block}.shortcut-list[data-v-d3c6b461]{gap:10px;display:grid}.shortcut[data-v-d3c6b461]{text-align:left;width:100%;color:inherit;background:var(--el-fill-color-lighter);border:1px solid #0000;border-radius:6px;flex-direction:column;gap:4px;padding:11px 12px;text-decoration:none;display:flex}.shortcut[data-v-d3c6b461]:hover{border-color:var(--el-color-danger-light-5);background:var(--el-color-danger-light-9)}.shortcut strong[data-v-d3c6b461]{font-size:14px}.shortcut span[data-v-d3c6b461]{text-overflow:ellipsis;white-space:nowrap;color:var(--el-text-color-secondary);font-size:12px;overflow:hidden}.shortcut-button[data-v-d3c6b461]{font:inherit;cursor:pointer}.muted[data-v-d3c6b461]{color:var(--el-text-color-secondary)}@media (width<=1200px){.metric-grid[data-v-d3c6b461]{grid-template-columns:repeat(3,minmax(140px,1fr))}.main-grid[data-v-d3c6b461],.main-grid--wide[data-v-d3c6b461]{grid-template-columns:1fr}}@media (width<=720px){.dashboard-head[data-v-d3c6b461]{flex-direction:column}.head-actions[data-v-d3c6b461]{justify-content:flex-start}.metric-grid[data-v-d3c6b461]{grid-template-columns:repeat(2,minmax(0,1fr))}}
|
||||
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
.dashboard[data-v-6ef28451]{max-width:1360px;margin:0 auto}.dashboard-head[data-v-6ef28451]{border-bottom:1px solid var(--el-border-color-lighter);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding-bottom:16px;display:flex}.eyebrow[data-v-6ef28451]{color:var(--el-text-color-secondary);margin-bottom:6px;font-size:12px}.dashboard-head h1[data-v-6ef28451]{margin:0;font-size:24px;font-weight:650}.meta-line[data-v-6ef28451],.time-line[data-v-6ef28451]{color:var(--el-text-color-regular);flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;font-size:13px;display:flex}.time-line[data-v-6ef28451]{color:var(--el-text-color-secondary)}.head-actions[data-v-6ef28451]{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.metric-grid[data-v-6ef28451]{grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin-bottom:16px;display:grid}.metric-card[data-v-6ef28451],.panel[data-v-6ef28451]{background:var(--el-bg-color);border:1px solid var(--el-border-color-lighter);border-radius:6px}.metric-card[data-v-6ef28451]{padding:14px 16px}.metric-label[data-v-6ef28451]{color:var(--el-text-color-secondary);font-size:13px}.metric-value[data-v-6ef28451]{color:var(--el-text-color-primary);margin-top:8px;font-size:28px;font-weight:700;line-height:1}.metric-hint[data-v-6ef28451]{color:var(--el-text-color-secondary);margin-top:8px;font-size:12px}.main-grid[data-v-6ef28451]{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:16px;margin-bottom:16px;display:grid}.main-grid--wide[data-v-6ef28451]{grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr)}.panel[data-v-6ef28451]{min-width:0;padding:16px}.panel-head[data-v-6ef28451]{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.panel-head h2[data-v-6ef28451]{margin:0;font-size:16px;font-weight:650}.panel-subtitle[data-v-6ef28451]{color:var(--el-text-color-secondary);font-size:12px}.setup-list[data-v-6ef28451]{gap:10px;display:grid}.setup-row[data-v-6ef28451]{border-bottom:1px solid var(--el-border-color-extra-light);grid-template-columns:58px minmax(0,1fr) 48px;align-items:center;gap:10px;padding:8px 0;display:grid}.setup-row[data-v-6ef28451]:last-child{border-bottom:0}.setup-copy[data-v-6ef28451]{flex-direction:column;gap:3px;min-width:0;display:flex}.setup-copy strong[data-v-6ef28451]{color:var(--el-text-color-primary);font-size:14px}.setup-copy span[data-v-6ef28451]{color:var(--el-text-color-secondary);font-size:12px}.progress-kpis[data-v-6ef28451]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.progress-kpis div[data-v-6ef28451]{background:var(--el-fill-color-lighter);border-radius:6px;padding:10px 12px}.progress-kpis strong[data-v-6ef28451]{font-size:22px;line-height:1.1;display:block}.progress-kpis span[data-v-6ef28451]{color:var(--el-text-color-secondary);margin-top:5px;font-size:12px;display:block}.shortcut-list[data-v-6ef28451]{gap:10px;display:grid}.shortcut[data-v-6ef28451]{text-align:left;width:100%;color:inherit;background:var(--el-fill-color-lighter);border:1px solid #0000;border-radius:6px;flex-direction:column;gap:4px;padding:11px 12px;text-decoration:none;display:flex}.shortcut[data-v-6ef28451]:hover{border-color:var(--el-color-danger-light-5);background:var(--el-color-danger-light-9)}.shortcut strong[data-v-6ef28451]{font-size:14px}.shortcut span[data-v-6ef28451]{text-overflow:ellipsis;white-space:nowrap;color:var(--el-text-color-secondary);font-size:12px;overflow:hidden}.shortcut-button[data-v-6ef28451]{font:inherit;cursor:pointer}.muted[data-v-6ef28451]{color:var(--el-text-color-secondary)}@media (width<=1200px){.metric-grid[data-v-6ef28451]{grid-template-columns:repeat(3,minmax(140px,1fr))}.main-grid[data-v-6ef28451],.main-grid--wide[data-v-6ef28451]{grid-template-columns:1fr}}@media (width<=720px){.dashboard-head[data-v-6ef28451]{flex-direction:column}.head-actions[data-v-6ef28451]{justify-content:flex-start}.metric-grid[data-v-6ef28451]{grid-template-columns:repeat(2,minmax(0,1fr))}}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{D as e,O as t,Z as n,_t as r,in as i,k as a,m as o,q as s,st as c,w as l,x as u}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{h as d}from"./api-Cy3G2Clw.js";import{l as f,n as p,o as m,s as h}from"./index-BbIGzdOc.js";import{t as g}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{t as _}from"./auth-CtSGQcWZ.js";var v={class:`login-wrap`},y=g(a({__name:`AdminLoginView`,setup(a){let g=m(),y=h(),b=p(),x=r(``),S=r(``),C=r(!1);function w(e){return e instanceof Error&&e.message.trim()?e.message:typeof e==`string`&&e.trim()?e:`登录失败`}function T(){let e=d(typeof g.query.redirect==`string`?g.query.redirect:``);return e&&e.startsWith(`/admin`)&&!e.includes(`/login`)?{path:e,replace:!0}:{name:`admin-dashboard`,replace:!0}}async function E(){if(!x.value.trim()||!S.value.trim()){f.warning(`请输入账号和密码`);return}C.value=!0;try{let e=await _({username:x.value.trim(),password:S.value.trim()}),t=e.user&&typeof e.user.id==`number`?{id:e.user.id,username:e.user.username,name:e.user.name}:null;b.setSession(e.token,t),await y.replace(T()),f.success(`登录成功`)}catch(e){f.error(w(e))}finally{C.value=!1}}return(r,a)=>{let d=n(`el-input`),f=n(`el-form-item`),p=n(`el-button`),m=n(`el-form`),h=n(`el-card`);return s(),l(`div`,v,[t(h,{class:`login-card`,shadow:`hover`},{header:c(()=>[...a[2]||=[u(`div`,{class:`card-title`},`管理员登录`,-1)]]),default:c(()=>[t(m,{"label-position":`top`,onSubmit:o(E,[`prevent`])},{default:c(()=>[t(f,{label:`账号`},{default:c(()=>[t(d,{modelValue:x.value,"onUpdate:modelValue":a[0]||=e=>x.value=e,modelModifiers:{trim:!0},autocomplete:`username`,clearable:``},null,8,[`modelValue`])]),_:1}),t(f,{label:`密码`},{default:c(()=>[t(d,{modelValue:S.value,"onUpdate:modelValue":a[1]||=e=>S.value=e,type:`password`,autocomplete:`current-password`,"show-password":``},null,8,[`modelValue`])]),_:1}),t(p,{type:`danger`,class:`w-100`,"native-type":`submit`,loading:C.value},{default:c(()=>[e(i(C.value?`登录中…`:`登录`),1)]),_:1},8,[`loading`])]),_:1})]),_:1})])}}}),[[`__scopeId`,`data-v-d5661a24`]]);export{y as default};
|
||||
import{D as e,O as t,Z as n,_t as r,in as i,k as a,m as o,q as s,st as c,w as l,x as u}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{h as d}from"./api-Cy3G2Clw.js";import{l as f,n as p,o as m,s as h}from"./index-d3VbvmId.js";import{t as g}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{t as _}from"./auth-BhSpLXl9.js";var v={class:`login-wrap`},y=g(a({__name:`AdminLoginView`,setup(a){let g=m(),y=h(),b=p(),x=r(``),S=r(``),C=r(!1);function w(e){return e instanceof Error&&e.message.trim()?e.message:typeof e==`string`&&e.trim()?e:`登录失败`}function T(){let e=d(typeof g.query.redirect==`string`?g.query.redirect:``);return e&&e.startsWith(`/admin`)&&!e.includes(`/login`)?{path:e,replace:!0}:{name:`admin-dashboard`,replace:!0}}async function E(){if(!x.value.trim()||!S.value.trim()){f.warning(`请输入账号和密码`);return}C.value=!0;try{let e=await _({username:x.value.trim(),password:S.value.trim()}),t=e.user&&typeof e.user.id==`number`?{id:e.user.id,username:e.user.username,name:e.user.name}:null;b.setSession(e.token,t),await y.replace(T()),f.success(`登录成功`)}catch(e){f.error(w(e))}finally{C.value=!1}}return(r,a)=>{let d=n(`el-input`),f=n(`el-form-item`),p=n(`el-button`),m=n(`el-form`),h=n(`el-card`);return s(),l(`div`,v,[t(h,{class:`login-card`,shadow:`hover`},{header:c(()=>[...a[2]||=[u(`div`,{class:`card-title`},`管理员登录`,-1)]]),default:c(()=>[t(m,{"label-position":`top`,onSubmit:o(E,[`prevent`])},{default:c(()=>[t(f,{label:`账号`},{default:c(()=>[t(d,{modelValue:x.value,"onUpdate:modelValue":a[0]||=e=>x.value=e,modelModifiers:{trim:!0},autocomplete:`username`,clearable:``},null,8,[`modelValue`])]),_:1}),t(f,{label:`密码`},{default:c(()=>[t(d,{modelValue:S.value,"onUpdate:modelValue":a[1]||=e=>S.value=e,type:`password`,autocomplete:`current-password`,"show-password":``},null,8,[`modelValue`])]),_:1}),t(p,{type:`danger`,class:`w-100`,"native-type":`submit`,loading:C.value},{default:c(()=>[e(i(C.value?`登录中…`:`登录`),1)]),_:1},8,[`loading`])]),_:1})]),_:1})])}}}),[[`__scopeId`,`data-v-d5661a24`]]);export{y as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
import{C as e,D as t,Et as n,O as r,Q as i,S as a,W as o,Z as s,_t as c,ct as l,in as u,k as d,q as f,st as p,w as m,x as h}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{l as g}from"./index-BbIGzdOc.js";import{t as _}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{a as v}from"./competitions-DN2rMuk5.js";import{t as y}from"./adminCompetition-B0UZwShI.js";import{t as b}from"./competitionAdminLabels-D6x-u-ir.js";var x={class:`page-header`},S={key:0,class:`pager`},C={class:`total`},w=_(d({__name:`CompetitionListView`,setup(d){let _=c([]),w=y(),T=c(!1),E=c(1),D=c(1),O=c(0),k=c(15);async function A(){T.value=!0;try{let e=await v({page:E.value,per_page:k.value});_.value=e.data,D.value=e.meta.last_page,O.value=e.meta.total,k.value=e.meta.per_page}catch(e){_.value=[],g.error(e instanceof Error?e.message:`加载失败`)}finally{T.value=!1}}function j(e){e<1||e>D.value||(E.value=e,A())}function M(e){if(!e)return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}return o(()=>{A()}),(o,c)=>{let d=s(`el-button`),g=s(`RouterLink`),v=s(`el-table-column`),y=s(`el-tag`),A=s(`el-table`),N=s(`el-pagination`),P=s(`el-card`),F=i(`loading`);return f(),m(`div`,null,[h(`div`,x,[c[1]||=h(`h2`,{class:`page-title`},`赛事列表`,-1),r(g,{to:{name:`admin-competition-new`}},{default:p(()=>[r(d,{type:`danger`},{default:p(()=>[...c[0]||=[t(`新建赛事`,-1)]]),_:1})]),_:1})]),r(P,{shadow:`never`},{default:p(()=>[l((f(),a(A,{data:_.value,stripe:``,style:{width:`100%`}},{empty:p(()=>[...c[3]||=[h(`span`,{class:`text-muted`},`暂无数据`,-1)]]),default:p(()=>[r(v,{prop:`name`,label:`名称`,"min-width":`140`,"show-overflow-tooltip":``}),r(v,{prop:`slug`,label:`访问地址`,"min-width":`120`,"show-overflow-tooltip":``}),r(v,{label:`状态`,width:`120`},{default:p(({row:e})=>[t(u(n(b)(e.status)),1)]),_:1}),r(v,{label:`对外可见`,width:`100`},{default:p(({row:e})=>[r(y,{type:e.published?`success`:`info`,size:`small`},{default:p(()=>[t(u(e.published?`是`:`否`),1)]),_:2},1032,[`type`])]),_:1}),r(v,{label:`报名开始`,"min-width":`160`},{default:p(({row:e})=>[t(u(M(e.signup_open_at??null)),1)]),_:1}),r(v,{label:`报名截止`,"min-width":`160`},{default:p(({row:e})=>[t(u(M(e.signup_close_at??null)),1)]),_:1}),r(v,{label:`操作`,width:`140`,fixed:`right`},{default:p(({row:e})=>[r(g,{to:{name:`admin-competition-workspace`},onClick:t=>n(w).selectCompetition(e.id)},{default:p(()=>[r(d,{type:`danger`,link:``},{default:p(()=>[...c[2]||=[t(`进入赛事中心`,-1)]]),_:1})]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[F,T.value]]),D.value>1?(f(),m(`div`,S,[h(`span`,C,`共 `+u(O.value)+` 条`,1),r(N,{background:``,layout:`prev, pager, next`,"current-page":E.value,"page-size":k.value,total:O.value,onCurrentChange:j},null,8,[`current-page`,`page-size`,`total`])])):e(``,!0)]),_:1})])}}}),[[`__scopeId`,`data-v-bee3a1d5`]]);export{w as default};
|
||||
@ -1 +0,0 @@
|
||||
.page-header[data-v-bee3a1d5]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.page-title[data-v-bee3a1d5]{margin:0;font-size:20px;font-weight:600}.pager[data-v-bee3a1d5]{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;margin-top:16px;display:flex}.total[data-v-bee3a1d5]{color:var(--el-text-color-secondary);font-size:13px}.text-muted[data-v-bee3a1d5]{color:var(--el-text-color-secondary)}
|
||||
@ -0,0 +1 @@
|
||||
import{C as e,D as t,Et as n,O as r,Q as i,S as a,W as o,Z as s,_t as c,ct as l,in as u,k as d,q as f,st as p,w as m,x as h}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{l as g}from"./index-d3VbvmId.js";import{t as _}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{a as v}from"./competitions-C6ZJf6Is.js";import{t as y}from"./adminCompetition-CbEFMzrK.js";import{t as b}from"./competitionAdminLabels-D6x-u-ir.js";import{t as x}from"./datetimeShanghai-BsPyukpr.js";var S={class:`page-header`},C={key:0,class:`pager`},w={class:`total`},T=_(d({__name:`CompetitionListView`,setup(d){let _=c([]),T=y(),E=c(!1),D=c(1),O=c(1),k=c(0),A=c(15);async function j(){E.value=!0;try{let e=await v({page:D.value,per_page:A.value});_.value=e.data,O.value=e.meta.last_page,k.value=e.meta.total,A.value=e.meta.per_page}catch(e){_.value=[],g.error(e instanceof Error?e.message:`加载失败`)}finally{E.value=!1}}function M(e){e<1||e>O.value||(D.value=e,j())}function N(e){return x(e)}return o(()=>{j()}),(o,c)=>{let d=s(`el-button`),g=s(`RouterLink`),v=s(`el-table-column`),y=s(`el-tag`),x=s(`el-table`),j=s(`el-pagination`),P=s(`el-card`),F=i(`loading`);return f(),m(`div`,null,[h(`div`,S,[c[1]||=h(`h2`,{class:`page-title`},`赛事列表`,-1),r(g,{to:{name:`admin-competition-new`}},{default:p(()=>[r(d,{type:`danger`},{default:p(()=>[...c[0]||=[t(`新建赛事`,-1)]]),_:1})]),_:1})]),r(P,{shadow:`never`},{default:p(()=>[l((f(),a(x,{data:_.value,stripe:``,style:{width:`100%`}},{empty:p(()=>[...c[3]||=[h(`span`,{class:`text-muted`},`暂无数据`,-1)]]),default:p(()=>[r(v,{prop:`name`,label:`名称`,"min-width":`140`,"show-overflow-tooltip":``}),r(v,{prop:`slug`,label:`访问地址`,"min-width":`120`,"show-overflow-tooltip":``}),r(v,{label:`状态`,width:`120`},{default:p(({row:e})=>[t(u(n(b)(e.status)),1)]),_:1}),r(v,{label:`对外可见`,width:`100`},{default:p(({row:e})=>[r(y,{type:e.published?`success`:`info`,size:`small`},{default:p(()=>[t(u(e.published?`是`:`否`),1)]),_:2},1032,[`type`])]),_:1}),r(v,{label:`报名开始`,"min-width":`160`},{default:p(({row:e})=>[t(u(N(e.signup_open_at??null)),1)]),_:1}),r(v,{label:`报名截止`,"min-width":`160`},{default:p(({row:e})=>[t(u(N(e.signup_close_at??null)),1)]),_:1}),r(v,{label:`操作`,width:`140`,fixed:`right`},{default:p(({row:e})=>[r(g,{to:{name:`admin-competition-workspace`},onClick:t=>n(T).selectCompetition(e.id)},{default:p(()=>[r(d,{type:`danger`,link:``},{default:p(()=>[...c[2]||=[t(`进入赛事中心`,-1)]]),_:1})]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[F,E.value]]),O.value>1?(f(),m(`div`,C,[h(`span`,w,`共 `+u(k.value)+` 条`,1),r(j,{background:``,layout:`prev, pager, next`,"current-page":D.value,"page-size":A.value,total:k.value,onCurrentChange:M},null,8,[`current-page`,`page-size`,`total`])])):e(``,!0)]),_:1})])}}}),[[`__scopeId`,`data-v-0694ed3e`]]);export{T as default};
|
||||
@ -0,0 +1 @@
|
||||
.page-header[data-v-0694ed3e]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.page-title[data-v-0694ed3e]{margin:0;font-size:20px;font-weight:600}.pager[data-v-0694ed3e]{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;margin-top:16px;display:flex}.total[data-v-0694ed3e]{color:var(--el-text-color-secondary);font-size:13px}.text-muted[data-v-0694ed3e]{color:var(--el-text-color-secondary)}
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{D as e,G as t,O as n,W as r,Z as i,_t as a,at as o,b as s,in as c,k as l,m as u,q as d,st as f,w as p,x as m}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{p as h,u as g}from"./api-Cy3G2Clw.js";import{o as _,s as v}from"./index-BbIGzdOc.js";import{t as y}from"./_plugin-vue_export-helper-CXTkFu_Z.js";/* empty css *//* empty css */import{a as b,i as x,r as S,t as C}from"./competitionBranding-DKFkcrfF.js";var w={class:`participant-layout`},T={class:`navbar navbar-expand-lg layout-header`},E={class:`container-fluid px-3 px-lg-4`},D={class:`navbar-brand mb-0 prototype-title`},O={class:`dropdown`},k={class:`header-user dropdown-toggle`,type:`button`,"data-bs-toggle":`dropdown`,"aria-expanded":`false`},A={class:`header-user-name`},j={class:`dropdown-menu dropdown-menu-end header-user-menu`},M={class:`container-fluid px-3 px-lg-4 py-3 layout-main`},N={class:`row layout-main-row g-3`},P={class:`col-12 col-md-2 col-lg-2 layout-sider`},F={class:`card h-100`},I={class:`card-body`},L={class:`nav flex-column gap-2`},R={class:`col-12 col-md-10 col-lg-10 participant-main-col`},z={id:`layoutFooter`,class:`border-top bg-white text-center py-2 small text-secondary prototype-subtitle`},B=`#052d62`,V=y(l({__name:`MainLayout`,setup(l){let y=v(),V=_(),H=s(()=>String(V.params.slug??``).trim()),U=a(S()),W=a(``),G=s(()=>b(U.value,W.value)),K=s(()=>{if(x(U.value.login.footerCopyright))return U.value.login.footerCopyright;let e=W.value.trim();return e?`版权所有:${e}`:`版权所有`});async function q(){let e=H.value;if(!e){U.value=S(),W.value=``;return}try{let t=await fetch(`${h()}/api/v1/public/competitions/by-slug/${encodeURIComponent(e)}`,{headers:{Accept:`application/json`}});if(!t.ok){U.value=S(),W.value=``;return}let n=await t.json(),r=n.data!=null&&typeof n.data==`object`&&!Array.isArray(n.data)?n.data:n;W.value=String(r.name??``),U.value=C(r.branding_json??null)}catch{U.value=S(),W.value=``}}o(H,()=>{q()},{immediate:!0});function J(e){let t=e.trim().replace(`#`,``);return/^[0-9a-f]{6}$/i.test(t)?`${parseInt(t.slice(0,2),16)}, ${parseInt(t.slice(2,4),16)}, ${parseInt(t.slice(4,6),16)}`:null}function Y(){if(typeof document>`u`)return;let e=U.value.login.themePrimary?.trim()??``,t=x(e)?/^(?:#|rgb|hsl)/i.test(e)?e:`#${e.replace(/^#/,``)}`:B;if(document.body.style.setProperty(`--primary`,t),document.body.style.setProperty(`--bs-primary`,t),t.startsWith(`#`)){document.body.style.setProperty(`--primary-soft`,`${t}14`);let e=J(t);e&&document.body.style.setProperty(`--bs-primary-rgb`,e)}else document.body.style.removeProperty(`--primary-soft`),document.body.style.removeProperty(`--bs-primary-rgb`)}o(U,()=>Y(),{deep:!0,immediate:!0});let X=a(``),Z=s(()=>X.value||`用户`);async function Q(){let e=localStorage.getItem(g),t=h();if(e)try{let n=await fetch(`${t}/api/me`,{headers:{Authorization:`Bearer ${e}`,Accept:`application/json`}});if(!n.ok)return;let r=await n.json();X.value=r.name||r.mobile||``}catch{}}function $(){localStorage.removeItem(g),localStorage.removeItem(`cxxfds_user`);let e=H.value;e?y.push({name:`participant-login`,params:{slug:e}}):y.push(`/c`)}return r(()=>{document.body.classList.add(`prototype-page`,`user-mobile-no-menu`),Q()}),t(()=>{document.body.classList.remove(`prototype-page`,`user-mobile-no-menu`),document.body.style.removeProperty(`--primary`),document.body.style.removeProperty(`--primary-soft`),document.body.style.removeProperty(`--bs-primary`),document.body.style.removeProperty(`--bs-primary-rgb`)}),(t,r)=>{let a=i(`router-link`),o=i(`router-view`);return d(),p(`div`,w,[m(`header`,T,[m(`div`,E,[m(`span`,D,c(G.value),1),m(`div`,O,[m(`button`,k,[r[0]||=m(`svg`,{width:`22`,height:`22`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},[m(`circle`,{cx:`12`,cy:`12`,r:`9.5`,stroke:`currentColor`,"stroke-width":`2`}),m(`circle`,{cx:`12`,cy:`9`,r:`3.2`,fill:`currentColor`}),m(`path`,{d:`M6.8 18.2c1.1-2.4 3-3.6 5.2-3.6s4.1 1.2 5.2 3.6`,fill:`currentColor`})],-1),m(`span`,A,c(Z.value),1)]),m(`ul`,j,[m(`li`,null,[m(`a`,{class:`dropdown-item text-danger`,href:`javascript:void(0)`,onClick:u($,[`prevent`])},[...r[1]||=[m(`span`,{class:`menu-icon`},`↪`,-1),e(`退出登录 `,-1)]])])])])])]),m(`div`,M,[m(`div`,N,[m(`aside`,P,[m(`div`,F,[m(`div`,I,[m(`nav`,L,[n(a,{class:`nav-link text-start`,"active-class":`active`,to:{name:`participant-apply`,params:{slug:H.value}}},{default:f(()=>[...r[2]||=[e(` 赛事报名 `,-1)]]),_:1},8,[`to`])])])])]),m(`main`,R,[n(o)])])]),m(`footer`,z,c(K.value),1)])}}}),[[`__scopeId`,`data-v-87706cd0`]]);export{V as default};
|
||||
import{D as e,G as t,O as n,W as r,Z as i,_t as a,at as o,b as s,in as c,k as l,m as u,q as d,st as f,w as p,x as m}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{p as h,u as g}from"./api-Cy3G2Clw.js";import{o as _,s as v}from"./index-d3VbvmId.js";import{t as y}from"./_plugin-vue_export-helper-CXTkFu_Z.js";/* empty css *//* empty css */import{a as b,i as x,r as S,t as C}from"./competitionBranding-DKFkcrfF.js";var w={class:`participant-layout`},T={class:`navbar navbar-expand-lg layout-header`},E={class:`container-fluid px-3 px-lg-4`},D={class:`navbar-brand mb-0 prototype-title`},O={class:`dropdown`},k={class:`header-user dropdown-toggle`,type:`button`,"data-bs-toggle":`dropdown`,"aria-expanded":`false`},A={class:`header-user-name`},j={class:`dropdown-menu dropdown-menu-end header-user-menu`},M={class:`container-fluid px-3 px-lg-4 py-3 layout-main`},N={class:`row layout-main-row g-3`},P={class:`col-12 col-md-2 col-lg-2 layout-sider`},F={class:`card h-100`},I={class:`card-body`},L={class:`nav flex-column gap-2`},R={class:`col-12 col-md-10 col-lg-10 participant-main-col`},z={id:`layoutFooter`,class:`border-top bg-white text-center py-2 small text-secondary prototype-subtitle`},B=`#052d62`,V=y(l({__name:`MainLayout`,setup(l){let y=v(),V=_(),H=s(()=>String(V.params.slug??``).trim()),U=a(S()),W=a(``),G=s(()=>b(U.value,W.value)),K=s(()=>{if(x(U.value.login.footerCopyright))return U.value.login.footerCopyright;let e=W.value.trim();return e?`版权所有:${e}`:`版权所有`});async function q(){let e=H.value;if(!e){U.value=S(),W.value=``;return}try{let t=await fetch(`${h()}/api/v1/public/competitions/by-slug/${encodeURIComponent(e)}`,{headers:{Accept:`application/json`}});if(!t.ok){U.value=S(),W.value=``;return}let n=await t.json(),r=n.data!=null&&typeof n.data==`object`&&!Array.isArray(n.data)?n.data:n;W.value=String(r.name??``),U.value=C(r.branding_json??null)}catch{U.value=S(),W.value=``}}o(H,()=>{q()},{immediate:!0});function J(e){let t=e.trim().replace(`#`,``);return/^[0-9a-f]{6}$/i.test(t)?`${parseInt(t.slice(0,2),16)}, ${parseInt(t.slice(2,4),16)}, ${parseInt(t.slice(4,6),16)}`:null}function Y(){if(typeof document>`u`)return;let e=U.value.login.themePrimary?.trim()??``,t=x(e)?/^(?:#|rgb|hsl)/i.test(e)?e:`#${e.replace(/^#/,``)}`:B;if(document.body.style.setProperty(`--primary`,t),document.body.style.setProperty(`--bs-primary`,t),t.startsWith(`#`)){document.body.style.setProperty(`--primary-soft`,`${t}14`);let e=J(t);e&&document.body.style.setProperty(`--bs-primary-rgb`,e)}else document.body.style.removeProperty(`--primary-soft`),document.body.style.removeProperty(`--bs-primary-rgb`)}o(U,()=>Y(),{deep:!0,immediate:!0});let X=a(``),Z=s(()=>X.value||`用户`);async function Q(){let e=localStorage.getItem(g),t=h();if(e)try{let n=await fetch(`${t}/api/me`,{headers:{Authorization:`Bearer ${e}`,Accept:`application/json`}});if(!n.ok)return;let r=await n.json();X.value=r.name||r.mobile||``}catch{}}function $(){localStorage.removeItem(g),localStorage.removeItem(`cxxfds_user`);let e=H.value;e?y.push({name:`participant-login`,params:{slug:e}}):y.push(`/c`)}return r(()=>{document.body.classList.add(`prototype-page`,`user-mobile-no-menu`),Q()}),t(()=>{document.body.classList.remove(`prototype-page`,`user-mobile-no-menu`),document.body.style.removeProperty(`--primary`),document.body.style.removeProperty(`--primary-soft`),document.body.style.removeProperty(`--bs-primary`),document.body.style.removeProperty(`--bs-primary-rgb`)}),(t,r)=>{let a=i(`router-link`),o=i(`router-view`);return d(),p(`div`,w,[m(`header`,T,[m(`div`,E,[m(`span`,D,c(G.value),1),m(`div`,O,[m(`button`,k,[r[0]||=m(`svg`,{width:`22`,height:`22`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},[m(`circle`,{cx:`12`,cy:`12`,r:`9.5`,stroke:`currentColor`,"stroke-width":`2`}),m(`circle`,{cx:`12`,cy:`9`,r:`3.2`,fill:`currentColor`}),m(`path`,{d:`M6.8 18.2c1.1-2.4 3-3.6 5.2-3.6s4.1 1.2 5.2 3.6`,fill:`currentColor`})],-1),m(`span`,A,c(Z.value),1)]),m(`ul`,j,[m(`li`,null,[m(`a`,{class:`dropdown-item text-danger`,href:`javascript:void(0)`,onClick:u($,[`prevent`])},[...r[1]||=[m(`span`,{class:`menu-icon`},`↪`,-1),e(`退出登录 `,-1)]])])])])])]),m(`div`,M,[m(`div`,N,[m(`aside`,P,[m(`div`,F,[m(`div`,I,[m(`nav`,L,[n(a,{class:`nav-link text-start`,"active-class":`active`,to:{name:`participant-apply`,params:{slug:H.value}}},{default:f(()=>[...r[2]||=[e(` 赛事报名 `,-1)]]),_:1},8,[`to`])])])])]),m(`main`,R,[n(o)])])]),m(`footer`,z,c(K.value),1)])}}}),[[`__scopeId`,`data-v-87706cd0`]]);export{V as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{O as e,k as t,q as n,w as r}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{t as i}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{t as a}from"./ReviewerManageView-BGcEJSlg.js";var o={class:`manage-reviewers-wrap`},s=i(t({__name:`ManageReviewersView`,setup(t){return(t,i)=>(n(),r(`div`,o,[e(a)]))}}),[[`__scopeId`,`data-v-d6e992f3`]]);export{s as default};
|
||||
import{O as e,k as t,q as n,w as r}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{t as i}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{t as a}from"./ReviewerManageView-DG1AnimG.js";var o={class:`manage-reviewers-wrap`},s=i(t({__name:`ManageReviewersView`,setup(t){return(t,i)=>(n(),r(`div`,o,[e(a)]))}}),[[`__scopeId`,`data-v-d6e992f3`]]);export{s as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_t as e,b as t}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{t as n}from"./api-Cy3G2Clw.js";import{g as r}from"./index-BbIGzdOc.js";function i(){let e=localStorage.getItem(n);if(!e)return null;let t=Number(e);return Number.isFinite(t)&&t>0?t:null}var a=r(`adminCompetitionContext`,()=>{let r=e([]),a=e(i()),o=t(()=>r.value.find(e=>e.id===a.value)??null);function s(e){r.value=e,a.value&&!e.some(e=>e.id===a.value)&&(a.value=e[0]?.id??null,l()),!a.value&&e[0]&&(a.value=e[0].id,l())}function c(e){a.value=e,l()}function l(){let e=a.value;e?localStorage.setItem(n,String(e)):localStorage.removeItem(n)}return{competitions:r,selectedCompetitionId:a,selectedCompetition:o,setCompetitionList:s,selectCompetition:c}});export{a as t};
|
||||
import{_t as e,b as t}from"./vue.runtime.esm-bundler-OsdSFvn7.js";import{t as n}from"./api-Cy3G2Clw.js";import{g as r}from"./index-d3VbvmId.js";function i(){let e=localStorage.getItem(n);if(!e)return null;let t=Number(e);return Number.isFinite(t)&&t>0?t:null}var a=r(`adminCompetitionContext`,()=>{let r=e([]),a=e(i()),o=t(()=>r.value.find(e=>e.id===a.value)??null);function s(e){r.value=e,a.value&&!e.some(e=>e.id===a.value)&&(a.value=e[0]?.id??null,l()),!a.value&&e[0]&&(a.value=e[0].id,l())}function c(e){a.value=e,l()}function l(){let e=a.value;e?localStorage.setItem(n,String(e)):localStorage.removeItem(n)}return{competitions:r,selectedCompetitionId:a,selectedCompetition:o,setCompetitionList:s,selectCompetition:c}});export{a as t};
|
||||
@ -1 +1 @@
|
||||
import{a as e,i as t}from"./index-BbIGzdOc.js";function n(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}}}throw Error(`列表响应格式无效`)}async function r(e,r){let{data:i}=await t.get(`/competitions/${e}/applications`,{params:r});return n(i)}async function i(e,n){let{data:r}=await t.get(`/competitions/${e}/applications/${n}`);if(!r||typeof r!=`object`)throw Error(`报名详情无效`);return r}async function a(e,n,r,i){o((await t.get(`/competitions/${e}/applications/${n}/files/${r}/download`,{responseType:`blob`})).data,i||`附件`)}function o(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,document.body.appendChild(r),r.click(),r.remove(),URL.revokeObjectURL(n)}function s(e,t){if(!e)return t;let n=/filename\*=UTF-8''([^;]+)/i.exec(e);if(n?.[1])return decodeURIComponent(n[1]);let r=/filename="?([^";]+)"?/i.exec(e);return r?.[1]?r[1]:t}async function c(t){if(e.isAxiosError(t)){let e=t.response?.data;if(e instanceof Blob){let t=await e.text();try{let e=JSON.parse(t);return Error(e.errors?.export?.[0]||e.errors?.application_ids?.[0]||e.errors?.part?.[0]||e.message||`导出失败`)}catch{}}if(e&&typeof e==`object`){let t=e;return Error(t.errors?.export?.[0]||t.errors?.application_ids?.[0]||t.errors?.part?.[0]||t.message||`导出失败`)}}return t instanceof Error?t:Error(`导出失败`)}function l(e){return new Promise(t=>{window.setTimeout(t,e)})}function u(e){let{mode:t,application_ids:n,part:r,...i}=e,a={mode:t,...i};return n?.length&&(a.application_ids=n),r!=null&&(a.part=r),a}async function d(e,n){try{let{data:r}=await t.get(`/competitions/${e}/applications/export/meta`,{params:u(n)});if(!r||typeof r!=`object`)throw Error(`导出信息无效`);return r}catch(e){throw await c(e)}}async function f(e,n,r){let i;try{i=await t.get(`/competitions/${e}/applications/export`,{params:u({...n,part:r}),responseType:`blob`,timeout:0})}catch(e){throw await c(e)}let a=n.mode===`xlsx`?`报名信息.xlsx`:`报名信息导出_第${r}部分.zip`,l=s(i.headers[`content-disposition`],a);o(i.data,l)}async function p(e,t,n){let r=await d(e,t);if(t.mode===`xlsx`)return n?.(1,1),await f(e,t,1),r;for(let i=1;i<=r.part_count;i+=1)n?.(i,r.part_count),await f(e,t,i),i<r.part_count&&await l(500);return r}export{r as a,d as i,p as n,i as r,a as t};
|
||||
import{a as e,i as t}from"./index-d3VbvmId.js";function n(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}}}throw Error(`列表响应格式无效`)}async function r(e,r){let{data:i}=await t.get(`/competitions/${e}/applications`,{params:r});return n(i)}async function i(e,n){let{data:r}=await t.get(`/competitions/${e}/applications/${n}`);if(!r||typeof r!=`object`)throw Error(`报名详情无效`);return r}async function a(e,n,r,i){o((await t.get(`/competitions/${e}/applications/${n}/files/${r}/download`,{responseType:`blob`})).data,i||`附件`)}function o(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,document.body.appendChild(r),r.click(),r.remove(),URL.revokeObjectURL(n)}function s(e,t){if(!e)return t;let n=/filename\*=UTF-8''([^;]+)/i.exec(e);if(n?.[1])return decodeURIComponent(n[1]);let r=/filename="?([^";]+)"?/i.exec(e);return r?.[1]?r[1]:t}async function c(t){if(e.isAxiosError(t)){let e=t.response?.data;if(e instanceof Blob){let t=await e.text();try{let e=JSON.parse(t);return Error(e.errors?.export?.[0]||e.errors?.application_ids?.[0]||e.errors?.part?.[0]||e.message||`导出失败`)}catch{}}if(e&&typeof e==`object`){let t=e;return Error(t.errors?.export?.[0]||t.errors?.application_ids?.[0]||t.errors?.part?.[0]||t.message||`导出失败`)}}return t instanceof Error?t:Error(`导出失败`)}function l(e){return new Promise(t=>{window.setTimeout(t,e)})}function u(e){let{mode:t,application_ids:n,part:r,...i}=e,a={mode:t,...i};return n?.length&&(a.application_ids=n),r!=null&&(a.part=r),a}async function d(e,n){try{let{data:r}=await t.get(`/competitions/${e}/applications/export/meta`,{params:u(n)});if(!r||typeof r!=`object`)throw Error(`导出信息无效`);return r}catch(e){throw await c(e)}}async function f(e,n,r){let i;try{i=await t.get(`/competitions/${e}/applications/export`,{params:u({...n,part:r}),responseType:`blob`,timeout:0})}catch(e){throw await c(e)}let a=n.mode===`xlsx`?`报名信息.xlsx`:`报名信息导出_第${r}部分.zip`,l=s(i.headers[`content-disposition`],a);o(i.data,l)}async function p(e,t,n){let r=await d(e,t);if(t.mode===`xlsx`)return n?.(1,1),await f(e,t,1),r;for(let i=1;i<=r.part_count;i+=1)n?.(i,r.part_count),await f(e,t,i),i<r.part_count&&await l(500);return r}export{r as a,d as i,p as n,i as r,a as t};
|
||||
@ -1,3 +1,3 @@
|
||||
import{a as e,i as t}from"./index-BbIGzdOc.js";async function n(n){try{let{data:e}=await t.post(`/auth/login`,n);return r(e)}catch(t){if(e.isAxiosError(t)){let e=t.response?.data,n=e&&typeof e==`object`?e:{},r=(typeof n.message==`string`?n.message:``)||(n.errors&&typeof n.errors==`object`?Object.values(n.errors).flat().join(`
|
||||
import{a as e,i as t}from"./index-d3VbvmId.js";async function n(n){try{let{data:e}=await t.post(`/auth/login`,n);return r(e)}catch(t){if(e.isAxiosError(t)){let e=t.response?.data,n=e&&typeof e==`object`?e:{},r=(typeof n.message==`string`?n.message:``)||(n.errors&&typeof n.errors==`object`?Object.values(n.errors).flat().join(`
|
||||
`):``)||t.message;throw Error(r||`登录失败`)}throw t}}function r(e){if(e&&typeof e==`object`){let t=e,n=t.data,r=(typeof t.token==`string`?t.token:void 0)??(typeof t.access_token==`string`?t.access_token:void 0)??(n&&typeof n.token==`string`?n.token:void 0);if(typeof r==`string`)return{token:r,user:t.user??t.admin??n?.user}}throw Error(`登录响应无效`)}async function i(n){try{await t.patch(`/auth/password`,n)}catch(t){if(e.isAxiosError(t)){let e=t.response?.data,n=e&&typeof e==`object`?e:{},r=(typeof n.message==`string`?n.message:``)||(n.errors&&typeof n.errors==`object`?Object.values(n.errors).flat().join(`
|
||||
`):``)||t.message;throw Error(r||`修改密码失败`)}throw t}}export{i as n,n as t};
|
||||
@ -1 +1 @@
|
||||
import{i as e}from"./index-BbIGzdOc.js";function t(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 n(n){let{data:r}=await e.get(`/competitions`,{params:n});return t(r)}async function r(t){let{data:n}=await e.get(`/competitions/${t}`),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`赛事详情无效`);return r}async function i(t){let{data:n}=await e.post(`/competitions`,t),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function a(t,n){let{data:r}=await e.put(`/competitions/${t}`,n),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function o(t,n){let{data:r}=await e.patch(`/competitions/${t}`,n),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function s(t){let{data:n}=await e.get(`/competitions/${t}/tracks`),r=n?.data??n;if(!Array.isArray(r))throw Error(`赛道列表无效`);return r}async function c(t,n){let{data:r}=await e.post(`/competitions/${t}/tracks`,n),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`创建赛道无效`);return i}async function l(t,n,r){let{data:i}=await e.put(`/competitions/${t}/tracks/${n}`,r),a=i?.data??i;if(!a||typeof a!=`object`)throw Error(`更新赛道无效`);return a}async function u(t,n){await e.delete(`/competitions/${t}/tracks/${n}`)}export{n as a,a as c,r as i,l,c as n,s as o,u as r,o as s,i as t};
|
||||
import{i as e}from"./index-d3VbvmId.js";function t(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 n(n){let{data:r}=await e.get(`/competitions`,{params:n});return t(r)}async function r(t){let{data:n}=await e.get(`/competitions/${t}`),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`赛事详情无效`);return r}async function i(t){let{data:n}=await e.post(`/competitions`,t),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function a(t,n){let{data:r}=await e.patch(`/competitions/${t}`,n),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function o(t,n){let{data:r}=await e.patch(`/competitions/${t}`,n),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function s(t){let{data:n}=await e.get(`/competitions/${t}/tracks`),r=n?.data??n;if(!Array.isArray(r))throw Error(`赛道列表无效`);return r}async function c(t,n){let{data:r}=await e.post(`/competitions/${t}/tracks`,n),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`创建赛道无效`);return i}async function l(t,n,r){let{data:i}=await e.put(`/competitions/${t}/tracks/${n}`,r),a=i?.data??i;if(!a||typeof a!=`object`)throw Error(`更新赛道无效`);return a}async function u(t,n){await e.delete(`/competitions/${t}/tracks/${n}`)}export{n as a,a as c,r as i,l,c as n,s as o,u as r,o as s,i as t};
|
||||
@ -0,0 +1 @@
|
||||
var e=`Asia/Shanghai`;function t(t){if(!t)return null;let n=new Date(t);if(Number.isNaN(n.getTime()))return null;let r=new Intl.DateTimeFormat(`en-GB`,{timeZone:e,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hourCycle:`h23`}).formatToParts(n),i=e=>r.find(t=>t.type===e)?.value??`00`,a=i(`hour`)===`24`?`00`:i(`hour`);return`${i(`year`)}-${i(`month`)}-${i(`day`)} ${a}:${i(`minute`)}:${i(`second`)}`}function n(e){let t=(e??``).trim();if(!t)return null;let n=t.match(/^(\d{4})-(\d{2})-(\d{2})[ T](\d{2}):(\d{2})(?::(\d{2}))?/);if(!n)return null;let[,r,i,a,o,s,c=`00`]=n;return`${r}-${i}-${a}T${o}:${s}:${c}+08:00`}function r(e,n=`—`){let r=t(e);return r?r.replace(/:\d{2}$/,``):n}export{n,t as r,r as t};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{i as e}from"./index-BbIGzdOc.js";function t(e){let t=e?.data??e;if(!t||typeof t!=`object`||!(`id`in t))throw Error(`公开来源渠道响应格式无效`);return t}async function n(){let{data:t}=await e.get(`/public-source-channels`),n=t?.data??t;if(!Array.isArray(n))throw Error(`公开来源渠道列表响应格式无效`);return n}async function r(n){let{data:r}=await e.post(`/public-source-channels`,n);return t(r)}async function i(n,r){let{data:i}=await e.put(`/public-source-channels/${n}`,r);return t(i)}export{n,i as r,r as t};
|
||||
import{i as e}from"./index-d3VbvmId.js";function t(e){let t=e?.data??e;if(!t||typeof t!=`object`||!(`id`in t))throw Error(`公开来源渠道响应格式无效`);return t}async function n(){let{data:t}=await e.get(`/public-source-channels`),n=t?.data??t;if(!Array.isArray(n))throw Error(`公开来源渠道列表响应格式无效`);return n}async function r(n){let{data:r}=await e.post(`/public-source-channels`,n);return t(r)}async function i(n,r){let{data:i}=await e.put(`/public-source-channels/${n}`,r);return t(i)}export{n,i as r,r as t};
|
||||
@ -1 +1 @@
|
||||
import{i as e}from"./index-BbIGzdOc.js";function t(e){let t=e?.data??e;if(!t||typeof t!=`object`||!(`id`in t))throw Error(`渠道响应格式无效`);return t}async function n(t){let{data:n}=await e.get(`/competitions/${t}/signup-channels`),r=n?.data??n;if(!Array.isArray(r))throw Error(`渠道列表响应格式无效`);return r}async function r(n,r){let{data:i}=await e.get(`/competitions/${n}/signup-channels/${r}`);return t(i)}async function i(n,r){let{data:i}=await e.post(`/competitions/${n}/signup-channels`,r);return t(i)}async function a(n,r,i){let{data:a}=await e.put(`/competitions/${n}/signup-channels/${r}`,i);return t(a)}export{a as i,r as n,n as r,i as t};
|
||||
import{i as e}from"./index-d3VbvmId.js";function t(e){let t=e?.data??e;if(!t||typeof t!=`object`||!(`id`in t))throw Error(`渠道响应格式无效`);return t}async function n(t){let{data:n}=await e.get(`/competitions/${t}/signup-channels`),r=n?.data??n;if(!Array.isArray(r))throw Error(`渠道列表响应格式无效`);return r}async function r(n,r){let{data:i}=await e.get(`/competitions/${n}/signup-channels/${r}`);return t(i)}async function i(n,r){let{data:i}=await e.post(`/competitions/${n}/signup-channels`,r);return t(i)}async function a(n,r,i){let{data:a}=await e.put(`/competitions/${n}/signup-channels/${r}`,i);return t(a)}export{a as i,r as n,n as r,i as t};
|
||||
Loading…
Reference in new issue