3 lines
11 KiB
JavaScript
3 lines
11 KiB
JavaScript
|
|
import{a0 as K,u as G,a as Q,r as J,j as e,v as C,y as b,z as w,ag as O,ah as F,p as Y,B as V,ao as z}from"./index-CZD3_4lD.js";import{u as P}from"./useQuery-CHKCqCt4.js";import{B as M}from"./badge-D3Mn__J4.js";import{P as W}from"./progress-BVXi0hgU.js";import{d as E,T as v}from"./differenceInDays-BjWVl97D.js";import{A as Z}from"./arrow-left-DyClWdEf.js";import{H as ee}from"./heart-Bn8C2h_q.js";import{C as te}from"./clock-CHYQgZWG.js";import{t as m,c as se,g as H,e as B,m as R,a as D,b as ne,f as I,d as ae,s as re}from"./sv-KqUX0hpM.js";import{C as ce}from"./calendar-3jVgdv6R.js";import{I as q}from"./image-CUEcTqim.js";import{U as oe}from"./upload-B_ploHV0.js";function _(s,n){const t=m(s),d=m(n),a=t.getTime()-d.getTime();return a<0?-1:a>0?1:a}function ie(s){return se(s,Date.now())}function le(s,n){const t=m(s),d=m(n),a=t.getFullYear()-d.getFullYear(),h=t.getMonth()-d.getMonth();return a*12+h}function de(s){return n=>{const d=(s?Math[s]:Math.trunc)(n);return d===0?0:d}}function me(s,n){return+m(s)-+m(n)}function ue(s){const n=m(s);return n.setHours(23,59,59,999),n}function fe(s){const n=m(s),t=n.getMonth();return n.setFullYear(n.getFullYear(),t+1,0),n.setHours(23,59,59,999),n}function he(s){const n=m(s);return+ue(n)==+fe(n)}function xe(s,n){const t=m(s),d=m(n),a=_(t,d),h=Math.abs(le(t,d));let x;if(h<1)x=0;else{t.getMonth()===1&&t.getDate()>27&&t.setDate(30),t.setMonth(t.getMonth()-a*h);let r=_(t,d)===-a;he(m(s))&&h===1&&_(s,d)===1&&(r=!1),x=a*(h-Number(r))}return x===0?0:x}function ge(s,n,t){const d=me(s,n)/1e3;return de(t==null?void 0:t.roundingMethod)(d)}function pe(s,n,t){const d=ne(),a=(t==null?void 0:t.locale)??d.locale??B,h=2520,x=_(s,n);if(isNaN(x))throw new RangeError("Invalid time value");const r=Object.assign({},t,{addSuffix:t==null?void 0:t.addSuffix,comparison:x});let l,p;x>0?(l=m(n),p=m(s)):(l=m(s),p=m(n));const i=ge(p,l),j=(H(p)-H(l))/1e3,c=Math.round((i-j)/60);let f;if(c<2)return t!=null&&t.includeSeconds?i<5?a.formatDistance("lessThanXSeconds",5,r):i<10?a.formatDistance("lessThanXSeconds",10,r):i<20?a.formatDistance("lessThanXSeconds",20,r):i<40?a.formatDistance("halfAMinute",0,r):i<60?a.formatDistance("lessThanXMinutes",1,r):a.formatDistance("xMinutes",1,r):c===0?a.formatDistance("lessThanXMinutes",1,r):a.formatDistance("xMinutes",c,r);if(c<45)return a.formatDistance("xMinutes",c,r);if(c<90)return a.formatDistance("aboutXHours",1,r);if(c<R){const u=Math.round(c/60);return a.formatDistance("aboutXHours",u,r)}else{if(c<h)return a.formatDistance("xDays",1,r);if(c<D){const u=Math.round(c/R);return a.formatDistance("xDays",u,r)}else if(c<D*2)return f=Math.round(c/D),a.formatDistance("aboutXMonths",f,r)}if(f=xe(p,l),f<12){const u=Math.round(c/D);return a.formatDistance("xMonths",u,r)}else{const u=f%12,g=Math.trunc(f/12);return u<3?a.formatDistance("aboutXYears",g,r):u<9?a.formatDistance("overXYears",g,r):a.formatDistance("almostXYears",g+1,r)}}function je(s,n){return pe(s,ie(s),n)}const Se=()=>{var X;const{contestId:s}=K(),n=G(),{t,i18n:d}=Q(),[a,h]=J.useState("info"),r=(()=>{switch(d.language){case"sv":return re;case"de":return ae;default:return B}})(),{data:l,isLoading:p}=P({queryKey:["photo-contest",s],queryFn:async()=>await z(`/photo-contests/${s}`),enabled:!!s}),{data:i}=P({queryKey:["contest-entries",s],queryFn:async()=>await z(`/contest-photos?contest_id=${s}&is_approved=true&order=votes_count.desc`)||[],enabled:!!s});if(p||!l)return e.jsx("div",{className:"min-h-screen bg-background flex items-center justify-center",children:e.jsx("div",{className:"animate-spin w-8 h-8 border-2 border-primary border-t-transparent rounded-full"})});const j=l.charity,c=(j==null?void 0:j.gradient_colors)||["#059669","#0D9488"],f=new Date,u=new Date(l.ends_at),g=new Date(l.starts_at),y=f>=g&&f<=u,k=f>u,S=E(u,f),$=E(u,g),U=Math.min(100,Math.max(0,($-S)/$*100)),L=(i==null?void 0:i.filter(o=>o.is_winner))||[],T=(i==null?void 0:i.slice(0,6))||[],A=(X=T==null?void 0:T[0])==null?void 0:X.photo_url;return e.jsxs("div",{className:"min-h-screen bg-background pb-32 safe-area-top safe-area-x",children:[e.jsxs("header",{className:"rel
|
||
|
|
//# sourceMappingURL=PhotoContest-ByCNK-WJ.js.map
|