PageSourceSearch

https://mintminer.com/assets/RedeemView-PsozsaJx.js

js mintminer.com collected 2026-10-06 08:10:05 UTC 11,663 bytes, 1 lines download raw bytes

1import{d as P,c as U,r as y,o as W,D as v,K as F,B as e,k as p,G as s,u as a,U as L,Q as G,W as K,z as n,H as f,E as m,_ as H,F as Q,V as J,C as d,A as z}from"./vendor-vue-Dzwqm9Y9.js";import{f as D,u as O,a as X,c as Y,a6 as Z,_ as u,h as ee,D as te}from"./index-BB-1BiLf.js";import{_ as se}from"./AppLayout.vue_vue_type_script_setup_true_lang-DU-NXSvm.js";import{u as re}from"./vendor-i18n-BuoWFzps.js";import"./vendor-misc-B-nM3tYW.js";import"./AppHeader.vue_vue_type_style_index_0_scoped_80f3916c_lang-CWJeTQGo.js";import"./useClipboard-00CrFCqB.js";import"./featureFlags-DuhANbyz.js";import"./LocaleSwitcher-DwqRgoPh.js";/* empty css                                                                       */async function ae(b){const t={code:b},{data:k}=await D.post("/redeem",t);return k}async function de(){const{data:b}=await D.get("/redeem/history");return b}const T={redeem:ae,getHistory:de},oe={class:"mx-auto max-w-2xl space-y-6"},ne={class:"card overflow-hidden"},le={class:"bg-gradient-to-br from-primary-500 to-primary-600 px-6 py-8 text-center"},ce={class:"mb-4 inline-flex h-16 w-16 items-center justify-center rounded-2xl bg-white/20 backdrop-blur-sm"},ie={class:"text-sm font-medium text-primary-100"},ue={class:"mt-2 text-4xl font-bold text-white"},me={class:"mt-2 text-sm text-primary-100"},pe={class:"card"},_e={class:"p-6"},ye={for:"code",class:"input-label"},xe={class:"relative mt-1"},he={class:"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-4"},ve=["placeholder","disabled"],fe={class:"input-hint"},be=["disabled"],ke={key:0,class:"-ml-1 mr-2 h-5 w-5 animate-spin",fill:"none",viewBox:"0 0 24 24"},ge={key:0,class:"card border-emerald-200 bg-emerald-50 dark:border-emerald-800/50 dark:bg-emerald-900/20"},we={class:"p-6"},Ce={class:"flex items-start gap-4"},Ae={class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-xl bg-emerald-100 dark:bg-emerald-900/30"},ze={class:"flex-1"},$e={class:"text-sm font-semibold text-emerald-800 dark:text-emerald-300"},Re={class:"mt-2 text-sm text-emerald-700 dark:text-emerald-400"},Se={class:"mt-3 space-y-1"},Fe={key:0,class:"font-medium"},Be={key:1,class:"font-medium"},Ve={key:2,class:"font-medium"},je={key:0},He={key:1},Te={key:3},De={class:"font-semibold"},Me={key:4},Ie={class:"font-semibold"},qe={key:0,class:"card border-red-200 bg-red-50 dark:border-red-800/50 dark:bg-red-900/20"},Ee={class:"p-6"},Ne={class:"flex items-start gap-4"},Pe={class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-xl bg-red-100 dark:bg-red-900/30"},Ue={class:"flex-1"},We={class:"text-sm font-semibold text-red-800 dark:text-red-300"},Le={class:"mt-2 text-sm text-red-700 dark:text-red-400"},Ge={class:"card border-primary-200 bg-primary-50 dark:border-primary-800/50 dark:bg-primary-900/20"},Ke={class:"p-6"},Qe={class:"flex items-start gap-4"},Je={class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-xl bg-primary-100 dark:bg-primary-900/30"},Oe={class:"flex-1"},Xe={class:"text-sm font-semibold text-primary-800 dark:text-primary-300"},Ye={class:"mt-2 list-inside list-disc space-y-1 text-sm text-primary-700 dark:text-primary-400"},Ze={key:0,class:"ml-1.5 inline-flex items-center rounded-md bg-primary-200/50 px-2 py-0.5 text-xs font-medium text-primary-800 dark:bg-primary-800/40 dark:text-primary-200"},et={class:"card"},tt={class:"border-b border-gray-100 px-6 py-4 dark:border-dark-700"},st={class:"text-lg font-semibold text-gray-900 dark:text-white"},rt={class:"p-6"},at={key:0,class:"flex items-center justify-center py-8"},dt={key:1,class:"space-y-3"},ot={class:"flex items-center gap-4"},nt={class:"text-sm font-medium text-gray-900 dark:text-white"},lt={class:"text-xs text-gray-500 dark:text-dark-400"},ct={class:"text-right"},it={key:0,class:"font-mono text-xs text-gray-400 dark:text-dark-500"},ut={key:1,class:"text-xs text-gray-400 dark:text-dark-500"},mt=["title"],pt={key:2,class:"empty-state py-8"},_t={class:"mb-4 flex h-16 w-16 items-center justify-center rounded-2xl bg-gray-100 dark:bg-dark-800"},yt={class:"text-sm text-gray-500 dark:text-dark-400"},xt=P({__name:"RedeemView",setup(b){const{t}=re(),k=O(),g=X(),M=Y(),B=U(()=>k.user),x=y(""),h=y(!1),l=y(null),w=y(""),$=y([]),R=y(!1),S=y(""),C=r=>r==="balance"||r==="admin_balance",A=r=>r==="subscription",I=r=>r==="admin_balance"||r==="admin_concurrency",q=r=>r.type==="balance"?t("redeem.balanceAddedRedeem"):r.type==="admin_balance"?r.value>
1=0?t("redeem.balanceAddedAdmin"):t("redeem.balanceDeductedAdmin"):r.type==="concurrency"?t("redeem.concurrencyAddedRedeem"):r.type==="admin_concurrency"?r.value>=0?t("redeem.concurrencyAddedAdmin"):t("redeem.concurrencyReducedAdmin"):r.type==="subscription"?t("redeem.subscriptionAssigned"):t("common.unknown"),E=r=>{var c;if(C(r.type))return`${r.value>=0?"+":""}$${r.value.toFixed(2)}`;if(A(r.type)){const i=r.validity_days||Math.round(r.value),_=((c=r.group)==null?void 0:c.name)||"";return _?`${i}${t("redeem.days")} - ${_}`:`${i}${t("redeem.days")}`}else return`${r.value>=0?"+":""}${r.value} ${t("redeem.requests")}`},V=async()=>{R.value=!0;try{$.value=await T.getHistory()}catch(r){console.error("Failed to fetch history:",r)}finally{R.value=!1}},N=async()=>{var r,c;if(!x.value.trim()){g.showError(t("redeem.pleaseEnterCode"));return}h.value=!0,w.value="",l.value=null;try{const i=await T.redeem(x.value.trim());if(l.value=i,await k.refreshUser(),i.type==="subscription")try{await M.fetchActiveSubscriptions(!0)}catch(_){console.error("Failed to refresh subscriptions after redeem:",_),g.showWarning(t("redeem.subscriptionRefreshFailed"))}x.value="",await V(),g.showSuccess(t("redeem.codeRedeemSuccess"))}catch(i){w.value=((c=(r=i.response)==null?void 0:r.data)==null?void 0:c.detail)||t("redeem.failedToRedeem"),g.showError(t("redeem.redeemFailed"))}finally{h.value=!1}};return W(async()=>{V();try{const r=await Z.getPublicSettings();S.value=r.contact_info||""}catch(r){console.error("Failed to load contact info:",r)}}),(r,c)=>(d(),v(se,null,{default:F(()=>{var i,_,j;return[e("div",oe,[e("div",ne,[e("div",le,[e("div",ce,[p(u,{name:"creditCard",size:"xl",class:"text-white"})]),e("p",ie,s(a(t)("redeem.currentBalance")),1),e("p",ue," $"+s(((_=(i=B.value)==null?void 0:i.balance)==null?void 0:_.toFixed(2))||"0.00"),1),e("p",me,s(a(t)("redeem.concurrency"))+": "+s(((j=B.value)==null?void 0:j.concurrency)||0)+" "+s(a(t)("redeem.requests")),1)])]),e("div",pe,[e("div",_e,[e("form",{onSubmit:L(N,["prevent"]),class:"space-y-5"},[e("div",null,[e("label",ye,s(a(t)("redeem.redeemCodeLabel")),1),e("div",xe,[e("div",he,[p(u,{name:"gift",size:"md",class:"text-gray-400 dark:text-dark-500"})]),G(e("input",{id:"code","onUpdate:modelValue":c[0]||(c[0]=o=>x.value=o),type:"text",required:"",placeholder:a(t)("redeem.redeemCodePlaceholder"),disabled:h.value,class:"input py-3 pl-12 text-lg"},null,8,ve),[[K,x.value]])]),e("p",fe,s(a(t)("redeem.redeemCodeHint")),1)]),e("button",{type:"submit",disabled:!x.value||h.value,class:"btn btn-primary w-full py-3"},[h.value?(d(),n("svg",ke,[...c[1]||(c[1]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):(d(),v(u,{key:1,name:"checkCircle",size:"md",class:"mr-2"})),f(" "+s(h.value?a(t)("redeem.redeeming"):a(t)("redeem.redeemButton")),1)],8,be)],32)])]),p(H,{name:"fade"},{default:F(()=>[l.value?(d(),n("div",ge,[e("div",we,[e("div",Ce,[e("div",Ae,[p(u,{name:"checkCircle",size:"md",class:"text-emerald-600 dark:text-emerald-400"})]),e("div",ze,[e("h3",$e,s(a(t)("redeem.redeemSuccess")),1),e("div",Re,[e("p",null,s(l.value.message),1),e("div",Se,[l.value.type==="balance"?(d(),n("p",Fe,s(a(t)("redeem.added"))+": $"+s(l.value.value.toFixed(2)),1)):l.value.type==="concurrency"?(d(),n("p",Be,s(a(t)("redeem.added"))+": "+s(l.value.value)+" "+s(a(t)("redeem.concurrentRequests")),1)):l.value.type==="subscription"?(d(),n("p",Ve,[f(s(a(t)("redeem.subscriptionAssigned"))+" ",1),l.value.group_name?(d(),n("span",je," - "+s(l.value.group_name),1)):m("",!0),l.value.validity_days?(d(),n("span",He," ("+s(a(t)("redeem.subscriptionDays",{days:l.value.validity_days}))+")",1)):m("",!0)])):m("",!0),l.value.new_balance!==void 0?(d(),n("p",Te,[f(s(a(t)("redeem.newBalance"))+": ",1),e("span",De,"$"+s(l.value.new_balance.toFixed(2)),1)])):m("",!0),l.value.new_concurrency!==void 0?(d(),n("p",Me,[f(s(a(t)("redeem.newConcurrency"))+": ",1),e("span",Ie,s(l.value.new_concurrency)+" "+s(a(t)("redeem.requests")),1)])):m("",!0)])])])])])])):m("",!0)]),_:1}),p(H,{name:"fade"},{default:F(()=>[w.value?(d(),n("div",qe,[e("div",Ee,[e("div",Ne,[e("div",Pe,[p(u,{name:"exclamationCircle",size:"md",class:"text-red-600 dark:text-red-400"})]),e("div",Ue,[e("h3",We,s(a(t)("redeem.redeemFailed")),1),e("p",Le,s(w.value),1)])])])])):m("",!0)]),_:1}),e("div",Ge,[e("div",Ke,[e("div",Qe,[e("div",Je,[p(u,{name:"infoCircle",size:"md",class:"text-primary-600 dark:text-primary-400"})]),e("div",Oe,[e("h3",Xe,s(a(t)("redeem.aboutCodes")),1),e("ul",Ye,[e("li",null,s(a(t)("redeem.codeRule1")),1),e("li",null,s(a(t)("redeem.codeRule2")),1),e("li",null,[f(s(a(t)("redeem.codeRule3"))+" ",1),S.value?(d(),n("span",Ze,s(S.value),1)):m("",!0)]),e("li",null,s(a(t)("redeem.codeRule4")),1)])])])])]),e("div",et,[e("div",tt,[e("h2",st,s(a(t)("redeem.recentActivity")),1)]),e("div",rt,[R.value?(d(),n("div",at,[...c[2]||(c[2]=[e("svg",{class:"h-6 w-6 animate-spin text-primary-500",fill:"none",viewBox:"0 0 24 24"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})],-1)])])):$.value.length>0?(d(),n("div",dt,[(d(!0),n(Q,null,J($.value,o=>(d(),n("div",{key:o.id,class:"flex items-center justify-between rounded-xl bg-gray-50 p-4 dark:bg-dark-800"},[e("div",ot,[e("div",{class:z(["flex h-10 w-10 items-center justify-center rounded-xl",C(o.type)?o.value>=0?"bg-emerald-100 dark:bg-emerald-900/30":"bg-red-100 dark:bg-red-900/30":A(o.type)?"bg-purple-100 dar
1k:bg-purple-900/30":o.value>=0?"bg-blue-100 dark:bg-blue-900/30":"bg-orange-100 dark:bg-orange-900/30"])},[C(o.type)?(d(),v(u,{key:0,name:"dollar",size:"md",class:z(o.value>=0?"text-emerald-600 dark:text-emerald-400":"text-red-600 dark:text-red-400")},null,8,["class"])):A(o.type)?(d(),v(u,{key:1,name:"badge",size:"md",class:"text-purple-600 dark:text-purple-400"})):(d(),v(u,{key:2,name:"bolt",size:"md",class:z(o.value>=0?"text-blue-600 dark:text-blue-400":"text-orange-600 dark:text-orange-400")},null,8,["class"]))],2),e("div",null,[e("p",nt,s(q(o)),1),e("p",lt,s(a(ee)(o.used_at)),1)])]),e("div",ct,[e("p",{class:z(["text-sm font-semibold",C(o.type)?o.value>=0?"text-emerald-600 dark:text-emerald-400":"text-red-600 dark:text-red-400":A(o.type)?"text-purple-600 dark:text-purple-400":o.value>=0?"text-blue-600 dark:text-blue-400":"text-orange-600 dark:text-orange-400"])},s(E(o)),3),I(o.type)?(d(),n("p",ut,s(a(t)("redeem.adminAdjustment")),1)):(d(),n("p",it,s(o.code.slice(0,8))+"... ",1)),o.notes?(d(),n("p",{key:2,class:"mt-1 text-xs text-gray-500 dark:text-dark-400 italic max-w-[200px] truncate",title:o.notes},s(o.notes),9,mt)):m("",!0)])]))),128))])):(d(),n("div",pt,[e("div",_t,[p(u,{name:"clock",size:"xl",class:"text-gray-400 dark:text-dark-500"})]),e("p",yt,s(a(t)("redeem.historyWillAppear")),1)]))])])])]}),_:1}))}}),$t=te(xt,[["__scopeId","data-v-df21640c"]]);export{$t as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.