Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 

2 строки
11 KiB

  1. import{j as e,c as D,d as z,e as L,F as V,f as $,g as A,B as y,h as H,i as R,k as F,T as N,l as _,m as K,P as U}from"./semi-ui-BMB0_gSU.js";import{r as m,L as O,R as W}from"./react-core-CMEN6BYR.js";import{m as G}from"./tools-DogoVVJ5.js";import{aR as I,aS as B,aT as Q,aU as Y,aV as Z,aW as E,aX as q,aY as X,aZ as J,a_ as ee,a$ as se,b0 as te,b1 as ae,A as k,s as oe}from"./index-gPcw8Cof.js";import{u as S}from"./i18n-D_ruByvS.js";import"./react-components-CFDFlXwp.js";const le=()=>{var x,u,c;const{t,i18n:d}=S(),[i]=m.useContext(I),p=d.language.startsWith("zh"),s=((x=i==null?void 0:i.status)==null?void 0:x.server_address)||`${window.location.origin}`,b=((u=i==null?void 0:i.status)==null?void 0:u.demo_site_enabled)||!1,a=B.map(r=>({value:r})),[o,h]=m.useState(0),g=async()=>{await Q(s)&&Y(t("已复制到剪切板"))};m.useEffect(()=>{const r=setInterval(()=>{h(n=>(n+1)%a.length)},3e3);return()=>clearInterval(r)},[a.length]);const f=[{icon:e.jsx(D,{size:18}),title:t("实时调度"),description:t("健康度与延迟权重动态切换,保证最优响应。")},{icon:e.jsx(z,{size:18}),title:t("统一监控"),description:t("调用、费用、异常一站式可视化,随时掌握运行状态。")},{icon:e.jsx(L,{size:18}),title:t("安全可控"),description:t("多维策略保障核心业务优先级,避免突发拥堵。")}];return t("可覆盖模型"),t("SLA 可用性"),t("多区域节点"),e.jsxs("section",{className:"home-snap-section home-snap-section-hero bg-[var(--semi-color-bg-0)]",children:[e.jsx("div",{className:"hero-blur-ball-1"}),e.jsx("div",{className:"hero-blur-ball-2"}),e.jsx("div",{className:"relative z-10 mx-auto w-full max-w-6xl px-5 pt-14 pb-8 md:px-6 md:pt-32 md:pb-20 lg:px-8 lg:pt-36 lg:pb-24",children:e.jsxs("div",{className:"grid items-center gap-12 hero-grid lg:grid-cols-[1.1fr_0.9fr]",children:[e.jsxs("div",{className:"flex flex-col gap-8",children:[e.jsx("span",{className:"hero-tag self-start",children:t("面向企业的 AI 生产力基座")}),e.jsxs("div",{className:`text-2xl font-bold text-semi-color-text-0 leading-tight md:text-4xl lg:text-5xl ${p?"tracking-wide md:tracking-wider":""}`,children:[e.jsx("span",{className:"mb-8 block whitespace-nowrap",children:t("统一的大模型接口网关")}),e.jsx("span",{className:"shine-text block whitespace-nowrap",children:t("链接顶级 AI 能力")})]}),e.jsx("p",{className:"max-w-xl text-base leading-relaxed text-semi-color-text-1 md:text-lg",children:t("以一套域名、密钥与风控策略连接顶级大模型资源,保障可观测、可拓展、可控。")}),e.jsxs("div",{className:"api-url-card",children:[e.jsx("span",{className:"mb-3 block text-xs uppercase tracking-wide text-semi-color-text-2",children:t("替换基础 URL 即可接入")}),e.jsx(V,{readonly:!0,value:s,className:"!rounded-2xl",size:"large",suffix:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx($,{bodyHeight:32,style:{border:"unset",boxShadow:"unset"},children:e.jsx(A,{mode:"wheel",cycled:!0,list:a,selectedIndex:o,onSelect:({index:r})=>h(r)})}),e.jsx(y,{type:"primary",onClick:g,icon:e.jsx(H,{}),className:"!rounded-full",size:"small"})]})})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-4",children:[e.jsx(O,{to:"/console",children:e.jsx(y,{theme:"solid",type:"primary",size:"large",className:"!rounded-3xl px-8 py-2",icon:e.jsx(R,{}),children:t("获取密钥")})}),b&&((c=i==null?void 0:i.status)!=null&&c.version)?e.jsx(y,{size:"large",className:"flex items-center !rounded-3xl px-6 py-2",icon:e.jsx(F,{}),onClick:()=>window.open("https://github.com/QuantumNous/new-api","_blank"),children:i.status.version}):null]})]}),e.jsx("div",{className:"relative hidden lg:block",children:e.jsx("div",{className:"feature-card-container",children:e.jsx("div",{className:"feature-card",children:f.map((r,n)=>e.jsxs("div",{className:"feature-card-item",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"feature-card-icon",children:r.icon}),e.jsx("span",{className:"text-sm font-semibold text-semi-color-text-0",children:r.title})]}),e.jsx("span",{className:"text-xs leading-relaxed text-semi-color-text-2",children:r.description})]},n))})})})]})})]})},{Title:he,Text:ge}=N,{Title:fe,Text:be}=N,{Title:ve,Text:je}=N,{Title:we,Text:ye}=N,ne=()=>{var s,b;const{t}=S(),[d]=m.useContext(I);(s=d==null?void 0:d.status)!=null&&s.system_name;const i=((b=d==null?void 0:d.status)==null?void 0:b.footer_info)||"";new Date().getFullYear();const p=[{label:t("用户协议"),href:"/user-agreement",external:!1},{label:t("隐私协议"),href:"/privacy-policy",external:!1}];return e.jsx("footer",{className:"home-snap-section home-footer",children:e.jsxs("div",{className:"mx-auto w-full max-w-[1110px]",children:[e.jsx("div",{className:"mb-6 flex flex-col items-center justify-center gap-3 md:flex-row md:gap-4",children:p.filter(a=>a.href).map((a,o)=>e.jsxs(W.Fragment,{children:[e.jsx("a",{href:a.href,target:a.external?"_blank":void 0,rel:a.external?"noopener noreferrer":void 0,className:"home-footer-link",children:a.label}),o<p.filter(h=>h.href).length-1&&e.jsx("div",{className:"hidden h-4 w-px bg-semi-color-border md:block"})]},a.label))}),e.jsx("div",{className:"border-t border-semi-color-border pt-6",children:e.jsx("div",{className:"flex flex-col items-center justify-between gap-4 md:flex-row",children:i&&e.jsx("div",{className:"text-center text-sm text-semi-color-text-2 md:text-right",dangerouslySetInnerHTML:{__html:i}})})})]})})},P=({title:t,items:d=[],activeValue:i,onChange:p,loading:s=!1,t:b=a=>a})=>Z(s)?e.jsxs("div",{className:"mb-6",children:[e.jsx(_.Title,{active:!0,style:{width:60,marginBottom:8}}),e.jsx("div",{className:"flex gap-2 flex-wrap",children:[1,2,3,4,5].map(o=>e.jsx(_.Button,{active:!0,style:{width:100,height:32}},o))})]}):e.jsxs("div",{className:"mb-6 last:mb-0",children:[e.jsx("div",{className:"text-sm font-medium text-semi-color-text-1 mb-3",children:t}),e.jsx("div",{className:"flex flex-wrap gap-2",children:d.map(o=>{const h=o.disabled||typeof o.tagCount=="number"&&o.tagCount===0,g=i===o.value;return e.jsx(y,{onClick:()=>!h&&p(o.value),theme:g?"solid":"borderless",type:g?"primary":"tertiary",disabled:h,className:"!rounded-full",children:e.jsxs("span",{className:"flex items-center gap-2",children:[o.icon,e.jsx("span",{children:o.label}),o.tagCount!==void 0&&e.jsx(K,{color:g?"white":"grey",shape:"circle",size:"small",children:o.tagCount})]})},o.value)})})]}),re=[{value:1,labelKey:"文本"},{value:2,labelKey:"图像"},{value:3,labelKey:"音频"},{value:4,labelKey:"视频"},{value:5,labelKey:"嵌入"},{value:6,labelKey:"重排序"},{value:7,labelKey:"视觉"},{value:8,labelKey:"其他"}],T={mobile:6,tablet:8,desktop:9},ie=({t})=>{const[d,i]=m.useState(!1),p=E(),s=q(),b=m.useMemo(()=>p?T.mobile:typeof window<"u"&&window.innerWidth<1024?T.tablet:T.desktop,[p]),{vendorModels:a,typeModels:o}=X({models:s.models,filterGroup:s.filterGroup,filterQuotaType:s.filterQuotaType,filterEndpointType:s.filterEndpointType,filterVendor:s.filterVendor,filterTag:s.filterTag,filterType:s.filterType,searchValue:s.searchValue}),h=m.useMemo(()=>{const f=s.models,x=new Map,u=new Set;let c=!1;(f||[]).forEach(l=>{l.vendor_name?(u.add(l.vendor_name),l.vendor_icon&&!x.has(l.vendor_name)&&x.set(l.vendor_name,l.vendor_icon)):c=!0});const r=s.vendorsMap||{},n=Object.values(r).filter(l=>u.has(l.name)).map(l=>l.name),j=new Set(n);u.forEach(l=>{j.has(l)||n.push(l)});const v=()=>u.size+(c?1:0),C=l=>l==="all"?a.length:l==="unknown"?a.filter(w=>!w.vendor_name).length:a.filter(w=>w.vendor_name===l).length,M=[{value:"all",label:t("全部供应商"),tagCount:v(),disabled:(f||[]).length===0}];return n.forEach(l=>{const w=C(l);M.push({value:l,label:l,icon:x.get(l)?J(x.get(l),16):null,tagCount:w,disabled:w===0})}),c&&M.push({value:"unknown",label:t("未知供应商"),tagCount:C("unknown"),disabled:C("unknown")===0}),M},[s.models,s.vendorsMap,a,t]),g=m.useMemo(()=>{const f=s.models,x=c=>{if(c==="all")return o.length;const r=Number(c);return o.filter(n=>n.type===r).length},u=[{value:"all",label:t("全部类型"),tagCount:x("all"),disabled:(f||[]).length===0}];return re.forEach(({value:c,labelKey:r})=>{const n=x(c);n!==0&&u.push({value:String(c),label:t(r),tagCount:n})}),u},[s.models,o,t]);return e.jsxs("div",{className:"w-full mt-8 md:mt-12",children:[e.jsxs("div",{className:"rounded-xl border border-semi-color-border bg-semi-color-bg-0 p-4",children:[e.jsx(P,{title:t("供应商"),items:h,activeValue:s.filterVendor,onChange:s.setFilterVendor,loading:s.loading,t}),e.jsx(P,{title:t("模型类型"),items:g,activeValue:s.filterType,onChange:s.setFilterType,loading:s.loading,t})]}),e.jsx("div",{className:"mt-6",children:e.jsx(ee,{filteredModels:s.filteredModels,loading:s.loading,rowSelection:null,pageSize:b,setPageSize:s.setPageSize,currentPage:s.currentPage,setCurrentPage:s.setCurrentPage,copyText:s.copyText,setModalImageUrl:s.setModalImageUrl,setIsModalOpenurl:s.setIsModalOpenurl,showRatio:d,t,selectedRowKeys:[],openModelDetail:s.openModelDetail,gridColsClass:"grid-cols-1 md:grid-cols-2 lg:grid-cols-3",showPagination:!0,showTryButton:!0})}),e.jsx(U,{src:s.modalImageUrl,visible:s.isModalOpenurl,onVisibleChange:f=>s.setIsModalOpenurl(f)}),e.jsx(se,{visible:s.showModelDetail,onClose:s.closeModelDetail,modelData:s.selectedModel,groupRatio:s.groupRatio,usableGroup:s.usableGroup,currency:s.currency,tokenUnit:s.tokenUnit,displayPrice:s.displayPrice,showRatio:d,vendorsMap:s.vendorsMap,endpointMap:s.endpointMap,autoGroups:s.autoGroups,t})]})},Ne=()=>{const{t,i18n:d}=S(),[i]=m.useContext(I),p=te(),[s,b]=m.useState(!1),[a,o]=m.useState(""),[h,g]=m.useState(!1),f=E(),x=async()=>{o(localStorage.getItem("home_page_content")||"");const u=await k.get("/api/home_page_content"),{success:c,message:r,data:n}=u.data;if(c){let j=n;if(n.startsWith("https://")||(j=G.parse(n)),o(j),localStorage.setItem("home_page_content",j),n.startsWith("https://")){const v=document.querySelector("iframe");v&&(v.onload=()=>{v.contentWindow.postMessage({themeMode:p},"*"),v.contentWindow.postMessage({lang:d.language},"*")})}}else oe(r),o(t("加载首页内容失败..."));b(!0)};return m.useEffect(()=>{(async()=>{const c=localStorage.getItem("notice_close_date"),r=new Date().toDateString();if(c!==r)try{const n=await k.get("/api/notice"),{success:j,data:v}=n.data;j&&v&&v.trim()!==""&&g(!0)}catch(n){console.error("获取公告失败:",n)}})()},[]),m.useEffect(()=>{x().then()},[]),s&&a!==""?e.jsx("div",{className:"w-full overflow-x-hidden",children:a.startsWith("https://")?e.jsx("iframe",{src:a,className:"h-screen w-full border-none"}):e.jsx("div",{className:"mt-[60px]",dangerouslySetInnerHTML:{__html:a}})}):e.jsxs("div",{className:"home-snap-container",children:[e.jsx(ae,{visible:h,onClose:()=>g(!1),isMobile:f}),e.jsx(le,{}),e.jsx("section",{className:"home-snap-section home-snap-section-pricing bg-[var(--semi-color-bg-0)]",children:e.jsx("div",{className:"mx-auto w-full max-w-6xl px-5 py-16 md:px-6 lg:px-8",children:e.jsx(ie,{t})})}),e.jsx(ne,{})]})};export{Ne as default};