fix: replace TiltedCard with SpotlightCard in default theme features
TiltedCard requires an imageSrc prop (renders <img>), but was used as a children container, causing broken image icons. Replaced with SpotlightCard which properly supports children content. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
662685cc97
commit
a512c4c344
26 files changed
+159
-157
No files matched your search
@@ -1 +1 @@
|
||||
import{r as F,j as te}from"./index-IL0bf27q.js";function kt(t){const e=F.useRef(null);return e.current===null&&(e.current=t()),e.current}const ee=typeof window<"u",se=ee?F.useLayoutEffect:F.useEffect;function ne(t,e){t.indexOf(e)===-1&&t.push(e)}function re(t,e){const s=t.indexOf(e);s>-1&&t.splice(s,1)}const U=(t,e,s)=>s>e?e:s<t?t:s;let It=()=>{};const dt={},et=t=>t,ie=(t,e)=>s=>e(t(s)),pt=(...t)=>t.reduce(ie),Et=(t,e,s)=>{const r=e-t;return r===0?1:(s-t)/r};class oe{constructor(){this.subscriptions=[]}add(e){return ne(this.subscriptions,e),()=>re(this.subscriptions,e)}notify(e,s,r){const n=this.subscriptions.length;if(n)if(n===1)this.subscriptions[0](e,s,r);else for(let i=0;i<n;i++){const o=this.subscriptions[i];o&&o(e,s,r)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const L=t=>t*1e3,N=t=>t/1e3;function Pt(t,e){return e?t*(1e3/e):0}const Nt=(t,e,s)=>(((1-3*s+3*e)*t+(3*s-6*e))*t+3*e)*t,ae=1e-7,ce=12;function ue(t,e,s,r,n){let i,o,a=0;do o=e+(s-e)/2,i=Nt(o,r,n)-t,i>0?s=o:e=o;while(Math.abs(i)>ae&&++a<ce);return o}function $(t,e,s,r){if(t===e&&s===r)return et;const n=i=>ue(i,0,1,t,s);return i=>i===0||i===1?i:Nt(n(i),e,r)}const Rt=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Ot=t=>e=>1-t(1-e),Ut=$(.33,1.53,.69,.99),mt=Ot(Ut),le=Rt(mt),fe=t=>t>=1?1:(t*=2)<1?.5*mt(t):.5*(2-Math.pow(2,-10*(t-1))),gt=t=>1-Math.sin(Math.acos(t)),he=Ot(gt),de=Rt(gt),pe=$(.42,0,1,1),me=$(0,0,.58,1),Kt=$(.42,0,.58,1),ge=t=>Array.isArray(t)&&typeof t[0]!="number",ye=t=>Array.isArray(t)&&typeof t[0]=="number",be={linear:et,easeIn:pe,easeInOut:Kt,easeOut:me,circIn:gt,circInOut:de,circOut:he,backIn:mt,backInOut:le,backOut:Ut,anticipate:fe},ve=t=>typeof t=="string",Mt=t=>{if(ye(t)){It(t.length===4);const[e,s,r,n]=t;return $(e,s,r,n)}else if(ve(t))return be[t];return t},J=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function Te(t,e){let s=new Set,r=new Set,n=!1,i=!1;const o=new WeakSet;let a={delta:0,timestamp:0,isProcessing:!1};function u(c){o.has(c)&&(l.schedule(c),t()),c(a)}const l={schedule:(c,f=!1,d=!1)=>{const x=d&&n?s:r;return f&&o.add(c),x.add(c),c},cancel:c=>{r.delete(c),o.delete(c)},process:c=>{if(a=c,n){i=!0;return}n=!0;const f=s;s=r,r=f,s.forEach(u),s.clear(),n=!1,i&&(i=!1,l.process(c))}};return l}const xe=40;function Me(t,e){let s=!1,r=!0;const n={delta:0,timestamp:0,isProcessing:!1},i=()=>s=!0,o=J.reduce((v,g)=>(v[g]=Te(i),v),{}),{setup:a,read:u,resolveKeyframes:l,preUpdate:c,update:f,preRender:d,render:M,postRender:x}=o,m=()=>{const v=dt.useManualTiming,g=v?n.timestamp:performance.now();s=!1,v||(n.delta=r?1e3/60:Math.max(Math.min(g-n.timestamp,xe),1)),n.timestamp=g,n.isProcessing=!0,a.process(n),u.process(n),l.process(n),c.process(n),f.process(n),d.process(n),M.process(n),x.process(n),n.isProcessing=!1,s&&e&&(r=!1,t(m))},T=()=>{s=!0,r=!0,n.isProcessing||t(m)};return{schedule:J.reduce((v,g)=>{const y=o[g];return v[g]=(S,C=!1,b=!1)=>(s||T(),y.schedule(S,C,b)),v},{}),cancel:v=>{for(let g=0;g<J.length;g++)o[J[g]].cancel(v)},state:n,steps:o}}const{schedule:st,cancel:Gt,state:X,steps:Es}=Me(typeof requestAnimationFrame<"u"?requestAnimationFrame:et,!0);let H;function Ae(){H=void 0}const k={now:()=>(H===void 0&&k.set(X.isProcessing||dt.useManualTiming?X.timestamp:performance.now()),H),set:t=>{H=t,queueMicrotask(Ae)}},Lt=t=>e=>typeof e=="string"&&e.startsWith(t),Ps=Lt("--"),Se=Lt("var(--"),De=t=>Se(t)?Fe.test(t.split("/*")[0].trim()):!1,Fe=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function Ns(t){return typeof t!="string"?!1:t.split("/*")[0].includes("var(--")}const yt={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},qt={...yt,transform:t=>U(0,1,t)},Rs={...yt,default:1},q=t=>Math.round(t*1e5)/1e5,Wt=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function we(t){return t==null}const Ve=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,bt=(t,e)=>s=>!!(typeof s=="string"&&Ve.test(s)&&s.startsWith(t)||e&&!we(s)&&Object.prototype.hasOwnProperty.call(s,e)),Bt=(t,e,s)=>r=>{if(typeof r!="string")return r;const[n,i,o,a]=r.match(Wt);return{[t]:parseFloat(n),[e]:parseFloat(i),[s]:parseFloat(o),alpha:a!==void 0?parseFloat(a):1}},Ce=t=>U(0,255,t),rt={...yt,transform:t=>Math.round(Ce(t))},O={test:bt("rgb","red"),parse:Bt("red","green","blue"),transform:({red:t,green:e,blue:s,alpha:r=1})=>"rgba("+rt.transform(t)+", "+rt.transform(e)+", "+rt.transform(s)+", "+q(qt.transform(r))+")"};function ke(t){let e="",s="",r="",n="";return t.length>5?(e=t.substring(1,3),s=t.substring(3,5),r=t.substring(5,7),n=t.substring(7,9)):(e=t.substring(1,2),s=t.substring(2,3),r=t.substring(3,4),n=t.substring(4,5),e+=e,s+=s,r+=r,n+=n),{red:parseInt(e,16),green:parseInt(s,16),blue:parseInt(r,16),alpha:n?parseInt(n,16)/255:1}}const ut={test:bt("#"),parse:ke,transform:O.transform},z=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),OsLine truncated
|
||||
import{r as F,j as te}from"./index-BKzMfs0Y.js";function kt(t){const e=F.useRef(null);return e.current===null&&(e.current=t()),e.current}const ee=typeof window<"u",se=ee?F.useLayoutEffect:F.useEffect;function ne(t,e){t.indexOf(e)===-1&&t.push(e)}function re(t,e){const s=t.indexOf(e);s>-1&&t.splice(s,1)}const U=(t,e,s)=>s>e?e:s<t?t:s;let It=()=>{};const dt={},et=t=>t,ie=(t,e)=>s=>e(t(s)),pt=(...t)=>t.reduce(ie),Et=(t,e,s)=>{const r=e-t;return r===0?1:(s-t)/r};class oe{constructor(){this.subscriptions=[]}add(e){return ne(this.subscriptions,e),()=>re(this.subscriptions,e)}notify(e,s,r){const n=this.subscriptions.length;if(n)if(n===1)this.subscriptions[0](e,s,r);else for(let i=0;i<n;i++){const o=this.subscriptions[i];o&&o(e,s,r)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const L=t=>t*1e3,N=t=>t/1e3;function Pt(t,e){return e?t*(1e3/e):0}const Nt=(t,e,s)=>(((1-3*s+3*e)*t+(3*s-6*e))*t+3*e)*t,ae=1e-7,ce=12;function ue(t,e,s,r,n){let i,o,a=0;do o=e+(s-e)/2,i=Nt(o,r,n)-t,i>0?s=o:e=o;while(Math.abs(i)>ae&&++a<ce);return o}function $(t,e,s,r){if(t===e&&s===r)return et;const n=i=>ue(i,0,1,t,s);return i=>i===0||i===1?i:Nt(n(i),e,r)}const Rt=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Ot=t=>e=>1-t(1-e),Ut=$(.33,1.53,.69,.99),mt=Ot(Ut),le=Rt(mt),fe=t=>t>=1?1:(t*=2)<1?.5*mt(t):.5*(2-Math.pow(2,-10*(t-1))),gt=t=>1-Math.sin(Math.acos(t)),he=Ot(gt),de=Rt(gt),pe=$(.42,0,1,1),me=$(0,0,.58,1),Kt=$(.42,0,.58,1),ge=t=>Array.isArray(t)&&typeof t[0]!="number",ye=t=>Array.isArray(t)&&typeof t[0]=="number",be={linear:et,easeIn:pe,easeInOut:Kt,easeOut:me,circIn:gt,circInOut:de,circOut:he,backIn:mt,backInOut:le,backOut:Ut,anticipate:fe},ve=t=>typeof t=="string",Mt=t=>{if(ye(t)){It(t.length===4);const[e,s,r,n]=t;return $(e,s,r,n)}else if(ve(t))return be[t];return t},J=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function Te(t,e){let s=new Set,r=new Set,n=!1,i=!1;const o=new WeakSet;let a={delta:0,timestamp:0,isProcessing:!1};function u(c){o.has(c)&&(l.schedule(c),t()),c(a)}const l={schedule:(c,f=!1,d=!1)=>{const x=d&&n?s:r;return f&&o.add(c),x.add(c),c},cancel:c=>{r.delete(c),o.delete(c)},process:c=>{if(a=c,n){i=!0;return}n=!0;const f=s;s=r,r=f,s.forEach(u),s.clear(),n=!1,i&&(i=!1,l.process(c))}};return l}const xe=40;function Me(t,e){let s=!1,r=!0;const n={delta:0,timestamp:0,isProcessing:!1},i=()=>s=!0,o=J.reduce((v,g)=>(v[g]=Te(i),v),{}),{setup:a,read:u,resolveKeyframes:l,preUpdate:c,update:f,preRender:d,render:M,postRender:x}=o,m=()=>{const v=dt.useManualTiming,g=v?n.timestamp:performance.now();s=!1,v||(n.delta=r?1e3/60:Math.max(Math.min(g-n.timestamp,xe),1)),n.timestamp=g,n.isProcessing=!0,a.process(n),u.process(n),l.process(n),c.process(n),f.process(n),d.process(n),M.process(n),x.process(n),n.isProcessing=!1,s&&e&&(r=!1,t(m))},T=()=>{s=!0,r=!0,n.isProcessing||t(m)};return{schedule:J.reduce((v,g)=>{const y=o[g];return v[g]=(S,C=!1,b=!1)=>(s||T(),y.schedule(S,C,b)),v},{}),cancel:v=>{for(let g=0;g<J.length;g++)o[J[g]].cancel(v)},state:n,steps:o}}const{schedule:st,cancel:Gt,state:X,steps:Es}=Me(typeof requestAnimationFrame<"u"?requestAnimationFrame:et,!0);let H;function Ae(){H=void 0}const k={now:()=>(H===void 0&&k.set(X.isProcessing||dt.useManualTiming?X.timestamp:performance.now()),H),set:t=>{H=t,queueMicrotask(Ae)}},Lt=t=>e=>typeof e=="string"&&e.startsWith(t),Ps=Lt("--"),Se=Lt("var(--"),De=t=>Se(t)?Fe.test(t.split("/*")[0].trim()):!1,Fe=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function Ns(t){return typeof t!="string"?!1:t.split("/*")[0].includes("var(--")}const yt={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},qt={...yt,transform:t=>U(0,1,t)},Rs={...yt,default:1},q=t=>Math.round(t*1e5)/1e5,Wt=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function we(t){return t==null}const Ve=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,bt=(t,e)=>s=>!!(typeof s=="string"&&Ve.test(s)&&s.startsWith(t)||e&&!we(s)&&Object.prototype.hasOwnProperty.call(s,e)),Bt=(t,e,s)=>r=>{if(typeof r!="string")return r;const[n,i,o,a]=r.match(Wt);return{[t]:parseFloat(n),[e]:parseFloat(i),[s]:parseFloat(o),alpha:a!==void 0?parseFloat(a):1}},Ce=t=>U(0,255,t),rt={...yt,transform:t=>Math.round(Ce(t))},O={test:bt("rgb","red"),parse:Bt("red","green","blue"),transform:({red:t,green:e,blue:s,alpha:r=1})=>"rgba("+rt.transform(t)+", "+rt.transform(e)+", "+rt.transform(s)+", "+q(qt.transform(r))+")"};function ke(t){let e="",s="",r="",n="";return t.length>5?(e=t.substring(1,3),s=t.substring(3,5),r=t.substring(5,7),n=t.substring(7,9)):(e=t.substring(1,2),s=t.substring(2,3),r=t.substring(3,4),n=t.substring(4,5),e+=e,s+=s,r+=r,n+=n),{red:parseInt(e,16),green:parseInt(s,16),blue:parseInt(r,16),alpha:n?parseInt(n,16)/255:1}}const ut={test:bt("#"),parse:ke,transform:O.transform},z=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),OsLine truncated
|
||||
@@ -1 +1 @@
|
||||
import{r as n,j as e,u as M,Q as $,L as k,g as _,d as I,z}from"./index-IL0bf27q.js";import{S}from"./SpotlightCard-DnZRIBvu.js";import{u as A,a as F,C as q}from"./CountUp-BYW6-_IC.js";import{m as K}from"./proxy-C5U9l3lk.js";import{u as Q}from"./use-animation-frame-C8xwlfkl.js";import{u as W}from"./useTranslation-_qZZdhi7.js";const B=({text:s,disabled:t=!1,speed:v=2,className:r="",color:m="#b5b5b5",shineColor:p="#ffffff",spread:g=120,yoyo:j=!1,pauseOnHover:d=!1,direction:u="left",delay:w=0})=>{const[N,b]=n.useState(!1),o=A(0),x=n.useRef(0),a=n.useRef(null),l=n.useRef(u==="left"?1:-1),c=v*1e3,R=w*1e3;Q(f=>{if(t||N){a.current=null;return}if(a.current===null){a.current=f;return}const P=f-a.current;if(a.current=f,x.current+=P,j){const h=c+R,y=h*2,i=x.current%y;if(i<c){const C=i/c*100;o.set(l.current===1?C:100-C)}else if(i<h)o.set(l.current===1?100:0);else if(i<h+c){const T=100-(i-h)/c*100;o.set(l.current===1?T:100-T)}else o.set(l.current===1?0:100)}else{const h=c+R,y=x.current%h;if(y<c){const i=y/c*100;o.set(l.current===1?i:100-i)}else o.set(l.current===1?100:0)}}),n.useEffect(()=>{l.current=u==="left"?1:-1,x.current=0,o.set(0)},[u]);const D=F(o,f=>`${150-f*2}% center`),U=n.useCallback(()=>{d&&b(!0)},[d]),L=n.useCallback(()=>{d&&b(!1)},[d]),E={backgroundImage:`linear-gradient(${g}deg, ${m} 0%, ${m} 35%, ${p} 50%, ${m} 65%, ${m} 100%)`,backgroundSize:"200% auto",WebkitBackgroundClip:"text",backgroundClip:"text",WebkitTextFillColor:"transparent"};return e.jsx(K.span,{className:`inline-block ${r}`,style:{...E,backgroundPosition:D},onMouseEnter:U,onMouseLeave:L,children:s})};function H(){const{t:s}=W(),{user:t,refreshUser:v}=M(),[r,m]=n.useState(null),[p,g]=n.useState(""),[j,d]=n.useState(!1),u=async()=>{try{const a=await _();a.data.success&&m(a.data.data)}catch{}};n.useEffect(()=>{u()},[]);const w=async a=>{if(a.preventDefault(),!!p.trim()){d(!0);try{(await I(p.trim())).data.success&&(z.success(s("dashboard.redeemSuccess")),g(""),await Promise.all([u(),v()]))}catch{}d(!1)}},N=(r==null?void 0:r.quota)??(t==null?void 0:t.quota)??0,b=(r==null?void 0:r.used_quota)??(t==null?void 0:t.used_quota)??0,o=(r==null?void 0:r.request_count)??(t==null?void 0:t.request_count)??0,x=N/$;return e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-10",children:[e.jsxs("div",{className:"mb-8",children:[e.jsxs("h1",{className:"text-2xl font-heading font-bold text-white mb-1",children:[s("dashboard.welcome")," ",e.jsx(B,{text:(t==null?void 0:t.display_name)||(t==null?void 0:t.username)||"User",className:"!inline",speed:3,color:"#a5b4fc",shineColor:"#e0e7ff"})]}),e.jsx("p",{className:"text-sm text-neutral-400",children:s("dashboard.manageDesc")})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-6 mb-10",children:[e.jsxs(S,{className:"!bg-neutral-900/60 !border-neutral-800/60 !p-6",spotlightColor:"rgba(34,197,94,0.15)",children:[e.jsx("p",{className:"text-sm text-neutral-400 mb-2",children:s("dashboard.balance")}),e.jsxs("div",{className:"text-3xl font-bold text-white",children:["$",e.jsx(q,{from:0,to:x,duration:1.5})]}),e.jsx("p",{className:"text-xs text-neutral-500 mt-1",children:s("dashboard.quotaUnits",{count:N.toLocaleString()})})]}),e.jsxs(S,{className:"!bg-neutral-900/60 !border-neutral-800/60 !p-6",spotlightColor:"rgba(129,140,248,0.15)",children:[e.jsx("p",{className:"text-sm text-neutral-400 mb-2",children:s("dashboard.used")}),e.jsxs("div",{className:"text-3xl font-bold text-white",children:["$",e.jsx(q,{from:0,to:b/$,duration:1.5})]}),e.jsx("p",{className:"text-xs text-neutral-500 mt-1",children:s("dashboard.quotaUnits",{count:b.toLocaleString()})})]}),e.jsxs(S,{className:"!bg-neutral-900/60 !border-neutral-800/60 !p-6",spotlightColor:"rgba(244,114,182,0.15)",children:[e.jsx("p",{className:"text-sm text-neutral-400 mb-2",children:s("dashboard.totalRequests")}),e.jsx("div",{className:"text-3xl font-bold text-white",children:e.jsx(q,{from:0,to:o,duration:1.5})})]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"glass rounded-2xl p-6",children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-4",children:s("dashboard.redeemCode")}),e.jsxs("form",{onSubmit:w,className:"flex gap-3",children:[e.jsx("input",{type:"text",value:p,onChange:a=>g(a.target.value),className:"input flex-1",placeholder:s("dashboard.enterCode")}),e.jsx("button",{type:"submit",disabled:j,className:"btn-primary whitespace-nowrap",children:s(j?"dashboard.redeeming":"dashboard.redeem")})]})]}),e.jsxs("div",{className:"glass rounded-2xl p-6",children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-4",children:s("dashboard.quickLinks")}),e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs(k,{to:"/tokens",className:"glass-sm !rounded-xl px-4 py-3 hover:bg-white/[0.06] transition-colors group",children:[e.jsx("p",{className:"text-sm font-medium text-white group-hover:text-brand-400 transition-colors",children:s("dashboard.apiKeys")}),e.jsx("p",{className:"text-xs teLine truncated
|
||||
import{r as n,j as e,u as M,Q as $,L as k,g as _,d as I,z}from"./index-BKzMfs0Y.js";import{S}from"./SpotlightCard-DtQFfRY_.js";import{u as A,a as F,C as q}from"./CountUp-1XaQYcAK.js";import{m as K}from"./proxy-CtcPDSb8.js";import{u as Q}from"./use-animation-frame-fCsW-Snm.js";import{u as W}from"./useTranslation-BkWapr2x.js";const B=({text:s,disabled:t=!1,speed:v=2,className:r="",color:m="#b5b5b5",shineColor:p="#ffffff",spread:g=120,yoyo:j=!1,pauseOnHover:d=!1,direction:u="left",delay:w=0})=>{const[N,b]=n.useState(!1),o=A(0),x=n.useRef(0),a=n.useRef(null),l=n.useRef(u==="left"?1:-1),c=v*1e3,R=w*1e3;Q(f=>{if(t||N){a.current=null;return}if(a.current===null){a.current=f;return}const P=f-a.current;if(a.current=f,x.current+=P,j){const h=c+R,y=h*2,i=x.current%y;if(i<c){const C=i/c*100;o.set(l.current===1?C:100-C)}else if(i<h)o.set(l.current===1?100:0);else if(i<h+c){const T=100-(i-h)/c*100;o.set(l.current===1?T:100-T)}else o.set(l.current===1?0:100)}else{const h=c+R,y=x.current%h;if(y<c){const i=y/c*100;o.set(l.current===1?i:100-i)}else o.set(l.current===1?100:0)}}),n.useEffect(()=>{l.current=u==="left"?1:-1,x.current=0,o.set(0)},[u]);const D=F(o,f=>`${150-f*2}% center`),U=n.useCallback(()=>{d&&b(!0)},[d]),L=n.useCallback(()=>{d&&b(!1)},[d]),E={backgroundImage:`linear-gradient(${g}deg, ${m} 0%, ${m} 35%, ${p} 50%, ${m} 65%, ${m} 100%)`,backgroundSize:"200% auto",WebkitBackgroundClip:"text",backgroundClip:"text",WebkitTextFillColor:"transparent"};return e.jsx(K.span,{className:`inline-block ${r}`,style:{...E,backgroundPosition:D},onMouseEnter:U,onMouseLeave:L,children:s})};function H(){const{t:s}=W(),{user:t,refreshUser:v}=M(),[r,m]=n.useState(null),[p,g]=n.useState(""),[j,d]=n.useState(!1),u=async()=>{try{const a=await _();a.data.success&&m(a.data.data)}catch{}};n.useEffect(()=>{u()},[]);const w=async a=>{if(a.preventDefault(),!!p.trim()){d(!0);try{(await I(p.trim())).data.success&&(z.success(s("dashboard.redeemSuccess")),g(""),await Promise.all([u(),v()]))}catch{}d(!1)}},N=(r==null?void 0:r.quota)??(t==null?void 0:t.quota)??0,b=(r==null?void 0:r.used_quota)??(t==null?void 0:t.used_quota)??0,o=(r==null?void 0:r.request_count)??(t==null?void 0:t.request_count)??0,x=N/$;return e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-10",children:[e.jsxs("div",{className:"mb-8",children:[e.jsxs("h1",{className:"text-2xl font-heading font-bold text-white mb-1",children:[s("dashboard.welcome")," ",e.jsx(B,{text:(t==null?void 0:t.display_name)||(t==null?void 0:t.username)||"User",className:"!inline",speed:3,color:"#a5b4fc",shineColor:"#e0e7ff"})]}),e.jsx("p",{className:"text-sm text-neutral-400",children:s("dashboard.manageDesc")})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-6 mb-10",children:[e.jsxs(S,{className:"!bg-neutral-900/60 !border-neutral-800/60 !p-6",spotlightColor:"rgba(34,197,94,0.15)",children:[e.jsx("p",{className:"text-sm text-neutral-400 mb-2",children:s("dashboard.balance")}),e.jsxs("div",{className:"text-3xl font-bold text-white",children:["$",e.jsx(q,{from:0,to:x,duration:1.5})]}),e.jsx("p",{className:"text-xs text-neutral-500 mt-1",children:s("dashboard.quotaUnits",{count:N.toLocaleString()})})]}),e.jsxs(S,{className:"!bg-neutral-900/60 !border-neutral-800/60 !p-6",spotlightColor:"rgba(129,140,248,0.15)",children:[e.jsx("p",{className:"text-sm text-neutral-400 mb-2",children:s("dashboard.used")}),e.jsxs("div",{className:"text-3xl font-bold text-white",children:["$",e.jsx(q,{from:0,to:b/$,duration:1.5})]}),e.jsx("p",{className:"text-xs text-neutral-500 mt-1",children:s("dashboard.quotaUnits",{count:b.toLocaleString()})})]}),e.jsxs(S,{className:"!bg-neutral-900/60 !border-neutral-800/60 !p-6",spotlightColor:"rgba(244,114,182,0.15)",children:[e.jsx("p",{className:"text-sm text-neutral-400 mb-2",children:s("dashboard.totalRequests")}),e.jsx("div",{className:"text-3xl font-bold text-white",children:e.jsx(q,{from:0,to:o,duration:1.5})})]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"glass rounded-2xl p-6",children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-4",children:s("dashboard.redeemCode")}),e.jsxs("form",{onSubmit:w,className:"flex gap-3",children:[e.jsx("input",{type:"text",value:p,onChange:a=>g(a.target.value),className:"input flex-1",placeholder:s("dashboard.enterCode")}),e.jsx("button",{type:"submit",disabled:j,className:"btn-primary whitespace-nowrap",children:s(j?"dashboard.redeeming":"dashboard.redeem")})]})]}),e.jsxs("div",{className:"glass rounded-2xl p-6",children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-4",children:s("dashboard.quickLinks")}),e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs(k,{to:"/tokens",className:"glass-sm !rounded-xl px-4 py-3 hover:bg-white/[0.06] transition-colors group",children:[e.jsx("p",{className:"text-sm font-medium text-white group-hover:text-brand-400 transition-colors",children:s("dashboard.apiKeys")}),e.jsx("p",{className:"text-xs teLine truncated
|
||||
Vendored
+100
@@ -0,0 +1,100 @@
|
||||
import{r as o,j as t,u as ee,a as te,l as se,k as re,L as I}from"./index-BKzMfs0Y.js";import{G as ne,R as oe,P as ae,M as ie}from"./Mesh-CwXV3WjE.js";import{i as H,P as le,u as ce,L as de,m as _}from"./proxy-CtcPDSb8.js";import{M as ue,b as X,d as me,C as he}from"./CountUp-1XaQYcAK.js";import{S as W}from"./SpotlightCard-DtQFfRY_.js";import{u as xe}from"./useTranslation-BkWapr2x.js";function U(e,r){if(typeof e=="function")return e(r);e!=null&&(e.current=r)}function fe(...e){return r=>{let n=!1;const c=e.map(d=>{const u=U(d,r);return!n&&typeof u=="function"&&(n=!0),u});if(n)return()=>{for(let d=0;d<c.length;d++){const u=c[d];typeof u=="function"?u():U(e[d],null)}}}}function pe(...e){return o.useCallback(fe(...e),e)}class ge extends o.Component{getSnapshotBeforeUpdate(r){const n=this.props.childRef.current;if(H(n)&&r.isPresent&&!this.props.isPresent&&this.props.pop!==!1){const c=n.offsetParent,d=H(c)&&c.offsetWidth||0,u=H(c)&&c.offsetHeight||0,m=getComputedStyle(n),a=this.props.sizeRef.current;a.height=parseFloat(m.height),a.width=parseFloat(m.width),a.top=n.offsetTop,a.left=n.offsetLeft,a.right=d-a.width-a.left,a.bottom=u-a.height-a.top}return null}componentDidUpdate(){}render(){return this.props.children}}function be({children:e,isPresent:r,anchorX:n,anchorY:c,root:d,pop:u}){var p;const m=o.useId(),a=o.useRef(null),s=o.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:h}=o.useContext(ue),f=((p=e.props)==null?void 0:p.ref)??(e==null?void 0:e.ref),v=pe(a,f);return o.useInsertionEffect(()=>{const{width:y,height:g,top:N,left:b,right:j,bottom:L}=s.current;if(r||u===!1||!a.current||!y||!g)return;const E=n==="left"?`left: ${b}`:`right: ${j}`,i=c==="bottom"?`bottom: ${L}`:`top: ${N}`;a.current.dataset.motionPopId=m;const S=document.createElement("style");h&&(S.nonce=h);const k=d??document.head;return k.appendChild(S),S.sheet&&S.sheet.insertRule(`
|
||||
[data-motion-pop-id="${m}"] {
|
||||
position: absolute !important;
|
||||
width: ${y}px !important;
|
||||
height: ${g}px !important;
|
||||
${E}px !important;
|
||||
${i}px !important;
|
||||
}
|
||||
`),()=>{var P;(P=a.current)==null||P.removeAttribute("data-motion-pop-id"),k.contains(S)&&k.removeChild(S)}},[r]),t.jsx(ge,{isPresent:r,childRef:a,sizeRef:s,pop:u,children:u===!1?e:o.cloneElement(e,{ref:v})})}const ve=({children:e,initial:r,isPresent:n,onExitComplete:c,custom:d,presenceAffectsLayout:u,mode:m,anchorX:a,anchorY:s,root:h})=>{const f=X(we),v=o.useId();let p=!0,y=o.useMemo(()=>(p=!1,{id:v,initial:r,isPresent:n,custom:d,onExitComplete:g=>{f.set(g,!0);for(const N of f.values())if(!N)return;c&&c()},register:g=>(f.set(g,!1),()=>f.delete(g))}),[n,f,c]);return u&&p&&(y={...y}),o.useMemo(()=>{f.forEach((g,N)=>f.set(N,!1))},[n]),o.useEffect(()=>{!n&&!f.size&&c&&c()},[n]),e=t.jsx(be,{pop:m==="popLayout",isPresent:n,anchorX:a,anchorY:s,root:h,children:e}),t.jsx(le.Provider,{value:y,children:e})};function we(){return new Map}const $=e=>e.key||"";function O(e){const r=[];return o.Children.forEach(e,n=>{o.isValidElement(n)&&r.push(n)}),r}const ye=({children:e,custom:r,initial:n=!0,onExitComplete:c,presenceAffectsLayout:d=!0,mode:u="sync",propagate:m=!1,anchorX:a="left",anchorY:s="top",root:h})=>{const[f,v]=ce(m),p=o.useMemo(()=>O(e),[e]),y=m&&!f?[]:p.map($),g=o.useRef(!0),N=o.useRef(p),b=X(()=>new Map),j=o.useRef(new Set),[L,E]=o.useState(p),[i,S]=o.useState(p);me(()=>{g.current=!1,N.current=p;for(let R=0;R<i.length;R++){const x=$(i[R]);y.includes(x)?(b.delete(x),j.current.delete(x)):b.get(x)!==!0&&b.set(x,!1)}},[i,y.length,y.join("-")]);const k=[];if(p!==L){let R=[...p];for(let x=0;x<i.length;x++){const A=i[x],F=$(A);y.includes(F)||(R.splice(x,0,A),k.push(A))}return u==="wait"&&k.length&&(R=k),S(O(R)),E(p),null}const{forceRender:P}=o.useContext(de);return t.jsx(t.Fragment,{children:i.map(R=>{const x=$(R),A=m&&!f?!1:p===i||y.includes(x),F=()=>{if(j.current.has(x))return;if(b.has(x))j.current.add(x),b.set(x,!0);else return;let z=!0;b.forEach(T=>{T||(z=!1)}),z&&(P==null||P(),S(N.current),m&&(v==null||v()),c&&c())};return t.jsx(ve,{isPresent:A,initial:!g.current||n?void 0:!1,custom:r,presenceAffectsLayout:d,mode:u,root:h,onExitComplete:A?void 0:F,anchorX:a,anchorY:s,children:R},x)})})},V={black:"#000000",white:"#ffffff",red:"#ff0000",green:"#00ff00",blue:"#0000ff",fuchsia:"#ff00ff",cyan:"#00ffff",yellow:"#ffff00",orange:"#ff8000"};function Y(e){e.length===4&&(e=e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);const r=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return r||console.warn(`Unable to convert hex string ${e} to rgb values`),[parseInt(r[1],16)/255,parseInt(r[2],16)/255,parseInt(r[3],16)/255]}function je(e){return e=parseInt(e),[(e>>16&255)/255,(e>>8&255)/255,(e&255)/255]}function q(e){return e===void 0?[0,0,0]:arguments.length===3?arguments:isNaN(e)?e[0]==="#"?Y(e):V[e.toLowerCase()]?Y(V[e.toLowerCase()]):(console.warn("Color format not recognised"),[0,0,0]):je(e)}class K extends Array{constructor(r){return Array.isArray(r)?super(...r):super(...q(...arguments))}get r(){return this[0]}get g(){return this[1]}get b(){return this[2]}set r(r){this[0]=r}set g(r){this[1]=r}set b(r){this[2]=r}set(r){return Array.isArray(r)?this.copy(r):this.copy(q(...arguments))}copy(r){return this[0]=r[0],this[1]=r[1],this[2]=r[2],this}}class Ce extends ne{constructor(r,{attributes:n={}}={}){Object.assign(n,{position:{size:2,data:new Float32Array([-1,-1,3,-1,-1,3])},uv:{size:2,data:new Float32Array([0,0,2,0,0,2])}}),super(r,n)}}const Ne=`#version 300 es
|
||||
in vec2 position;
|
||||
void main() {
|
||||
gl_Position = vec4(position, 0.0, 1.0);
|
||||
}
|
||||
`,Se=`#version 300 es
|
||||
precision highp float;
|
||||
|
||||
uniform float uTime;
|
||||
uniform float uAmplitude;
|
||||
uniform vec3 uColorStops[3];
|
||||
uniform vec2 uResolution;
|
||||
uniform float uBlend;
|
||||
|
||||
out vec4 fragColor;
|
||||
|
||||
vec3 permute(vec3 x) {
|
||||
return mod(((x * 34.0) + 1.0) * x, 289.0);
|
||||
}
|
||||
|
||||
float snoise(vec2 v){
|
||||
const vec4 C = vec4(
|
||||
0.211324865405187, 0.366025403784439,
|
||||
-0.577350269189626, 0.024390243902439
|
||||
);
|
||||
vec2 i = floor(v + dot(v, C.yy));
|
||||
vec2 x0 = v - i + dot(i, C.xx);
|
||||
vec2 i1 = (x0.x > x0.y) ? vec2(1.0, 0.0) : vec2(0.0, 1.0);
|
||||
vec4 x12 = x0.xyxy + C.xxzz;
|
||||
x12.xy -= i1;
|
||||
i = mod(i, 289.0);
|
||||
|
||||
vec3 p = permute(
|
||||
permute(i.y + vec3(0.0, i1.y, 1.0))
|
||||
+ i.x + vec3(0.0, i1.x, 1.0)
|
||||
);
|
||||
|
||||
vec3 m = max(
|
||||
0.5 - vec3(
|
||||
dot(x0, x0),
|
||||
dot(x12.xy, x12.xy),
|
||||
dot(x12.zw, x12.zw)
|
||||
),
|
||||
0.0
|
||||
);
|
||||
m = m * m;
|
||||
m = m * m;
|
||||
|
||||
vec3 x = 2.0 * fract(p * C.www) - 1.0;
|
||||
vec3 h = abs(x) - 0.5;
|
||||
vec3 ox = floor(x + 0.5);
|
||||
vec3 a0 = x - ox;
|
||||
m *= 1.79284291400159 - 0.85373472095314 * (a0*a0 + h*h);
|
||||
|
||||
vec3 g;
|
||||
g.x = a0.x * x0.x + h.x * x0.y;
|
||||
g.yz = a0.yz * x12.xz + h.yz * x12.yw;
|
||||
return 130.0 * dot(m, g);
|
||||
}
|
||||
|
||||
struct ColorStop {
|
||||
vec3 color;
|
||||
float position;
|
||||
};
|
||||
|
||||
#define COLOR_RAMP(colors, factor, finalColor) { int index = 0; for (int i = 0; i < 2; i++) { ColorStop currentColor = colors[i]; bool isInBetween = currentColor.position <= factor; index = int(mix(float(index), float(i), float(isInBetween))); } ColorStop currentColor = colors[index]; ColorStop nextColor = colors[index + 1]; float range = nextColor.position - currentColor.position; float lerpFactor = (factor - currentColor.position) / range; finalColor = mix(currentColor.color, nextColor.color, lerpFactor); }
|
||||
|
||||
void main() {
|
||||
vec2 uv = gl_FragCoord.xy / uResolution;
|
||||
|
||||
ColorStop colors[3];
|
||||
colors[0] = ColorStop(uColorStops[0], 0.0);
|
||||
colors[1] = ColorStop(uColorStops[1], 0.5);
|
||||
colors[2] = ColorStop(uColorStops[2], 1.0);
|
||||
|
||||
vec3 rampColor;
|
||||
COLOR_RAMP(colors, uv.x, rampColor);
|
||||
|
||||
float height = snoise(vec2(uv.x * 2.0 + uTime * 0.1, uTime * 0.25)) * 0.5 * uAmplitude;
|
||||
height = exp(height);
|
||||
height = (uv.y * 2.0 - height + 0.2);
|
||||
float intensity = 0.6 * height;
|
||||
|
||||
float midPoint = 0.20;
|
||||
float auroraAlpha = smoothstep(midPoint - uBlend * 0.5, midPoint + uBlend * 0.5, intensity);
|
||||
|
||||
vec3 auroraColor = intensity * rampColor;
|
||||
|
||||
fragColor = vec4(auroraColor * auroraAlpha, auroraAlpha);
|
||||
}
|
||||
`;function Me(e){const{colorStops:r=["#5227FF","#7cff67","#5227FF"],amplitude:n=1,blend:c=.5}=e,d=o.useRef(e);d.current=e;const u=o.useRef(null);return o.useEffect(()=>{const m=u.current;if(!m)return;const a=new oe({alpha:!0,premultipliedAlpha:!0,antialias:!0}),s=a.gl;s.clearColor(0,0,0,0),s.enable(s.BLEND),s.blendFunc(s.ONE,s.ONE_MINUS_SRC_ALPHA),s.canvas.style.backgroundColor="transparent";let h;function f(){if(!m)return;const b=m.offsetWidth,j=m.offsetHeight;a.setSize(b,j),h&&(h.uniforms.uResolution.value=[b,j])}window.addEventListener("resize",f);const v=new Ce(s);v.attributes.uv&&delete v.attributes.uv;const p=r.map(b=>{const j=new K(b);return[j.r,j.g,j.b]});h=new ae(s,{vertex:Ne,fragment:Se,uniforms:{uTime:{value:0},uAmplitude:{value:n},uColorStops:{value:p},uResolution:{value:[m.offsetWidth,m.offsetHeight]},uBlend:{value:c}}});const y=new ie(s,{geometry:v,program:h});m.appendChild(s.canvas);let g=0;const N=b=>{g=requestAnimationFrame(N);const{time:j=b*.01,speed:L=1}=d.current;h.uniforms.uTime.value=j*L*.1,h.uniforms.uAmplitude.value=d.current.amplitude??1,h.uniforms.uBlend.value=d.current.blend??c;const E=d.current.colorStops??r;h.uniforms.uColorStops.value=E.map(i=>{const S=new K(i);return[S.r,S.g,S.b]}),a.render({scene:y})};return g=requestAnimationFrame(N),f(),()=>{var b;cancelAnimationFrame(g),window.removeEventListener("resize",f),m&&s.canvas.parentNode===m&&m.removeChild(s.canvas),(b=s.getExtension("WEBGL_lose_context"))==null||b.loseContext()}},[n]),t.jsx("div",{ref:u,className:"w-full h-full"})}const Re=({text:e="",className:r="",delay:n=50})=>{const c=o.useMemo(()=>e.split(""),[e]);return t.jsx("span",{className:r,"aria-label":e,children:c.map((d,u)=>t.jsx(_.span,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.4,delay:u*n/1e3,ease:[.25,.46,.45,.94]},style:{display:"inline-block",whiteSpace:d===" "?"pre":"normal"},children:d},`${d}-${u}`))})};function D(...e){return e.filter(Boolean).join(" ")}const J=o.forwardRef((e,r)=>{const{texts:n,transition:c={type:"spring",damping:25,stiffness:300},initial:d={y:"100%",opacity:0},animate:u={y:0,opacity:1},exit:m={y:"-120%",opacity:0},animatePresenceMode:a="wait",animatePresenceInitial:s=!1,rotationInterval:h=2e3,staggerDuration:f=0,staggerFrom:v="first",loop:p=!0,auto:y=!0,splitBy:g="characters",onNext:N,mainClassName:b,splitLevelClassName:j,elementLevelClassName:L,...E}=e,[i,S]=o.useState(0),k=l=>{if(typeof Intl<"u"&&Intl.Segmenter){const w=new Intl.Segmenter("en",{granularity:"grapheme"});return Array.from(w.segment(l),C=>C.segment)}return Array.from(l)},P=o.useMemo(()=>{const l=n[i];if(g==="characters"){const w=l.split(" ");return w.map((C,M)=>({characters:k(C),needsSpace:M!==w.length-1}))}return g==="words"?l.split(" ").map((w,C,M)=>({characters:[w],needsSpace:C!==M.length-1})):g==="lines"?l.split(`
|
||||
`).map((w,C,M)=>({characters:[w],needsSpace:C!==M.length-1})):l.split(g).map((w,C,M)=>({characters:[w],needsSpace:C!==M.length-1}))},[n,i,g]),R=o.useCallback((l,w)=>{const C=w;if(v==="first")return l*f;if(v==="last")return(C-1-l)*f;if(v==="center"){const M=Math.floor(C/2);return Math.abs(M-l)*f}if(v==="random"){const M=Math.floor(Math.random()*C);return Math.abs(M-l)*f}return Math.abs(v-l)*f},[v,f]),x=o.useCallback(l=>{S(l),N&&N(l)},[N]),A=o.useCallback(()=>{const l=i===n.length-1?p?0:i:i+1;l!==i&&x(l)},[i,n.length,p,x]),F=o.useCallback(()=>{const l=i===0?p?n.length-1:i:i-1;l!==i&&x(l)},[i,n.length,p,x]),z=o.useCallback(l=>{const w=Math.max(0,Math.min(l,n.length-1));w!==i&&x(w)},[n.length,i,x]),T=o.useCallback(()=>{i!==0&&x(0)},[i,x]);return o.useImperativeHandle(r,()=>({next:A,previous:F,jumpTo:z,reset:T}),[A,F,z,T]),o.useEffect(()=>{if(!y)return;const l=setInterval(A,h);return()=>clearInterval(l)},[A,h,y]),t.jsxs(_.span,{className:D("flex flex-wrap whitespace-pre-wrap relative",b),...E,layout:!0,transition:c,children:[t.jsx("span",{className:"sr-only",children:n[i]}),t.jsx(ye,{mode:a,initial:s,children:t.jsx(_.span,{className:D(g==="lines"?"flex flex-col w-full":"flex flex-wrap whitespace-pre-wrap relative"),layout:!0,"aria-hidden":"true",children:P.map((l,w,C)=>{const M=C.slice(0,w).reduce((G,B)=>G+B.characters.length,0);return t.jsxs("span",{className:D("inline-flex",j),children:[l.characters.map((G,B)=>t.jsx(_.span,{initial:d,animate:u,exit:m,transition:{...c,delay:R(M+B,C.reduce((Q,Z)=>Q+Z.characters.length,0))},className:D("inline-block",L),children:G},B)),l.needsSpace&&t.jsx("span",{className:"whitespace-pre",children:" "})]},w)})},i)})]})});J.displayName="RotatingText";function Fe(){const{t:e}=xe(),{user:r}=ee(),{site:n}=te(),[c,d]=o.useState([]),[u,m]=o.useState([]);o.useEffect(()=>{se().then(s=>{s.data.success&&d(s.data.data||[])}).catch(()=>{}),re().then(s=>{s.data.success&&m(s.data.data||[])}).catch(()=>{})},[]);const a=c.filter(s=>s.enabled!==!1);return t.jsxs("div",{className:"relative",children:[t.jsx("div",{className:"absolute inset-0 h-[700px] overflow-hidden pointer-events-none opacity-60",children:t.jsx(Me,{colorStops:["#4338ca","#7c3aed","#06b6d4"],blend:.5,amplitude:1,speed:.5})}),t.jsxs("section",{className:"relative max-w-7xl mx-auto px-6 pt-28 pb-24",children:[t.jsxs("div",{className:"text-center max-w-4xl mx-auto",children:[t.jsx("div",{className:"mb-6",children:t.jsx("h1",{className:"text-5xl md:text-7xl font-extrabold text-white leading-tight tracking-tight",children:t.jsx(Re,{text:(n==null?void 0:n.name)||e("home.defaultHeroTitle"),delay:80,className:"inline"})})}),t.jsx("p",{className:"text-lg md:text-xl text-neutral-400 max-w-2xl mx-auto mb-4 leading-relaxed",children:e("home.heroSubtitle")}),t.jsx("div",{className:"flex flex-wrap items-center justify-center gap-3 mb-10",children:t.jsx(J,{texts:[e("home.lightningFast"),e("home.securePrivate"),e("home.payAsYouGo")],mainClassName:"px-4 py-2 bg-white/[0.06] backdrop-blur-sm rounded-full text-white text-sm font-medium overflow-hidden border border-white/[0.08]",staggerFrom:"last",rotationInterval:3e3})}),t.jsx("div",{className:"flex items-center justify-center gap-4",children:r?t.jsx(I,{to:"/dashboard",className:"px-8 py-3.5 rounded-2xl bg-white text-black font-semibold text-base hover:bg-neutral-100 transition-all shadow-xl shadow-white/10",children:e("home.goToDashboard")}):t.jsxs(t.Fragment,{children:[t.jsx(I,{to:"/register",className:"px-8 py-3.5 rounded-2xl bg-white text-black font-semibold text-base hover:bg-neutral-100 transition-all shadow-xl shadow-white/10",children:e("home.getStarted")}),t.jsx(I,{to:"/pricing",className:"px-8 py-3.5 rounded-2xl border border-white/20 text-white font-medium text-base hover:bg-white/10 transition-all",children:e("home.viewPricing")})]})})]}),t.jsx("div",{className:"grid grid-cols-3 gap-6 max-w-2xl mx-auto mt-24",children:[{value:a.length||50,suffix:"+",label:e("home.aiModels")},{value:99.9,suffix:"%",label:e("home.uptime")},{value:50,suffix:"ms",label:e("home.latency"),prefix:"<"}].map((s,h)=>t.jsxs("div",{className:"text-center p-5 rounded-2xl bg-white/[0.04] backdrop-blur-sm border border-white/[0.08]",children:[t.jsxs("div",{className:"text-3xl font-bold text-white",children:[s.prefix,t.jsx(he,{from:0,to:s.value,duration:2}),s.suffix]}),t.jsx("p",{className:"text-sm text-neutral-400 mt-1",children:s.label})]},h))})]}),t.jsxs("section",{className:"relative max-w-7xl mx-auto px-6 py-20",children:[t.jsxs("div",{className:"text-center mb-14",children:[t.jsx("h2",{className:"text-3xl font-bold text-white mb-3",children:e("home.whyChooseUs")}),t.jsx("p",{className:"text-neutral-400",children:e("home.whyChooseUsDesc")})]}),t.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[t.jsx(W,{className:"!bg-gradient-to-br !from-violet-500/10 !to-blue-500/10 !border-violet-500/20",spotlightColor:"rgba(139,92,246,0.1)",children:t.jsxs("div",{className:"p-6",children:[t.jsx("div",{className:"w-
Line truncated
|
||||
Vendored
-100
@@ -1,100 +0,0 @@
|
||||
import{r as o,j as t,u as se,a as ne,l as re,k as oe,L as F}from"./index-IL0bf27q.js";import{G as ae,R as ie,P as le,M as ce}from"./Mesh-CwXV3WjE.js";import{i as O,P as de,u as ue,L as he,m as T}from"./proxy-C5U9l3lk.js";import{M as me,b as J,d as xe,u as _,e as B,C as fe}from"./CountUp-BYW6-_IC.js";import{u as pe}from"./useTranslation-_qZZdhi7.js";function V(e,n){if(typeof e=="function")return e(n);e!=null&&(e.current=n)}function ge(...e){return n=>{let r=!1;const c=e.map(d=>{const u=V(d,n);return!r&&typeof u=="function"&&(r=!0),u});if(r)return()=>{for(let d=0;d<c.length;d++){const u=c[d];typeof u=="function"?u():V(e[d],null)}}}}function ve(...e){return o.useCallback(ge(...e),e)}class be extends o.Component{getSnapshotBeforeUpdate(n){const r=this.props.childRef.current;if(O(r)&&n.isPresent&&!this.props.isPresent&&this.props.pop!==!1){const c=r.offsetParent,d=O(c)&&c.offsetWidth||0,u=O(c)&&c.offsetHeight||0,h=getComputedStyle(r),a=this.props.sizeRef.current;a.height=parseFloat(h.height),a.width=parseFloat(h.width),a.top=r.offsetTop,a.left=r.offsetLeft,a.right=d-a.width-a.left,a.bottom=u-a.height-a.top}return null}componentDidUpdate(){}render(){return this.props.children}}function we({children:e,isPresent:n,anchorX:r,anchorY:c,root:d,pop:u}){var g;const h=o.useId(),a=o.useRef(null),s=o.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:m}=o.useContext(me),f=((g=e.props)==null?void 0:g.ref)??(e==null?void 0:e.ref),b=ve(a,f);return o.useInsertionEffect(()=>{const{width:w,height:p,top:C,left:v,right:y,bottom:P}=s.current;if(n||u===!1||!a.current||!w||!p)return;const I=r==="left"?`left: ${v}`:`right: ${y}`,i=c==="bottom"?`bottom: ${P}`:`top: ${C}`;a.current.dataset.motionPopId=h;const S=document.createElement("style");m&&(S.nonce=m);const L=d??document.head;return L.appendChild(S),S.sheet&&S.sheet.insertRule(`
|
||||
[data-motion-pop-id="${h}"] {
|
||||
position: absolute !important;
|
||||
width: ${w}px !important;
|
||||
height: ${p}px !important;
|
||||
${I}px !important;
|
||||
${i}px !important;
|
||||
}
|
||||
`),()=>{var z;(z=a.current)==null||z.removeAttribute("data-motion-pop-id"),L.contains(S)&&L.removeChild(S)}},[n]),t.jsx(be,{isPresent:n,childRef:a,sizeRef:s,pop:u,children:u===!1?e:o.cloneElement(e,{ref:b})})}const ye=({children:e,initial:n,isPresent:r,onExitComplete:c,custom:d,presenceAffectsLayout:u,mode:h,anchorX:a,anchorY:s,root:m})=>{const f=J(je),b=o.useId();let g=!0,w=o.useMemo(()=>(g=!1,{id:b,initial:n,isPresent:r,custom:d,onExitComplete:p=>{f.set(p,!0);for(const C of f.values())if(!C)return;c&&c()},register:p=>(f.set(p,!1),()=>f.delete(p))}),[r,f,c]);return u&&g&&(w={...w}),o.useMemo(()=>{f.forEach((p,C)=>f.set(C,!1))},[r]),o.useEffect(()=>{!r&&!f.size&&c&&c()},[r]),e=t.jsx(we,{pop:h==="popLayout",isPresent:r,anchorX:a,anchorY:s,root:m,children:e}),t.jsx(de.Provider,{value:w,children:e})};function je(){return new Map}const Y=e=>e.key||"";function W(e){const n=[];return o.Children.forEach(e,r=>{o.isValidElement(r)&&n.push(r)}),n}const Ce=({children:e,custom:n,initial:r=!0,onExitComplete:c,presenceAffectsLayout:d=!0,mode:u="sync",propagate:h=!1,anchorX:a="left",anchorY:s="top",root:m})=>{const[f,b]=ue(h),g=o.useMemo(()=>W(e),[e]),w=h&&!f?[]:g.map(Y),p=o.useRef(!0),C=o.useRef(g),v=J(()=>new Map),y=o.useRef(new Set),[P,I]=o.useState(g),[i,S]=o.useState(g);xe(()=>{p.current=!1,C.current=g;for(let k=0;k<i.length;k++){const x=Y(i[k]);w.includes(x)?(v.delete(x),y.current.delete(x)):v.get(x)!==!0&&v.set(x,!1)}},[i,w.length,w.join("-")]);const L=[];if(g!==P){let k=[...g];for(let x=0;x<i.length;x++){const M=i[x],R=Y(M);w.includes(R)||(k.splice(x,0,M),L.push(M))}return u==="wait"&&L.length&&(k=L),S(W(k)),I(g),null}const{forceRender:z}=o.useContext(he);return t.jsx(t.Fragment,{children:i.map(k=>{const x=Y(k),M=h&&!f?!1:g===i||w.includes(x),R=()=>{if(y.current.has(x))return;if(v.has(x))y.current.add(x),v.set(x,!0);else return;let $=!0;v.forEach(E=>{E||($=!1)}),$&&(z==null||z(),S(C.current),h&&(b==null||b()),c&&c())};return t.jsx(ye,{isPresent:M,initial:!p.current||r?void 0:!1,custom:n,presenceAffectsLayout:d,mode:u,root:m,onExitComplete:M?void 0:R,anchorX:a,anchorY:s,children:k},x)})})},X={black:"#000000",white:"#ffffff",red:"#ff0000",green:"#00ff00",blue:"#0000ff",fuchsia:"#ff00ff",cyan:"#00ffff",yellow:"#ffff00",orange:"#ff8000"};function q(e){e.length===4&&(e=e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);const n=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return n||console.warn(`Unable to convert hex string ${e} to rgb values`),[parseInt(n[1],16)/255,parseInt(n[2],16)/255,parseInt(n[3],16)/255]}function Ne(e){return e=parseInt(e),[(e>>16&255)/255,(e>>8&255)/255,(e&255)/255]}function K(e){return e===void 0?[0,0,0]:arguments.length===3?arguments:isNaN(e)?e[0]==="#"?q(e):X[e.toLowerCase()]?q(X[e.toLowerCase()]):(console.warn("Color format not recognised"),[0,0,0]):Ne(e)}class Z extends Array{constructor(n){return Array.isArray(n)?super(...n):super(...K(...arguments))}get r(){return this[0]}get g(){return this[1]}get b(){return this[2]}set r(n){this[0]=n}set g(n){this[1]=n}set b(n){this[2]=n}set(n){return Array.isArray(n)?this.copy(n):this.copy(K(...arguments))}copy(n){return this[0]=n[0],this[1]=n[1],this[2]=n[2],this}}class Se extends ae{constructor(n,{attributes:r={}}={}){Object.assign(r,{position:{size:2,data:new Float32Array([-1,-1,3,-1,-1,3])},uv:{size:2,data:new Float32Array([0,0,2,0,0,2])}}),super(n,r)}}const Me=`#version 300 es
|
||||
in vec2 position;
|
||||
void main() {
|
||||
gl_Position = vec4(position, 0.0, 1.0);
|
||||
}
|
||||
`,Re=`#version 300 es
|
||||
precision highp float;
|
||||
|
||||
uniform float uTime;
|
||||
uniform float uAmplitude;
|
||||
uniform vec3 uColorStops[3];
|
||||
uniform vec2 uResolution;
|
||||
uniform float uBlend;
|
||||
|
||||
out vec4 fragColor;
|
||||
|
||||
vec3 permute(vec3 x) {
|
||||
return mod(((x * 34.0) + 1.0) * x, 289.0);
|
||||
}
|
||||
|
||||
float snoise(vec2 v){
|
||||
const vec4 C = vec4(
|
||||
0.211324865405187, 0.366025403784439,
|
||||
-0.577350269189626, 0.024390243902439
|
||||
);
|
||||
vec2 i = floor(v + dot(v, C.yy));
|
||||
vec2 x0 = v - i + dot(i, C.xx);
|
||||
vec2 i1 = (x0.x > x0.y) ? vec2(1.0, 0.0) : vec2(0.0, 1.0);
|
||||
vec4 x12 = x0.xyxy + C.xxzz;
|
||||
x12.xy -= i1;
|
||||
i = mod(i, 289.0);
|
||||
|
||||
vec3 p = permute(
|
||||
permute(i.y + vec3(0.0, i1.y, 1.0))
|
||||
+ i.x + vec3(0.0, i1.x, 1.0)
|
||||
);
|
||||
|
||||
vec3 m = max(
|
||||
0.5 - vec3(
|
||||
dot(x0, x0),
|
||||
dot(x12.xy, x12.xy),
|
||||
dot(x12.zw, x12.zw)
|
||||
),
|
||||
0.0
|
||||
);
|
||||
m = m * m;
|
||||
m = m * m;
|
||||
|
||||
vec3 x = 2.0 * fract(p * C.www) - 1.0;
|
||||
vec3 h = abs(x) - 0.5;
|
||||
vec3 ox = floor(x + 0.5);
|
||||
vec3 a0 = x - ox;
|
||||
m *= 1.79284291400159 - 0.85373472095314 * (a0*a0 + h*h);
|
||||
|
||||
vec3 g;
|
||||
g.x = a0.x * x0.x + h.x * x0.y;
|
||||
g.yz = a0.yz * x12.xz + h.yz * x12.yw;
|
||||
return 130.0 * dot(m, g);
|
||||
}
|
||||
|
||||
struct ColorStop {
|
||||
vec3 color;
|
||||
float position;
|
||||
};
|
||||
|
||||
#define COLOR_RAMP(colors, factor, finalColor) { int index = 0; for (int i = 0; i < 2; i++) { ColorStop currentColor = colors[i]; bool isInBetween = currentColor.position <= factor; index = int(mix(float(index), float(i), float(isInBetween))); } ColorStop currentColor = colors[index]; ColorStop nextColor = colors[index + 1]; float range = nextColor.position - currentColor.position; float lerpFactor = (factor - currentColor.position) / range; finalColor = mix(currentColor.color, nextColor.color, lerpFactor); }
|
||||
|
||||
void main() {
|
||||
vec2 uv = gl_FragCoord.xy / uResolution;
|
||||
|
||||
ColorStop colors[3];
|
||||
colors[0] = ColorStop(uColorStops[0], 0.0);
|
||||
colors[1] = ColorStop(uColorStops[1], 0.5);
|
||||
colors[2] = ColorStop(uColorStops[2], 1.0);
|
||||
|
||||
vec3 rampColor;
|
||||
COLOR_RAMP(colors, uv.x, rampColor);
|
||||
|
||||
float height = snoise(vec2(uv.x * 2.0 + uTime * 0.1, uTime * 0.25)) * 0.5 * uAmplitude;
|
||||
height = exp(height);
|
||||
height = (uv.y * 2.0 - height + 0.2);
|
||||
float intensity = 0.6 * height;
|
||||
|
||||
float midPoint = 0.20;
|
||||
float auroraAlpha = smoothstep(midPoint - uBlend * 0.5, midPoint + uBlend * 0.5, intensity);
|
||||
|
||||
vec3 auroraColor = intensity * rampColor;
|
||||
|
||||
fragColor = vec4(auroraColor * auroraAlpha, auroraAlpha);
|
||||
}
|
||||
`;function ke(e){const{colorStops:n=["#5227FF","#7cff67","#5227FF"],amplitude:r=1,blend:c=.5}=e,d=o.useRef(e);d.current=e;const u=o.useRef(null);return o.useEffect(()=>{const h=u.current;if(!h)return;const a=new ie({alpha:!0,premultipliedAlpha:!0,antialias:!0}),s=a.gl;s.clearColor(0,0,0,0),s.enable(s.BLEND),s.blendFunc(s.ONE,s.ONE_MINUS_SRC_ALPHA),s.canvas.style.backgroundColor="transparent";let m;function f(){if(!h)return;const v=h.offsetWidth,y=h.offsetHeight;a.setSize(v,y),m&&(m.uniforms.uResolution.value=[v,y])}window.addEventListener("resize",f);const b=new Se(s);b.attributes.uv&&delete b.attributes.uv;const g=n.map(v=>{const y=new Z(v);return[y.r,y.g,y.b]});m=new le(s,{vertex:Me,fragment:Re,uniforms:{uTime:{value:0},uAmplitude:{value:r},uColorStops:{value:g},uResolution:{value:[h.offsetWidth,h.offsetHeight]},uBlend:{value:c}}});const w=new ce(s,{geometry:b,program:m});h.appendChild(s.canvas);let p=0;const C=v=>{p=requestAnimationFrame(C);const{time:y=v*.01,speed:P=1}=d.current;m.uniforms.uTime.value=y*P*.1,m.uniforms.uAmplitude.value=d.current.amplitude??1,m.uniforms.uBlend.value=d.current.blend??c;const I=d.current.colorStops??n;m.uniforms.uColorStops.value=I.map(i=>{const S=new Z(i);return[S.r,S.g,S.b]}),a.render({scene:w})};return p=requestAnimationFrame(C),f(),()=>{var v;cancelAnimationFrame(p),window.removeEventListener("resize",f),h&&s.canvas.parentNode===h&&h.removeChild(s.canvas),(v=s.getExtension("WEBGL_lose_context"))==null||v.loseContext()}},[r]),t.jsx("div",{ref:u,className:"w-full h-full"})}const Ae=({text:e="",className:n="",delay:r=50})=>{const c=o.useMemo(()=>e.split(""),[e]);return t.jsx("span",{className:n,"aria-label":e,children:c.map((d,u)=>t.jsx(T.span,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.4,delay:u*r/1e3,ease:[.25,.46,.45,.94]},style:{display:"inline-block",whiteSpace:d===" "?"pre":"normal"},children:d},`${d}-${u}`))})};function G(...e){return e.filter(Boolean).join(" ")}const Q=o.forwardRef((e,n)=>{const{texts:r,transition:c={type:"spring",damping:25,stiffness:300},initial:d={y:"100%",opacity:0},animate:u={y:0,opacity:1},exit:h={y:"-120%",opacity:0},animatePresenceMode:a="wait",animatePresenceInitial:s=!1,rotationInterval:m=2e3,staggerDuration:f=0,staggerFrom:b="first",loop:g=!0,auto:w=!0,splitBy:p="characters",onNext:C,mainClassName:v,splitLevelClassName:y,elementLevelClassName:P,...I}=e,[i,S]=o.useState(0),L=l=>{if(typeof Intl<"u"&&Intl.Segmenter){const j=new Intl.Segmenter("en",{granularity:"grapheme"});return Array.from(j.segment(l),N=>N.segment)}return Array.from(l)},z=o.useMemo(()=>{const l=r[i];if(p==="characters"){const j=l.split(" ");return j.map((N,A)=>({characters:L(N),needsSpace:A!==j.length-1}))}return p==="words"?l.split(" ").map((j,N,A)=>({characters:[j],needsSpace:N!==A.length-1})):p==="lines"?l.split(`
|
||||
`).map((j,N,A)=>({characters:[j],needsSpace:N!==A.length-1})):l.split(p).map((j,N,A)=>({characters:[j],needsSpace:N!==A.length-1}))},[r,i,p]),k=o.useCallback((l,j)=>{const N=j;if(b==="first")return l*f;if(b==="last")return(N-1-l)*f;if(b==="center"){const A=Math.floor(N/2);return Math.abs(A-l)*f}if(b==="random"){const A=Math.floor(Math.random()*N);return Math.abs(A-l)*f}return Math.abs(b-l)*f},[b,f]),x=o.useCallback(l=>{S(l),C&&C(l)},[C]),M=o.useCallback(()=>{const l=i===r.length-1?g?0:i:i+1;l!==i&&x(l)},[i,r.length,g,x]),R=o.useCallback(()=>{const l=i===0?g?r.length-1:i:i-1;l!==i&&x(l)},[i,r.length,g,x]),$=o.useCallback(l=>{const j=Math.max(0,Math.min(l,r.length-1));j!==i&&x(j)},[r.length,i,x]),E=o.useCallback(()=>{i!==0&&x(0)},[i,x]);return o.useImperativeHandle(n,()=>({next:M,previous:R,jumpTo:$,reset:E}),[M,R,$,E]),o.useEffect(()=>{if(!w)return;const l=setInterval(M,m);return()=>clearInterval(l)},[M,m,w]),t.jsxs(T.span,{className:G("flex flex-wrap whitespace-pre-wrap relative",v),...I,layout:!0,transition:c,children:[t.jsx("span",{className:"sr-only",children:r[i]}),t.jsx(Ce,{mode:a,initial:s,children:t.jsx(T.span,{className:G(p==="lines"?"flex flex-col w-full":"flex flex-wrap whitespace-pre-wrap relative"),layout:!0,"aria-hidden":"true",children:z.map((l,j,N)=>{const A=N.slice(0,j).reduce((H,D)=>H+D.characters.length,0);return t.jsxs("span",{className:G("inline-flex",y),children:[l.characters.map((H,D)=>t.jsx(T.span,{initial:d,animate:u,exit:h,transition:{...c,delay:k(A+D,N.reduce((ee,te)=>ee+te.characters.length,0))},className:G("inline-block",P),children:H},D)),l.needsSpace&&t.jsx("span",{className:"whitespace-pre",children:" "})]},j)})},i)})]})});Q.displayName="RotatingText";const U={damping:30,stiffness:100,mass:2};function Pe({imageSrc:e,altText:n="Tilted card image",captionText:r="",containerHeight:c="300px",containerWidth:d="100%",imageHeight:u="300px",imageWidth:h="300px",scaleOnHover:a=1.1,rotateAmplitude:s=14,showMobileWarning:m=!0,showTooltip:f=!0,overlayContent:b=null,displayOverlayContent:g=!1}){const w=o.useRef(null),p=_(0),C=_(0),v=B(_(0),U),y=B(_(0),U),P=B(1,U),I=B(0),i=B(0,{stiffness:350,damping:30,mass:1}),[S,L]=o.useState(0);function z(M){if(!w.current)return;const R=w.current.getBoundingClientRect(),$=M.clientX-R.left-R.width/2,E=M.clientY-R.top-R.height/2,l=E/(R.height/2)*-s,j=$/(R.width/2)*s;v.set(l),y.set(j),p.set(M.clientX-R.left),C.set(M.clientY-R.top);const N=E-S;i.set(-N*.6),L(E)}function k(){P.set(a),I.set(1)}function x(){I.set(0),P.set(1),v.set(0),y.set(0),i.set(0)}return t.jsxs("figure",{ref:w,className:"relative w-full h-full [perspective:800px] flex flex-col items-center justify-center",style:{height:c,width:d},onMouseMove:z,onMouseEnter:k,onMouseLeave:x,children:[m&&t.jsx("div",{className:"absolute top-4 text-center text-sm block sm:hidden",children:"This effect is not optimized for mobile. Check on desktop."}),t.jsxs(T.div,{className:"relative [transform-style:preserve-3d]",style:{width:h,height:u,rotateX:v,rotateY:y,scale:P},children:[t.jsx(T.img,{src:e,alt:n,className:"absolute top-0 left-0 object-cover rounded-[15px] will-change-transform [transform:translateZ(0)]",style:{width:h,height:u}}),g&&b&&t.jsx(T.div,{className:"absolute top-0 left-0 z-[2] will-change-transform [transform:translateZ(30px)]",children:b})]}),f&&t.jsx(T.figcaption,{className:"pointer-events-none absolute left-0 top-0 rounded-[4px] bg-white px-[10px] py-[4px] text-[10px] text-[#2d2d2d] opacity-0 z-[3] hidden sm:block",style:{x:p,y:C,opacity:I,rotate:i},children:r})]})}function Te(){const{t:e}=pe(),{user:n}=se(),{site:r}=ne(),[c,d]=o.useState([]),[u,h]=o.useState([]);o.useEffect(()=>{re().then(s=>{s.data.success&&d(s.data.data||[])}).catch(()=>{}),oe().then(s=>{s.data.success&&h(s.data.data||[])}).catch(()=>{})},[]);const a=c.filter(s=>s.enabled!==!1);return t.jsxs("div",{className:"relative",children:[t.jsx("div",{className:"absolute inset-0 h-[700px] overflow-hidden pointer-events-none opacity-60",children:t.jsx(ke,{colorStops:["#4338ca","#7c3aed","#06b6d4"],blend:.5,amplitude:1,speed:.5})}),t.jsxs("section",{className:"relative max-w-7xl mx-auto px-6 pt-28 pb-24",children:[t.jsxs("div",{className:"text-center max-w-4xl mx-auto",children:[t.jsx("div",{className:"mb-6",children:t.jsx("h1",{className:"text-5xl md:text-7xl font-extrabold text-white leading-tight tracking-tight",children:t.jsx(Ae,{text:(r==null?void 0:r.name)||e("home.defaultHeroTitle"),delay:80,className:"inline"})})}),t.jsx("p",{className:"text-lg md:text-xl text-neutral-400 max-w-2xl mx-auto mb-4 leading-relaxed",children:e("home.heroSubtitle")}),t.jsx("div",{className:"flex flex-wrap items-center justify-center gap-3 mb-10",children:t.jsx(Q,{texts:[e("home.lightningFast"),e("home.securePrivate"),e("home.payAsYouGo")],mainClassName:"px-4 py-2 bg-white/[0.06] backdrop-blur-sm rounded-full text-white text-sm font-medium overflow-hidden border border-white/[0.08]",staggerFrom:"last",rotationInterval:3e3})}),t.jsx("div",{className:
Line truncated
|
||||
@@ -1 +1 @@
|
||||
import{r as c,j as e,u as f,a as N,l as v,k as w,L as r}from"./index-IL0bf27q.js";import{C as p}from"./CountUp-BYW6-_IC.js";import{u as y}from"./useTranslation-_qZZdhi7.js";const o=({children:t,blur:i=!1,duration:n=800,delay:d=0,threshold:x=.1,initialOpacity:m=0,className:h="",...a})=>{const s=c.useRef(null),[l,j]=c.useState(!1);return c.useEffect(()=>{const b=s.current;if(!b)return;const u=new IntersectionObserver(([g])=>{g.isIntersecting&&(j(!0),u.disconnect())},{threshold:x});return u.observe(b),()=>u.disconnect()},[x]),e.jsx("div",{ref:s,className:h,style:{opacity:l?1:m,filter:i?l?"blur(0px)":"blur(10px)":void 0,transform:l?"translateY(0)":"translateY(20px)",transition:`opacity ${n}ms ease-out ${d}ms, filter ${n}ms ease-out ${d}ms, transform ${n}ms ease-out ${d}ms`,willChange:"opacity, filter, transform"},...a,children:t})};function $(){const{t}=y(),{user:i}=f(),{site:n}=N(),[d,x]=c.useState([]),[m,h]=c.useState([]);c.useEffect(()=>{v().then(s=>{s.data.success&&x(s.data.data||[])}).catch(()=>{}),w().then(s=>{s.data.success&&h(s.data.data||[])}).catch(()=>{})},[]);const a=d.filter(s=>s.enabled!==!1);return e.jsxs("div",{className:"relative",children:[e.jsxs("section",{className:"max-w-5xl mx-auto px-6 pt-32 pb-24",children:[e.jsx(o,{blur:!0,duration:800,delay:100,children:e.jsxs("div",{className:"max-w-3xl",children:[e.jsx("h1",{className:"text-5xl md:text-6xl font-heading font-bold text-white leading-[1.1] tracking-tight",children:(n==null?void 0:n.name)||t("home.defaultHeroTitle")}),e.jsx("p",{className:"text-lg text-neutral-400 mt-6 leading-relaxed max-w-xl",children:t("home.heroSubtitle")}),e.jsx("div",{className:"flex items-center gap-4 mt-10",children:i?e.jsxs(r,{to:"/dashboard",className:"px-7 py-3 rounded-lg bg-white text-neutral-900 font-medium text-sm hover:bg-neutral-200 transition-colors",children:[t("home.goToDashboard")," →"]}):e.jsxs(e.Fragment,{children:[e.jsxs(r,{to:"/register",className:"px-7 py-3 rounded-lg bg-white text-neutral-900 font-medium text-sm hover:bg-neutral-200 transition-colors",children:[t("home.getStarted")," →"]}),e.jsx(r,{to:"/pricing",className:"px-7 py-3 text-neutral-400 font-medium text-sm hover:text-white transition-colors",children:t("home.viewPricing")})]})})]})}),e.jsx(o,{blur:!0,duration:800,delay:400,children:e.jsxs("div",{className:"flex items-center gap-12 mt-20 border-t border-neutral-800 pt-10",children:[e.jsxs("div",{children:[e.jsxs("div",{className:"text-2xl font-bold text-white",children:[e.jsx(p,{from:0,to:a.length||50,duration:2}),"+"]}),e.jsx("p",{className:"text-sm text-neutral-500 mt-0.5",children:t("home.aiModels")})]}),e.jsxs("div",{children:[e.jsxs("div",{className:"text-2xl font-bold text-white",children:[e.jsx(p,{from:0,to:99.9,duration:2.5}),"%"]}),e.jsx("p",{className:"text-sm text-neutral-500 mt-0.5",children:t("home.uptime")})]}),e.jsxs("div",{children:[e.jsxs("div",{className:"text-2xl font-bold text-white",children:["<",e.jsx(p,{from:200,to:50,duration:2,direction:"down"}),"ms"]}),e.jsx("p",{className:"text-sm text-neutral-500 mt-0.5",children:t("home.latency")})]})]})})]}),e.jsx("section",{className:"max-w-5xl mx-auto px-6 py-20",children:e.jsxs(o,{blur:!0,duration:800,delay:100,children:[e.jsx("h2",{className:"text-2xl font-heading font-bold text-white mb-2",children:t("home.whyChooseUs")}),e.jsx("p",{className:"text-neutral-500 mb-10",children:t("home.whyChooseUsDesc")}),e.jsx("div",{className:"space-y-6",children:[{title:t("home.lightningFast"),desc:t("home.lightningFastDesc")},{title:t("home.securePrivate"),desc:t("home.securePrivateDesc")},{title:t("home.payAsYouGo"),desc:t("home.payAsYouGoDesc")}].map((s,l)=>e.jsxs("div",{className:"flex gap-6 items-start py-6 border-b border-neutral-800/60 last:border-0 group",children:[e.jsxs("span",{className:"text-sm font-mono text-neutral-600 mt-0.5",children:["0",l+1]}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-base font-semibold text-white mb-1 group-hover:text-neutral-300 transition-colors",children:s.title}),e.jsx("p",{className:"text-sm text-neutral-500 leading-relaxed max-w-lg",children:s.desc})]})]},l))})]})}),a.length>0&&e.jsx("section",{className:"max-w-5xl mx-auto px-6 py-20",children:e.jsxs(o,{blur:!0,duration:800,delay:100,children:[e.jsxs("div",{className:"flex items-end justify-between mb-8",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-heading font-bold text-white mb-2",children:t("home.availableModels")}),e.jsx("p",{className:"text-neutral-500",children:t("home.availableModelsDesc",{count:a.length})})]}),a.length>8&&e.jsxs(r,{to:"/pricing",className:"text-sm text-neutral-400 hover:text-white transition-colors",children:[t("home.viewAllModels",{count:a.length})," →"]})]}),e.jsx("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-2",children:a.slice(0,8).map((s,l)=>e.jsx("div",{className:"px-4 py-3 rounded-lg border border-neutral-800/60 hover:border-neutral-700 transition-colors",children:e.jsx("span",{className:"text-sm text-neutralLine truncated
|
||||
import{r as c,j as e,u as f,a as N,l as v,k as w,L as r}from"./index-BKzMfs0Y.js";import{C as p}from"./CountUp-1XaQYcAK.js";import{u as y}from"./useTranslation-BkWapr2x.js";const o=({children:t,blur:i=!1,duration:n=800,delay:d=0,threshold:x=.1,initialOpacity:m=0,className:h="",...a})=>{const s=c.useRef(null),[l,j]=c.useState(!1);return c.useEffect(()=>{const b=s.current;if(!b)return;const u=new IntersectionObserver(([g])=>{g.isIntersecting&&(j(!0),u.disconnect())},{threshold:x});return u.observe(b),()=>u.disconnect()},[x]),e.jsx("div",{ref:s,className:h,style:{opacity:l?1:m,filter:i?l?"blur(0px)":"blur(10px)":void 0,transform:l?"translateY(0)":"translateY(20px)",transition:`opacity ${n}ms ease-out ${d}ms, filter ${n}ms ease-out ${d}ms, transform ${n}ms ease-out ${d}ms`,willChange:"opacity, filter, transform"},...a,children:t})};function $(){const{t}=y(),{user:i}=f(),{site:n}=N(),[d,x]=c.useState([]),[m,h]=c.useState([]);c.useEffect(()=>{v().then(s=>{s.data.success&&x(s.data.data||[])}).catch(()=>{}),w().then(s=>{s.data.success&&h(s.data.data||[])}).catch(()=>{})},[]);const a=d.filter(s=>s.enabled!==!1);return e.jsxs("div",{className:"relative",children:[e.jsxs("section",{className:"max-w-5xl mx-auto px-6 pt-32 pb-24",children:[e.jsx(o,{blur:!0,duration:800,delay:100,children:e.jsxs("div",{className:"max-w-3xl",children:[e.jsx("h1",{className:"text-5xl md:text-6xl font-heading font-bold text-white leading-[1.1] tracking-tight",children:(n==null?void 0:n.name)||t("home.defaultHeroTitle")}),e.jsx("p",{className:"text-lg text-neutral-400 mt-6 leading-relaxed max-w-xl",children:t("home.heroSubtitle")}),e.jsx("div",{className:"flex items-center gap-4 mt-10",children:i?e.jsxs(r,{to:"/dashboard",className:"px-7 py-3 rounded-lg bg-white text-neutral-900 font-medium text-sm hover:bg-neutral-200 transition-colors",children:[t("home.goToDashboard")," →"]}):e.jsxs(e.Fragment,{children:[e.jsxs(r,{to:"/register",className:"px-7 py-3 rounded-lg bg-white text-neutral-900 font-medium text-sm hover:bg-neutral-200 transition-colors",children:[t("home.getStarted")," →"]}),e.jsx(r,{to:"/pricing",className:"px-7 py-3 text-neutral-400 font-medium text-sm hover:text-white transition-colors",children:t("home.viewPricing")})]})})]})}),e.jsx(o,{blur:!0,duration:800,delay:400,children:e.jsxs("div",{className:"flex items-center gap-12 mt-20 border-t border-neutral-800 pt-10",children:[e.jsxs("div",{children:[e.jsxs("div",{className:"text-2xl font-bold text-white",children:[e.jsx(p,{from:0,to:a.length||50,duration:2}),"+"]}),e.jsx("p",{className:"text-sm text-neutral-500 mt-0.5",children:t("home.aiModels")})]}),e.jsxs("div",{children:[e.jsxs("div",{className:"text-2xl font-bold text-white",children:[e.jsx(p,{from:0,to:99.9,duration:2.5}),"%"]}),e.jsx("p",{className:"text-sm text-neutral-500 mt-0.5",children:t("home.uptime")})]}),e.jsxs("div",{children:[e.jsxs("div",{className:"text-2xl font-bold text-white",children:["<",e.jsx(p,{from:200,to:50,duration:2,direction:"down"}),"ms"]}),e.jsx("p",{className:"text-sm text-neutral-500 mt-0.5",children:t("home.latency")})]})]})})]}),e.jsx("section",{className:"max-w-5xl mx-auto px-6 py-20",children:e.jsxs(o,{blur:!0,duration:800,delay:100,children:[e.jsx("h2",{className:"text-2xl font-heading font-bold text-white mb-2",children:t("home.whyChooseUs")}),e.jsx("p",{className:"text-neutral-500 mb-10",children:t("home.whyChooseUsDesc")}),e.jsx("div",{className:"space-y-6",children:[{title:t("home.lightningFast"),desc:t("home.lightningFastDesc")},{title:t("home.securePrivate"),desc:t("home.securePrivateDesc")},{title:t("home.payAsYouGo"),desc:t("home.payAsYouGoDesc")}].map((s,l)=>e.jsxs("div",{className:"flex gap-6 items-start py-6 border-b border-neutral-800/60 last:border-0 group",children:[e.jsxs("span",{className:"text-sm font-mono text-neutral-600 mt-0.5",children:["0",l+1]}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-base font-semibold text-white mb-1 group-hover:text-neutral-300 transition-colors",children:s.title}),e.jsx("p",{className:"text-sm text-neutral-500 leading-relaxed max-w-lg",children:s.desc})]})]},l))})]})}),a.length>0&&e.jsx("section",{className:"max-w-5xl mx-auto px-6 py-20",children:e.jsxs(o,{blur:!0,duration:800,delay:100,children:[e.jsxs("div",{className:"flex items-end justify-between mb-8",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-heading font-bold text-white mb-2",children:t("home.availableModels")}),e.jsx("p",{className:"text-neutral-500",children:t("home.availableModelsDesc",{count:a.length})})]}),a.length>8&&e.jsxs(r,{to:"/pricing",className:"text-sm text-neutral-400 hover:text-white transition-colors",children:[t("home.viewAllModels",{count:a.length})," →"]})]}),e.jsx("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-2",children:a.slice(0,8).map((s,l)=>e.jsx("div",{className:"px-4 py-3 rounded-lg border border-neutral-800/60 hover:border-neutral-700 transition-colors",children:e.jsx("span",{className:"text-sm text-neutralLine truncated
|
||||
@@ -1,4 +1,4 @@
|
||||
import{r as d,j as t,u as ee,a as te,l as se,k as re,L as E}from"./index-IL0bf27q.js";import{T as oe,a as Z,V as T,R as ae,G as ne,P as ie,M as le}from"./Mesh-CwXV3WjE.js";import{m as ce}from"./proxy-C5U9l3lk.js";import{C as de}from"./CountUp-BYW6-_IC.js";import{u as me}from"./useTranslation-_qZZdhi7.js";const ue=new Z,he=new T,xe=new T;class fe extends oe{constructor(e,{near:a=.1,far:i=100,fov:c=45,aspect:u=1,left:f,right:h,bottom:r,top:k,zoom:b=1}={}){super(),Object.assign(this,{near:a,far:i,fov:c,aspect:u,left:f,right:h,bottom:r,top:k,zoom:b}),this.projectionMatrix=new Z,this.viewMatrix=new Z,this.projectionViewMatrix=new Z,this.worldPosition=new T,this.type=f||h?"orthographic":"perspective",this.type==="orthographic"?this.orthographic():this.perspective()}perspective({near:e=this.near,far:a=this.far,fov:i=this.fov,aspect:c=this.aspect}={}){return Object.assign(this,{near:e,far:a,fov:i,aspect:c}),this.projectionMatrix.fromPerspective({fov:i*(Math.PI/180),aspect:c,near:e,far:a}),this.type="perspective",this}orthographic({near:e=this.near,far:a=this.far,left:i=this.left||-1,right:c=this.right||1,bottom:u=this.bottom||-1,top:f=this.top||1,zoom:h=this.zoom}={}){return Object.assign(this,{near:e,far:a,left:i,right:c,bottom:u,top:f,zoom:h}),i/=h,c/=h,u/=h,f/=h,this.projectionMatrix.fromOrthogonal({left:i,right:c,bottom:u,top:f,near:e,far:a}),this.type="orthographic",this}updateMatrixWorld(){return super.updateMatrixWorld(),this.viewMatrix.inverse(this.worldMatrix),this.worldMatrix.getTranslation(this.worldPosition),this.projectionViewMatrix.multiply(this.projectionMatrix,this.viewMatrix),this}updateProjectionMatrix(){return this.type==="perspective"?this.perspective():this.orthographic()}lookAt(e){return super.lookAt(e,!0),this}project(e){return e.applyMatrix4(this.viewMatrix),e.applyMatrix4(this.projectionMatrix),this}unproject(e){return e.applyMatrix4(ue.inverse(this.projectionMatrix)),e.applyMatrix4(this.worldMatrix),this}updateFrustum(){this.frustum||(this.frustum=[new T,new T,new T,new T,new T,new T]);const e=this.projectionViewMatrix;this.frustum[0].set(e[3]-e[0],e[7]-e[4],e[11]-e[8]).constant=e[15]-e[12],this.frustum[1].set(e[3]+e[0],e[7]+e[4],e[11]+e[8]).constant=e[15]+e[12],this.frustum[2].set(e[3]+e[1],e[7]+e[5],e[11]+e[9]).constant=e[15]+e[13],this.frustum[3].set(e[3]-e[1],e[7]-e[5],e[11]-e[9]).constant=e[15]-e[13],this.frustum[4].set(e[3]-e[2],e[7]-e[6],e[11]-e[10]).constant=e[15]-e[14],this.frustum[5].set(e[3]+e[2],e[7]+e[6],e[11]+e[10]).constant=e[15]+e[14];for(let a=0;a<6;a++){const i=1/this.frustum[a].distance();this.frustum[a].multiply(i),this.frustum[a].constant*=i}}frustumIntersectsMesh(e,a=e.worldMatrix){if(!e.geometry.attributes.position||((!e.geometry.bounds||e.geometry.bounds.radius===1/0)&&e.geometry.computeBoundingSphere(),!e.geometry.bounds))return!0;const i=he;i.copy(e.geometry.bounds.center),i.applyMatrix4(a);const c=e.geometry.bounds.radius*a.getMaxScaleOnAxis();return this.frustumIntersectsSphere(i,c)}frustumIntersectsSphere(e,a){const i=xe;for(let c=0;c<6;c++){const u=this.frustum[c];if(i.copy(u).dot(e)+u.constant<-a)return!1}return!0}}const pe=["#ffffff","#ffffff","#ffffff"],ge=s=>{s=s.replace(/^#/,""),s.length===3&&(s=s.split("").map(u=>u+u).join(""));const e=parseInt(s,16),a=(e>>16&255)/255,i=(e>>8&255)/255,c=(e&255)/255;return[a,i,c]},ve=`
|
||||
import{r as d,j as t,u as ee,a as te,l as se,k as re,L as E}from"./index-BKzMfs0Y.js";import{T as oe,a as Z,V as T,R as ae,G as ne,P as ie,M as le}from"./Mesh-CwXV3WjE.js";import{m as ce}from"./proxy-CtcPDSb8.js";import{C as de}from"./CountUp-1XaQYcAK.js";import{u as me}from"./useTranslation-BkWapr2x.js";const ue=new Z,he=new T,xe=new T;class fe extends oe{constructor(e,{near:a=.1,far:i=100,fov:c=45,aspect:u=1,left:f,right:h,bottom:r,top:k,zoom:b=1}={}){super(),Object.assign(this,{near:a,far:i,fov:c,aspect:u,left:f,right:h,bottom:r,top:k,zoom:b}),this.projectionMatrix=new Z,this.viewMatrix=new Z,this.projectionViewMatrix=new Z,this.worldPosition=new T,this.type=f||h?"orthographic":"perspective",this.type==="orthographic"?this.orthographic():this.perspective()}perspective({near:e=this.near,far:a=this.far,fov:i=this.fov,aspect:c=this.aspect}={}){return Object.assign(this,{near:e,far:a,fov:i,aspect:c}),this.projectionMatrix.fromPerspective({fov:i*(Math.PI/180),aspect:c,near:e,far:a}),this.type="perspective",this}orthographic({near:e=this.near,far:a=this.far,left:i=this.left||-1,right:c=this.right||1,bottom:u=this.bottom||-1,top:f=this.top||1,zoom:h=this.zoom}={}){return Object.assign(this,{near:e,far:a,left:i,right:c,bottom:u,top:f,zoom:h}),i/=h,c/=h,u/=h,f/=h,this.projectionMatrix.fromOrthogonal({left:i,right:c,bottom:u,top:f,near:e,far:a}),this.type="orthographic",this}updateMatrixWorld(){return super.updateMatrixWorld(),this.viewMatrix.inverse(this.worldMatrix),this.worldMatrix.getTranslation(this.worldPosition),this.projectionViewMatrix.multiply(this.projectionMatrix,this.viewMatrix),this}updateProjectionMatrix(){return this.type==="perspective"?this.perspective():this.orthographic()}lookAt(e){return super.lookAt(e,!0),this}project(e){return e.applyMatrix4(this.viewMatrix),e.applyMatrix4(this.projectionMatrix),this}unproject(e){return e.applyMatrix4(ue.inverse(this.projectionMatrix)),e.applyMatrix4(this.worldMatrix),this}updateFrustum(){this.frustum||(this.frustum=[new T,new T,new T,new T,new T,new T]);const e=this.projectionViewMatrix;this.frustum[0].set(e[3]-e[0],e[7]-e[4],e[11]-e[8]).constant=e[15]-e[12],this.frustum[1].set(e[3]+e[0],e[7]+e[4],e[11]+e[8]).constant=e[15]+e[12],this.frustum[2].set(e[3]+e[1],e[7]+e[5],e[11]+e[9]).constant=e[15]+e[13],this.frustum[3].set(e[3]-e[1],e[7]-e[5],e[11]-e[9]).constant=e[15]-e[13],this.frustum[4].set(e[3]-e[2],e[7]-e[6],e[11]-e[10]).constant=e[15]-e[14],this.frustum[5].set(e[3]+e[2],e[7]+e[6],e[11]+e[10]).constant=e[15]+e[14];for(let a=0;a<6;a++){const i=1/this.frustum[a].distance();this.frustum[a].multiply(i),this.frustum[a].constant*=i}}frustumIntersectsMesh(e,a=e.worldMatrix){if(!e.geometry.attributes.position||((!e.geometry.bounds||e.geometry.bounds.radius===1/0)&&e.geometry.computeBoundingSphere(),!e.geometry.bounds))return!0;const i=he;i.copy(e.geometry.bounds.center),i.applyMatrix4(a);const c=e.geometry.bounds.radius*a.getMaxScaleOnAxis();return this.frustumIntersectsSphere(i,c)}frustumIntersectsSphere(e,a){const i=xe;for(let c=0;c<6;c++){const u=this.frustum[c];if(i.copy(u).dot(e)+u.constant<-a)return!1}return!0}}const pe=["#ffffff","#ffffff","#ffffff"],ge=s=>{s=s.replace(/^#/,""),s.length===3&&(s=s.split("").map(u=>u+u).join(""));const e=parseInt(s,16),a=(e>>16&255)/255,i=(e>>8&255)/255,c=(e&255)/255;return[a,i,c]},ve=`
|
||||
attribute vec3 position;
|
||||
attribute vec4 random;
|
||||
attribute vec3 color;
|
||||
@@ -1 +1 @@
|
||||
import{r as l,j as e,u as L,a as E,l as P,k as A,L as f}from"./index-IL0bf27q.js";import{u as R,a as B,C as F}from"./CountUp-BYW6-_IC.js";import{u as I}from"./use-animation-frame-C8xwlfkl.js";import{m as k}from"./proxy-C5U9l3lk.js";import{S as T}from"./SpotlightCard-DnZRIBvu.js";import{u as V}from"./useTranslation-_qZZdhi7.js";function _({children:t,className:n="",colors:o=["#5227FF","#FF9FFC","#B19EEF"],animationSpeed:i=8,showBorder:a=!1,direction:r="horizontal",pauseOnHover:c=!1,yoyo:x=!0}){const[s,g]=l.useState(!1),u=R(0),j=l.useRef(0),m=l.useRef(null),p=i*1e3;I(d=>{if(s){m.current=null;return}if(m.current===null){m.current=d;return}const M=d-m.current;if(m.current=d,j.current+=M,x){const z=p*2,h=j.current%z;h<p?u.set(h/p*100):u.set(100-(h-p)/p*100)}else u.set(j.current/p*100)}),l.useEffect(()=>{j.current=0,u.set(0)},[i,u,x]);const w=B(u,d=>r==="horizontal"?`${d}% 50%`:r==="vertical"?`50% ${d}%`:`${d}% 50%`),v=l.useCallback(()=>{c&&g(!0)},[c]),S=l.useCallback(()=>{c&&g(!1)},[c]),C=r==="horizontal"?"to right":r==="vertical"?"to bottom":"to bottom right",N=[...o,o[0]].join(", "),y={backgroundImage:`linear-gradient(${C}, ${N})`,backgroundSize:r==="horizontal"?"300% 100%":r==="vertical"?"100% 300%":"300% 300%",backgroundRepeat:"repeat"};return e.jsxs(k.div,{className:`relative mx-auto flex max-w-fit flex-row items-center justify-center rounded-[1.25rem] font-medium backdrop-blur transition-shadow duration-500 overflow-hidden cursor-pointer ${a?"py-1 px-2":""} ${n}`,onMouseEnter:v,onMouseLeave:S,children:[a&&e.jsx(k.div,{className:"absolute inset-0 z-0 pointer-events-none rounded-[1.25rem]",style:{...y,backgroundPosition:w},children:e.jsx("div",{className:"absolute bg-black rounded-[1.25rem] z-[-1]",style:{width:"calc(100% - 2px)",height:"calc(100% - 2px)",left:"50%",top:"50%",transform:"translate(-50%, -50%)"}})}),e.jsx(k.div,{className:"inline-block relative z-2 text-transparent bg-clip-text",style:{...y,backgroundPosition:w,WebkitBackgroundClip:"text"},children:t})]})}const W=(t,n)=>{const o=new Set([...Object.keys(t),...n.flatMap(a=>Object.keys(a))]),i={};return o.forEach(a=>{i[a]=[t[a],...n.map(r=>r[a])]}),i},G=({text:t="",delay:n=200,className:o="",animateBy:i="words",direction:a="top",threshold:r=.1,rootMargin:c="0px",animationFrom:x,animationTo:s,easing:g=m=>m,onAnimationComplete:u,stepDuration:j=.35})=>{const m=i==="words"?t.split(" "):t.split(""),[p,w]=l.useState(!1),v=l.useRef(null);l.useEffect(()=>{if(!v.current)return;const h=new IntersectionObserver(([b])=>{b.isIntersecting&&(w(!0),h.unobserve(v.current))},{threshold:r,rootMargin:c});return h.observe(v.current),()=>h.disconnect()},[r,c]);const S=l.useMemo(()=>a==="top"?{filter:"blur(10px)",opacity:0,y:-50}:{filter:"blur(10px)",opacity:0,y:50},[a]),C=l.useMemo(()=>[{filter:"blur(5px)",opacity:.5,y:a==="top"?5:-5},{filter:"blur(0px)",opacity:1,y:0}],[a]),N=x??S,y=s??C,d=y.length+1,M=j*(d-1),z=Array.from({length:d},(h,b)=>d===1?0:b/(d-1));return e.jsx("p",{ref:v,className:`blur-text ${o} flex flex-wrap`,children:m.map((h,b)=>{const D=W(N,y),$={duration:M,times:z,delay:b*n/1e3};return $.ease=g,e.jsxs(k.span,{className:"inline-block will-change-[transform,filter,opacity]",initial:N,animate:p?D:N,transition:$,onAnimationComplete:b===m.length-1?u:void 0,children:[h===" "?" ":h,i==="words"&&b<m.length-1&&" "]},b)})})},U=({as:t="button",className:n="",color:o="white",speed:i="6s",thickness:a=1,children:r,...c})=>e.jsxs(t,{className:`relative inline-block overflow-hidden rounded-[20px] ${n}`,style:{padding:`${a}px 0`,...c.style},...c,children:[e.jsx("div",{className:"absolute w-[300%] h-[50%] opacity-70 bottom-[-11px] right-[-250%] rounded-full animate-star-movement-bottom z-0",style:{background:`radial-gradient(circle, ${o}, transparent 10%)`,animationDuration:i}}),e.jsx("div",{className:"absolute w-[300%] h-[50%] opacity-70 top-[-10px] left-[-250%] rounded-full animate-star-movement-top z-0",style:{background:`radial-gradient(circle, ${o}, transparent 10%)`,animationDuration:i}}),e.jsx("div",{className:"relative z-1 bg-gradient-to-b from-black to-gray-900 border border-gray-800 text-white text-center text-[16px] py-[16px] px-[26px] rounded-[20px]",children:r})]});function Q(){const{t}=V(),{user:n}=L(),{site:o}=E(),[i,a]=l.useState([]),[r,c]=l.useState([]);l.useEffect(()=>{P().then(s=>{s.data.success&&a(s.data.data||[])}).catch(()=>{}),A().then(s=>{s.data.success&&c(s.data.data||[])}).catch(()=>{})},[]);const x=i.filter(s=>s.enabled!==!1);return e.jsxs("div",{className:"relative",children:[e.jsxs("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:[e.jsx("div",{className:"absolute top-0 left-1/2 -translate-x-1/2 w-[800px] h-[600px] bg-gradient-radial from-brand-600/20 via-purple-600/5 to-transparent blur-3xl"}),e.jsx("div",{className:"absolute top-[400px] right-0 w-[500px] h-[500px] bg-gradient-radial from-pink-600/10 to-transparent blur-3xl"})]}),e.jsxs("section",{className:"relative max-w-7xl mx-auto px-6 pt-24 pb-20",chLine truncated
|
||||
import{r as l,j as e,u as L,a as E,l as P,k as A,L as f}from"./index-BKzMfs0Y.js";import{u as R,a as B,C as F}from"./CountUp-1XaQYcAK.js";import{u as I}from"./use-animation-frame-fCsW-Snm.js";import{m as k}from"./proxy-CtcPDSb8.js";import{S as T}from"./SpotlightCard-DtQFfRY_.js";import{u as V}from"./useTranslation-BkWapr2x.js";function _({children:t,className:n="",colors:o=["#5227FF","#FF9FFC","#B19EEF"],animationSpeed:i=8,showBorder:a=!1,direction:r="horizontal",pauseOnHover:c=!1,yoyo:x=!0}){const[s,g]=l.useState(!1),u=R(0),j=l.useRef(0),m=l.useRef(null),p=i*1e3;I(d=>{if(s){m.current=null;return}if(m.current===null){m.current=d;return}const M=d-m.current;if(m.current=d,j.current+=M,x){const z=p*2,h=j.current%z;h<p?u.set(h/p*100):u.set(100-(h-p)/p*100)}else u.set(j.current/p*100)}),l.useEffect(()=>{j.current=0,u.set(0)},[i,u,x]);const w=B(u,d=>r==="horizontal"?`${d}% 50%`:r==="vertical"?`50% ${d}%`:`${d}% 50%`),v=l.useCallback(()=>{c&&g(!0)},[c]),S=l.useCallback(()=>{c&&g(!1)},[c]),C=r==="horizontal"?"to right":r==="vertical"?"to bottom":"to bottom right",N=[...o,o[0]].join(", "),y={backgroundImage:`linear-gradient(${C}, ${N})`,backgroundSize:r==="horizontal"?"300% 100%":r==="vertical"?"100% 300%":"300% 300%",backgroundRepeat:"repeat"};return e.jsxs(k.div,{className:`relative mx-auto flex max-w-fit flex-row items-center justify-center rounded-[1.25rem] font-medium backdrop-blur transition-shadow duration-500 overflow-hidden cursor-pointer ${a?"py-1 px-2":""} ${n}`,onMouseEnter:v,onMouseLeave:S,children:[a&&e.jsx(k.div,{className:"absolute inset-0 z-0 pointer-events-none rounded-[1.25rem]",style:{...y,backgroundPosition:w},children:e.jsx("div",{className:"absolute bg-black rounded-[1.25rem] z-[-1]",style:{width:"calc(100% - 2px)",height:"calc(100% - 2px)",left:"50%",top:"50%",transform:"translate(-50%, -50%)"}})}),e.jsx(k.div,{className:"inline-block relative z-2 text-transparent bg-clip-text",style:{...y,backgroundPosition:w,WebkitBackgroundClip:"text"},children:t})]})}const W=(t,n)=>{const o=new Set([...Object.keys(t),...n.flatMap(a=>Object.keys(a))]),i={};return o.forEach(a=>{i[a]=[t[a],...n.map(r=>r[a])]}),i},G=({text:t="",delay:n=200,className:o="",animateBy:i="words",direction:a="top",threshold:r=.1,rootMargin:c="0px",animationFrom:x,animationTo:s,easing:g=m=>m,onAnimationComplete:u,stepDuration:j=.35})=>{const m=i==="words"?t.split(" "):t.split(""),[p,w]=l.useState(!1),v=l.useRef(null);l.useEffect(()=>{if(!v.current)return;const h=new IntersectionObserver(([b])=>{b.isIntersecting&&(w(!0),h.unobserve(v.current))},{threshold:r,rootMargin:c});return h.observe(v.current),()=>h.disconnect()},[r,c]);const S=l.useMemo(()=>a==="top"?{filter:"blur(10px)",opacity:0,y:-50}:{filter:"blur(10px)",opacity:0,y:50},[a]),C=l.useMemo(()=>[{filter:"blur(5px)",opacity:.5,y:a==="top"?5:-5},{filter:"blur(0px)",opacity:1,y:0}],[a]),N=x??S,y=s??C,d=y.length+1,M=j*(d-1),z=Array.from({length:d},(h,b)=>d===1?0:b/(d-1));return e.jsx("p",{ref:v,className:`blur-text ${o} flex flex-wrap`,children:m.map((h,b)=>{const D=W(N,y),$={duration:M,times:z,delay:b*n/1e3};return $.ease=g,e.jsxs(k.span,{className:"inline-block will-change-[transform,filter,opacity]",initial:N,animate:p?D:N,transition:$,onAnimationComplete:b===m.length-1?u:void 0,children:[h===" "?" ":h,i==="words"&&b<m.length-1&&" "]},b)})})},U=({as:t="button",className:n="",color:o="white",speed:i="6s",thickness:a=1,children:r,...c})=>e.jsxs(t,{className:`relative inline-block overflow-hidden rounded-[20px] ${n}`,style:{padding:`${a}px 0`,...c.style},...c,children:[e.jsx("div",{className:"absolute w-[300%] h-[50%] opacity-70 bottom-[-11px] right-[-250%] rounded-full animate-star-movement-bottom z-0",style:{background:`radial-gradient(circle, ${o}, transparent 10%)`,animationDuration:i}}),e.jsx("div",{className:"absolute w-[300%] h-[50%] opacity-70 top-[-10px] left-[-250%] rounded-full animate-star-movement-top z-0",style:{background:`radial-gradient(circle, ${o}, transparent 10%)`,animationDuration:i}}),e.jsx("div",{className:"relative z-1 bg-gradient-to-b from-black to-gray-900 border border-gray-800 text-white text-center text-[16px] py-[16px] px-[26px] rounded-[20px]",children:r})]});function Q(){const{t}=V(),{user:n}=L(),{site:o}=E(),[i,a]=l.useState([]),[r,c]=l.useState([]);l.useEffect(()=>{P().then(s=>{s.data.success&&a(s.data.data||[])}).catch(()=>{}),A().then(s=>{s.data.success&&c(s.data.data||[])}).catch(()=>{})},[]);const x=i.filter(s=>s.enabled!==!1);return e.jsxs("div",{className:"relative",children:[e.jsxs("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:[e.jsx("div",{className:"absolute top-0 left-1/2 -translate-x-1/2 w-[800px] h-[600px] bg-gradient-radial from-brand-600/20 via-purple-600/5 to-transparent blur-3xl"}),e.jsx("div",{className:"absolute top-[400px] right-0 w-[500px] h-[500px] bg-gradient-radial from-pink-600/10 to-transparent blur-3xl"})]}),e.jsxs("section",{className:"relative max-w-7xl mx-auto px-6 pt-24 pb-20",chLine truncated
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{j as n}from"./index-IL0bf27q.js";import{u as a}from"./useTranslation-_qZZdhi7.js";function u({className:t=""}){var s;const{i18n:e}=a(),o=(s=e.language)==null?void 0:s.startsWith("zh"),r=()=>{e.changeLanguage(o?"en":"zh")};return n.jsxs("button",{onClick:r,className:`flex items-center gap-1.5 px-2.5 py-1 rounded-md text-xs transition-colors ${t}`,"aria-label":"Switch language",children:[n.jsxs("svg",{className:"w-3.5 h-3.5",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.5,children:[n.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18Z"}),n.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M3.6 9h16.8M3.6 15h16.8"}),n.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 3a15.3 15.3 0 0 1 4 9 15.3 15.3 0 0 1-4 9 15.3 15.3 0 0 1-4-9 15.3 15.3 0 0 1 4-9Z"})]}),n.jsx("span",{children:o?"EN":"中文"})]})}export{u as L};
|
||||
import{j as n}from"./index-BKzMfs0Y.js";import{u as a}from"./useTranslation-BkWapr2x.js";function u({className:t=""}){var s;const{i18n:e}=a(),o=(s=e.language)==null?void 0:s.startsWith("zh"),r=()=>{e.changeLanguage(o?"en":"zh")};return n.jsxs("button",{onClick:r,className:`flex items-center gap-1.5 px-2.5 py-1 rounded-md text-xs transition-colors ${t}`,"aria-label":"Switch language",children:[n.jsxs("svg",{className:"w-3.5 h-3.5",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.5,children:[n.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18Z"}),n.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M3.6 9h16.8M3.6 15h16.8"}),n.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 3a15.3 15.3 0 0 1 4 9 15.3 15.3 0 0 1-4 9 15.3 15.3 0 0 1-4-9 15.3 15.3 0 0 1 4-9Z"})]}),n.jsx("span",{children:o?"EN":"中文"})]})}export{u as L};
|
||||
@@ -1 +1 @@
|
||||
import{u as h,a as u,b,c as p,r as g,j as e,L as l,O as v}from"./index-IL0bf27q.js";import{L as f}from"./LanguageSwitch-BaL1PXZI.js";import{u as j}from"./useTranslation-_qZZdhi7.js";function L(){const{t:s}=j(),{user:o,logout:d}=h(),{site:t}=u(),m=b(),i=p(),[r,c]=g.useState(!1),n=(t==null?void 0:t.name)||"AI Platform",x=[{to:"/",label:s("nav.home"),auth:!1},{to:"/pricing",label:s("nav.pricing"),auth:!1},{to:"/packages",label:s("nav.packages"),auth:!1},{to:"/dashboard",label:s("nav.dashboard"),auth:!0},{to:"/tokens",label:s("nav.apiKeys"),auth:!0}].filter(a=>!a.auth||o);return e.jsxs("div",{className:"min-h-screen flex flex-col bg-[#09090b]",children:[(t==null?void 0:t.announcement)&&e.jsx("div",{className:"bg-gradient-to-r from-violet-600/10 via-blue-600/10 to-cyan-600/10 border-b border-white/[0.06] text-center py-2.5 px-4",children:e.jsx("p",{className:"text-sm text-neutral-300",children:t.announcement})}),e.jsxs("header",{className:"sticky top-0 z-50 backdrop-blur-2xl bg-[#09090b]/80 border-b border-white/[0.06]",children:[e.jsxs("div",{className:"max-w-7xl mx-auto px-6 h-16 flex items-center justify-between",children:[e.jsxs(l,{to:"/",className:"flex items-center gap-3 group",children:[t!=null&&t.logo?e.jsx("img",{src:t.logo,alt:n,className:"h-8 w-auto"}):e.jsx("div",{className:"w-9 h-9 rounded-xl bg-gradient-to-br from-violet-500 via-blue-500 to-cyan-500 flex items-center justify-center text-white font-bold text-sm shadow-lg shadow-blue-500/20",children:n.charAt(0)}),e.jsx("span",{className:"text-lg font-semibold text-white group-hover:text-blue-400 transition-colors",children:n})]}),e.jsx("nav",{className:"hidden md:flex items-center gap-1 bg-white/[0.04] rounded-full px-1.5 py-1 border border-white/[0.06]",children:x.map(a=>e.jsx(l,{to:a.to,className:`px-4 py-1.5 text-sm rounded-full transition-all ${i.pathname===a.to?"text-white bg-white/[0.08]":"text-neutral-400 hover:text-white"}`,children:a.label},a.to))}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(f,{className:"text-neutral-400 hover:text-white hover:bg-white/5"}),o?e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm text-neutral-400 hidden sm:block",children:o.display_name||o.username}),e.jsx("button",{onClick:async()=>{await d(),m("/")},className:"text-sm text-neutral-400 hover:text-white transition-colors",children:s("nav.logout")})]}):e.jsxs(e.Fragment,{children:[e.jsx(l,{to:"/login",className:"text-sm text-neutral-400 hover:text-white transition-colors px-3 py-1.5 hidden sm:block",children:s("nav.login")}),e.jsx(l,{to:"/register",className:"px-5 py-2 rounded-full bg-white text-black text-sm font-medium hover:bg-neutral-100 transition-all",children:s("nav.signUp")})]}),e.jsx("button",{className:"md:hidden p-1.5 rounded-lg hover:bg-white/5 transition-colors",onClick:()=>c(!r),"aria-label":"Toggle menu",children:e.jsx("svg",{className:"w-5 h-5 text-neutral-300",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:r?e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),r&&e.jsx("div",{className:"md:hidden border-t border-white/[0.06] bg-[#09090b]/95 backdrop-blur-2xl",children:e.jsx("nav",{className:"max-w-7xl mx-auto px-6 py-3 flex flex-col gap-1",children:x.map(a=>e.jsx(l,{to:a.to,onClick:()=>c(!1),className:`px-3 py-2 text-sm rounded-lg transition-colors ${i.pathname===a.to?"text-blue-400 bg-blue-500/10":"text-neutral-400 hover:text-white hover:bg-white/5"}`,children:a.label},a.to))})})]}),e.jsx("main",{className:"flex-1",children:e.jsx(v,{})}),e.jsx("footer",{className:"border-t border-white/[0.06] mt-auto bg-[#09090b]",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-8 flex flex-col md:flex-row items-center justify-between gap-4",children:[e.jsxs("p",{className:"text-sm text-neutral-500",children:["© ",new Date().getFullYear()," ",n,"."]}),e.jsx("div",{className:"flex items-center gap-4",children:(t==null?void 0:t.contact_email)&&e.jsx("a",{href:`mailto:${t.contact_email}`,className:"text-sm text-neutral-500 hover:text-neutral-300 transition-colors",children:s("nav.contact")})})]})})]})}export{L as default};
|
||||
import{u as h,a as u,b,c as p,r as g,j as e,L as l,O as v}from"./index-BKzMfs0Y.js";import{L as f}from"./LanguageSwitch-GFWtBZjN.js";import{u as j}from"./useTranslation-BkWapr2x.js";function L(){const{t:s}=j(),{user:o,logout:d}=h(),{site:t}=u(),m=b(),i=p(),[r,c]=g.useState(!1),n=(t==null?void 0:t.name)||"AI Platform",x=[{to:"/",label:s("nav.home"),auth:!1},{to:"/pricing",label:s("nav.pricing"),auth:!1},{to:"/packages",label:s("nav.packages"),auth:!1},{to:"/dashboard",label:s("nav.dashboard"),auth:!0},{to:"/tokens",label:s("nav.apiKeys"),auth:!0}].filter(a=>!a.auth||o);return e.jsxs("div",{className:"min-h-screen flex flex-col bg-[#09090b]",children:[(t==null?void 0:t.announcement)&&e.jsx("div",{className:"bg-gradient-to-r from-violet-600/10 via-blue-600/10 to-cyan-600/10 border-b border-white/[0.06] text-center py-2.5 px-4",children:e.jsx("p",{className:"text-sm text-neutral-300",children:t.announcement})}),e.jsxs("header",{className:"sticky top-0 z-50 backdrop-blur-2xl bg-[#09090b]/80 border-b border-white/[0.06]",children:[e.jsxs("div",{className:"max-w-7xl mx-auto px-6 h-16 flex items-center justify-between",children:[e.jsxs(l,{to:"/",className:"flex items-center gap-3 group",children:[t!=null&&t.logo?e.jsx("img",{src:t.logo,alt:n,className:"h-8 w-auto"}):e.jsx("div",{className:"w-9 h-9 rounded-xl bg-gradient-to-br from-violet-500 via-blue-500 to-cyan-500 flex items-center justify-center text-white font-bold text-sm shadow-lg shadow-blue-500/20",children:n.charAt(0)}),e.jsx("span",{className:"text-lg font-semibold text-white group-hover:text-blue-400 transition-colors",children:n})]}),e.jsx("nav",{className:"hidden md:flex items-center gap-1 bg-white/[0.04] rounded-full px-1.5 py-1 border border-white/[0.06]",children:x.map(a=>e.jsx(l,{to:a.to,className:`px-4 py-1.5 text-sm rounded-full transition-all ${i.pathname===a.to?"text-white bg-white/[0.08]":"text-neutral-400 hover:text-white"}`,children:a.label},a.to))}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(f,{className:"text-neutral-400 hover:text-white hover:bg-white/5"}),o?e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm text-neutral-400 hidden sm:block",children:o.display_name||o.username}),e.jsx("button",{onClick:async()=>{await d(),m("/")},className:"text-sm text-neutral-400 hover:text-white transition-colors",children:s("nav.logout")})]}):e.jsxs(e.Fragment,{children:[e.jsx(l,{to:"/login",className:"text-sm text-neutral-400 hover:text-white transition-colors px-3 py-1.5 hidden sm:block",children:s("nav.login")}),e.jsx(l,{to:"/register",className:"px-5 py-2 rounded-full bg-white text-black text-sm font-medium hover:bg-neutral-100 transition-all",children:s("nav.signUp")})]}),e.jsx("button",{className:"md:hidden p-1.5 rounded-lg hover:bg-white/5 transition-colors",onClick:()=>c(!r),"aria-label":"Toggle menu",children:e.jsx("svg",{className:"w-5 h-5 text-neutral-300",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:r?e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),r&&e.jsx("div",{className:"md:hidden border-t border-white/[0.06] bg-[#09090b]/95 backdrop-blur-2xl",children:e.jsx("nav",{className:"max-w-7xl mx-auto px-6 py-3 flex flex-col gap-1",children:x.map(a=>e.jsx(l,{to:a.to,onClick:()=>c(!1),className:`px-3 py-2 text-sm rounded-lg transition-colors ${i.pathname===a.to?"text-blue-400 bg-blue-500/10":"text-neutral-400 hover:text-white hover:bg-white/5"}`,children:a.label},a.to))})})]}),e.jsx("main",{className:"flex-1",children:e.jsx(v,{})}),e.jsx("footer",{className:"border-t border-white/[0.06] mt-auto bg-[#09090b]",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-8 flex flex-col md:flex-row items-center justify-between gap-4",children:[e.jsxs("p",{className:"text-sm text-neutral-500",children:["© ",new Date().getFullYear()," ",n,"."]}),e.jsx("div",{className:"flex items-center gap-4",children:(t==null?void 0:t.contact_email)&&e.jsx("a",{href:`mailto:${t.contact_email}`,className:"text-sm text-neutral-500 hover:text-neutral-300 transition-colors",children:s("nav.contact")})})]})})]})}export{L as default};
|
||||
@@ -1 +1 @@
|
||||
import{u as h,a as u,b as p,c as b,r as f,j as e,L as o,O as g}from"./index-IL0bf27q.js";import{L as j}from"./LanguageSwitch-BaL1PXZI.js";import{u as v}from"./useTranslation-_qZZdhi7.js";function L(){const{t:s}=v(),{user:r,logout:i}=h(),{site:t}=u(),x=p(),m=b(),[l,d]=f.useState(!1),n=(t==null?void 0:t.name)||"AI Platform",c=[{to:"/",label:s("nav.home"),auth:!1},{to:"/pricing",label:s("nav.pricing"),auth:!1},{to:"/packages",label:s("nav.packages"),auth:!1},{to:"/dashboard",label:s("nav.dashboard"),auth:!0},{to:"/tokens",label:s("nav.apiKeys"),auth:!0}].filter(a=>!a.auth||r);return e.jsxs("div",{className:"min-h-screen flex flex-col bg-[#030712] text-white",children:[(t==null?void 0:t.announcement)&&e.jsx("div",{className:"bg-emerald-500/5 border-b border-emerald-500/10 text-center py-2 px-4",children:e.jsx("p",{className:"text-sm text-emerald-300/80 font-mono",children:t.announcement})}),e.jsxs("header",{className:"sticky top-0 z-50 backdrop-blur-xl bg-[#030712]/80 border-b border-emerald-500/[0.08]",children:[e.jsxs("div",{className:"max-w-7xl mx-auto px-6 h-14 flex items-center justify-between",children:[e.jsxs(o,{to:"/",className:"flex items-center gap-3 group",children:[t!=null&&t.logo?e.jsx("img",{src:t.logo,alt:n,className:"h-7 w-auto"}):e.jsx("div",{className:"w-8 h-8 rounded bg-emerald-500/10 border border-emerald-500/20 flex items-center justify-center text-emerald-400 font-bold font-mono text-sm",children:n.charAt(0)}),e.jsx("span",{className:"text-base font-semibold text-emerald-400 font-mono group-hover:text-emerald-300 transition-colors tracking-wide",children:n})]}),e.jsx("nav",{className:"hidden md:flex items-center gap-1",children:c.map(a=>e.jsx(o,{to:a.to,className:`px-3 py-1.5 text-sm font-mono rounded transition-all ${m.pathname===a.to?"text-emerald-400 bg-emerald-500/10":"text-neutral-500 hover:text-emerald-400"}`,children:a.label},a.to))}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(j,{className:"text-neutral-500 hover:text-emerald-400 hover:bg-emerald-500/5 font-mono"}),r?e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm text-neutral-500 font-mono hidden sm:block",children:r.display_name||r.username}),e.jsx("button",{onClick:async()=>{await i(),x("/")},className:"text-sm text-neutral-500 hover:text-emerald-400 font-mono transition-colors",children:s("nav.logout")})]}):e.jsxs(e.Fragment,{children:[e.jsx(o,{to:"/login",className:"text-sm text-neutral-500 hover:text-emerald-400 font-mono transition-colors hidden sm:block px-3 py-1.5",children:s("nav.login")}),e.jsx(o,{to:"/register",className:"px-4 py-1.5 rounded bg-emerald-500/10 border border-emerald-500/20 text-emerald-400 text-sm font-mono hover:bg-emerald-500/15 transition-all",children:s("nav.signUp")})]}),e.jsx("button",{className:"md:hidden p-1.5 rounded hover:bg-white/5",onClick:()=>d(!l),children:e.jsx("svg",{className:"w-5 h-5 text-emerald-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:l?e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),l&&e.jsx("div",{className:"md:hidden border-t border-emerald-500/[0.08] bg-[#030712]/95 backdrop-blur-xl",children:e.jsx("nav",{className:"max-w-7xl mx-auto px-6 py-3 flex flex-col gap-1",children:c.map(a=>e.jsx(o,{to:a.to,onClick:()=>d(!1),className:`px-3 py-2 text-sm font-mono rounded transition-colors ${m.pathname===a.to?"text-emerald-400 bg-emerald-500/10":"text-neutral-500 hover:text-emerald-400"}`,children:a.label},a.to))})})]}),e.jsx("main",{className:"flex-1",children:e.jsx(g,{})}),e.jsx("footer",{className:"border-t border-emerald-500/[0.08] mt-auto",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-6 flex flex-col md:flex-row items-center justify-between gap-4",children:[e.jsxs("p",{className:"text-xs text-neutral-600 font-mono",children:["© ",new Date().getFullYear()," ",n]}),(t==null?void 0:t.contact_email)&&e.jsx("a",{href:`mailto:${t.contact_email}`,className:"text-xs text-neutral-600 hover:text-emerald-400 font-mono transition-colors",children:s("nav.contact")})]})})]})}export{L as default};
|
||||
import{u as h,a as u,b as p,c as b,r as f,j as e,L as o,O as g}from"./index-BKzMfs0Y.js";import{L as j}from"./LanguageSwitch-GFWtBZjN.js";import{u as v}from"./useTranslation-BkWapr2x.js";function L(){const{t:s}=v(),{user:r,logout:i}=h(),{site:t}=u(),x=p(),m=b(),[l,d]=f.useState(!1),n=(t==null?void 0:t.name)||"AI Platform",c=[{to:"/",label:s("nav.home"),auth:!1},{to:"/pricing",label:s("nav.pricing"),auth:!1},{to:"/packages",label:s("nav.packages"),auth:!1},{to:"/dashboard",label:s("nav.dashboard"),auth:!0},{to:"/tokens",label:s("nav.apiKeys"),auth:!0}].filter(a=>!a.auth||r);return e.jsxs("div",{className:"min-h-screen flex flex-col bg-[#030712] text-white",children:[(t==null?void 0:t.announcement)&&e.jsx("div",{className:"bg-emerald-500/5 border-b border-emerald-500/10 text-center py-2 px-4",children:e.jsx("p",{className:"text-sm text-emerald-300/80 font-mono",children:t.announcement})}),e.jsxs("header",{className:"sticky top-0 z-50 backdrop-blur-xl bg-[#030712]/80 border-b border-emerald-500/[0.08]",children:[e.jsxs("div",{className:"max-w-7xl mx-auto px-6 h-14 flex items-center justify-between",children:[e.jsxs(o,{to:"/",className:"flex items-center gap-3 group",children:[t!=null&&t.logo?e.jsx("img",{src:t.logo,alt:n,className:"h-7 w-auto"}):e.jsx("div",{className:"w-8 h-8 rounded bg-emerald-500/10 border border-emerald-500/20 flex items-center justify-center text-emerald-400 font-bold font-mono text-sm",children:n.charAt(0)}),e.jsx("span",{className:"text-base font-semibold text-emerald-400 font-mono group-hover:text-emerald-300 transition-colors tracking-wide",children:n})]}),e.jsx("nav",{className:"hidden md:flex items-center gap-1",children:c.map(a=>e.jsx(o,{to:a.to,className:`px-3 py-1.5 text-sm font-mono rounded transition-all ${m.pathname===a.to?"text-emerald-400 bg-emerald-500/10":"text-neutral-500 hover:text-emerald-400"}`,children:a.label},a.to))}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(j,{className:"text-neutral-500 hover:text-emerald-400 hover:bg-emerald-500/5 font-mono"}),r?e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm text-neutral-500 font-mono hidden sm:block",children:r.display_name||r.username}),e.jsx("button",{onClick:async()=>{await i(),x("/")},className:"text-sm text-neutral-500 hover:text-emerald-400 font-mono transition-colors",children:s("nav.logout")})]}):e.jsxs(e.Fragment,{children:[e.jsx(o,{to:"/login",className:"text-sm text-neutral-500 hover:text-emerald-400 font-mono transition-colors hidden sm:block px-3 py-1.5",children:s("nav.login")}),e.jsx(o,{to:"/register",className:"px-4 py-1.5 rounded bg-emerald-500/10 border border-emerald-500/20 text-emerald-400 text-sm font-mono hover:bg-emerald-500/15 transition-all",children:s("nav.signUp")})]}),e.jsx("button",{className:"md:hidden p-1.5 rounded hover:bg-white/5",onClick:()=>d(!l),children:e.jsx("svg",{className:"w-5 h-5 text-emerald-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:l?e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),l&&e.jsx("div",{className:"md:hidden border-t border-emerald-500/[0.08] bg-[#030712]/95 backdrop-blur-xl",children:e.jsx("nav",{className:"max-w-7xl mx-auto px-6 py-3 flex flex-col gap-1",children:c.map(a=>e.jsx(o,{to:a.to,onClick:()=>d(!1),className:`px-3 py-2 text-sm font-mono rounded transition-colors ${m.pathname===a.to?"text-emerald-400 bg-emerald-500/10":"text-neutral-500 hover:text-emerald-400"}`,children:a.label},a.to))})})]}),e.jsx("main",{className:"flex-1",children:e.jsx(g,{})}),e.jsx("footer",{className:"border-t border-emerald-500/[0.08] mt-auto",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-6 flex flex-col md:flex-row items-center justify-between gap-4",children:[e.jsxs("p",{className:"text-xs text-neutral-600 font-mono",children:["© ",new Date().getFullYear()," ",n]}),(t==null?void 0:t.contact_email)&&e.jsx("a",{href:`mailto:${t.contact_email}`,className:"text-xs text-neutral-600 hover:text-emerald-400 font-mono transition-colors",children:s("nav.contact")})]})})]})}export{L as default};
|
||||
@@ -1 +1 @@
|
||||
import{u as h,a as u,b as p,c as b,r as j,j as e,L as n,O as g}from"./index-IL0bf27q.js";import{L as v}from"./LanguageSwitch-BaL1PXZI.js";import{u as f}from"./useTranslation-_qZZdhi7.js";function L(){const{t:s}=f(),{user:l,logout:m}=h(),{site:t}=u(),d=p(),i=b(),[r,c]=j.useState(!1),o=(t==null?void 0:t.name)||"AI Platform",x=[{to:"/",label:s("nav.home"),auth:!1},{to:"/pricing",label:s("nav.pricing"),auth:!1},{to:"/packages",label:s("nav.packages"),auth:!1},{to:"/dashboard",label:s("nav.dashboard"),auth:!0},{to:"/tokens",label:s("nav.apiKeys"),auth:!0}].filter(a=>!a.auth||l);return e.jsxs("div",{className:"min-h-screen flex flex-col bg-neutral-950 text-white",children:[(t==null?void 0:t.announcement)&&e.jsx("div",{className:"border-b border-neutral-800/60 text-center py-2 px-4",children:e.jsx("p",{className:"text-sm text-neutral-400",children:t.announcement})}),e.jsxs("header",{className:"sticky top-0 z-50 backdrop-blur-lg bg-neutral-950/80 border-b border-neutral-800/40",children:[e.jsxs("div",{className:"max-w-5xl mx-auto px-6 h-14 flex items-center justify-between",children:[e.jsxs(n,{to:"/",className:"flex items-center gap-2.5 group",children:[t!=null&&t.logo?e.jsx("img",{src:t.logo,alt:o,className:"h-7 w-auto"}):e.jsx("span",{className:"text-base font-semibold text-white",children:o}),(t==null?void 0:t.logo)&&e.jsx("span",{className:"text-base font-semibold text-white",children:o})]}),e.jsx("nav",{className:"hidden md:flex items-center gap-6",children:x.map(a=>e.jsx(n,{to:a.to,className:`text-sm transition-colors ${i.pathname===a.to?"text-white":"text-neutral-500 hover:text-white"}`,children:a.label},a.to))}),e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(v,{className:"text-neutral-500 hover:text-white hover:bg-white/5"}),l?e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm text-neutral-500 hidden sm:block",children:l.display_name||l.username}),e.jsx("button",{onClick:async()=>{await m(),d("/")},className:"text-sm text-neutral-500 hover:text-white transition-colors",children:s("nav.logout")})]}):e.jsxs(e.Fragment,{children:[e.jsx(n,{to:"/login",className:"text-sm text-neutral-500 hover:text-white transition-colors hidden sm:block",children:s("nav.login")}),e.jsx(n,{to:"/register",className:"px-4 py-1.5 rounded-lg bg-white text-neutral-900 text-sm font-medium hover:bg-neutral-200 transition-colors",children:s("nav.signUp")})]}),e.jsx("button",{className:"md:hidden p-1",onClick:()=>c(!r),children:e.jsx("svg",{className:"w-5 h-5 text-neutral-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:r?e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M6 18L18 6M6 6l12 12"}):e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),r&&e.jsx("div",{className:"md:hidden border-t border-neutral-800/40 bg-neutral-950/95",children:e.jsx("nav",{className:"max-w-5xl mx-auto px-6 py-3 flex flex-col gap-1",children:x.map(a=>e.jsx(n,{to:a.to,onClick:()=>c(!1),className:`px-3 py-2 text-sm rounded transition-colors ${i.pathname===a.to?"text-white":"text-neutral-500 hover:text-white"}`,children:a.label},a.to))})})]}),e.jsx("main",{className:"flex-1",children:e.jsx(g,{})}),e.jsx("footer",{className:"border-t border-neutral-800/40 mt-auto",children:e.jsxs("div",{className:"max-w-5xl mx-auto px-6 py-6 flex flex-col md:flex-row items-center justify-between gap-3",children:[e.jsxs("p",{className:"text-xs text-neutral-600",children:["© ",new Date().getFullYear()," ",o]}),(t==null?void 0:t.contact_email)&&e.jsx("a",{href:`mailto:${t.contact_email}`,className:"text-xs text-neutral-600 hover:text-white transition-colors",children:s("nav.contact")})]})})]})}export{L as default};
|
||||
import{u as h,a as u,b as p,c as b,r as j,j as e,L as n,O as g}from"./index-BKzMfs0Y.js";import{L as v}from"./LanguageSwitch-GFWtBZjN.js";import{u as f}from"./useTranslation-BkWapr2x.js";function L(){const{t:s}=f(),{user:l,logout:m}=h(),{site:t}=u(),d=p(),i=b(),[r,c]=j.useState(!1),o=(t==null?void 0:t.name)||"AI Platform",x=[{to:"/",label:s("nav.home"),auth:!1},{to:"/pricing",label:s("nav.pricing"),auth:!1},{to:"/packages",label:s("nav.packages"),auth:!1},{to:"/dashboard",label:s("nav.dashboard"),auth:!0},{to:"/tokens",label:s("nav.apiKeys"),auth:!0}].filter(a=>!a.auth||l);return e.jsxs("div",{className:"min-h-screen flex flex-col bg-neutral-950 text-white",children:[(t==null?void 0:t.announcement)&&e.jsx("div",{className:"border-b border-neutral-800/60 text-center py-2 px-4",children:e.jsx("p",{className:"text-sm text-neutral-400",children:t.announcement})}),e.jsxs("header",{className:"sticky top-0 z-50 backdrop-blur-lg bg-neutral-950/80 border-b border-neutral-800/40",children:[e.jsxs("div",{className:"max-w-5xl mx-auto px-6 h-14 flex items-center justify-between",children:[e.jsxs(n,{to:"/",className:"flex items-center gap-2.5 group",children:[t!=null&&t.logo?e.jsx("img",{src:t.logo,alt:o,className:"h-7 w-auto"}):e.jsx("span",{className:"text-base font-semibold text-white",children:o}),(t==null?void 0:t.logo)&&e.jsx("span",{className:"text-base font-semibold text-white",children:o})]}),e.jsx("nav",{className:"hidden md:flex items-center gap-6",children:x.map(a=>e.jsx(n,{to:a.to,className:`text-sm transition-colors ${i.pathname===a.to?"text-white":"text-neutral-500 hover:text-white"}`,children:a.label},a.to))}),e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(v,{className:"text-neutral-500 hover:text-white hover:bg-white/5"}),l?e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm text-neutral-500 hidden sm:block",children:l.display_name||l.username}),e.jsx("button",{onClick:async()=>{await m(),d("/")},className:"text-sm text-neutral-500 hover:text-white transition-colors",children:s("nav.logout")})]}):e.jsxs(e.Fragment,{children:[e.jsx(n,{to:"/login",className:"text-sm text-neutral-500 hover:text-white transition-colors hidden sm:block",children:s("nav.login")}),e.jsx(n,{to:"/register",className:"px-4 py-1.5 rounded-lg bg-white text-neutral-900 text-sm font-medium hover:bg-neutral-200 transition-colors",children:s("nav.signUp")})]}),e.jsx("button",{className:"md:hidden p-1",onClick:()=>c(!r),children:e.jsx("svg",{className:"w-5 h-5 text-neutral-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:r?e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M6 18L18 6M6 6l12 12"}):e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),r&&e.jsx("div",{className:"md:hidden border-t border-neutral-800/40 bg-neutral-950/95",children:e.jsx("nav",{className:"max-w-5xl mx-auto px-6 py-3 flex flex-col gap-1",children:x.map(a=>e.jsx(n,{to:a.to,onClick:()=>c(!1),className:`px-3 py-2 text-sm rounded transition-colors ${i.pathname===a.to?"text-white":"text-neutral-500 hover:text-white"}`,children:a.label},a.to))})})]}),e.jsx("main",{className:"flex-1",children:e.jsx(g,{})}),e.jsx("footer",{className:"border-t border-neutral-800/40 mt-auto",children:e.jsxs("div",{className:"max-w-5xl mx-auto px-6 py-6 flex flex-col md:flex-row items-center justify-between gap-3",children:[e.jsxs("p",{className:"text-xs text-neutral-600",children:["© ",new Date().getFullYear()," ",o]}),(t==null?void 0:t.contact_email)&&e.jsx("a",{href:`mailto:${t.contact_email}`,className:"text-xs text-neutral-600 hover:text-white transition-colors",children:s("nav.contact")})]})})]})}export{L as default};
|
||||
@@ -1 +1 @@
|
||||
import{u as h,a as u,b,c as p,r as g,j as e,L as r,O as v}from"./index-IL0bf27q.js";import{L as j}from"./LanguageSwitch-BaL1PXZI.js";import{u as f}from"./useTranslation-_qZZdhi7.js";function M(){const{t:a}=f(),{user:n,logout:o}=h(),{site:t}=u(),m=b(),x=p(),[i,c]=g.useState(!1),l=(t==null?void 0:t.name)||"AI Platform",d=[{to:"/",label:a("nav.home"),auth:!1},{to:"/pricing",label:a("nav.pricing"),auth:!1},{to:"/packages",label:a("nav.packages"),auth:!1},{to:"/dashboard",label:a("nav.dashboard"),auth:!0},{to:"/tokens",label:a("nav.apiKeys"),auth:!0}].filter(s=>!s.auth||n);return e.jsxs("div",{className:"min-h-screen flex flex-col",children:[(t==null?void 0:t.announcement)&&e.jsx("div",{className:"bg-brand-600/20 border-b border-brand-500/20 text-center py-2 px-4",children:e.jsx("p",{className:"text-sm text-brand-200",children:t.announcement})}),e.jsxs("header",{className:"sticky top-0 z-50 backdrop-blur-xl bg-black/60 border-b border-white/[0.06]",children:[e.jsxs("div",{className:"max-w-7xl mx-auto px-6 h-16 flex items-center justify-between",children:[e.jsxs(r,{to:"/",className:"flex items-center gap-3 group",children:[t!=null&&t.logo?e.jsx("img",{src:t.logo,alt:l,className:"h-8 w-auto"}):e.jsx("div",{className:"w-8 h-8 rounded-lg bg-gradient-to-br from-brand-500 to-purple-600 flex items-center justify-center text-white font-bold text-sm",children:l.charAt(0)}),e.jsx("span",{className:"text-lg font-semibold text-white group-hover:text-brand-400 transition-colors",children:l})]}),e.jsx("nav",{className:"hidden md:flex items-center gap-1",children:d.map(s=>e.jsx(N,{to:s.to,active:x.pathname===s.to,children:s.label},s.to))}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(j,{className:"text-neutral-400 hover:text-white hover:bg-white/5"}),n?e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm text-neutral-400 hidden sm:block",children:n.display_name||n.username}),e.jsx("button",{onClick:async()=>{await o(),m("/")},className:"text-sm text-neutral-400 hover:text-white transition-colors",children:a("nav.logout")})]}):e.jsxs(e.Fragment,{children:[e.jsx(r,{to:"/login",className:"text-sm text-neutral-300 hover:text-white transition-colors px-3 py-1.5 hidden sm:block",children:a("nav.login")}),e.jsx(r,{to:"/register",className:"btn-primary text-sm !px-4 !py-1.5",children:a("nav.signUp")})]}),e.jsx("button",{className:"md:hidden p-1.5 rounded-lg hover:bg-white/5 transition-colors",onClick:()=>c(!i),"aria-label":"Toggle menu",children:e.jsx("svg",{className:"w-5 h-5 text-neutral-300",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:i?e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),i&&e.jsx("div",{className:"md:hidden border-t border-white/[0.06] bg-black/90 backdrop-blur-xl",children:e.jsxs("nav",{className:"max-w-7xl mx-auto px-6 py-3 flex flex-col gap-1",children:[d.map(s=>e.jsx(r,{to:s.to,onClick:()=>c(!1),className:`px-3 py-2 text-sm rounded-lg transition-colors ${x.pathname===s.to?"text-brand-400 bg-brand-500/10":"text-neutral-400 hover:text-white hover:bg-white/5"}`,children:s.label},s.to)),!n&&e.jsx(r,{to:"/login",onClick:()=>c(!1),className:"px-3 py-2 text-sm text-neutral-400 hover:text-white rounded-lg hover:bg-white/5 transition-colors sm:hidden",children:a("nav.login")})]})})]}),e.jsx("main",{className:"flex-1",children:e.jsx(v,{})}),e.jsx("footer",{className:"border-t border-white/[0.06] mt-auto",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-8 flex flex-col md:flex-row items-center justify-between gap-4",children:[e.jsxs("p",{className:"text-sm text-neutral-500",children:["© ",new Date().getFullYear()," ",l,"."]}),e.jsx("div",{className:"flex items-center gap-4",children:(t==null?void 0:t.contact_email)&&e.jsx("a",{href:`mailto:${t.contact_email}`,className:"text-sm text-neutral-500 hover:text-neutral-300 transition-colors",children:a("nav.contact")})})]})})]})}function N({to:a,children:n,active:o}){return e.jsx(r,{to:a,className:`px-3 py-1.5 text-sm rounded-lg transition-all ${o?"text-brand-400 bg-brand-500/10":"text-neutral-400 hover:text-white hover:bg-white/5"}`,children:n})}export{M as default};
|
||||
import{u as h,a as u,b,c as p,r as g,j as e,L as r,O as v}from"./index-BKzMfs0Y.js";import{L as j}from"./LanguageSwitch-GFWtBZjN.js";import{u as f}from"./useTranslation-BkWapr2x.js";function M(){const{t:a}=f(),{user:n,logout:o}=h(),{site:t}=u(),m=b(),x=p(),[i,c]=g.useState(!1),l=(t==null?void 0:t.name)||"AI Platform",d=[{to:"/",label:a("nav.home"),auth:!1},{to:"/pricing",label:a("nav.pricing"),auth:!1},{to:"/packages",label:a("nav.packages"),auth:!1},{to:"/dashboard",label:a("nav.dashboard"),auth:!0},{to:"/tokens",label:a("nav.apiKeys"),auth:!0}].filter(s=>!s.auth||n);return e.jsxs("div",{className:"min-h-screen flex flex-col",children:[(t==null?void 0:t.announcement)&&e.jsx("div",{className:"bg-brand-600/20 border-b border-brand-500/20 text-center py-2 px-4",children:e.jsx("p",{className:"text-sm text-brand-200",children:t.announcement})}),e.jsxs("header",{className:"sticky top-0 z-50 backdrop-blur-xl bg-black/60 border-b border-white/[0.06]",children:[e.jsxs("div",{className:"max-w-7xl mx-auto px-6 h-16 flex items-center justify-between",children:[e.jsxs(r,{to:"/",className:"flex items-center gap-3 group",children:[t!=null&&t.logo?e.jsx("img",{src:t.logo,alt:l,className:"h-8 w-auto"}):e.jsx("div",{className:"w-8 h-8 rounded-lg bg-gradient-to-br from-brand-500 to-purple-600 flex items-center justify-center text-white font-bold text-sm",children:l.charAt(0)}),e.jsx("span",{className:"text-lg font-semibold text-white group-hover:text-brand-400 transition-colors",children:l})]}),e.jsx("nav",{className:"hidden md:flex items-center gap-1",children:d.map(s=>e.jsx(N,{to:s.to,active:x.pathname===s.to,children:s.label},s.to))}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(j,{className:"text-neutral-400 hover:text-white hover:bg-white/5"}),n?e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm text-neutral-400 hidden sm:block",children:n.display_name||n.username}),e.jsx("button",{onClick:async()=>{await o(),m("/")},className:"text-sm text-neutral-400 hover:text-white transition-colors",children:a("nav.logout")})]}):e.jsxs(e.Fragment,{children:[e.jsx(r,{to:"/login",className:"text-sm text-neutral-300 hover:text-white transition-colors px-3 py-1.5 hidden sm:block",children:a("nav.login")}),e.jsx(r,{to:"/register",className:"btn-primary text-sm !px-4 !py-1.5",children:a("nav.signUp")})]}),e.jsx("button",{className:"md:hidden p-1.5 rounded-lg hover:bg-white/5 transition-colors",onClick:()=>c(!i),"aria-label":"Toggle menu",children:e.jsx("svg",{className:"w-5 h-5 text-neutral-300",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:i?e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),i&&e.jsx("div",{className:"md:hidden border-t border-white/[0.06] bg-black/90 backdrop-blur-xl",children:e.jsxs("nav",{className:"max-w-7xl mx-auto px-6 py-3 flex flex-col gap-1",children:[d.map(s=>e.jsx(r,{to:s.to,onClick:()=>c(!1),className:`px-3 py-2 text-sm rounded-lg transition-colors ${x.pathname===s.to?"text-brand-400 bg-brand-500/10":"text-neutral-400 hover:text-white hover:bg-white/5"}`,children:s.label},s.to)),!n&&e.jsx(r,{to:"/login",onClick:()=>c(!1),className:"px-3 py-2 text-sm text-neutral-400 hover:text-white rounded-lg hover:bg-white/5 transition-colors sm:hidden",children:a("nav.login")})]})})]}),e.jsx("main",{className:"flex-1",children:e.jsx(v,{})}),e.jsx("footer",{className:"border-t border-white/[0.06] mt-auto",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-8 flex flex-col md:flex-row items-center justify-between gap-4",children:[e.jsxs("p",{className:"text-sm text-neutral-500",children:["© ",new Date().getFullYear()," ",l,"."]}),e.jsx("div",{className:"flex items-center gap-4",children:(t==null?void 0:t.contact_email)&&e.jsx("a",{href:`mailto:${t.contact_email}`,className:"text-sm text-neutral-500 hover:text-neutral-300 transition-colors",children:a("nav.contact")})})]})})]})}function N({to:a,children:n,active:o}){return e.jsx(r,{to:a,className:`px-3 py-1.5 text-sm rounded-lg transition-all ${o?"text-brand-400 bg-brand-500/10":"text-neutral-400 hover:text-white hover:bg-white/5"}`,children:n})}export{M as default};
|
||||
@@ -1 +1 @@
|
||||
import{u as N,a as v,b as y,c as k,r as x,j as e,N as L,L as S,z as p}from"./index-IL0bf27q.js";import{u as C}from"./useTranslation-_qZZdhi7.js";function A(){var c,m;const{t:s}=C(),{login:h,user:g}=N(),{site:n}=v(),f=y(),l=k(),[t,o]=x.useState({username:"",password:""}),[r,i]=x.useState(!1);if(g){const a=((m=(c=l.state)==null?void 0:c.from)==null?void 0:m.pathname)||"/dashboard";return e.jsx(L,{to:a,replace:!0})}const b=async a=>{var u,d;if(a.preventDefault(),!t.username||!t.password){p.error(s("login.fillAllFields"));return}i(!0);try{if((await h(t.username,t.password)).success){p.success(s("login.welcomeBackToast"));const w=((d=(u=l.state)==null?void 0:u.from)==null?void 0:d.pathname)||"/dashboard";f(w,{replace:!0});return}}catch{}i(!1)};return e.jsx("div",{className:"min-h-[70vh] flex items-center justify-center px-6",children:e.jsx("div",{className:"w-full max-w-md",children:e.jsxs("div",{className:"glass rounded-2xl p-8",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("h1",{className:"text-2xl font-heading font-bold text-white mb-2",children:s("login.welcomeBack")}),e.jsx("p",{className:"text-sm text-neutral-400",children:n!=null&&n.name?s("login.signInTo",{name:n.name}):s("login.signInToDefault")})]}),e.jsxs("form",{onSubmit:b,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:s("login.username")}),e.jsx("input",{type:"text",value:t.username,onChange:a=>o({...t,username:a.target.value}),className:"input",placeholder:s("login.enterUsername"),autoComplete:"username",required:!0})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:s("login.password")}),e.jsx("input",{type:"password",value:t.password,onChange:a=>o({...t,password:a.target.value}),className:"input",placeholder:s("login.enterPassword"),autoComplete:"current-password",required:!0})]}),e.jsxs("button",{type:"submit",disabled:r,className:"btn-primary w-full flex items-center justify-center gap-2",children:[r&&e.jsx("div",{className:"w-4 h-4 border-2 border-white/30 border-t-white rounded-full animate-spin"}),s(r?"login.signingIn":"login.signInBtn")]})]}),e.jsx("div",{className:"mt-6 text-center",children:e.jsxs("p",{className:"text-sm text-neutral-400",children:[s("login.noAccount")," ",e.jsx(S,{to:"/register",className:"text-brand-400 hover:text-brand-300 transition-colors font-medium",children:s("login.createOne")})]})})]})})})}export{A as default};
|
||||
import{u as N,a as v,b as y,c as k,r as x,j as e,N as L,L as S,z as p}from"./index-BKzMfs0Y.js";import{u as C}from"./useTranslation-BkWapr2x.js";function A(){var c,m;const{t:s}=C(),{login:h,user:g}=N(),{site:n}=v(),f=y(),l=k(),[t,o]=x.useState({username:"",password:""}),[r,i]=x.useState(!1);if(g){const a=((m=(c=l.state)==null?void 0:c.from)==null?void 0:m.pathname)||"/dashboard";return e.jsx(L,{to:a,replace:!0})}const b=async a=>{var u,d;if(a.preventDefault(),!t.username||!t.password){p.error(s("login.fillAllFields"));return}i(!0);try{if((await h(t.username,t.password)).success){p.success(s("login.welcomeBackToast"));const w=((d=(u=l.state)==null?void 0:u.from)==null?void 0:d.pathname)||"/dashboard";f(w,{replace:!0});return}}catch{}i(!1)};return e.jsx("div",{className:"min-h-[70vh] flex items-center justify-center px-6",children:e.jsx("div",{className:"w-full max-w-md",children:e.jsxs("div",{className:"glass rounded-2xl p-8",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("h1",{className:"text-2xl font-heading font-bold text-white mb-2",children:s("login.welcomeBack")}),e.jsx("p",{className:"text-sm text-neutral-400",children:n!=null&&n.name?s("login.signInTo",{name:n.name}):s("login.signInToDefault")})]}),e.jsxs("form",{onSubmit:b,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:s("login.username")}),e.jsx("input",{type:"text",value:t.username,onChange:a=>o({...t,username:a.target.value}),className:"input",placeholder:s("login.enterUsername"),autoComplete:"username",required:!0})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:s("login.password")}),e.jsx("input",{type:"password",value:t.password,onChange:a=>o({...t,password:a.target.value}),className:"input",placeholder:s("login.enterPassword"),autoComplete:"current-password",required:!0})]}),e.jsxs("button",{type:"submit",disabled:r,className:"btn-primary w-full flex items-center justify-center gap-2",children:[r&&e.jsx("div",{className:"w-4 h-4 border-2 border-white/30 border-t-white rounded-full animate-spin"}),s(r?"login.signingIn":"login.signInBtn")]})]}),e.jsx("div",{className:"mt-6 text-center",children:e.jsxs("p",{className:"text-sm text-neutral-400",children:[s("login.noAccount")," ",e.jsx(S,{to:"/register",className:"text-brand-400 hover:text-brand-300 transition-colors font-medium",children:s("login.createOne")})]})})]})})})}export{A as default};
|
||||
@@ -1 +1 @@
|
||||
import{u as w,b as y,r as l,k as L,j as e,L as C,Q as u,s as S,z as P}from"./index-IL0bf27q.js";import{S as B}from"./SpotlightCard-DnZRIBvu.js";import{u as _}from"./useTranslation-_qZZdhi7.js";function W(){const{t}=_(),{user:r,refreshUser:h}=w(),p=y(),[b,g]=l.useState([]),[f,j]=l.useState(!0),[a,d]=l.useState(null),[i,c]=l.useState(null);l.useEffect(()=>{L().then(s=>{s.data.success&&g(s.data.data||[])}).catch(()=>{}).finally(()=>j(!1))},[]);const N=async s=>{if(!r){p("/register");return}c(s)},k=async()=>{if(!i)return;const s=i.id;d(s);try{(await S(s)).data.success&&(P.success(t("packages.subscribedSuccess")),c(null),await h())}catch{}d(null)};if(f)return e.jsx("div",{className:"flex items-center justify-center min-h-[50vh]",children:e.jsx("div",{className:"w-8 h-8 border-2 border-brand-500/30 border-t-brand-500 rounded-full animate-spin"})});const x=b.filter(s=>s.enabled),m=["rgba(129,140,248,0.15)","rgba(192,132,252,0.15)","rgba(244,114,182,0.15)","rgba(34,197,94,0.15)"];return e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-10",children:[e.jsxs("div",{className:"text-center mb-12",children:[e.jsx("h1",{className:"text-3xl font-heading font-bold text-white mb-3",children:t("packages.title")}),e.jsx("p",{className:"text-neutral-400 max-w-xl mx-auto",children:t("packages.subtitle")})]}),x.length===0?e.jsxs("div",{className:"text-center py-12 text-neutral-400",children:[e.jsx("p",{children:t("packages.noPackages")}),e.jsxs(C,{to:"/pricing",className:"text-brand-400 hover:text-brand-300 transition-colors mt-2 inline-block",children:[t("packages.checkPricing")," →"]})]}):e.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6 max-w-5xl mx-auto",children:x.map((s,n)=>e.jsx(B,{className:"!bg-neutral-900/60 !border-neutral-800/60 !p-0 !rounded-2xl flex flex-col",spotlightColor:m[n%m.length],children:e.jsxs("div",{className:"p-6 flex-1 flex flex-col",children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("h3",{className:"text-xl font-semibold text-white",children:s.name}),s.description&&e.jsx("p",{className:"text-sm text-neutral-400 mt-1",children:s.description})]}),e.jsxs("div",{className:"mb-6",children:[e.jsxs("div",{className:"flex items-baseline gap-2",children:[e.jsxs("span",{className:"text-4xl font-bold text-white",children:["$",Number(s.price).toFixed(2)]}),s.original_price>0&&s.original_price>s.price&&e.jsxs("span",{className:"text-lg text-neutral-500 line-through",children:["$",Number(s.original_price).toFixed(2)]})]}),s.duration>0&&e.jsx("p",{className:"text-sm text-neutral-500 mt-1",children:t("packages.daysAccess",{count:s.duration})})]}),e.jsxs("ul",{className:"space-y-2 mb-6 flex-1",children:[s.quota_amount>0&&e.jsxs("li",{className:"flex items-center gap-2 text-sm text-neutral-300",children:[e.jsx("svg",{className:"w-4 h-4 text-green-500 flex-shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),t("packages.creditIncluded",{amount:(s.quota_amount/u).toFixed(2)})]}),s.rate_limit>0&&e.jsxs("li",{className:"flex items-center gap-2 text-sm text-neutral-300",children:[e.jsx("svg",{className:"w-4 h-4 text-green-500 flex-shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),t("packages.requestsMin",{count:s.rate_limit})]}),e.jsxs("li",{className:"flex items-center gap-2 text-sm text-neutral-300",children:[e.jsx("svg",{className:"w-4 h-4 text-green-500 flex-shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),t("packages.allModels")]}),e.jsxs("li",{className:"flex items-center gap-2 text-sm text-neutral-300",children:[e.jsx("svg",{className:"w-4 h-4 text-green-500 flex-shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),t("packages.openaiApi")]})]}),e.jsx("button",{onClick:()=>N(s),disabled:a===s.id,className:"btn-primary w-full text-center",children:a===s.id?t("packages.processing"):t(r?"packages.subscribeNow":"packages.signUpToSubscribe")})]})},s.id))}),i&&(()=>{const s=((r==null?void 0:r.quota)||0)/u,n=Number(i.price),o=s<n;return e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:()=>!a&&c(null),children:e.jsxs("div",{className:"glass rounded-2xl p-6 w-full max-w-sm",onClick:v=>v.stopPropagation(),children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-3",children:t("packages.confirmTitle")}),e.jsx("p",{className:"text-sm text-neutral-400 mb-2",children:t("packages.confirmDesc",{name:i.name,price:n.toFixed(2)})}),e.jsxs("p",{className:"text-sm text-neutral-400 mb-4",children:[t("packages.yourBalance")," ",e.jsxs("span",{className:`font-medium ${o?"text-red-Line truncated
|
||||
import{u as w,b as y,r as l,k as L,j as e,L as C,Q as u,s as S,z as P}from"./index-BKzMfs0Y.js";import{S as B}from"./SpotlightCard-DtQFfRY_.js";import{u as _}from"./useTranslation-BkWapr2x.js";function W(){const{t}=_(),{user:r,refreshUser:h}=w(),p=y(),[b,g]=l.useState([]),[f,j]=l.useState(!0),[a,d]=l.useState(null),[i,c]=l.useState(null);l.useEffect(()=>{L().then(s=>{s.data.success&&g(s.data.data||[])}).catch(()=>{}).finally(()=>j(!1))},[]);const N=async s=>{if(!r){p("/register");return}c(s)},k=async()=>{if(!i)return;const s=i.id;d(s);try{(await S(s)).data.success&&(P.success(t("packages.subscribedSuccess")),c(null),await h())}catch{}d(null)};if(f)return e.jsx("div",{className:"flex items-center justify-center min-h-[50vh]",children:e.jsx("div",{className:"w-8 h-8 border-2 border-brand-500/30 border-t-brand-500 rounded-full animate-spin"})});const x=b.filter(s=>s.enabled),m=["rgba(129,140,248,0.15)","rgba(192,132,252,0.15)","rgba(244,114,182,0.15)","rgba(34,197,94,0.15)"];return e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-10",children:[e.jsxs("div",{className:"text-center mb-12",children:[e.jsx("h1",{className:"text-3xl font-heading font-bold text-white mb-3",children:t("packages.title")}),e.jsx("p",{className:"text-neutral-400 max-w-xl mx-auto",children:t("packages.subtitle")})]}),x.length===0?e.jsxs("div",{className:"text-center py-12 text-neutral-400",children:[e.jsx("p",{children:t("packages.noPackages")}),e.jsxs(C,{to:"/pricing",className:"text-brand-400 hover:text-brand-300 transition-colors mt-2 inline-block",children:[t("packages.checkPricing")," →"]})]}):e.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6 max-w-5xl mx-auto",children:x.map((s,n)=>e.jsx(B,{className:"!bg-neutral-900/60 !border-neutral-800/60 !p-0 !rounded-2xl flex flex-col",spotlightColor:m[n%m.length],children:e.jsxs("div",{className:"p-6 flex-1 flex flex-col",children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("h3",{className:"text-xl font-semibold text-white",children:s.name}),s.description&&e.jsx("p",{className:"text-sm text-neutral-400 mt-1",children:s.description})]}),e.jsxs("div",{className:"mb-6",children:[e.jsxs("div",{className:"flex items-baseline gap-2",children:[e.jsxs("span",{className:"text-4xl font-bold text-white",children:["$",Number(s.price).toFixed(2)]}),s.original_price>0&&s.original_price>s.price&&e.jsxs("span",{className:"text-lg text-neutral-500 line-through",children:["$",Number(s.original_price).toFixed(2)]})]}),s.duration>0&&e.jsx("p",{className:"text-sm text-neutral-500 mt-1",children:t("packages.daysAccess",{count:s.duration})})]}),e.jsxs("ul",{className:"space-y-2 mb-6 flex-1",children:[s.quota_amount>0&&e.jsxs("li",{className:"flex items-center gap-2 text-sm text-neutral-300",children:[e.jsx("svg",{className:"w-4 h-4 text-green-500 flex-shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),t("packages.creditIncluded",{amount:(s.quota_amount/u).toFixed(2)})]}),s.rate_limit>0&&e.jsxs("li",{className:"flex items-center gap-2 text-sm text-neutral-300",children:[e.jsx("svg",{className:"w-4 h-4 text-green-500 flex-shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),t("packages.requestsMin",{count:s.rate_limit})]}),e.jsxs("li",{className:"flex items-center gap-2 text-sm text-neutral-300",children:[e.jsx("svg",{className:"w-4 h-4 text-green-500 flex-shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),t("packages.allModels")]}),e.jsxs("li",{className:"flex items-center gap-2 text-sm text-neutral-300",children:[e.jsx("svg",{className:"w-4 h-4 text-green-500 flex-shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),t("packages.openaiApi")]})]}),e.jsx("button",{onClick:()=>N(s),disabled:a===s.id,className:"btn-primary w-full text-center",children:a===s.id?t("packages.processing"):t(r?"packages.subscribeNow":"packages.signUpToSubscribe")})]})},s.id))}),i&&(()=>{const s=((r==null?void 0:r.quota)||0)/u,n=Number(i.price),o=s<n;return e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:()=>!a&&c(null),children:e.jsxs("div",{className:"glass rounded-2xl p-6 w-full max-w-sm",onClick:v=>v.stopPropagation(),children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-3",children:t("packages.confirmTitle")}),e.jsx("p",{className:"text-sm text-neutral-400 mb-2",children:t("packages.confirmDesc",{name:i.name,price:n.toFixed(2)})}),e.jsxs("p",{className:"text-sm text-neutral-400 mb-4",children:[t("packages.yourBalance")," ",e.jsxs("span",{className:`font-medium ${o?"text-red-Line truncated
|
||||
@@ -1 +1 @@
|
||||
import{r as n,l as u,j as e}from"./index-IL0bf27q.js";import{u as h}from"./useTranslation-_qZZdhi7.js";function f(){const{t:s}=h(),[l,i]=n.useState([]),[a,d]=n.useState(""),[c,o]=n.useState(!0);n.useEffect(()=>{u().then(t=>{t.data.success&&i(t.data.data||[])}).catch(()=>{}).finally(()=>o(!1))},[]);const r=l.filter(t=>t.enabled!==!1).filter(t=>!a||(t.display_name||t.model_name||"").toLowerCase().includes(a.toLowerCase()));return c?e.jsx("div",{className:"flex items-center justify-center min-h-[50vh]",children:e.jsx("div",{className:"w-8 h-8 border-2 border-brand-500/30 border-t-brand-500 rounded-full animate-spin"})}):e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-10",children:[e.jsxs("div",{className:"text-center mb-10",children:[e.jsx("h1",{className:"text-3xl font-heading font-bold text-white mb-3",children:s("pricing.title")}),e.jsx("p",{className:"text-neutral-400 max-w-xl mx-auto",children:s("pricing.subtitle")})]}),e.jsx("div",{className:"max-w-md mx-auto mb-8",children:e.jsxs("div",{className:"relative",children:[e.jsx("svg",{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-neutral-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})}),e.jsx("input",{type:"text",value:a,onChange:t=>d(t.target.value),className:"input !pl-10",placeholder:s("pricing.searchPlaceholder")})]})}),r.length===0?e.jsx("div",{className:"text-center py-12 text-neutral-400",children:s(a?"pricing.noMatch":"pricing.noModels")}):e.jsx("div",{className:"glass-sm rounded-xl overflow-hidden",children:e.jsxs("table",{className:"w-full text-sm",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-white/[0.06]",children:[e.jsx("th",{className:"text-left px-5 py-3.5 font-medium text-neutral-400",children:s("pricing.model")}),e.jsx("th",{className:"text-right px-5 py-3.5 font-medium text-neutral-400",children:s("pricing.inputPrice")}),e.jsx("th",{className:"text-right px-5 py-3.5 font-medium text-neutral-400",children:s("pricing.outputPrice")}),e.jsx("th",{className:"text-center px-5 py-3.5 font-medium text-neutral-400",children:s("pricing.status")})]})}),e.jsx("tbody",{children:r.map((t,x)=>e.jsxs("tr",{className:"border-b border-white/[0.04] last:border-0 hover:bg-white/[0.02] transition-colors",children:[e.jsx("td",{className:"px-5 py-3.5",children:e.jsx("span",{className:"font-mono text-white",children:t.display_name||t.model_name})}),e.jsx("td",{className:"px-5 py-3.5 text-right font-mono text-neutral-300",children:t.input_price!=null?`$${(Number(t.input_price)*1e3).toFixed(4)}`:"-"}),e.jsx("td",{className:"px-5 py-3.5 text-right font-mono text-neutral-300",children:t.output_price!=null?`$${(Number(t.output_price)*1e3).toFixed(4)}`:"-"}),e.jsx("td",{className:"px-5 py-3.5 text-center",children:e.jsxs("span",{className:`inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-xs border ${t.status==="healthy"?"bg-green-500/10 text-green-400 border-green-500/20":"bg-neutral-500/10 text-neutral-400 border-neutral-500/20"}`,children:[e.jsx("span",{className:`w-1.5 h-1.5 rounded-full ${t.status==="healthy"?"bg-green-500":"bg-neutral-500"}`}),t.status==="healthy"?s("pricing.online"):s("pricing.unknown")]})})]},t.model_name||x))})]})})]})}export{f as default};
|
||||
import{r as n,l as u,j as e}from"./index-BKzMfs0Y.js";import{u as h}from"./useTranslation-BkWapr2x.js";function f(){const{t:s}=h(),[l,i]=n.useState([]),[a,d]=n.useState(""),[c,o]=n.useState(!0);n.useEffect(()=>{u().then(t=>{t.data.success&&i(t.data.data||[])}).catch(()=>{}).finally(()=>o(!1))},[]);const r=l.filter(t=>t.enabled!==!1).filter(t=>!a||(t.display_name||t.model_name||"").toLowerCase().includes(a.toLowerCase()));return c?e.jsx("div",{className:"flex items-center justify-center min-h-[50vh]",children:e.jsx("div",{className:"w-8 h-8 border-2 border-brand-500/30 border-t-brand-500 rounded-full animate-spin"})}):e.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-10",children:[e.jsxs("div",{className:"text-center mb-10",children:[e.jsx("h1",{className:"text-3xl font-heading font-bold text-white mb-3",children:s("pricing.title")}),e.jsx("p",{className:"text-neutral-400 max-w-xl mx-auto",children:s("pricing.subtitle")})]}),e.jsx("div",{className:"max-w-md mx-auto mb-8",children:e.jsxs("div",{className:"relative",children:[e.jsx("svg",{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-neutral-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})}),e.jsx("input",{type:"text",value:a,onChange:t=>d(t.target.value),className:"input !pl-10",placeholder:s("pricing.searchPlaceholder")})]})}),r.length===0?e.jsx("div",{className:"text-center py-12 text-neutral-400",children:s(a?"pricing.noMatch":"pricing.noModels")}):e.jsx("div",{className:"glass-sm rounded-xl overflow-hidden",children:e.jsxs("table",{className:"w-full text-sm",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-white/[0.06]",children:[e.jsx("th",{className:"text-left px-5 py-3.5 font-medium text-neutral-400",children:s("pricing.model")}),e.jsx("th",{className:"text-right px-5 py-3.5 font-medium text-neutral-400",children:s("pricing.inputPrice")}),e.jsx("th",{className:"text-right px-5 py-3.5 font-medium text-neutral-400",children:s("pricing.outputPrice")}),e.jsx("th",{className:"text-center px-5 py-3.5 font-medium text-neutral-400",children:s("pricing.status")})]})}),e.jsx("tbody",{children:r.map((t,x)=>e.jsxs("tr",{className:"border-b border-white/[0.04] last:border-0 hover:bg-white/[0.02] transition-colors",children:[e.jsx("td",{className:"px-5 py-3.5",children:e.jsx("span",{className:"font-mono text-white",children:t.display_name||t.model_name})}),e.jsx("td",{className:"px-5 py-3.5 text-right font-mono text-neutral-300",children:t.input_price!=null?`$${(Number(t.input_price)*1e3).toFixed(4)}`:"-"}),e.jsx("td",{className:"px-5 py-3.5 text-right font-mono text-neutral-300",children:t.output_price!=null?`$${(Number(t.output_price)*1e3).toFixed(4)}`:"-"}),e.jsx("td",{className:"px-5 py-3.5 text-center",children:e.jsxs("span",{className:`inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-xs border ${t.status==="healthy"?"bg-green-500/10 text-green-400 border-green-500/20":"bg-neutral-500/10 text-neutral-400 border-neutral-500/20"}`,children:[e.jsx("span",{className:`w-1.5 h-1.5 rounded-full ${t.status==="healthy"?"bg-green-500":"bg-neutral-500"}`}),t.status==="healthy"?s("pricing.online"):s("pricing.unknown")]})})]},t.model_name||x))})]})})]})}export{f as default};
|
||||
@@ -1 +1 @@
|
||||
import{u as h,a as g,b as w,r as d,j as e,N as f,L as j,z as a}from"./index-IL0bf27q.js";import{u as b}from"./useTranslation-_qZZdhi7.js";function y(){const{t:s}=b(),{register:c,user:u}=h(),{site:n}=g(),m=w(),[r,i]=d.useState({username:"",password:"",password2:"",email:""}),[l,o]=d.useState(!1);if(u)return e.jsx(f,{to:"/dashboard",replace:!0});const p=async t=>{if(t.preventDefault(),!r.username||!r.password){a.error(s("register.fillRequired"));return}if(r.password!==r.password2){a.error(s("register.passwordMismatch"));return}if(r.password.length<8){a.error(s("register.passwordLength"));return}if(r.password.length>20){a.error(s("register.passwordLength"));return}o(!0);try{if((await c({username:r.username,password:r.password,email:r.email||void 0})).success){a.success(s("register.accountCreated")),m("/login",{replace:!0});return}}catch{}o(!1)};return e.jsx("div",{className:"min-h-[70vh] flex items-center justify-center px-6",children:e.jsx("div",{className:"w-full max-w-md",children:e.jsxs("div",{className:"glass rounded-2xl p-8",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("h1",{className:"text-2xl font-heading font-bold text-white mb-2",children:s("register.createAccount")}),e.jsx("p",{className:"text-sm text-neutral-400",children:n!=null&&n.name?s("register.getStartedWith",{name:n.name}):s("register.getStartedDefault")})]}),e.jsxs("form",{onSubmit:p,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsxs("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:[s("register.username")," *"]}),e.jsx("input",{type:"text",value:r.username,onChange:t=>i({...r,username:t.target.value}),className:"input",placeholder:s("register.chooseUsername"),autoComplete:"username",required:!0})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:s("register.email")}),e.jsx("input",{type:"email",value:r.email,onChange:t=>i({...r,email:t.target.value}),className:"input",placeholder:s("register.emailPlaceholder"),autoComplete:"email"})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:[s("register.password")," *"]}),e.jsx("input",{type:"password",value:r.password,onChange:t=>i({...r,password:t.target.value}),className:"input",placeholder:s("register.passwordPlaceholder"),autoComplete:"new-password",required:!0})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:[s("register.confirmPassword")," *"]}),e.jsx("input",{type:"password",value:r.password2,onChange:t=>i({...r,password2:t.target.value}),className:"input",placeholder:s("register.repeatPassword"),autoComplete:"new-password",required:!0})]}),e.jsxs("button",{type:"submit",disabled:l,className:"btn-primary w-full flex items-center justify-center gap-2",children:[l&&e.jsx("div",{className:"w-4 h-4 border-2 border-white/30 border-t-white rounded-full animate-spin"}),s(l?"register.creating":"register.createAccountBtn")]})]}),e.jsx("div",{className:"mt-6 text-center",children:e.jsxs("p",{className:"text-sm text-neutral-400",children:[s("register.hasAccount")," ",e.jsx(j,{to:"/login",className:"text-brand-400 hover:text-brand-300 transition-colors font-medium",children:s("register.signIn")})]})})]})})})}export{y as default};
|
||||
import{u as h,a as g,b as w,r as d,j as e,N as f,L as j,z as a}from"./index-BKzMfs0Y.js";import{u as b}from"./useTranslation-BkWapr2x.js";function y(){const{t:s}=b(),{register:c,user:u}=h(),{site:n}=g(),m=w(),[r,i]=d.useState({username:"",password:"",password2:"",email:""}),[l,o]=d.useState(!1);if(u)return e.jsx(f,{to:"/dashboard",replace:!0});const p=async t=>{if(t.preventDefault(),!r.username||!r.password){a.error(s("register.fillRequired"));return}if(r.password!==r.password2){a.error(s("register.passwordMismatch"));return}if(r.password.length<8){a.error(s("register.passwordLength"));return}if(r.password.length>20){a.error(s("register.passwordLength"));return}o(!0);try{if((await c({username:r.username,password:r.password,email:r.email||void 0})).success){a.success(s("register.accountCreated")),m("/login",{replace:!0});return}}catch{}o(!1)};return e.jsx("div",{className:"min-h-[70vh] flex items-center justify-center px-6",children:e.jsx("div",{className:"w-full max-w-md",children:e.jsxs("div",{className:"glass rounded-2xl p-8",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("h1",{className:"text-2xl font-heading font-bold text-white mb-2",children:s("register.createAccount")}),e.jsx("p",{className:"text-sm text-neutral-400",children:n!=null&&n.name?s("register.getStartedWith",{name:n.name}):s("register.getStartedDefault")})]}),e.jsxs("form",{onSubmit:p,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsxs("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:[s("register.username")," *"]}),e.jsx("input",{type:"text",value:r.username,onChange:t=>i({...r,username:t.target.value}),className:"input",placeholder:s("register.chooseUsername"),autoComplete:"username",required:!0})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:s("register.email")}),e.jsx("input",{type:"email",value:r.email,onChange:t=>i({...r,email:t.target.value}),className:"input",placeholder:s("register.emailPlaceholder"),autoComplete:"email"})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:[s("register.password")," *"]}),e.jsx("input",{type:"password",value:r.password,onChange:t=>i({...r,password:t.target.value}),className:"input",placeholder:s("register.passwordPlaceholder"),autoComplete:"new-password",required:!0})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:[s("register.confirmPassword")," *"]}),e.jsx("input",{type:"password",value:r.password2,onChange:t=>i({...r,password2:t.target.value}),className:"input",placeholder:s("register.repeatPassword"),autoComplete:"new-password",required:!0})]}),e.jsxs("button",{type:"submit",disabled:l,className:"btn-primary w-full flex items-center justify-center gap-2",children:[l&&e.jsx("div",{className:"w-4 h-4 border-2 border-white/30 border-t-white rounded-full animate-spin"}),s(l?"register.creating":"register.createAccountBtn")]})]}),e.jsx("div",{className:"mt-6 text-center",children:e.jsxs("p",{className:"text-sm text-neutral-400",children:[s("register.hasAccount")," ",e.jsx(j,{to:"/login",className:"text-brand-400 hover:text-brand-300 transition-colors font-medium",children:s("register.signIn")})]})})]})})})}export{y as default};
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{r as t,j as c}from"./index-IL0bf27q.js";const b=({children:i,className:u="",spotlightColor:l="rgba(255, 255, 255, 0.25)"})=>{const o=t.useRef(null),[d,n]=t.useState(!1),[s,p]=t.useState({x:0,y:0}),[x,e]=t.useState(0),v=r=>{if(!o.current||d)return;const a=o.current.getBoundingClientRect();p({x:r.clientX-a.left,y:r.clientY-a.top})},f=()=>{n(!0),e(.6)},h=()=>{n(!1),e(0)},y=()=>{e(.6)},M=()=>{e(0)};return c.jsxs("div",{ref:o,onMouseMove:v,onFocus:f,onBlur:h,onMouseEnter:y,onMouseLeave:M,className:`relative rounded-3xl border border-neutral-800 bg-neutral-900 overflow-hidden p-8 ${u}`,children:[c.jsx("div",{className:"pointer-events-none absolute inset-0 opacity-0 transition-opacity duration-500 ease-in-out",style:{opacity:x,background:`radial-gradient(circle at ${s.x}px ${s.y}px, ${l}, transparent 80%)`}}),i]})};export{b as S};
|
||||
import{r as t,j as c}from"./index-BKzMfs0Y.js";const b=({children:i,className:u="",spotlightColor:l="rgba(255, 255, 255, 0.25)"})=>{const o=t.useRef(null),[d,n]=t.useState(!1),[s,p]=t.useState({x:0,y:0}),[x,e]=t.useState(0),v=r=>{if(!o.current||d)return;const a=o.current.getBoundingClientRect();p({x:r.clientX-a.left,y:r.clientY-a.top})},f=()=>{n(!0),e(.6)},h=()=>{n(!1),e(0)},y=()=>{e(.6)},M=()=>{e(0)};return c.jsxs("div",{ref:o,onMouseMove:v,onFocus:f,onBlur:h,onMouseEnter:y,onMouseLeave:M,className:`relative rounded-3xl border border-neutral-800 bg-neutral-900 overflow-hidden p-8 ${u}`,children:[c.jsx("div",{className:"pointer-events-none absolute inset-0 opacity-0 transition-opacity duration-500 ease-in-out",style:{opacity:x,background:`radial-gradient(circle at ${s.x}px ${s.y}px, ${l}, transparent 80%)`}}),i]})};export{b as S};
|
||||
@@ -1 +1 @@
|
||||
import{r as n,e as z,j as e,z as m,f as D,h as H,i as E}from"./index-IL0bf27q.js";import{u as L}from"./useTranslation-_qZZdhi7.js";function P(){const{t}=L(),[u,N]=n.useState([]),[g,h]=n.useState(!0),[v,l]=n.useState(!1),[x,p]=n.useState(""),[b,f]=n.useState(!1),[w,j]=n.useState(null),[o,k]=n.useState(null),[i,d]=n.useState(null),r=n.useCallback(async()=>{h(!0);try{const s=await z();s.data.success&&N(s.data.data||[])}catch{}h(!1)},[]);n.useEffect(()=>{r()},[r]);const C=async s=>{var c;if(s.preventDefault(),!x.trim()){m.error(t("tokens.enterName"));return}f(!0);try{const a=await D({name:x.trim()});if(a.data.success){p(""),l(!1);const y=(c=a.data.data)==null?void 0:c.key;y&&k(y),await r()}}catch{}f(!1)},S=async s=>{try{(await H(s.id,{status:s.status===1?2:1})).data.success&&(m.success(s.status===1?t("tokens.tokenDisabled"):t("tokens.tokenEnabled")),await r())}catch{}},T=async()=>{if(i)try{(await E(i.id)).data.success&&(m.success(t("tokens.tokenDeleted")),d(null),await r())}catch{}},K=async s=>{try{await navigator.clipboard.writeText(s)}catch{const a=document.createElement("textarea");a.value=s,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a)}j(s),m.success(t("tokens.copiedToClipboard")),setTimeout(()=>j(null),2e3)};return g?e.jsx("div",{className:"flex items-center justify-center min-h-[50vh]",children:e.jsx("div",{className:"w-8 h-8 border-2 border-brand-500/30 border-t-brand-500 rounded-full animate-spin"})}):e.jsxs("div",{className:"max-w-5xl mx-auto px-6 py-10",children:[e.jsxs("div",{className:"flex items-center justify-between mb-8",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-heading font-bold text-white",children:t("tokens.title")}),e.jsx("p",{className:"text-sm text-neutral-400 mt-1",children:t("tokens.subtitle")})]}),e.jsx("button",{onClick:()=>l(!0),className:"btn-primary",children:t("tokens.newKey")})]}),v&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:()=>l(!1),children:e.jsxs("div",{className:"glass rounded-2xl p-6 w-full max-w-md",onClick:s=>s.stopPropagation(),children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-4",children:t("tokens.createApiKey")}),e.jsxs("form",{onSubmit:C,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:t("tokens.name")}),e.jsx("input",{type:"text",value:x,onChange:s=>p(s.target.value),className:"input",placeholder:t("tokens.namePlaceholder"),autoFocus:!0,required:!0})]}),e.jsxs("div",{className:"flex justify-end gap-3",children:[e.jsx("button",{type:"button",onClick:()=>l(!1),className:"btn-secondary",children:t("tokens.cancel")}),e.jsx("button",{type:"submit",disabled:b,className:"btn-primary",children:t(b?"tokens.creating":"tokens.create")})]})]})]})}),o&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",children:e.jsxs("div",{className:"glass rounded-2xl p-6 w-full max-w-lg",children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-2",children:t("tokens.newApiKey")}),e.jsx("div",{className:"bg-yellow-500/10 border border-yellow-500/20 rounded-xl p-3 mb-4",children:e.jsx("p",{className:"text-sm text-yellow-300",children:t("tokens.keyWarning")})}),e.jsxs("div",{className:"bg-black/40 rounded-xl p-4 flex items-center gap-3",children:[e.jsx("code",{className:"text-sm font-mono text-green-400 flex-1 break-all select-all",children:o}),e.jsx("button",{onClick:()=>K(o),className:"btn-primary !px-4 !py-1.5 flex-shrink-0",children:t(w===o?"tokens.copied":"tokens.copy")})]}),e.jsx("div",{className:"flex justify-end mt-4",children:e.jsx("button",{onClick:()=>k(null),className:"btn-secondary",children:t("tokens.savedKey")})})]})}),i&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:()=>d(null),children:e.jsxs("div",{className:"glass rounded-2xl p-6 w-full max-w-sm",onClick:s=>s.stopPropagation(),children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-3",children:t("tokens.deleteToken")}),e.jsx("p",{className:"text-sm text-neutral-400 mb-4",children:t("tokens.deleteConfirm",{name:i.name})}),e.jsxs("div",{className:"flex justify-end gap-3",children:[e.jsx("button",{onClick:()=>d(null),className:"btn-secondary",children:t("tokens.cancel")}),e.jsx("button",{onClick:T,className:"px-6 py-2.5 rounded-xl bg-red-600 text-white text-sm font-medium hover:bg-red-500 transition-colors",children:t("tokens.delete")})]})]})}),u.length===0?e.jsxs("div",{className:"glass rounded-2xl p-12 text-center",children:[e.jsx("div",{className:"w-16 h-16 mx-auto mb-4 rounded-2xl bg-neutral-800/50 flex items-center justify-center",children:e.jsx("svg",{className:"w-8 h-8 text-neutral-600",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecapLine truncated
|
||||
import{r as n,e as z,j as e,z as m,f as D,h as H,i as E}from"./index-BKzMfs0Y.js";import{u as L}from"./useTranslation-BkWapr2x.js";function P(){const{t}=L(),[u,N]=n.useState([]),[g,h]=n.useState(!0),[v,l]=n.useState(!1),[x,p]=n.useState(""),[b,f]=n.useState(!1),[w,j]=n.useState(null),[o,k]=n.useState(null),[i,d]=n.useState(null),r=n.useCallback(async()=>{h(!0);try{const s=await z();s.data.success&&N(s.data.data||[])}catch{}h(!1)},[]);n.useEffect(()=>{r()},[r]);const C=async s=>{var c;if(s.preventDefault(),!x.trim()){m.error(t("tokens.enterName"));return}f(!0);try{const a=await D({name:x.trim()});if(a.data.success){p(""),l(!1);const y=(c=a.data.data)==null?void 0:c.key;y&&k(y),await r()}}catch{}f(!1)},S=async s=>{try{(await H(s.id,{status:s.status===1?2:1})).data.success&&(m.success(s.status===1?t("tokens.tokenDisabled"):t("tokens.tokenEnabled")),await r())}catch{}},T=async()=>{if(i)try{(await E(i.id)).data.success&&(m.success(t("tokens.tokenDeleted")),d(null),await r())}catch{}},K=async s=>{try{await navigator.clipboard.writeText(s)}catch{const a=document.createElement("textarea");a.value=s,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a)}j(s),m.success(t("tokens.copiedToClipboard")),setTimeout(()=>j(null),2e3)};return g?e.jsx("div",{className:"flex items-center justify-center min-h-[50vh]",children:e.jsx("div",{className:"w-8 h-8 border-2 border-brand-500/30 border-t-brand-500 rounded-full animate-spin"})}):e.jsxs("div",{className:"max-w-5xl mx-auto px-6 py-10",children:[e.jsxs("div",{className:"flex items-center justify-between mb-8",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-heading font-bold text-white",children:t("tokens.title")}),e.jsx("p",{className:"text-sm text-neutral-400 mt-1",children:t("tokens.subtitle")})]}),e.jsx("button",{onClick:()=>l(!0),className:"btn-primary",children:t("tokens.newKey")})]}),v&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:()=>l(!1),children:e.jsxs("div",{className:"glass rounded-2xl p-6 w-full max-w-md",onClick:s=>s.stopPropagation(),children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-4",children:t("tokens.createApiKey")}),e.jsxs("form",{onSubmit:C,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-neutral-300 mb-1.5",children:t("tokens.name")}),e.jsx("input",{type:"text",value:x,onChange:s=>p(s.target.value),className:"input",placeholder:t("tokens.namePlaceholder"),autoFocus:!0,required:!0})]}),e.jsxs("div",{className:"flex justify-end gap-3",children:[e.jsx("button",{type:"button",onClick:()=>l(!1),className:"btn-secondary",children:t("tokens.cancel")}),e.jsx("button",{type:"submit",disabled:b,className:"btn-primary",children:t(b?"tokens.creating":"tokens.create")})]})]})]})}),o&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",children:e.jsxs("div",{className:"glass rounded-2xl p-6 w-full max-w-lg",children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-2",children:t("tokens.newApiKey")}),e.jsx("div",{className:"bg-yellow-500/10 border border-yellow-500/20 rounded-xl p-3 mb-4",children:e.jsx("p",{className:"text-sm text-yellow-300",children:t("tokens.keyWarning")})}),e.jsxs("div",{className:"bg-black/40 rounded-xl p-4 flex items-center gap-3",children:[e.jsx("code",{className:"text-sm font-mono text-green-400 flex-1 break-all select-all",children:o}),e.jsx("button",{onClick:()=>K(o),className:"btn-primary !px-4 !py-1.5 flex-shrink-0",children:t(w===o?"tokens.copied":"tokens.copy")})]}),e.jsx("div",{className:"flex justify-end mt-4",children:e.jsx("button",{onClick:()=>k(null),className:"btn-secondary",children:t("tokens.savedKey")})})]})}),i&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:()=>d(null),children:e.jsxs("div",{className:"glass rounded-2xl p-6 w-full max-w-sm",onClick:s=>s.stopPropagation(),children:[e.jsx("h2",{className:"text-lg font-semibold text-white mb-3",children:t("tokens.deleteToken")}),e.jsx("p",{className:"text-sm text-neutral-400 mb-4",children:t("tokens.deleteConfirm",{name:i.name})}),e.jsxs("div",{className:"flex justify-end gap-3",children:[e.jsx("button",{onClick:()=>d(null),className:"btn-secondary",children:t("tokens.cancel")}),e.jsx("button",{onClick:T,className:"px-6 py-2.5 rounded-xl bg-red-600 text-white text-sm font-medium hover:bg-red-500 transition-colors",children:t("tokens.delete")})]})]})}),u.length===0?e.jsxs("div",{className:"glass rounded-2xl p-12 text-center",children:[e.jsx("div",{className:"w-16 h-16 mx-auto mb-4 rounded-2xl bg-neutral-800/50 flex items-center justify-center",children:e.jsx("svg",{className:"w-8 h-8 text-neutral-600",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecapLine truncated
|
||||
Vendored
-1
@@ -1 +0,0 @@
|
||||
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,Noto Sans SC,system-ui,-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Fira Code,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--brand: 99 102 241}body{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));font-feature-settings:"cv02","cv03","cv04","cv11"}::-moz-selection{background-color:#6366f14d}::selection{background-color:#6366f14d}::-webkit-scrollbar{width:.375rLine truncated
|
||||
@@ -1,4 +1,4 @@
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Home-DBdkRxFz.js","assets/CountUp-BYW6-_IC.js","assets/use-animation-frame-C8xwlfkl.js","assets/proxy-C5U9l3lk.js","assets/SpotlightCard-DnZRIBvu.js","assets/useTranslation-_qZZdhi7.js","assets/Layout-jBZtQ6VT.js","assets/LanguageSwitch-BaL1PXZI.js","assets/Home-CckJxCAO.js","assets/Mesh-CwXV3WjE.js","assets/Layout-BPI0INHi.js","assets/Home-Cpixso6G.js","assets/Layout-DXLQxUaA.js","assets/Home-DPa5gqtj.js","assets/Layout-Cd0I7kro.js","assets/Login-DfwJGS1y.js","assets/Register-Dun8m4oq.js","assets/Dashboard-BXw3crDM.js","assets/Tokens-Uwf_aYk2.js","assets/Packages-DpCJ9EEZ.js","assets/Pricing-BUcnP-Rk.js"])))=>i.map(i=>d[i]);
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Home-qi5v7AXA.js","assets/CountUp-1XaQYcAK.js","assets/use-animation-frame-fCsW-Snm.js","assets/proxy-CtcPDSb8.js","assets/SpotlightCard-DtQFfRY_.js","assets/useTranslation-BkWapr2x.js","assets/Layout-R2jHryaQ.js","assets/LanguageSwitch-GFWtBZjN.js","assets/Home-CQBctkfb.js","assets/Mesh-CwXV3WjE.js","assets/Layout-AIMpjgGv.js","assets/Home-DcqWlPjO.js","assets/Layout-CL_vzDCj.js","assets/Home-DVEY4Wen.js","assets/Layout-D_j12yNH.js","assets/Login-ChdNNGZS.js","assets/Register-DKX1iVhQ.js","assets/Dashboard-CfgHPaw4.js","assets/Tokens-BTl1Yx5h.js","assets/Packages-h-gt2_uZ.js","assets/Pricing-B1iNLrhR.js"])))=>i.map(i=>d[i]);
|
||||
function Vp(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const i in r)if(i!=="default"&&!(i in e)){const o=Object.getOwnPropertyDescriptor(r,i);o&&Object.defineProperty(e,i,o.get?o:{enumerable:!0,get:()=>r[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const s of o.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(i){if(i.ep)return;i.ep=!0;const o=n(i);fetch(i.href,o)}})();function Hp(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ic={exports:{}},go={},Dc={exports:{}},z={};/**
|
||||
* @license React
|
||||
* react.production.min.js
|
||||
@@ -246,4 +246,4 @@ to {
|
||||
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(i=>r.set(i)),r}static accessor(t){const r=(this[rc]=this[rc]={accessors:{}}).accessors,i=this.prototype;function o(s){const l=lr(s);r[l]||(x0(i,s),r[l]=!0)}return S.isArray(t)?t.forEach(o):o(t),this}};Ie.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);S.reduceDescriptors(Ie.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});S.freezeMethods(Ie);function ys(e,t){const n=this||ei,r=t||n,i=Ie.from(r.headers);let o=r.data;return S.forEach(e,function(l){o=l.call(n,o,i.normalize(),t?t.status:void 0)}),i.normalize(),o}function Ep(e){return!!(e&&e.__CANCEL__)}let ti=class extends A{constructor(t,n,r){super(t??"canceled",A.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}};function Cp(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new A("Request failed with status code "+n.status,[A.ERR_BAD_REQUEST,A.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function E0(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function C0(e,t){e=e||10;const n=new Array(e),r=new Array(e);let i=0,o=0,s;return t=t!==void 0?t:1e3,function(a){const u=Date.now(),c=r[o];s||(s=u),n[i]=a,r[i]=u;let f=o,p=0;for(;f!==i;)p+=n[f++],f=f%e;if(i=(i+1)%e,i===o&&(o=(o+1)%e),u-s<t)return;const y=c&&u-c;return y?Math.round(p*1e3/y):void 0}}function P0(e,t){let n=0,r=1e3/t,i,o;const s=(u,c=Date.now())=>{n=c,i=null,o&&(clearTimeout(o),o=null),e(...u)};return[(...u)=>{const c=Date.now(),f=c-n;f>=r?s(u,c):(i=u,o||(o=setTimeout(()=>{o=null,s(i)},r-f)))},()=>i&&s(i)]}const fo=(e,t,n=3)=>{let r=0;const i=C0(50,250);return P0(o=>{const s=o.loaded,l=o.lengthComputable?o.total:void 0,a=s-r,u=i(a),c=s<=l;r=s;const f={loaded:s,total:l,progress:l?s/l:void 0,bytes:a,rate:u||void 0,estimated:u&&l&&c?(l-s)/u:void 0,event:o,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},ic=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},oc=e=>(...t)=>S.asap(()=>e(...t)),O0=ge.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ge.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ge.origin),ge.navigator&&/(msie|trident)/i.test(ge.navigator.userAgent)):()=>!0,R0=ge.hasStandardBrowserEnv?{write(e,t,n,r,i,o,s){if(typeof document>"u")return;const l=[`${e}=${encodeURIComponent(t)}`];S.isNumber(n)&&l.push(`expires=${new Date(n).toUTCString()}`),S.isString(r)&&l.push(`path=${r}`),S.isString(i)&&l.push(`domain=${i}`),o===!0&&l.push("secure"),S.isString(s)&&l.push(`SameSite=${s}`),document.cookie=l.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function L0(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function _0(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Pp(e,t,n){let r=!L0(t);return e&&(r||n==!1)?_0(e,t):t}const sc=e=>e instanceof Ie?{...e}:e;function hn(e,t){t=t||{};const n={};function r(u,c,f,p){return S.isPlainObject(u)&&S.isPlainObject(c)?S.merge.call({caseless:p},u,c):S.isPlainObject(c)?S.merge({},c):S.isArray(c)?c.slice():c}function i(u,c,f,p){if(S.isUndefined(c)){if(!S.isUndefined(u))return r(void 0,u,f,p)}else return r(u,c,f,p)}function o(u,c){if(!S.isUndefined(c))return r(void 0,c)}function s(u,c){if(S.isUndefined(c)){if(!S.isUndefined(u))return r(void 0,u)}else return r(void 0,c)}function l(u,c,f){if(f in t)return r(u,c);if(f in e)return r(void 0,u)}const a={url:o,method:o,data:o,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:l,headers:(u,c,f)=>i(sc(u),sc(c),f,!0)};return S.forEach(Object.keys({...e,...t}),function(c){if(c==="__proto__"||c==="constructor"||c==="prototype")return;const f=S.hasOwnProp(a,c)?a[c]:i,p=f(e[c],t[c],c);S.isUndefined(p)&&f!==l||(n[c]=p)}),n}const Op=e=>{const t=hn({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:i,xsrfCookieName:o,headers:s,auth:l}=t;if(t.headers=s=Ie.from(s),t.url=kp(Pp(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&s.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):""))),S.isFormData(n)){if(ge.hasStandardBrowserEnv||ge.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(S.isFunction(n.getHeaders)){c
Line truncated
|
||||
`+s.map(dc).join(`
|
||||
`):" "+dc(s[0]):"as no adapter specified";throw new A("There is no suitable adapter to dispatch the request "+l,"ERR_NOT_SUPPORT")}return i}const Lp={getAdapter:M0,adapters:Na};function vs(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new ti(null,e)}function pc(e){return vs(e),e.headers=Ie.from(e.headers),e.data=ys.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Lp.getAdapter(e.adapter||ei.adapter,e)(e).then(function(r){return vs(e),r.data=ys.call(e,e.transformResponse,r),r.headers=Ie.from(r.headers),r},function(r){return Ep(r)||(vs(e),r&&r.response&&(r.response.data=ys.call(e,e.transformResponse,r.response),r.response.headers=Ie.from(r.response.headers))),Promise.reject(r)})}const _p="1.13.6",Uo={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Uo[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const hc={};Uo.transitional=function(t,n,r){function i(o,s){return"[Axios v"+_p+"] Transitional option '"+o+"'"+s+(r?". "+r:"")}return(o,s,l)=>{if(t===!1)throw new A(i(s," has been removed"+(n?" in "+n:"")),A.ERR_DEPRECATED);return n&&!hc[s]&&(hc[s]=!0,console.warn(i(s," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,s,l):!0}};Uo.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function B0(e,t,n){if(typeof e!="object")throw new A("options must be an object",A.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let i=r.length;for(;i-- >0;){const o=r[i],s=t[o];if(s){const l=e[o],a=l===void 0||s(l,o,e);if(a!==!0)throw new A("option "+o+" must be "+a,A.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new A("Unknown option "+o,A.ERR_BAD_OPTION)}}const zi={assertOptions:B0,validators:Uo},Be=zi.validators;let an=class{constructor(t){this.defaults=t||{},this.interceptors={request:new nc,response:new nc}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let i={};Error.captureStackTrace?Error.captureStackTrace(i):i=new Error;const o=i.stack?i.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=`
|
||||
`+o):r.stack=o}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=hn(this.defaults,n);const{transitional:r,paramsSerializer:i,headers:o}=n;r!==void 0&&zi.assertOptions(r,{silentJSONParsing:Be.transitional(Be.boolean),forcedJSONParsing:Be.transitional(Be.boolean),clarifyTimeoutError:Be.transitional(Be.boolean),legacyInterceptorReqResOrdering:Be.transitional(Be.boolean)},!1),i!=null&&(S.isFunction(i)?n.paramsSerializer={serialize:i}:zi.assertOptions(i,{encode:Be.function,serialize:Be.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),zi.assertOptions(n,{baseUrl:Be.spelling("baseURL"),withXsrfToken:Be.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=o&&S.merge(o.common,o[n.method]);o&&S.forEach(["delete","get","head","post","put","patch","common"],d=>{delete o[d]}),n.headers=Ie.concat(s,o);const l=[];let a=!0;this.interceptors.request.forEach(function(v){if(typeof v.runWhen=="function"&&v.runWhen(n)===!1)return;a=a&&v.synchronous;const w=n.transitional||_a;w&&w.legacyInterceptorReqResOrdering?l.unshift(v.fulfilled,v.rejected):l.push(v.fulfilled,v.rejected)});const u=[];this.interceptors.response.forEach(function(v){u.push(v.fulfilled,v.rejected)});let c,f=0,p;if(!a){const d=[pc.bind(this),void 0];for(d.unshift(...l),d.push(...u),p=d.length,c=Promise.resolve(n);f<p;)c=c.then(d[f++],d[f++]);return c}p=l.length;let y=n;for(;f<p;){const d=l[f++],v=l[f++];try{y=d(y)}catch(w){v.call(this,w);break}}try{c=pc.call(this,y)}catch(d){return Promise.reject(d)}for(f=0,p=u.length;f<p;)c=c.then(u[f++],u[f++]);return c}getUri(t){t=hn(this.defaults,t);const n=Pp(t.baseURL,t.url,t.allowAbsoluteUrls);return kp(n,t.params,t.paramsSerializer)}};S.forEach(["delete","get","head","options"],function(t){an.prototype[t]=function(n,r){return this.request(hn(r||{},{method:t,url:n,data:(r||{}).data}))}});S.forEach(["post","put","patch"],function(t){function n(r){return function(o,s,l){return this.request(hn(l||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:s}))}}an.prototype[t]=n(),an.prototype[t+"Form"]=n(!0)});let b0=class Tp{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(i=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](i);r._listeners=null}),this.promise.then=i=>{let o;const s=new Promise(l=>{r.subscribe(l),o=l}).then(i);return s.cancel=function(){r.unsubscribe(o)},s},t(function(o,s,l){r.reason||(r.reason=new ti(o,s,l),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Tp(function(i){t=i}),cancel:t}}};function V0(e){return function(n){return e.apply(null,n)}}function H0(e){return S.isObject(e)&&e.isAxiosError===!0}const Cl={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Cl).forEach(([e,t])=>{Cl[t]=e});function Np(e){const t=new an(e),n=cp(an.prototype.request,t);return S.extend(n,an.prototype,t,{allOwnKeys:!0}),S.extend(n,t,null,{allOwnKeys:!0}),n.create=function(i){return Np(hn(e,i))},n}const te=Np(ei);te.Axios=an;te.CanceledError=ti;te.CancelToken=b0;te.isCancel=Ep;te.VERSION=_p;
Line truncated
|
||||
`+o):r.stack=o}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=hn(this.defaults,n);const{transitional:r,paramsSerializer:i,headers:o}=n;r!==void 0&&zi.assertOptions(r,{silentJSONParsing:Be.transitional(Be.boolean),forcedJSONParsing:Be.transitional(Be.boolean),clarifyTimeoutError:Be.transitional(Be.boolean),legacyInterceptorReqResOrdering:Be.transitional(Be.boolean)},!1),i!=null&&(S.isFunction(i)?n.paramsSerializer={serialize:i}:zi.assertOptions(i,{encode:Be.function,serialize:Be.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),zi.assertOptions(n,{baseUrl:Be.spelling("baseURL"),withXsrfToken:Be.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=o&&S.merge(o.common,o[n.method]);o&&S.forEach(["delete","get","head","post","put","patch","common"],d=>{delete o[d]}),n.headers=Ie.concat(s,o);const l=[];let a=!0;this.interceptors.request.forEach(function(v){if(typeof v.runWhen=="function"&&v.runWhen(n)===!1)return;a=a&&v.synchronous;const w=n.transitional||_a;w&&w.legacyInterceptorReqResOrdering?l.unshift(v.fulfilled,v.rejected):l.push(v.fulfilled,v.rejected)});const u=[];this.interceptors.response.forEach(function(v){u.push(v.fulfilled,v.rejected)});let c,f=0,p;if(!a){const d=[pc.bind(this),void 0];for(d.unshift(...l),d.push(...u),p=d.length,c=Promise.resolve(n);f<p;)c=c.then(d[f++],d[f++]);return c}p=l.length;let y=n;for(;f<p;){const d=l[f++],v=l[f++];try{y=d(y)}catch(w){v.call(this,w);break}}try{c=pc.call(this,y)}catch(d){return Promise.reject(d)}for(f=0,p=u.length;f<p;)c=c.then(u[f++],u[f++]);return c}getUri(t){t=hn(this.defaults,t);const n=Pp(t.baseURL,t.url,t.allowAbsoluteUrls);return kp(n,t.params,t.paramsSerializer)}};S.forEach(["delete","get","head","options"],function(t){an.prototype[t]=function(n,r){return this.request(hn(r||{},{method:t,url:n,data:(r||{}).data}))}});S.forEach(["post","put","patch"],function(t){function n(r){return function(o,s,l){return this.request(hn(l||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:s}))}}an.prototype[t]=n(),an.prototype[t+"Form"]=n(!0)});let b0=class Tp{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(i=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](i);r._listeners=null}),this.promise.then=i=>{let o;const s=new Promise(l=>{r.subscribe(l),o=l}).then(i);return s.cancel=function(){r.unsubscribe(o)},s},t(function(o,s,l){r.reason||(r.reason=new ti(o,s,l),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Tp(function(i){t=i}),cancel:t}}};function V0(e){return function(n){return e.apply(null,n)}}function H0(e){return S.isObject(e)&&e.isAxiosError===!0}const Cl={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Cl).forEach(([e,t])=>{Cl[t]=e});function Np(e){const t=new an(e),n=cp(an.prototype.request,t);return S.extend(n,an.prototype,t,{allOwnKeys:!0}),S.extend(n,t,null,{allOwnKeys:!0}),n.create=function(i){return Np(hn(e,i))},n}const te=Np(ei);te.Axios=an;te.CanceledError=ti;te.CancelToken=b0;te.isCancel=Ep;te.VERSION=_p;
Line truncated
|
||||
Vendored
+1
@@ -0,0 +1 @@
|
||||
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,Noto Sans SC,system-ui,-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Fira Code,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--brand: 99 102 241}body{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));font-feature-settings:"cv02","cv03","cv04","cv11"}::-moz-selection{background-color:#6366f14d}::selection{background-color:#6366f14d}::-webkit-scrollbar{width:.375rLine truncated
|
||||
@@ -1 +1 @@
|
||||
import{r as w,j as Yt}from"./index-IL0bf27q.js";import{n as ve,p,f as S,g as Ss,i as Vs,W as Jn,h as As,j as xe,m as Tt,s as X,k as W,l as Cs,o as bs,q as Es,r as Ds,J as bt,t as et,v as Te,w as F,x as ct,y as Qn,z as nt,A as b,B as ht,D as O,E as Ms,F as Rs,G as Ls,H as He,I as _t,K as yt,L as B,N as Bs,O as ze,P as ks,Q as ti,c as Z,S as ei,R as V,T as ni,U as Zt,V as Is,X as ii,Y as qt,Z as M,_ as jt,b as js,M as si,d as Fs,$ as oi}from"./CountUp-BYW6-_IC.js";const ri=w.createContext({}),we=w.createContext(null),ai=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t);function li(t){return typeof t=="object"&&t!==null}const ui=t=>/^0[^.\s]+$/u.test(t);function ci(t){let e;return()=>(e===void 0&&(e=t()),e)}function Os(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const $=t=>t*180/Math.PI,Jt=t=>{const e=$(Math.atan2(t[1],t[0]));return Qt(e)},Ns={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:Jt,rotateZ:Jt,skewX:t=>$(Math.atan(t[1])),skewY:t=>$(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},Qt=t=>(t=t%360,t<0&&(t+=360),t),Ge=Jt,$e=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),Xe=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),Us={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:$e,scaleY:Xe,scale:t=>($e(t)+Xe(t))/2,rotateX:t=>Qt($(Math.atan2(t[6],t[5]))),rotateY:t=>Qt($(Math.atan2(-t[2],t[0]))),rotateZ:Ge,rotate:Ge,skewX:t=>$(Math.atan(t[4])),skewY:t=>$(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function te(t){return t.includes("scale")?1:0}function ee(t,e){if(!t||t==="none")return te(e);const n=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let i,s;if(n)i=Us,s=n;else{const a=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);i=Ns,s=a}if(!s)return te(e);const r=i[e],o=s[1].split(",").map(Ks);return typeof r=="function"?r(o):o[r]}const Ws=(t,e)=>{const{transform:n="none"}=getComputedStyle(t);return ee(n,e)};function Ks(t){return parseFloat(t.trim())}const it=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],st=new Set(it),Ye=t=>t===ve||t===p,Hs=new Set(["x","y","z"]),zs=it.filter(t=>!Hs.has(t));function Gs(t){const e=[];return zs.forEach(n=>{const i=t.getValue(n);i!==void 0&&(e.push([n,i.get()]),i.set(n.startsWith("scale")?1:0))}),e}const U={width:({x:t},{paddingLeft:e="0",paddingRight:n="0",boxSizing:i})=>{const s=t.max-t.min;return i==="border-box"?s:s-parseFloat(e)-parseFloat(n)},height:({y:t},{paddingTop:e="0",paddingBottom:n="0",boxSizing:i})=>{const s=t.max-t.min;return i==="border-box"?s:s-parseFloat(e)-parseFloat(n)},top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>ee(e,"x"),y:(t,{transform:e})=>ee(e,"y")};U.translateX=U.x;U.translateY=U.y;const Y=new Set;let ne=!1,ie=!1,se=!1;function hi(){if(ie){const t=Array.from(Y).filter(i=>i.needsMeasurement),e=new Set(t.map(i=>i.element)),n=new Map;e.forEach(i=>{const s=Gs(i);s.length&&(n.set(i,s),i.render())}),t.forEach(i=>i.measureInitialState()),e.forEach(i=>{i.render();const s=n.get(i);s&&s.forEach(([r,o])=>{var a;(a=i.getValue(r))==null||a.set(o)})}),t.forEach(i=>i.measureEndState()),t.forEach(i=>{i.suspendedScrollY!==void 0&&window.scrollTo(0,i.suspendedScrollY)})}ie=!1,ne=!1,Y.forEach(t=>t.complete(se)),Y.clear()}function fi(){Y.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(ie=!0)})}function $s(){se=!0,fi(),hi(),se=!1}class Pe{constructor(e,n,i,s,r,o=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=n,this.name=i,this.motionValue=s,this.element=r,this.isAsync=o}scheduleResolve(){this.state="scheduled",this.isAsync?(Y.add(this),ne||(ne=!0,S.read(fi),S.resolveKeyframes(hi))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:n,element:i,motionValue:s}=this;if(e[0]===null){const r=s==null?void 0:s.get(),o=e[e.length-1];if(r!==void 0)e[0]=r;else if(i&&n){const a=i.readValue(n,o);a!=null&&(e[0]=a)}e[0]===void 0&&(e[0]=o),s&&r===void 0&&s.set(e[0])}Os(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),Y.delete(this)}cancel(){this.state==="scheduled"&&(Y.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const Xs=t=>t.startsWith("--");function di(t,e,n){Xs(e)?t.style.setProperty(e,n):t.style[e]=n}const Ys={};function mi(t,e){const n=ci(t);return()=>Ys[e]??n()}const _s=mi(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),pi=mi(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),at=([t,e,n,i])=>`cubic-bezier(${t}, ${e}, ${n}, ${i})`,_e={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-inLine truncated
|
||||
import{r as w,j as Yt}from"./index-BKzMfs0Y.js";import{n as ve,p,f as S,g as Ss,i as Vs,W as Jn,e as As,h as xe,m as Tt,s as X,j as W,k as Cs,l as bs,o as Es,r as Ds,J as bt,t as et,q as Te,v as F,w as ct,x as Qn,y as nt,z as b,A as ht,B as O,D as Ms,E as Rs,F as Ls,G as He,H as _t,I as yt,K as B,L as Bs,N as ze,O as ks,P as ti,c as Z,S as ei,Q as V,R as ni,T as Zt,U as Is,V as ii,X as qt,Y as M,Z as jt,b as js,M as si,d as Fs,_ as oi}from"./CountUp-1XaQYcAK.js";const ri=w.createContext({}),we=w.createContext(null),ai=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t);function li(t){return typeof t=="object"&&t!==null}const ui=t=>/^0[^.\s]+$/u.test(t);function ci(t){let e;return()=>(e===void 0&&(e=t()),e)}function Os(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const $=t=>t*180/Math.PI,Jt=t=>{const e=$(Math.atan2(t[1],t[0]));return Qt(e)},Ns={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:Jt,rotateZ:Jt,skewX:t=>$(Math.atan(t[1])),skewY:t=>$(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},Qt=t=>(t=t%360,t<0&&(t+=360),t),Ge=Jt,$e=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),Xe=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),Us={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:$e,scaleY:Xe,scale:t=>($e(t)+Xe(t))/2,rotateX:t=>Qt($(Math.atan2(t[6],t[5]))),rotateY:t=>Qt($(Math.atan2(-t[2],t[0]))),rotateZ:Ge,rotate:Ge,skewX:t=>$(Math.atan(t[4])),skewY:t=>$(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function te(t){return t.includes("scale")?1:0}function ee(t,e){if(!t||t==="none")return te(e);const n=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let i,s;if(n)i=Us,s=n;else{const a=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);i=Ns,s=a}if(!s)return te(e);const r=i[e],o=s[1].split(",").map(Ks);return typeof r=="function"?r(o):o[r]}const Ws=(t,e)=>{const{transform:n="none"}=getComputedStyle(t);return ee(n,e)};function Ks(t){return parseFloat(t.trim())}const it=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],st=new Set(it),Ye=t=>t===ve||t===p,Hs=new Set(["x","y","z"]),zs=it.filter(t=>!Hs.has(t));function Gs(t){const e=[];return zs.forEach(n=>{const i=t.getValue(n);i!==void 0&&(e.push([n,i.get()]),i.set(n.startsWith("scale")?1:0))}),e}const U={width:({x:t},{paddingLeft:e="0",paddingRight:n="0",boxSizing:i})=>{const s=t.max-t.min;return i==="border-box"?s:s-parseFloat(e)-parseFloat(n)},height:({y:t},{paddingTop:e="0",paddingBottom:n="0",boxSizing:i})=>{const s=t.max-t.min;return i==="border-box"?s:s-parseFloat(e)-parseFloat(n)},top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>ee(e,"x"),y:(t,{transform:e})=>ee(e,"y")};U.translateX=U.x;U.translateY=U.y;const Y=new Set;let ne=!1,ie=!1,se=!1;function hi(){if(ie){const t=Array.from(Y).filter(i=>i.needsMeasurement),e=new Set(t.map(i=>i.element)),n=new Map;e.forEach(i=>{const s=Gs(i);s.length&&(n.set(i,s),i.render())}),t.forEach(i=>i.measureInitialState()),e.forEach(i=>{i.render();const s=n.get(i);s&&s.forEach(([r,o])=>{var a;(a=i.getValue(r))==null||a.set(o)})}),t.forEach(i=>i.measureEndState()),t.forEach(i=>{i.suspendedScrollY!==void 0&&window.scrollTo(0,i.suspendedScrollY)})}ie=!1,ne=!1,Y.forEach(t=>t.complete(se)),Y.clear()}function fi(){Y.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(ie=!0)})}function $s(){se=!0,fi(),hi(),se=!1}class Pe{constructor(e,n,i,s,r,o=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=n,this.name=i,this.motionValue=s,this.element=r,this.isAsync=o}scheduleResolve(){this.state="scheduled",this.isAsync?(Y.add(this),ne||(ne=!0,S.read(fi),S.resolveKeyframes(hi))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:n,element:i,motionValue:s}=this;if(e[0]===null){const r=s==null?void 0:s.get(),o=e[e.length-1];if(r!==void 0)e[0]=r;else if(i&&n){const a=i.readValue(n,o);a!=null&&(e[0]=a)}e[0]===void 0&&(e[0]=o),s&&r===void 0&&s.set(e[0])}Os(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),Y.delete(this)}cancel(){this.state==="scheduled"&&(Y.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const Xs=t=>t.startsWith("--");function di(t,e,n){Xs(e)?t.style.setProperty(e,n):t.style[e]=n}const Ys={};function mi(t,e){const n=ci(t);return()=>Ys[e]??n()}const _s=mi(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),pi=mi(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),at=([t,e,n,i])=>`cubic-bezier(${t}, ${e}, ${n}, ${i})`,_e={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-inLine truncated
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{r as e}from"./index-IL0bf27q.js";import{M as a,f as u,c}from"./CountUp-BYW6-_IC.js";function p(r){const t=e.useRef(0),{isStatic:o}=e.useContext(a);e.useEffect(()=>{if(o)return;const n=({timestamp:i,delta:s})=>{t.current||(t.current=i),r(i-t.current,s)};return u.update(n,!0),()=>c(n)},[r])}export{p as u};
|
||||
import{r as e}from"./index-BKzMfs0Y.js";import{M as a,f as u,c}from"./CountUp-1XaQYcAK.js";function p(r){const t=e.useRef(0),{isStatic:o}=e.useContext(a);e.useEffect(()=>{if(o)return;const n=({timestamp:i,delta:s})=>{t.current||(t.current=i),r(i-t.current,s)};return u.update(n,!0),()=>c(n)},[r])}export{p as u};
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
import{r as l,m as q,n as B}from"./index-IL0bf27q.js";const H=(e,t,r,i)=>{var n,d,y,g;const s=[r,{code:t,...i||{}}];if((d=(n=e==null?void 0:e.services)==null?void 0:n.logger)!=null&&d.forward)return e.services.logger.forward(s,"warn","react-i18next::",!0);p(s[0])&&(s[0]=`react-i18next:: ${s[0]}`),(g=(y=e==null?void 0:e.services)==null?void 0:y.logger)!=null&&g.warn?e.services.logger.warn(...s):console!=null&&console.warn&&console.warn(...s)},z={},U=(e,t,r,i)=>{p(r)&&z[r]||(p(r)&&(z[r]=new Date),H(e,t,r,i))},F=(e,t)=>()=>{if(e.isInitialized)t();else{const r=()=>{setTimeout(()=>{e.off("initialized",r)},0),t()};e.on("initialized",r)}},O=(e,t,r)=>{e.loadNamespaces(t,F(e,r))},A=(e,t,r,i)=>{if(p(r)&&(r=[r]),e.options.preload&&e.options.preload.indexOf(t)>-1)return O(e,r,i);r.forEach(s=>{e.options.ns.indexOf(s)<0&&e.options.ns.push(s)}),e.loadLanguages(t,F(e,i))},J=(e,t,r={})=>!t.languages||!t.languages.length?(U(t,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:r.lng,precheck:(i,s)=>{if(r.bindI18n&&r.bindI18n.indexOf("languageChanging")>-1&&i.services.backendConnector.backend&&i.isLanguageChangingTo&&!s(i.isLanguageChangingTo,e))return!1}}),p=e=>typeof e=="string",K=e=>typeof e=="object"&&e!==null,Q=l.createContext();class V{constructor(){this.usedNamespaces={}}addUsedNamespaces(t){t.forEach(r=>{this.usedNamespaces[r]||(this.usedNamespaces[r]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}var M={exports:{}},$={};/**
|
||||
import{r as l,m as q,n as B}from"./index-BKzMfs0Y.js";const H=(e,t,r,i)=>{var n,d,y,g;const s=[r,{code:t,...i||{}}];if((d=(n=e==null?void 0:e.services)==null?void 0:n.logger)!=null&&d.forward)return e.services.logger.forward(s,"warn","react-i18next::",!0);p(s[0])&&(s[0]=`react-i18next:: ${s[0]}`),(g=(y=e==null?void 0:e.services)==null?void 0:y.logger)!=null&&g.warn?e.services.logger.warn(...s):console!=null&&console.warn&&console.warn(...s)},z={},U=(e,t,r,i)=>{p(r)&&z[r]||(p(r)&&(z[r]=new Date),H(e,t,r,i))},F=(e,t)=>()=>{if(e.isInitialized)t();else{const r=()=>{setTimeout(()=>{e.off("initialized",r)},0),t()};e.on("initialized",r)}},O=(e,t,r)=>{e.loadNamespaces(t,F(e,r))},A=(e,t,r,i)=>{if(p(r)&&(r=[r]),e.options.preload&&e.options.preload.indexOf(t)>-1)return O(e,r,i);r.forEach(s=>{e.options.ns.indexOf(s)<0&&e.options.ns.push(s)}),e.loadLanguages(t,F(e,i))},J=(e,t,r={})=>!t.languages||!t.languages.length?(U(t,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:r.lng,precheck:(i,s)=>{if(r.bindI18n&&r.bindI18n.indexOf("languageChanging")>-1&&i.services.backendConnector.backend&&i.isLanguageChangingTo&&!s(i.isLanguageChangingTo,e))return!1}}),p=e=>typeof e=="string",K=e=>typeof e=="object"&&e!==null,Q=l.createContext();class V{constructor(){this.usedNamespaces={}}addUsedNamespaces(t){t.forEach(r=>{this.usedNamespaces[r]||(this.usedNamespaces[r]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}var M={exports:{}},$={};/**
|
||||
* @license React
|
||||
* use-sync-external-store-shim.production.js
|
||||
*
|
||||
Vendored
+2
-2
@@ -7,8 +7,8 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Noto+Sans+SC:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet" />
|
||||
<title>AI Platform</title>
|
||||
<script type="module" crossorigin src="/assets/index-IL0bf27q.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="/assets/index-B7Z9nRTh.css">
|
||||
<script type="module" crossorigin src="/assets/index-BKzMfs0Y.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="/assets/index-CHMGutMk.css">
|
||||
</head>
|
||||
<body class="bg-black text-white antialiased">
|
||||
<div id="root"></div>
|
||||
|
||||
+35
-33
@@ -7,7 +7,7 @@ import { getSiteModels, getSitePackages } from '../../api';
|
||||
import Aurora from '../../components/bits/Aurora';
|
||||
import SplitText from '../../components/bits/SplitText';
|
||||
import RotatingText from '../../components/bits/RotatingText';
|
||||
import TiltedCard from '../../components/bits/TiltedCard';
|
||||
import SpotlightCard from '../../components/bits/SpotlightCard';
|
||||
import CountUp from '../../components/bits/CountUp';
|
||||
|
||||
export default function DefaultHome() {
|
||||
@@ -96,39 +96,41 @@ export default function DefaultHome() {
|
||||
</div>
|
||||
|
||||
<div className="grid md:grid-cols-3 gap-6">
|
||||
{[
|
||||
{ icon: (
|
||||
<svg className="w-6 h-6 text-violet-400" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={1.5} d="M13 10V3L4 14h7v7l9-11h-7z" />
|
||||
</svg>
|
||||
), title: t('home.lightningFast'), desc: t('home.lightningFastDesc'), gradient: 'from-violet-500/10 to-blue-500/10', border: 'border-violet-500/20' },
|
||||
{ icon: (
|
||||
<svg className="w-6 h-6 text-blue-400" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={1.5} d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z" />
|
||||
</svg>
|
||||
), title: t('home.securePrivate'), desc: t('home.securePrivateDesc'), gradient: 'from-blue-500/10 to-cyan-500/10', border: 'border-blue-500/20' },
|
||||
{ icon: (
|
||||
<svg className="w-6 h-6 text-cyan-400" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={1.5} d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
|
||||
</svg>
|
||||
), title: t('home.payAsYouGo'), desc: t('home.payAsYouGoDesc'), gradient: 'from-cyan-500/10 to-teal-500/10', border: 'border-cyan-500/20' },
|
||||
].map((f, i) => (
|
||||
<TiltedCard
|
||||
key={i}
|
||||
rotateAmplitude={6}
|
||||
scaleOnHover={1.02}
|
||||
borderRadius="16px"
|
||||
className="w-full"
|
||||
>
|
||||
<div className={`p-6 rounded-2xl bg-gradient-to-br ${f.gradient} border ${f.border} h-full`}>
|
||||
<div className="w-12 h-12 rounded-xl bg-white/[0.06] flex items-center justify-center mb-4">
|
||||
{f.icon}
|
||||
</div>
|
||||
<h3 className="text-lg font-semibold text-white mb-2">{f.title}</h3>
|
||||
<p className="text-sm text-neutral-400 leading-relaxed">{f.desc}</p>
|
||||
<SpotlightCard className="!bg-gradient-to-br !from-violet-500/10 !to-blue-500/10 !border-violet-500/20" spotlightColor="rgba(139,92,246,0.1)">
|
||||
<div className="p-6">
|
||||
<div className="w-12 h-12 rounded-xl bg-white/[0.06] flex items-center justify-center mb-4">
|
||||
<svg className="w-6 h-6 text-violet-400" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={1.5} d="M13 10V3L4 14h7v7l9-11h-7z" />
|
||||
</svg>
|
||||
</div>
|
||||
</TiltedCard>
|
||||
))}
|
||||
<h3 className="text-lg font-semibold text-white mb-2">{t('home.lightningFast')}</h3>
|
||||
<p className="text-sm text-neutral-400 leading-relaxed">{t('home.lightningFastDesc')}</p>
|
||||
</div>
|
||||
</SpotlightCard>
|
||||
|
||||
<SpotlightCard className="!bg-gradient-to-br !from-blue-500/10 !to-cyan-500/10 !border-blue-500/20" spotlightColor="rgba(59,130,246,0.1)">
|
||||
<div className="p-6">
|
||||
<div className="w-12 h-12 rounded-xl bg-white/[0.06] flex items-center justify-center mb-4">
|
||||
<svg className="w-6 h-6 text-blue-400" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={1.5} d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z" />
|
||||
</svg>
|
||||
</div>
|
||||
<h3 className="text-lg font-semibold text-white mb-2">{t('home.securePrivate')}</h3>
|
||||
<p className="text-sm text-neutral-400 leading-relaxed">{t('home.securePrivateDesc')}</p>
|
||||
</div>
|
||||
</SpotlightCard>
|
||||
|
||||
<SpotlightCard className="!bg-gradient-to-br !from-cyan-500/10 !to-teal-500/10 !border-cyan-500/20" spotlightColor="rgba(6,182,212,0.1)">
|
||||
<div className="p-6">
|
||||
<div className="w-12 h-12 rounded-xl bg-white/[0.06] flex items-center justify-center mb-4">
|
||||
<svg className="w-6 h-6 text-cyan-400" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={1.5} d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
|
||||
</svg>
|
||||
</div>
|
||||
<h3 className="text-lg font-semibold text-white mb-2">{t('home.payAsYouGo')}</h3>
|
||||
<p className="text-sm text-neutral-400 leading-relaxed">{t('home.payAsYouGoDesc')}</p>
|
||||
</div>
|
||||
</SpotlightCard>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
Reference in new issue
Block a user