|
After Width: | Height: | Size: 20 KiB |
@ -1 +1 @@
|
||||
import{D as e,O as t,S as n,T as r,W as i,Z as a,_t as o,h as s,in as c,k as l,q as u,st as d}from"./vue.runtime.esm-bundler-CACvpnko.js";import{y as f}from"./api-Dpfxb1ca.js";import{a as p,f as m,h,p as g}from"./index-D5exsJys.js";import{t as _}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{t as v}from"./auth-Dp3MNaAu.js";import{a as y}from"./site-BxiJvB6v.js";var b={class:`login-wrap`},x=_(l({__name:`AdminLoginView`,setup(l){let _=m(),x=g(),S=p(),C=o(``),w=o(``),T=o(!1);i(()=>{y()});function E(e){return e instanceof Error&&e.message.trim()?e.message:typeof e==`string`&&e.trim()?e:`登录失败`}function D(){let e=f(typeof _.query.redirect==`string`?_.query.redirect:``);return e&&e.startsWith(`/admin`)&&!e.includes(`/login`)?{path:e,replace:!0}:{name:`admin-dashboard`,replace:!0}}async function O(){if(!C.value.trim()||!w.value.trim()){h.warning(`请输入账号和密码`);return}T.value=!0;try{let e=await v({username:C.value.trim(),password:w.value.trim()}),t=e.user&&typeof e.user.id==`number`?{id:e.user.id,username:e.user.username,name:e.user.name,kind:`platform`}:null;S.setSession(e.token,t),await x.replace(D()),h.success(`登录成功`)}catch(e){h.error(E(e))}finally{T.value=!1}}return(i,o)=>{let l=a(`el-input`),f=a(`el-form-item`),p=a(`el-button`),m=a(`el-form`),h=a(`el-card`);return u(),r(`div`,b,[t(h,{class:`login-card`,shadow:`hover`},{header:d(()=>[...o[2]||=[n(`div`,{class:`card-title`},`管理员登录`,-1)]]),default:d(()=>[t(m,{"label-position":`top`,onSubmit:s(O,[`prevent`])},{default:d(()=>[t(f,{label:`账号`},{default:d(()=>[t(l,{modelValue:C.value,"onUpdate:modelValue":o[0]||=e=>C.value=e,modelModifiers:{trim:!0},autocomplete:`username`,clearable:``},null,8,[`modelValue`])]),_:1}),t(f,{label:`密码`},{default:d(()=>[t(l,{modelValue:w.value,"onUpdate:modelValue":o[1]||=e=>w.value=e,type:`password`,autocomplete:`current-password`,"show-password":``},null,8,[`modelValue`])]),_:1}),t(p,{type:`primary`,class:`w-100`,"native-type":`submit`,loading:T.value},{default:d(()=>[e(c(T.value?`登录中…`:`登录`),1)]),_:1},8,[`loading`])]),_:1})]),_:1})])}}}),[[`__scopeId`,`data-v-0e142abe`]]);export{x as default};
|
||||
import{D as e,O as t,S as n,T as r,W as i,Z as a,_t as o,h as s,in as c,k as l,q as u,st as d}from"./vue.runtime.esm-bundler-CACvpnko.js";import{y as f}from"./api-Dpfxb1ca.js";import{a as p,f as m,h,p as g}from"./index-iRzk6lDR.js";import{t as _}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{t as v}from"./auth-DzDegrJh.js";import{a as y}from"./site-BxiJvB6v.js";var b={class:`login-wrap`},x=_(l({__name:`AdminLoginView`,setup(l){let _=m(),x=g(),S=p(),C=o(``),w=o(``),T=o(!1);i(()=>{y()});function E(e){return e instanceof Error&&e.message.trim()?e.message:typeof e==`string`&&e.trim()?e:`登录失败`}function D(){let e=f(typeof _.query.redirect==`string`?_.query.redirect:``);return e&&e.startsWith(`/admin`)&&!e.includes(`/login`)?{path:e,replace:!0}:{name:`admin-dashboard`,replace:!0}}async function O(){if(!C.value.trim()||!w.value.trim()){h.warning(`请输入账号和密码`);return}T.value=!0;try{let e=await v({username:C.value.trim(),password:w.value.trim()}),t=e.user&&typeof e.user.id==`number`?{id:e.user.id,username:e.user.username,name:e.user.name,kind:`platform`}:null;S.setSession(e.token,t),await x.replace(D()),h.success(`登录成功`)}catch(e){h.error(E(e))}finally{T.value=!1}}return(i,o)=>{let l=a(`el-input`),f=a(`el-form-item`),p=a(`el-button`),m=a(`el-form`),h=a(`el-card`);return u(),r(`div`,b,[t(h,{class:`login-card`,shadow:`hover`},{header:d(()=>[...o[2]||=[n(`div`,{class:`card-title`},`管理员登录`,-1)]]),default:d(()=>[t(m,{"label-position":`top`,onSubmit:s(O,[`prevent`])},{default:d(()=>[t(f,{label:`账号`},{default:d(()=>[t(l,{modelValue:C.value,"onUpdate:modelValue":o[0]||=e=>C.value=e,modelModifiers:{trim:!0},autocomplete:`username`,clearable:``},null,8,[`modelValue`])]),_:1}),t(f,{label:`密码`},{default:d(()=>[t(l,{modelValue:w.value,"onUpdate:modelValue":o[1]||=e=>w.value=e,type:`password`,autocomplete:`current-password`,"show-password":``},null,8,[`modelValue`])]),_:1}),t(p,{type:`primary`,class:`w-100`,"native-type":`submit`,loading:T.value},{default:d(()=>[e(c(T.value?`登录中…`:`登录`),1)]),_:1},8,[`loading`])]),_:1})]),_:1})])}}}),[[`__scopeId`,`data-v-0e142abe`]]);export{x as default};
|
||||
@ -1 +0,0 @@
|
||||
.application-status-panel[data-v-df3a9d33]{color:#17324d;background:#f7f9fc;border:1px solid #d8e2ef;border-radius:8px;align-items:flex-start;gap:.75rem;margin-bottom:1rem;padding:.875rem 1rem;display:flex}.application-status-panel--submitted[data-v-df3a9d33]{color:#1f5132;background:#f3faf5;border-color:#bdd7c8}.application-status-mark[data-v-df3a9d33]{flex:none;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;margin-top:.05rem;display:inline-flex}.application-status-copy[data-v-df3a9d33]{gap:.2rem;min-width:0;display:grid}.application-status-copy strong[data-v-df3a9d33]{font-size:.98rem;line-height:1.35}.application-status-copy span[data-v-df3a9d33]{color:#4d5f73;font-size:.9rem;line-height:1.5}.application-status-panel--submitted .application-status-copy span[data-v-df3a9d33]{color:#42664f}.apply-contact-panel[data-v-df3a9d33]{color:#425466;background:#fbfcfe;border:1px solid #e4e9ef;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.45rem 1rem;margin-bottom:1rem;padding:.72rem .9rem;font-size:.9rem;line-height:1.4;display:flex}.apply-contact-panel a[data-v-df3a9d33]{color:inherit;text-decoration:none}.apply-contact-label[data-v-df3a9d33]{color:#5a6b7a}.apply-contact-line[data-v-df3a9d33]{flex-wrap:wrap;align-items:center;gap:.15rem;display:inline-flex}.apply-contact-sep[data-v-df3a9d33]{color:#8a96a3}.track-pick-inline[data-v-df3a9d33]{white-space:normal;flex-direction:column;gap:.2rem;width:100%;display:flex}.track-pick-inline .text-body[data-v-df3a9d33]{white-space:nowrap;font-weight:400;color:#1f1f1f!important}.track-custom-note[data-v-df3a9d33]{color:#7d8896;font-size:.88em;line-height:1.45}@media (width<=575.98px){.application-status-panel[data-v-df3a9d33]{padding:.8rem .85rem}.track-custom-menu[data-v-df3a9d33]{overscroll-behavior:contain;max-height:min(62vh,28rem);overflow-y:auto}.track-pick[data-v-df3a9d33]{padding:.85rem .9rem}.track-custom-note[data-v-df3a9d33]{font-size:.82rem;line-height:1.5}}.promise-doc-body--rich[data-v-df3a9d33]{color:#221b1c;text-align:justify;text-justify:inter-ideograph;font-family:SimSun,Songti SC,STSong,serif;font-size:12pt;line-height:26px}.promise-doc-body--rich[data-v-df3a9d33] p{text-indent:2em;margin:0 0 .62rem}.promise-doc-body--rich[data-v-df3a9d33] p:last-child{margin-bottom:0}.promise-doc-body--rich[data-v-df3a9d33] ul,.promise-doc-body--rich[data-v-df3a9d33] ol{margin-bottom:.75rem;padding-left:1.25rem}.promise-doc-body--rich[data-v-df3a9d33] h1,.promise-doc-body--rich[data-v-df3a9d33] h2,.promise-doc-body--rich[data-v-df3a9d33] h3{color:var(--primary-dark,#087db4);text-indent:0;margin:1.2rem 0 .45rem;font-size:1rem;font-weight:700}
|
||||
@ -0,0 +1 @@
|
||||
.application-status-panel[data-v-e62a6a08]{color:#17324d;background:#f7f9fc;border:1px solid #d8e2ef;border-radius:8px;align-items:flex-start;gap:.75rem;margin-bottom:1rem;padding:.875rem 1rem;display:flex}.application-status-panel--submitted[data-v-e62a6a08]{color:#1f5132;background:#f3faf5;border-color:#bdd7c8}.application-status-mark[data-v-e62a6a08]{flex:none;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;margin-top:.05rem;display:inline-flex}.application-status-copy[data-v-e62a6a08]{gap:.2rem;min-width:0;display:grid}.application-status-copy strong[data-v-e62a6a08]{font-size:.98rem;line-height:1.35}.application-status-copy span[data-v-e62a6a08]{color:#4d5f73;font-size:.9rem;line-height:1.5}.application-status-panel--submitted .application-status-copy span[data-v-e62a6a08]{color:#42664f}.apply-contact-panel[data-v-e62a6a08]{color:#425466;background:#fbfcfe;border:1px solid #e4e9ef;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.45rem 1rem;margin-bottom:1rem;padding:.72rem .9rem;font-size:.9rem;line-height:1.4;display:flex}.apply-contact-panel a[data-v-e62a6a08]{color:inherit;text-decoration:none}.apply-contact-label[data-v-e62a6a08]{color:#5a6b7a}.apply-contact-line[data-v-e62a6a08]{flex-wrap:wrap;align-items:center;gap:.15rem;display:inline-flex}.apply-contact-sep[data-v-e62a6a08]{color:#8a96a3}.track-pick-inline[data-v-e62a6a08]{white-space:normal;flex-direction:column;gap:.2rem;width:100%;display:flex}.track-pick-inline .text-body[data-v-e62a6a08]{white-space:nowrap;font-weight:400;color:#1f1f1f!important}.track-custom-note[data-v-e62a6a08]{color:#7d8896;font-size:.88em;line-height:1.45}@media (width<=575.98px){.application-status-panel[data-v-e62a6a08]{padding:.8rem .85rem}.track-custom-menu[data-v-e62a6a08]{overscroll-behavior:contain;max-height:min(62vh,28rem);overflow-y:auto}.track-pick[data-v-e62a6a08]{padding:.85rem .9rem}.track-custom-note[data-v-e62a6a08]{font-size:.82rem;line-height:1.5}}.promise-doc-body--rich[data-v-e62a6a08]{color:#221b1c;text-align:justify;text-justify:inter-ideograph;font-family:SimSun,Songti SC,STSong,serif;font-size:12pt;line-height:26px}.promise-doc-body--rich[data-v-e62a6a08] p{text-indent:2em;margin:0 0 .62rem}.promise-doc-body--rich[data-v-e62a6a08] p:last-child{margin-bottom:0}.promise-doc-body--rich[data-v-e62a6a08] ul,.promise-doc-body--rich[data-v-e62a6a08] ol{margin-bottom:.75rem;padding-left:1.25rem}.promise-doc-body--rich[data-v-e62a6a08] h1,.promise-doc-body--rich[data-v-e62a6a08] h2,.promise-doc-body--rich[data-v-e62a6a08] h3{color:var(--primary-dark,#087db4);text-indent:0;margin:1.2rem 0 .45rem;font-size:1rem;font-weight:700}
|
||||
@ -1 +1 @@
|
||||
import{C as e,Et as t,P as n,k as r,q as i,w as a}from"./vue.runtime.esm-bundler-CACvpnko.js";import{t as o}from"./AudienceRegistrationsPane-DhkJO1qV.js";var s=r({__name:`AudienceManageRegistrationsView`,setup(r){let s=n(`audienceManageCompetitionId`);return(n,r)=>t(s)?(i(),e(o,{key:0,"competition-id":t(s)},null,8,[`competition-id`])):a(``,!0)}});export{s as default};
|
||||
import{C as e,Et as t,P as n,k as r,q as i,w as a}from"./vue.runtime.esm-bundler-CACvpnko.js";import{t as o}from"./AudienceRegistrationsPane-BkxzuJ3T.js";var s=r({__name:`AudienceManageRegistrationsView`,setup(r){let s=n(`audienceManageCompetitionId`);return(n,r)=>t(s)?(i(),e(o,{key:0,"competition-id":t(s)},null,8,[`competition-id`])):a(``,!0)}});export{s as default};
|
||||
@ -1 +1 @@
|
||||
import{C as e,Et as t,P as n,k as r,q as i,w as a}from"./vue.runtime.esm-bundler-CACvpnko.js";import{t as o}from"./AudienceSessionsPane-CevhlB4D.js";var s=r({__name:`AudienceManageSessionsView`,setup(r){let s=n(`audienceManageCompetitionId`);return(n,r)=>t(s)?(i(),e(o,{key:0,"competition-id":t(s)},null,8,[`competition-id`])):a(``,!0)}});export{s as default};
|
||||
import{C as e,Et as t,P as n,k as r,q as i,w as a}from"./vue.runtime.esm-bundler-CACvpnko.js";import{t as o}from"./AudienceSessionsPane-Dxq_W51f.js";var s=r({__name:`AudienceManageSessionsView`,setup(r){let s=n(`audienceManageCompetitionId`);return(n,r)=>t(s)?(i(),e(o,{key:0,"competition-id":t(s)},null,8,[`competition-id`])):a(``,!0)}});export{s as default};
|
||||
@ -1 +1 @@
|
||||
import{$t as e,Et as t,O as n,S as r,T as i,_ as a,in as o,k as s,q as c,w as l,x as u}from"./vue.runtime.esm-bundler-CACvpnko.js";import{i as d}from"./portalLocale-vgPGVHT0.js";import{_ as f,m as p,o as m}from"./api-Dpfxb1ca.js";import{c as h,f as g,i as _}from"./index-D5exsJys.js";import{t as v}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{t as y}from"./AudienceTicketQr-BOKIIgU4.js";var b=h.create({baseURL:`${f()}/api/v1/audience`,headers:{Accept:`application/json`,"Content-Type":`application/json`}});b.interceptors.request.use(e=>{let t=localStorage.getItem(m);return t&&(e.headers.Authorization=`Bearer ${t}`),typeof window<`u`&&new URLSearchParams(window.location.search).get(`lang`)===`en`&&(e.params={...e.params&&typeof e.params==`object`&&!Array.isArray(e.params)?{...e.params}:{},lang:`en`}),e}),b.interceptors.response.use(e=>e,e=>{if(h.isAxiosError(e)&&e.response?.status===401){p();let e=window.location.pathname.match(/^\/c\/([^/]+)\/audience(?!\/login)/);if(e?.[1]){let t=new URLSearchParams(window.location.search).get(`lang`)===`en`?`?lang=en`:``;window.location.assign(`/c/${encodeURIComponent(e[1])}/audience/login${t}`)}}return Promise.reject(e)});function x(e,t){if(h.isAxiosError(e)){let t=e.response?.data;if(t?.errors&&typeof t.errors==`object`){let e=Object.values(t.errors).flat()[0];if(e)return String(e)}if(typeof t?.message==`string`&&t.message.trim())return t.message.trim()}return e instanceof Error?e.message:t}async function S(e){let{data:t}=await b.get(`/me`,{params:e?{competition_slug:e}:void 0});return t}async function C(e){let{data:t}=await b.get(`/sessions`,{params:{competition_slug:e}});return Array.isArray(t.data)?t.data:[]}async function w(e){let{data:t}=await b.get(`/registrations`,{params:{competition_slug:e}});return Array.isArray(t.data)?t.data:[]}async function T(e,t){try{let{data:n}=await b.post(`/registrations`,{competition_slug:e,...t});return n}catch(e){throw Error(x(e,``))}}var E=[`aria-labelledby`],D={class:`modal-dialog modal-dialog-centered modal-dialog-scrollable`},O={class:`modal-content audience-ticket-card`},k={class:`modal-header border-0`},A=[`id`],j=[`aria-label`],M={class:`modal-body text-center pt-0`},N={class:`alert alert-warning audience-qr-save-alert`,role:`status`},P={class:`audience-ticket-lead`},F={class:`ticket-event-badge`},I={class:`mt-3 mb-1`},L={class:`text-secondary small mb-0`},R={class:`mt-3 mb-1`},z={class:`text-secondary small`},B=[`aria-label`],V={class:`ticket-code`},H={key:3,class:`small text-secondary mt-2 mb-3`},U={key:4,class:`small text-secondary mt-2 mb-0`},W=v(s({__name:`AudienceTicketModal`,props:{open:{type:Boolean},mode:{},slug:{},eventBadge:{},registration:{}},emits:[`close`],setup(s,{emit:f}){let p=f,{t:m}=_(),h=g(),v=u(()=>d(h.query));function b(e){return`${e.name} · ${e.phone}`}function x(e){return v.value===`en`&&e.session_name_en?.trim()?e.session_name_en.trim():e.session_name||m(`ticket.sessionFallback`)}return(u,d)=>s.open&&s.registration?(c(),i(a,{key:0},[r(`div`,{class:`modal-backdrop fade show audience-ticket-backdrop`,onClick:d[0]||=e=>p(`close`)}),r(`div`,{class:`modal fade show audience-ticket-dialog`,style:{display:`block`},tabindex:`-1`,"aria-labelledby":s.mode===`success`?`audienceTicketTitle`:`myTicketModalTitle`,"aria-modal":`true`,role:`dialog`},[r(`div`,D,[r(`div`,O,[r(`div`,k,[r(`h5`,{id:s.mode===`success`?`audienceTicketTitle`:`myTicketModalTitle`,class:`modal-title`},o(s.mode===`success`?t(m)(`ticket.successTitle`):t(m)(`ticket.myTicket`)),9,A),r(`button`,{type:`button`,class:`btn-close`,"aria-label":t(m)(`ticket.close`),onClick:d[1]||=e=>p(`close`)},null,8,j)]),r(`div`,M,[r(`div`,N,o(t(m)(`ticket.saveQr`)),1),s.mode===`success`?(c(),i(a,{key:0},[d[3]||=r(`div`,{class:`audience-ticket-success-mark`},`✓`,-1),r(`p`,P,o(t(m)(`ticket.lead`)),1),r(`span`,F,o(s.eventBadge),1),r(`h6`,I,o(x(s.registration)),1),r(`p`,L,o(b(s.registration)),1)],64)):(c(),i(a,{key:1},[r(`span`,{class:e([`my-ticket-status`,s.registration.checked_in_at?`is-checked`:`is-pending`])},o(s.registration.checked_in_at?t(m)(`ticket.checkedIn`):t(m)(`ticket.pending`)),3),r(`h6`,R,o(x(s.registration)),1),r(`p`,z,o(b(s.registration)),1)],64)),s.slug&&s.registration.ticket_code?(c(),i(`div`,{key:2,class:`ticket-qr ticket-qr-canvas`,"aria-label":t(m)(`ticket.qrAria`)},[n(y,{slug:s.slug,"ticket-code":s.registration.ticket_code,size:150},null,8,[`slug`,`ticket-code`])],8,B)):l(``,!0),r(`code`,V,o(s.registration.ticket_code),1),s.mode===`success`?(c(),i(`p`,H,o(t(m)(`ticket.showCode`)),1)):(c(),i(`p`,U,o(t(m)(`ticket.showAtGate`)),1)),s.mode===`success`?(c(),i(`button`,{key:5,class:`btn btn-primary w-100`,type:`button`,onClick:d[2]||=e=>p(`close`)},o(t(m)(`ticket.done`)),1)):l(``,!0)])])])],8,E)],64)):l(``,!0)}}),[[`__scopeId`,`data-v-908dee93`]]);export{T as a,C as i,S as n,w as r,W as t};
|
||||
import{$t as e,Et as t,O as n,S as r,T as i,_ as a,in as o,k as s,q as c,w as l,x as u}from"./vue.runtime.esm-bundler-CACvpnko.js";import{i as d}from"./portalLocale-vgPGVHT0.js";import{_ as f,m as p,o as m}from"./api-Dpfxb1ca.js";import{c as h,f as g,i as _}from"./index-iRzk6lDR.js";import{t as v}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{t as y}from"./AudienceTicketQr-BOKIIgU4.js";var b=h.create({baseURL:`${f()}/api/v1/audience`,headers:{Accept:`application/json`,"Content-Type":`application/json`}});b.interceptors.request.use(e=>{let t=localStorage.getItem(m);return t&&(e.headers.Authorization=`Bearer ${t}`),typeof window<`u`&&new URLSearchParams(window.location.search).get(`lang`)===`en`&&(e.params={...e.params&&typeof e.params==`object`&&!Array.isArray(e.params)?{...e.params}:{},lang:`en`}),e}),b.interceptors.response.use(e=>e,e=>{if(h.isAxiosError(e)&&e.response?.status===401){p();let e=window.location.pathname.match(/^\/c\/([^/]+)\/audience(?!\/login)/);if(e?.[1]){let t=new URLSearchParams(window.location.search).get(`lang`)===`en`?`?lang=en`:``;window.location.assign(`/c/${encodeURIComponent(e[1])}/audience/login${t}`)}}return Promise.reject(e)});function x(e,t){if(h.isAxiosError(e)){let t=e.response?.data;if(t?.errors&&typeof t.errors==`object`){let e=Object.values(t.errors).flat()[0];if(e)return String(e)}if(typeof t?.message==`string`&&t.message.trim())return t.message.trim()}return e instanceof Error?e.message:t}async function S(e){let{data:t}=await b.get(`/me`,{params:e?{competition_slug:e}:void 0});return t}async function C(e){let{data:t}=await b.get(`/sessions`,{params:{competition_slug:e}});return Array.isArray(t.data)?t.data:[]}async function w(e){let{data:t}=await b.get(`/registrations`,{params:{competition_slug:e}});return Array.isArray(t.data)?t.data:[]}async function T(e,t){try{let{data:n}=await b.post(`/registrations`,{competition_slug:e,...t});return n}catch(e){throw Error(x(e,``))}}var E=[`aria-labelledby`],D={class:`modal-dialog modal-dialog-centered modal-dialog-scrollable`},O={class:`modal-content audience-ticket-card`},k={class:`modal-header border-0`},A=[`id`],j=[`aria-label`],M={class:`modal-body text-center pt-0`},N={class:`alert alert-warning audience-qr-save-alert`,role:`status`},P={class:`audience-ticket-lead`},F={class:`ticket-event-badge`},I={class:`mt-3 mb-1`},L={class:`text-secondary small mb-0`},R={class:`mt-3 mb-1`},z={class:`text-secondary small`},B=[`aria-label`],V={class:`ticket-code`},H={key:3,class:`small text-secondary mt-2 mb-3`},U={key:4,class:`small text-secondary mt-2 mb-0`},W=v(s({__name:`AudienceTicketModal`,props:{open:{type:Boolean},mode:{},slug:{},eventBadge:{},registration:{}},emits:[`close`],setup(s,{emit:f}){let p=f,{t:m}=_(),h=g(),v=u(()=>d(h.query));function b(e){return`${e.name} · ${e.phone}`}function x(e){return v.value===`en`&&e.session_name_en?.trim()?e.session_name_en.trim():e.session_name||m(`ticket.sessionFallback`)}return(u,d)=>s.open&&s.registration?(c(),i(a,{key:0},[r(`div`,{class:`modal-backdrop fade show audience-ticket-backdrop`,onClick:d[0]||=e=>p(`close`)}),r(`div`,{class:`modal fade show audience-ticket-dialog`,style:{display:`block`},tabindex:`-1`,"aria-labelledby":s.mode===`success`?`audienceTicketTitle`:`myTicketModalTitle`,"aria-modal":`true`,role:`dialog`},[r(`div`,D,[r(`div`,O,[r(`div`,k,[r(`h5`,{id:s.mode===`success`?`audienceTicketTitle`:`myTicketModalTitle`,class:`modal-title`},o(s.mode===`success`?t(m)(`ticket.successTitle`):t(m)(`ticket.myTicket`)),9,A),r(`button`,{type:`button`,class:`btn-close`,"aria-label":t(m)(`ticket.close`),onClick:d[1]||=e=>p(`close`)},null,8,j)]),r(`div`,M,[r(`div`,N,o(t(m)(`ticket.saveQr`)),1),s.mode===`success`?(c(),i(a,{key:0},[d[3]||=r(`div`,{class:`audience-ticket-success-mark`},`✓`,-1),r(`p`,P,o(t(m)(`ticket.lead`)),1),r(`span`,F,o(s.eventBadge),1),r(`h6`,I,o(x(s.registration)),1),r(`p`,L,o(b(s.registration)),1)],64)):(c(),i(a,{key:1},[r(`span`,{class:e([`my-ticket-status`,s.registration.checked_in_at?`is-checked`:`is-pending`])},o(s.registration.checked_in_at?t(m)(`ticket.checkedIn`):t(m)(`ticket.pending`)),3),r(`h6`,R,o(x(s.registration)),1),r(`p`,z,o(b(s.registration)),1)],64)),s.slug&&s.registration.ticket_code?(c(),i(`div`,{key:2,class:`ticket-qr ticket-qr-canvas`,"aria-label":t(m)(`ticket.qrAria`)},[n(y,{slug:s.slug,"ticket-code":s.registration.ticket_code,size:150},null,8,[`slug`,`ticket-code`])],8,B)):l(``,!0),r(`code`,V,o(s.registration.ticket_code),1),s.mode===`success`?(c(),i(`p`,H,o(t(m)(`ticket.showCode`)),1)):(c(),i(`p`,U,o(t(m)(`ticket.showAtGate`)),1)),s.mode===`success`?(c(),i(`button`,{key:5,class:`btn btn-primary w-100`,type:`button`,onClick:d[2]||=e=>p(`close`)},o(t(m)(`ticket.done`)),1)):l(``,!0)])])])],8,E)],64)):l(``,!0)}}),[[`__scopeId`,`data-v-908dee93`]]);export{T as a,C as i,S as n,w as r,W as t};
|
||||
@ -1 +1 @@
|
||||
import{Et as e,G as t,O as n,S as r,T as i,W as a,_t as o,in as s,k as c,q as l,x as u}from"./vue.runtime.esm-bundler-CACvpnko.js";import{i as d}from"./portalLocale-vgPGVHT0.js";import{_ as f}from"./api-Dpfxb1ca.js";import{f as p}from"./index-D5exsJys.js";import{a as m,i as h}from"./site-BxiJvB6v.js";/* empty css */import{n as g,t as _}from"./participantTheme-HEHn5JJn.js";import{c as v,l as y,r as b,s as x}from"./competitionBranding-CAjogVRl.js";import{i as S}from"./audienceTicket-ByROqmS7.js";import{t as C}from"./AudienceTicketQr-BOKIIgU4.js";var w={class:`audience-ticket-public-page`},T={class:`audience-ticket-public-card`},E={key:0,class:`audience-ticket-public-qr`},D={class:`audience-ticket-code-suffix`},O={key:1,class:`text-muted`},k={class:`audience-ticket-public-footer`},A=c({__name:`AudienceTicketView`,setup(c){let A=p(),j=u(()=>String(A.params.slug??``).trim()),M=u(()=>String(A.params.ticketCode??``).trim()),N=u(()=>d(A.query)),P=o(x()),F=o(``),I=u(()=>y(P.value,F.value,N.value)),L=u(()=>v(P.value.login.footerCopyright)?P.value.login.footerCopyright:h);async function R(){if(j.value)try{let e=await fetch(`${f()}/api/v1/public/competitions/by-slug/${encodeURIComponent(j.value)}`,{headers:{Accept:`application/json`}});if(!e.ok)return;let t=await e.json(),n=t.data!=null&&typeof t.data==`object`&&!Array.isArray(t.data)?t.data:t;F.value=String(n.name??``),P.value=b(n.branding_json??null,N.value),m(P.value.documentTitle),_(P.value.login.themePrimary)}catch{}}return a(()=>{document.body.classList.add(`prototype-page`,`audience-page`,`audience-ticket-public`),R()}),t(()=>{document.body.classList.remove(`prototype-page`,`audience-page`,`audience-ticket-public`),g()}),(t,a)=>(l(),i(`div`,w,[r(`main`,T,[a[0]||=r(`p`,{class:`audience-ticket-public-kicker`},`电子入场码`,-1),r(`h1`,null,s(I.value),1),a[1]||=r(`p`,{class:`audience-ticket-public-hint`},`请向工作人员出示此码,由工作人员扫码核销。本页不能自助入场。`,-1),a[2]||=r(`div`,{class:`alert alert-warning audience-ticket-public-save`,role:`status`},` 请截图保存报名二维码以便现场扫码后核销入场。 `,-1),j.value&&M.value?(l(),i(`div`,E,[n(C,{slug:j.value,"ticket-code":M.value,size:220},null,8,[`slug`,`ticket-code`]),r(`p`,D,`券码后四位 `+s(e(S)(M.value)),1)])):(l(),i(`p`,O,`入场码无效`))]),r(`p`,k,s(L.value),1)]))}});export{A as default};
|
||||
import{Et as e,G as t,O as n,S as r,T as i,W as a,_t as o,in as s,k as c,q as l,x as u}from"./vue.runtime.esm-bundler-CACvpnko.js";import{i as d}from"./portalLocale-vgPGVHT0.js";import{_ as f}from"./api-Dpfxb1ca.js";import{f as p}from"./index-iRzk6lDR.js";import{a as m,i as h}from"./site-BxiJvB6v.js";/* empty css */import{n as g,t as _}from"./participantTheme-HEHn5JJn.js";import{c as v,l as y,r as b,s as x}from"./competitionBranding-CAjogVRl.js";import{i as S}from"./audienceTicket-ByROqmS7.js";import{t as C}from"./AudienceTicketQr-BOKIIgU4.js";var w={class:`audience-ticket-public-page`},T={class:`audience-ticket-public-card`},E={key:0,class:`audience-ticket-public-qr`},D={class:`audience-ticket-code-suffix`},O={key:1,class:`text-muted`},k={class:`audience-ticket-public-footer`},A=c({__name:`AudienceTicketView`,setup(c){let A=p(),j=u(()=>String(A.params.slug??``).trim()),M=u(()=>String(A.params.ticketCode??``).trim()),N=u(()=>d(A.query)),P=o(x()),F=o(``),I=u(()=>y(P.value,F.value,N.value)),L=u(()=>v(P.value.login.footerCopyright)?P.value.login.footerCopyright:h);async function R(){if(j.value)try{let e=await fetch(`${f()}/api/v1/public/competitions/by-slug/${encodeURIComponent(j.value)}`,{headers:{Accept:`application/json`}});if(!e.ok)return;let t=await e.json(),n=t.data!=null&&typeof t.data==`object`&&!Array.isArray(t.data)?t.data:t;F.value=String(n.name??``),P.value=b(n.branding_json??null,N.value),m(P.value.documentTitle),_(P.value.login.themePrimary)}catch{}}return a(()=>{document.body.classList.add(`prototype-page`,`audience-page`,`audience-ticket-public`),R()}),t(()=>{document.body.classList.remove(`prototype-page`,`audience-page`,`audience-ticket-public`),g()}),(t,a)=>(l(),i(`div`,w,[r(`main`,T,[a[0]||=r(`p`,{class:`audience-ticket-public-kicker`},`电子入场码`,-1),r(`h1`,null,s(I.value),1),a[1]||=r(`p`,{class:`audience-ticket-public-hint`},`请向工作人员出示此码,由工作人员扫码核销。本页不能自助入场。`,-1),a[2]||=r(`div`,{class:`alert alert-warning audience-ticket-public-save`,role:`status`},` 请截图保存报名二维码以便现场扫码后核销入场。 `,-1),j.value&&M.value?(l(),i(`div`,E,[n(C,{slug:j.value,"ticket-code":M.value,size:220},null,8,[`slug`,`ticket-code`]),r(`p`,D,`券码后四位 `+s(e(S)(M.value)),1)])):(l(),i(`p`,O,`入场码无效`))]),r(`p`,k,s(L.value),1)]))}});export{A as default};
|
||||
@ -1 +1 @@
|
||||
import{C as e,D as t,Et as n,O as r,Q as i,S as a,T as o,W as s,Z as c,_t as l,ct as u,in as d,k as f,q as p,st as m,w as h}from"./vue.runtime.esm-bundler-CACvpnko.js";import{h as g}from"./index-D5exsJys.js";import{t as _}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{o as v}from"./competitions-Cv_Vb4Fy.js";import{t as y}from"./adminCompetition-D_kJwSx5.js";import{t as b}from"./datetimeShanghai-F85iiY-2.js";import{t as x}from"./competitionAdminLabels-D3a4EIIe.js";var S={class:`page-header`},C={key:0,class:`pager`},w={class:`total`},T=_(f({__name:`CompetitionListView`,setup(f){let _=l([]),T=y(),E=l(!1),D=l(1),O=l(1),k=l(0),A=l(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 b(e)}return s(()=>{j()}),(s,l)=>{let f=c(`el-button`),g=c(`RouterLink`),v=c(`el-table-column`),y=c(`el-tag`),b=c(`el-table`),j=c(`el-pagination`),P=c(`el-card`),F=i(`loading`);return p(),o(`div`,null,[a(`div`,S,[l[1]||=a(`h2`,{class:`page-title`},`赛事列表`,-1),r(g,{to:{name:`admin-competition-new`}},{default:m(()=>[r(f,{type:`danger`},{default:m(()=>[...l[0]||=[t(`新建赛事`,-1)]]),_:1})]),_:1})]),r(P,{shadow:`never`},{default:m(()=>[u((p(),e(b,{data:_.value,stripe:``,style:{width:`100%`}},{empty:m(()=>[...l[3]||=[a(`span`,{class:`text-muted`},`暂无数据`,-1)]]),default:m(()=>[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:m(({row:e})=>[t(d(n(x)(e.status)),1)]),_:1}),r(v,{label:`对外可见`,width:`100`},{default:m(({row:e})=>[r(y,{type:e.published?`success`:`info`,size:`small`},{default:m(()=>[t(d(e.published?`是`:`否`),1)]),_:2},1032,[`type`])]),_:1}),r(v,{label:`报名开始`,"min-width":`160`},{default:m(({row:e})=>[t(d(N(e.signup_open_at??null)),1)]),_:1}),r(v,{label:`报名截止`,"min-width":`160`},{default:m(({row:e})=>[t(d(N(e.signup_close_at??null)),1)]),_:1}),r(v,{label:`操作`,width:`140`,fixed:`right`},{default:m(({row:e})=>[r(g,{to:{name:`admin-competition-workspace`},onClick:t=>n(T).selectCompetition(e.id)},{default:m(()=>[r(f,{type:`danger`,link:``},{default:m(()=>[...l[2]||=[t(`进入赛事中心`,-1)]]),_:1})]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[F,E.value]]),O.value>1?(p(),o(`div`,C,[a(`span`,w,`共 `+d(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`])])):h(``,!0)]),_:1})])}}}),[[`__scopeId`,`data-v-0694ed3e`]]);export{T as default};
|
||||
import{C as e,D as t,Et as n,O as r,Q as i,S as a,T as o,W as s,Z as c,_t as l,ct as u,in as d,k as f,q as p,st as m,w as h}from"./vue.runtime.esm-bundler-CACvpnko.js";import{h as g}from"./index-iRzk6lDR.js";import{t as _}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{o as v}from"./competitions-CfkwFL0G.js";import{t as y}from"./adminCompetition-ChmsIX7c.js";import{t as b}from"./datetimeShanghai-F85iiY-2.js";import{t as x}from"./competitionAdminLabels-D3a4EIIe.js";var S={class:`page-header`},C={key:0,class:`pager`},w={class:`total`},T=_(f({__name:`CompetitionListView`,setup(f){let _=l([]),T=y(),E=l(!1),D=l(1),O=l(1),k=l(0),A=l(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 b(e)}return s(()=>{j()}),(s,l)=>{let f=c(`el-button`),g=c(`RouterLink`),v=c(`el-table-column`),y=c(`el-tag`),b=c(`el-table`),j=c(`el-pagination`),P=c(`el-card`),F=i(`loading`);return p(),o(`div`,null,[a(`div`,S,[l[1]||=a(`h2`,{class:`page-title`},`赛事列表`,-1),r(g,{to:{name:`admin-competition-new`}},{default:m(()=>[r(f,{type:`danger`},{default:m(()=>[...l[0]||=[t(`新建赛事`,-1)]]),_:1})]),_:1})]),r(P,{shadow:`never`},{default:m(()=>[u((p(),e(b,{data:_.value,stripe:``,style:{width:`100%`}},{empty:m(()=>[...l[3]||=[a(`span`,{class:`text-muted`},`暂无数据`,-1)]]),default:m(()=>[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:m(({row:e})=>[t(d(n(x)(e.status)),1)]),_:1}),r(v,{label:`对外可见`,width:`100`},{default:m(({row:e})=>[r(y,{type:e.published?`success`:`info`,size:`small`},{default:m(()=>[t(d(e.published?`是`:`否`),1)]),_:2},1032,[`type`])]),_:1}),r(v,{label:`报名开始`,"min-width":`160`},{default:m(({row:e})=>[t(d(N(e.signup_open_at??null)),1)]),_:1}),r(v,{label:`报名截止`,"min-width":`160`},{default:m(({row:e})=>[t(d(N(e.signup_close_at??null)),1)]),_:1}),r(v,{label:`操作`,width:`140`,fixed:`right`},{default:m(({row:e})=>[r(g,{to:{name:`admin-competition-workspace`},onClick:t=>n(T).selectCompetition(e.id)},{default:m(()=>[r(f,{type:`danger`,link:``},{default:m(()=>[...l[2]||=[t(`进入赛事中心`,-1)]]),_:1})]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[F,E.value]]),O.value>1?(p(),o(`div`,C,[a(`span`,w,`共 `+d(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`])])):h(``,!0)]),_:1})])}}}),[[`__scopeId`,`data-v-0694ed3e`]]);export{T as default};
|
||||
@ -1 +1 @@
|
||||
import{T as e,W as t,_t as n,in as r,k as i,q as a}from"./vue.runtime.esm-bundler-CACvpnko.js";import{n as o,p as s,s as c}from"./api-Dpfxb1ca.js";import{f as l,p as u}from"./index-D5exsJys.js";var d={class:`container py-5 text-center`},f={key:0,class:`text-danger`},p={key:1,class:`text-secondary`},m=i({__name:`ParticipantImpersonateEntryView`,setup(i){let m=l(),h=u(),g=n(``);return t(()=>{let e=String(m.params.slug??``).trim(),t=String(m.query.token??``).trim();if(!e||!t){g.value=`代登参数无效`;return}localStorage.setItem(s,t),localStorage.setItem(c,e),sessionStorage.setItem(o,`1`),h.replace({name:`participant-apply`,params:{slug:e}})}),(t,n)=>(a(),e(`div`,d,[g.value?(a(),e(`p`,f,r(g.value),1)):(a(),e(`p`,p,`正在进入选手端…`))]))}});export{m as default};
|
||||
import{T as e,W as t,_t as n,in as r,k as i,q as a}from"./vue.runtime.esm-bundler-CACvpnko.js";import{n as o,p as s,s as c}from"./api-Dpfxb1ca.js";import{f as l,p as u}from"./index-iRzk6lDR.js";var d={class:`container py-5 text-center`},f={key:0,class:`text-danger`},p={key:1,class:`text-secondary`},m=i({__name:`ParticipantImpersonateEntryView`,setup(i){let m=l(),h=u(),g=n(``);return t(()=>{let e=String(m.params.slug??``).trim(),t=String(m.query.token??``).trim();if(!e||!t){g.value=`代登参数无效`;return}localStorage.setItem(s,t),localStorage.setItem(c,e),sessionStorage.setItem(o,`1`),h.replace({name:`participant-apply`,params:{slug:e}})}),(t,n)=>(a(),e(`div`,d,[g.value?(a(),e(`p`,f,r(g.value),1)):(a(),e(`p`,p,`正在进入选手端…`))]))}});export{m as default};
|
||||
@ -1 +1 @@
|
||||
import{_t as e,x as t}from"./vue.runtime.esm-bundler-CACvpnko.js";import{t as n}from"./api-Dpfxb1ca.js";import{S as r}from"./index-D5exsJys.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,x as t}from"./vue.runtime.esm-bundler-CACvpnko.js";import{t as n}from"./api-Dpfxb1ca.js";import{S as r}from"./index-iRzk6lDR.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{c as e,s as t}from"./index-D5exsJys.js";import{r as n,t as r}from"./downloadFeedback-HV11t-9m.js";function i(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},schema_list_fields:Array.isArray(t.schema_list_fields)?t.schema_list_fields:void 0,schema_filter_fields:Array.isArray(t.schema_filter_fields)?t.schema_filter_fields:void 0}}throw Error(`列表响应格式无效`)}async function a(e,n){let{data:r}=await t.get(`/competitions/${e}/applications`,{params:n});return i(r)}async function o(e,n){let{data:r}=await t.get(`/competitions/${e}/applications/${n}`);if(!r||typeof r!=`object`)throw Error(`报名详情无效`);return r}async function s(e,n,r){let{data:i}=await t.patch(`/competitions/${e}/applications/${n}/review-eligible`,{review_eligible:r});return i}async function c(n,r){try{let{data:e}=await t.post(`/competitions/${n}/applications/${r}/impersonate`);if(!e||typeof e!=`object`)throw Error(`代登响应无效`);let i=e;if(typeof i.token!=`string`||!i.token.trim())throw Error(`代登 Token 无效`);if(typeof i.competition_slug!=`string`||!i.competition_slug.trim())throw Error(`赛事标识无效`);return{token:i.token,competition_slug:i.competition_slug,expires_in:typeof i.expires_in==`number`?i.expires_in:1800,participant:i.participant&&typeof i.participant==`object`?i.participant:void 0}}catch(t){if(e.isAxiosError(t)){let e=t.response?.data;if(e&&typeof e==`object`){let t=e.message;if(typeof t==`string`&&t.trim())throw Error(t.trim())}}throw t instanceof Error?t:Error(`进入选手端失败`)}}async function l(e,i,a,o,s){let c=o?.trim()||`附件`,l=r(c,s?.size);if(l)try{let r=await t.get(`/competitions/${e}/applications/${i}/files/${a}/download`,{responseType:`blob`,timeout:0});l.setText(`正在保存「${c}」…`),u(r.data,c),n()}catch(e){throw await f(e,`下载附件失败`)}finally{l.close()}}function u(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 d(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 f(t,n){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.errors?.file?.[0]||e.message||n)}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.errors?.file?.[0]||t.message||n)}}return t instanceof Error?t:Error(n)}async function p(e){return f(e,`导出失败`)}function m(e){return new Promise(t=>{window.setTimeout(t,e)})}function h(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 g(e,n){try{let{data:r}=await t.get(`/competitions/${e}/applications/export/meta`,{params:h(n)});if(!r||typeof r!=`object`)throw Error(`导出信息无效`);return r}catch(e){throw await p(e)}}async function _(e,n,r){let i;try{i=await t.get(`/competitions/${e}/applications/export`,{params:h({...n,part:r}),responseType:`blob`,timeout:0})}catch(e){throw await p(e)}let a=n.mode===`xlsx`?`报名信息.xlsx`:`报名信息导出_第${r}部分.zip`,o=d(i.headers[`content-disposition`],a);u(i.data,o)}async function v(e,t,n){let r=await g(e,t);if(t.mode===`xlsx`)return n?.(1,1),await _(e,t,1),r;for(let i=1;i<=r.part_count;i+=1)n?.(i,r.part_count),await _(e,t,i),i<r.part_count&&await m(500);return r}export{c as a,g as i,v as n,a as o,o as r,s,l as t};
|
||||
import{c as e,s as t}from"./index-iRzk6lDR.js";import{r as n,t as r}from"./downloadFeedback-TMasTLon.js";function i(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},schema_list_fields:Array.isArray(t.schema_list_fields)?t.schema_list_fields:void 0,schema_filter_fields:Array.isArray(t.schema_filter_fields)?t.schema_filter_fields:void 0}}throw Error(`列表响应格式无效`)}async function a(e,n){let{data:r}=await t.get(`/competitions/${e}/applications`,{params:n});return i(r)}async function o(e,n){let{data:r}=await t.get(`/competitions/${e}/applications/${n}`);if(!r||typeof r!=`object`)throw Error(`报名详情无效`);return r}async function s(e,n,r){let{data:i}=await t.patch(`/competitions/${e}/applications/${n}/review-eligible`,{review_eligible:r});return i}async function c(n,r){try{let{data:e}=await t.post(`/competitions/${n}/applications/${r}/impersonate`);if(!e||typeof e!=`object`)throw Error(`代登响应无效`);let i=e;if(typeof i.token!=`string`||!i.token.trim())throw Error(`代登 Token 无效`);if(typeof i.competition_slug!=`string`||!i.competition_slug.trim())throw Error(`赛事标识无效`);return{token:i.token,competition_slug:i.competition_slug,expires_in:typeof i.expires_in==`number`?i.expires_in:1800,participant:i.participant&&typeof i.participant==`object`?i.participant:void 0}}catch(t){if(e.isAxiosError(t)){let e=t.response?.data;if(e&&typeof e==`object`){let t=e.message;if(typeof t==`string`&&t.trim())throw Error(t.trim())}}throw t instanceof Error?t:Error(`进入选手端失败`)}}async function l(e,i,a,o,s){let c=o?.trim()||`附件`,l=r(c,s?.size);if(l)try{let r=await t.get(`/competitions/${e}/applications/${i}/files/${a}/download`,{responseType:`blob`,timeout:0});l.setText(`正在保存「${c}」…`),u(r.data,c),n()}catch(e){throw await f(e,`下载附件失败`)}finally{l.close()}}function u(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 d(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 f(t,n){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.errors?.file?.[0]||e.message||n)}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.errors?.file?.[0]||t.message||n)}}return t instanceof Error?t:Error(n)}async function p(e){return f(e,`导出失败`)}function m(e){return new Promise(t=>{window.setTimeout(t,e)})}function h(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 g(e,n){try{let{data:r}=await t.get(`/competitions/${e}/applications/export/meta`,{params:h(n)});if(!r||typeof r!=`object`)throw Error(`导出信息无效`);return r}catch(e){throw await p(e)}}async function _(e,n,r){let i;try{i=await t.get(`/competitions/${e}/applications/export`,{params:h({...n,part:r}),responseType:`blob`,timeout:0})}catch(e){throw await p(e)}let a=n.mode===`xlsx`?`报名信息.xlsx`:`报名信息导出_第${r}部分.zip`,o=d(i.headers[`content-disposition`],a);u(i.data,o)}async function v(e,t,n){let r=await g(e,t);if(t.mode===`xlsx`)return n?.(1,1),await _(e,t,1),r;for(let i=1;i<=r.part_count;i+=1)n?.(i,r.part_count),await _(e,t,i),i<r.part_count&&await m(500);return r}export{c as a,g as i,v as n,a as o,o as r,s,l as t};
|
||||
@ -1 +1 @@
|
||||
import{c as e,s as t}from"./index-D5exsJys.js";function n(t,n){if(e.isAxiosError(t)){let e=t.response?.data;if(e?.errors&&typeof e.errors==`object`){let t=Object.values(e.errors).flat()[0];if(t)throw Error(String(t))}if(typeof e?.message==`string`&&e.message.trim())throw Error(e.message.trim())}throw t instanceof Error?t:Error(n)}function r(e){let t=e?.data??e;if(!Array.isArray(t))throw Error(`列表响应无效`);return t}function i(e,t){let n=e?.data??e;if(!n||typeof n!=`object`)throw Error(t);return n}function a(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},schema_list_fields:Array.isArray(t.schema_list_fields)?t.schema_list_fields:void 0,schema_filter_fields:Array.isArray(t.schema_filter_fields)?t.schema_filter_fields:void 0}}throw Error(`列表响应格式无效`)}function o(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}function s(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)}async function c(e){try{let{data:n}=await t.get(`/competitions/${e}/audience-sessions`);return r(n)}catch(e){n(e,`加载观众场次失败`)}}async function l(e,r){try{let{data:n}=await t.post(`/competitions/${e}/audience-sessions`,r);return i(n,`创建场次无效`)}catch(e){n(e,`创建场次失败`)}}async function u(e,r,a){try{let{data:n}=await t.patch(`/competitions/${e}/audience-sessions/${r}`,a);return i(n,`更新场次无效`)}catch(e){n(e,`更新场次失败`)}}async function d(e,t,n){return u(e,t,n)}async function f(r,i){try{await t.delete(`/competitions/${r}/audience-sessions/${i}`)}catch(a){e.isAxiosError(a)&&a.response?.status===422&&n(a,`删除失败`);try{await t.post(`/competitions/${r}/audience-sessions/${i}/delete`)}catch(e){n(e,`删除失败`)}}}async function p(e,r){try{let{data:n}=await t.get(`/competitions/${e}/audience-registrations`,{params:r});return a(n)}catch(e){n(e,`加载观众报名失败`)}}async function m(e,n){let r=await t.get(`/competitions/${e}/audience-registrations/export`,{params:n,responseType:`blob`});if(r.data.type===`application/json`){let e=await r.data.text();try{let t=JSON.parse(e);throw Error(t.message||`导出失败`)}catch(e){throw e instanceof Error&&e.message!==`导出失败`?e:Error(`导出失败`)}}let i=o(r.headers[`content-disposition`],`观众报名.xlsx`);s(r.data,i)}async function h(e,r){try{let{data:n}=await t.get(`/competitions/${e}/audience-checkin-stats`,{params:r?{audience_session_id:r}:void 0});return n}catch(e){n(e,`加载到场统计失败`)}}async function g(e,r){try{let{data:n}=await t.post(`/competitions/${e}/audience-checkin`,r);return n}catch(e){n(e,`核销失败`)}}async function _(e,r){try{let{data:n}=await t.post(`/competitions/${e}/audience-registrations/${r}/checkin`);return n}catch(e){n(e,`核销失败`)}}export{m as a,c,f as i,u as l,_ as n,h as o,l as r,p as s,g as t,d as u};
|
||||
import{c as e,s as t}from"./index-iRzk6lDR.js";function n(t,n){if(e.isAxiosError(t)){let e=t.response?.data;if(e?.errors&&typeof e.errors==`object`){let t=Object.values(e.errors).flat()[0];if(t)throw Error(String(t))}if(typeof e?.message==`string`&&e.message.trim())throw Error(e.message.trim())}throw t instanceof Error?t:Error(n)}function r(e){let t=e?.data??e;if(!Array.isArray(t))throw Error(`列表响应无效`);return t}function i(e,t){let n=e?.data??e;if(!n||typeof n!=`object`)throw Error(t);return n}function a(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},schema_list_fields:Array.isArray(t.schema_list_fields)?t.schema_list_fields:void 0,schema_filter_fields:Array.isArray(t.schema_filter_fields)?t.schema_filter_fields:void 0}}throw Error(`列表响应格式无效`)}function o(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}function s(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)}async function c(e){try{let{data:n}=await t.get(`/competitions/${e}/audience-sessions`);return r(n)}catch(e){n(e,`加载观众场次失败`)}}async function l(e,r){try{let{data:n}=await t.post(`/competitions/${e}/audience-sessions`,r);return i(n,`创建场次无效`)}catch(e){n(e,`创建场次失败`)}}async function u(e,r,a){try{let{data:n}=await t.patch(`/competitions/${e}/audience-sessions/${r}`,a);return i(n,`更新场次无效`)}catch(e){n(e,`更新场次失败`)}}async function d(e,t,n){return u(e,t,n)}async function f(r,i){try{await t.delete(`/competitions/${r}/audience-sessions/${i}`)}catch(a){e.isAxiosError(a)&&a.response?.status===422&&n(a,`删除失败`);try{await t.post(`/competitions/${r}/audience-sessions/${i}/delete`)}catch(e){n(e,`删除失败`)}}}async function p(e,r){try{let{data:n}=await t.get(`/competitions/${e}/audience-registrations`,{params:r});return a(n)}catch(e){n(e,`加载观众报名失败`)}}async function m(e,n){let r=await t.get(`/competitions/${e}/audience-registrations/export`,{params:n,responseType:`blob`});if(r.data.type===`application/json`){let e=await r.data.text();try{let t=JSON.parse(e);throw Error(t.message||`导出失败`)}catch(e){throw e instanceof Error&&e.message!==`导出失败`?e:Error(`导出失败`)}}let i=o(r.headers[`content-disposition`],`观众报名.xlsx`);s(r.data,i)}async function h(e,r){try{let{data:n}=await t.get(`/competitions/${e}/audience-checkin-stats`,{params:r?{audience_session_id:r}:void 0});return n}catch(e){n(e,`加载到场统计失败`)}}async function g(e,r){try{let{data:n}=await t.post(`/competitions/${e}/audience-checkin`,r);return n}catch(e){n(e,`核销失败`)}}async function _(e,r){try{let{data:n}=await t.post(`/competitions/${e}/audience-registrations/${r}/checkin`);return n}catch(e){n(e,`核销失败`)}}export{m as a,c,f as i,u as l,_ as n,h as o,l as r,p as s,g as t,d as u};
|
||||
@ -1,2 +1,2 @@
|
||||
import{_ as e}from"./api-Dpfxb1ca.js";import{c as t,s as n}from"./index-D5exsJys.js";function r(e,n){if(t.isAxiosError(e)){let t=e.response?.data,r=t&&typeof t==`object`?t:{};return(typeof r.message==`string`?r.message:``)||(r.errors&&typeof r.errors==`object`?Object.values(r.errors).flat().join(`
|
||||
import{_ as e}from"./api-Dpfxb1ca.js";import{c as t,s as n}from"./index-iRzk6lDR.js";function r(e,n){if(t.isAxiosError(e)){let t=e.response?.data,r=t&&typeof t==`object`?t:{};return(typeof r.message==`string`?r.message:``)||(r.errors&&typeof r.errors==`object`?Object.values(r.errors).flat().join(`
|
||||
`):``)||e.message||n}return e instanceof Error?e.message:n}async function i(e){try{let{data:t}=await n.post(`/auth/login`,e);return o(t,`platform`)}catch(e){throw Error(r(e,`登录失败`))}}async function a(n){try{let{data:r}=await t.post(`${e()}/api/v1/manage/auth/login`,n,{headers:{Accept:`application/json`,"Content-Type":`application/json`}});return o(r)}catch(e){throw Error(r(e,`登录失败`))}}function o(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 s(e){try{await n.patch(`/auth/password`,e)}catch(e){throw Error(r(e,`修改密码失败`))}}async function c(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(r(e,`修改密码失败`))}}export{a as i,s as n,c as r,i as t};
|
||||
@ -1 +1 @@
|
||||
import{c as e,s as t}from"./index-D5exsJys.js";function n(t,n){if(e.isAxiosError(t)){let e=t.response?.data;if(e?.errors&&typeof e.errors==`object`){let t=Object.values(e.errors).flat()[0];if(t)throw Error(String(t))}if(typeof e?.message==`string`&&e.message.trim())throw Error(e.message.trim())}throw t instanceof Error?t:Error(n)}function r(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 i(e,i){try{let{data:n}=await t.get(`/competitions/${e}/admins`,{params:i});return r(n)}catch(e){n(e,`加载赛事管理员失败`)}}async function a(e,r){try{let{data:n}=await t.post(`/competitions/${e}/admins`,r);return n}catch(e){n(e,`创建赛事管理员失败`)}}async function o(e,r,i){try{let{data:n}=await t.patch(`/competitions/${e}/admins/${r}`,i);return n}catch(e){n(e,`更新赛事管理员失败`)}}async function s(e,r){try{await t.delete(`/competitions/${e}/admins/${r}`)}catch{try{await t.post(`/competitions/${e}/admins/${r}/delete`)}catch(e){n(e,`删除失败`)}}}export{o as i,s as n,i as r,a as t};
|
||||
import{c as e,s as t}from"./index-iRzk6lDR.js";function n(t,n){if(e.isAxiosError(t)){let e=t.response?.data;if(e?.errors&&typeof e.errors==`object`){let t=Object.values(e.errors).flat()[0];if(t)throw Error(String(t))}if(typeof e?.message==`string`&&e.message.trim())throw Error(e.message.trim())}throw t instanceof Error?t:Error(n)}function r(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 i(e,i){try{let{data:n}=await t.get(`/competitions/${e}/admins`,{params:i});return r(n)}catch(e){n(e,`加载赛事管理员失败`)}}async function a(e,r){try{let{data:n}=await t.post(`/competitions/${e}/admins`,r);return n}catch(e){n(e,`创建赛事管理员失败`)}}async function o(e,r,i){try{let{data:n}=await t.patch(`/competitions/${e}/admins/${r}`,i);return n}catch(e){n(e,`更新赛事管理员失败`)}}async function s(e,r){try{await t.delete(`/competitions/${e}/admins/${r}`)}catch{try{await t.post(`/competitions/${e}/admins/${r}/delete`)}catch(e){n(e,`删除失败`)}}}export{o as i,s as n,i as r,a as t};
|
||||
@ -1 +1 @@
|
||||
import{g as e,r as t}from"./api-Dpfxb1ca.js";import{s as n}from"./index-D5exsJys.js";function r(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 i(e){let{data:t}=await n.get(`/competitions`,{params:e});return r(t)}async function a(e){let{data:t}=await n.get(`/competitions/${e}`),r=t?.data??t;if(!r||typeof r!=`object`)throw Error(`赛事详情无效`);return r}async function o(e){let{data:t}=await n.post(`/competitions`,e),r=t?.data??t;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function s(e,t){let{data:r}=await n.patch(`/competitions/${e}`,t),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function c(e,t){let{data:r}=await n.patch(`/competitions/${e}`,t),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function l(e){let{data:t}=await n.get(`/competitions/${e}/tracks`),r=t?.data??t;if(!Array.isArray(r))throw Error(`赛道列表无效`);return r}async function u(e,t){let{data:r}=await n.post(`/competitions/${e}/tracks`,t),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`创建赛道无效`);return i}async function d(e,t,r){let{data:i}=await n.put(`/competitions/${e}/tracks/${t}`,r),a=i?.data??i;if(!a||typeof a!=`object`)throw Error(`更新赛道无效`);return a}async function f(e,t){await n.delete(`/competitions/${e}/tracks/${t}`)}function p(e){if(!e||typeof e!=`object`)return``;let t=e,n=t.data!=null&&typeof t.data==`object`&&!Array.isArray(t.data)?t.data:t,r=n.url??n.logoUrl;return typeof r==`string`?r:``}function m(e,t){if(!e||typeof e!=`object`)return t;let n=e;if(typeof n.message==`string`&&n.message.trim())return n.message.trim();let r=n.errors;if(r&&typeof r==`object`&&!Array.isArray(r)){let e=Object.values(r)[0];if(Array.isArray(e)&&e.length)return String(e[0])}return t}async function h(n,r){let i=new FormData;i.append(`file`,r);let a=localStorage.getItem(t),o=await fetch(`${e()}/competitions/${n}/logo`,{method:`POST`,headers:{Accept:`application/json`,...a?{Authorization:`Bearer ${a}`}:{}},body:i}),s=await o.json().catch(()=>({}));if(!o.ok)throw Error(m(s,`Logo 上传失败`));let c=p(s);if(!c)throw Error(`Logo 上传响应无效`);return c}async function g(e){await n.delete(`/competitions/${e}/logo`)}export{a,c,h as d,f as i,s as l,u as n,i as o,g as r,l as s,o as t,d as u};
|
||||
import{g as e,r as t}from"./api-Dpfxb1ca.js";import{s as n}from"./index-iRzk6lDR.js";function r(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 i(e){let{data:t}=await n.get(`/competitions`,{params:e});return r(t)}async function a(e){let{data:t}=await n.get(`/competitions/${e}`),r=t?.data??t;if(!r||typeof r!=`object`)throw Error(`赛事详情无效`);return r}async function o(e){let{data:t}=await n.post(`/competitions`,e),r=t?.data??t;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function s(e,t){let{data:r}=await n.patch(`/competitions/${e}`,t),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function c(e,t){let{data:r}=await n.patch(`/competitions/${e}`,t),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function l(e){let{data:t}=await n.get(`/competitions/${e}/tracks`),r=t?.data??t;if(!Array.isArray(r))throw Error(`赛道列表无效`);return r}async function u(e,t){let{data:r}=await n.post(`/competitions/${e}/tracks`,t),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`创建赛道无效`);return i}async function d(e,t,r){let{data:i}=await n.put(`/competitions/${e}/tracks/${t}`,r),a=i?.data??i;if(!a||typeof a!=`object`)throw Error(`更新赛道无效`);return a}async function f(e,t){await n.delete(`/competitions/${e}/tracks/${t}`)}function p(e){if(!e||typeof e!=`object`)return``;let t=e,n=t.data!=null&&typeof t.data==`object`&&!Array.isArray(t.data)?t.data:t,r=n.url??n.logoUrl;return typeof r==`string`?r:``}function m(e,t){if(!e||typeof e!=`object`)return t;let n=e;if(typeof n.message==`string`&&n.message.trim())return n.message.trim();let r=n.errors;if(r&&typeof r==`object`&&!Array.isArray(r)){let e=Object.values(r)[0];if(Array.isArray(e)&&e.length)return String(e[0])}return t}async function h(n,r){let i=new FormData;i.append(`file`,r);let a=localStorage.getItem(t),o=await fetch(`${e()}/competitions/${n}/logo`,{method:`POST`,headers:{Accept:`application/json`,...a?{Authorization:`Bearer ${a}`}:{}},body:i}),s=await o.json().catch(()=>({}));if(!o.ok)throw Error(m(s,`Logo 上传失败`));let c=p(s);if(!c)throw Error(`Logo 上传响应无效`);return c}async function g(e){await n.delete(`/competitions/${e}/logo`)}export{a,c,h as d,f as i,s as l,u as n,i as o,g as r,l as s,o as t,d as u};
|
||||
@ -1 +1 @@
|
||||
import{h as e}from"./index-D5exsJys.js";var t=!1;function n(){return t}function r(e){return e==null||!Number.isFinite(e)||e<=0?``:e<1024*1024?`约 ${Math.max(1,Math.round(e/1024))} KB`:`约 ${(e/(1024*1024)).toFixed(1)} MB`}function i(n,i,a=`下载`){if(t)return e.warning(`附件正在${a}中,请勿重复点击`),null;t=!0;let o=n.trim()||`附件`,s=r(i),c=e({type:`info`,message:s?`正在准备${a}「${o}」(${s}),文件较大时请耐心等待…`:`正在准备${a}「${o}」,请稍候…`,duration:0,showClose:!0});return{setText:t=>{c.close(),c=e({type:`info`,message:t,duration:0,showClose:!0})},close:()=>{c.close(),t=!1}}}function a(){e.success(`下载已开始,请查看浏览器下载进度`)}export{n,a as r,i as t};
|
||||
import{h as e}from"./index-iRzk6lDR.js";var t=!1;function n(){return t}function r(e){return e==null||!Number.isFinite(e)||e<=0?``:e<1024*1024?`约 ${Math.max(1,Math.round(e/1024))} KB`:`约 ${(e/(1024*1024)).toFixed(1)} MB`}function i(n,i,a=`下载`){if(t)return e.warning(`附件正在${a}中,请勿重复点击`),null;t=!0;let o=n.trim()||`附件`,s=r(i),c=e({type:`info`,message:s?`正在准备${a}「${o}」(${s}),文件较大时请耐心等待…`:`正在准备${a}「${o}」,请稍候…`,duration:0,showClose:!0});return{setText:t=>{c.close(),c=e({type:`info`,message:t,duration:0,showClose:!0})},close:()=>{c.close(),t=!1}}}function a(){e.success(`下载已开始,请查看浏览器下载进度`)}export{n,a as r,i as t};
|
||||
@ -1 +1 @@
|
||||
import{s as e}from"./index-D5exsJys.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{s as e}from"./index-iRzk6lDR.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{s as e}from"./index-D5exsJys.js";async function t(t){let{data:n}=await e.post(`/reviewers`,t),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function n(t,n){let{data:r}=await e.patch(`/reviewers/${t}`,n),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function r(t){await e.post(`/reviewers/${t}/delete`)}function i(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 a(t){let{data:n}=await e.get(`/reviewer-scopes`,{params:t});return i(n)}async function o(t){let{data:n}=await e.get(`/competitions/${t}/reviewer-scope-track-counts`),r=n?.data??n;return!r||typeof r!=`object`?{}:r}async function s(t){let{data:n}=await e.get(`/competitions/${t}/reviewer-scope-region-counts`),r=n?.data??n;return!r||typeof r!=`object`?{}:r}async function c(t){let{data:n}=await e.post(`/reviewer-scopes`,t),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function l(t){await e.post(`/reviewer-scopes/${t}/delete`)}export{a,n as c,o as i,l as n,t as o,s as r,r as s,c as t};
|
||||
import{s as e}from"./index-iRzk6lDR.js";async function t(t){let{data:n}=await e.post(`/reviewers`,t),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function n(t,n){let{data:r}=await e.patch(`/reviewers/${t}`,n),i=r?.data??r;if(!i||typeof i!=`object`)throw Error(`更新响应无效`);return i}async function r(t){await e.post(`/reviewers/${t}/delete`)}function i(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 a(t){let{data:n}=await e.get(`/reviewer-scopes`,{params:t});return i(n)}async function o(t){let{data:n}=await e.get(`/competitions/${t}/reviewer-scope-track-counts`),r=n?.data??n;return!r||typeof r!=`object`?{}:r}async function s(t){let{data:n}=await e.get(`/competitions/${t}/reviewer-scope-region-counts`),r=n?.data??n;return!r||typeof r!=`object`?{}:r}async function c(t){let{data:n}=await e.post(`/reviewer-scopes`,t),r=n?.data??n;if(!r||typeof r!=`object`)throw Error(`创建响应无效`);return r}async function l(t){await e.post(`/reviewer-scopes/${t}/delete`)}export{a,n as c,o as i,l as n,t as o,s as r,r as s,c as t};
|
||||
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 9.3 KiB |