import{r as d,j as e}from"./jsx-runtime-CgWCn3gT.js";import{bm as Vt,F as ls,bp as ds,q as je,s as Ne,bq as jt,bg as he,br as us,bs as ms,bi as ps,bt as hs,bu as Nt,bv as gs,bw as Ue,bx as fs,at as bs,by as $e,bz as ys,bA as xs,bB as As,b7 as vs,bC as ws,bD as js,bE as qt,bF as Ns,bG as Cs,bH as Es,bI as Ss,bJ as ks,bK as Is,bL as Ls,bM as Ts,bN as Bs,bO as Rs,bP as Ps,bQ as Us,bj as Gt,bR as Qs,bS as Ds,bT as Ms,bU as Os,bV as Fs,bW as Hs,bX as zs,bY as Ys,bZ as Vs,b_ as qs,b$ as Gs,c0 as Ks,c1 as ot,bk as Zs,c2 as Ws,c3 as Js,c4 as Xs,c5 as _s,c6 as $s,c7 as ea,c8 as ta,c9 as sa,ca as aa,cb as na,cc as ia,cd as oa,r as ra,ce as Ct,cf as Et,cg as Kt,ch as ca,aV as la,ci as da,cj as ua,ck as ma,cl as pa,cm as ha,be as Zt}from"./legacy-shell-D4JdMu14.js";import{r as ga}from"./modelCount-CKhxfxhQ.js";import"./i18nInstance-C_7vXBXC.js";import{b as fa,a as ba,d as ya,c as xa,S as Aa,g as va,e as wa,f as ja}from"./pi-CGFsP8D8.js";import{u as Wt}from"./useTranslation-CksCcIr-.js";import{s as Na}from"./index-D78fFI5F.js";import"./index-ao6ir_VS.js";import"./preload-helper-BXl3LOEh.js";var Ca={};function Ea(t=""){return t.split(";").some(s=>{const[o,r]=s.trim().split("="),u=Number(r);return/^__client_uat(?:_.+)?$/.test(o)&&Number.isFinite(u)&&u>0})}const Sa=()=>({enabled:Ca.REACT_APP_CLERK_IS_SATELLITE==="true",consoleDomain:"https://console.aihubmix.com",href:typeof window>"u"?"":window.location.href,cookie:typeof document>"u"?"":document.cookie});function ka({enabled:t,consoleDomain:s,href:o}){if(!t)return null;try{const r=new URL(o),u=new URL(s);return!/^https?:$/.test(r.protocol)||!/^https?:$/.test(u.protocol)||u.username||u.password||u.origin===r.origin?null:{current:r,primary:u}}catch{return null}}const Ia=typeof window>"u"?null:new URL(window.location.href);typeof document<"u"&&Ea(document.cookie),Ia?.searchParams.get("__ah_auth_sync");const La=new Set(["redirect_url","after_sign_in_url","after_sign_up_url","sign_in_force_redirect_url","sign_in_fallback_redirect_url","sign_up_force_redirect_url","sign_up_fallback_redirect_url"]);function Ta(t){return[...t.keys()].forEach(s=>{(s.startsWith("__clerk_")||s==="__ah_auth_sync"||La.has(s))&&t.delete(s)}),t}function Ba(t){const s=new URL(t);return Ta(s.searchParams),s}function Ra(t=Sa()){const s=ka(t);if(!s)return null;const o=Ba(s.current.href);o.searchParams.set("__ah_auth_sync","1");const r=new URL("/sign-in",s.primary);return r.searchParams.set("__clerk_satellite_url",o.href),r.href}const Pa="clerk-session-recovery-attempted";function Ua(){try{sessionStorage.setItem(Pa,"1")}catch{}}function Qa(t){Ua(),window.location.assign(t)}const Da=t=>d.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64",...t},d.createElement("rect",{width:64,height:64,rx:14,fill:"#000"}),d.createElement("path",{d:"M32 16 50 48H14L32 16Z",fill:"#fff"})),Ma="/static/camel-CzHeS4i_.png",Oa="/static/cc-switch-BPrI77SG.png",Fa="data:image/png;base64,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",Ha="/static/cherry-studio-CEtucmLc.png",za="/static/crush-DzOq7bbd.png",Ya="data:image/png;base64,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",Va="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAIAAABt+uBvAAAD4ElEQVR4nOycTU8TTxjA23+3+Veo2R6IJcFYTi16oAl4oykGQwi9eEFijPGk3wBOUC/IqfIFKFESPeknoBUJJBwshvjCwVYSaQKx5SXsRl4qxZdDEw7tPPMwu9st3T6/40ye2Se/dHZm56XSyfEdGwHzX60TuOiQIAQShECCEEgQAglCIEEIJAiBBCGQIAQShECCEEgQAglCIEEIkmhALl9IpfaZVZFBrySBxtPpn+nMQWW5LDt7wy3MkMWlXVUt8vPp6vJcbbuEZa0dYUGp1P7QcIpZtf0j4vGAgl6/2ZqYTFeWBzvllfe3mCEjo2ufPqv8fHy+puRcT7uvCUtcI3XfxbLZo/6B5Y3sUZXar3tB1XZkBUFVdWQRQdVzZB1BJUf37q8Y26alBNlstr29E2MbtJogwxGeB5nJwnzo9PQvsyr2LBObWjchByMF+TuSnFqv9/8vH/u8Xld5BpIdCnG7wfRcLoemHIUxUpDC/SxQ1OLQcCo519PaWu7oImPqOyidOegfWM7lCmY+VCdmv6TrzlENRrH6clSbYb6OHNVsHlQvjmo5UawLR0YO85MTN1wu0PhcYjuR3C4rTGcOHjz88DYRMjANYzFS0ONH7R6PE6pVlGKlIJvNpqqnUMh0fCOfZ/++Fpd2oadMPP0KNTh8ty0QuAzVMrnQnxrxmQ10ybUMVS0yF3ZLBIOyqCD6WEUgQQgkCIEEIZAgBBKEIDzMy7Iz2Cmz24KXvkoLZszAgN8NhXCqtCHL4DQNwk53NfhQF0MgQQgkCIEEIZAgBBKEQIIQhCeKi0u7I6NrzKqF+RBnL3Q6/j0+k60sD/jdr17eFMoBaqqMZrdj9nm3ztN5woJUtQgtYkH76CXy+V+iq1/6m+ofWNZ5gtHiXUz/qSqLC9LvyPqCdDpqCEFnjja3jkUDG0VQydHqqiIa1UCCtGHevlg43BJllVeeOTuDs3EYHQtAUYXCn9jUN21JVmKeoN5wC3RpBQLaOIyOBaLjHVCUohQNFERdDIEEIZAgBBKEQIIQSBACCUIgQQiGXkVQkBvK7AwkO2cdkkmh8JvzLEUpeoAtZoeDtznOTk80gIP/Ou8yCwTn1jNEbGqdc9VHlp07uYiGTJhQF0MQFtTcbNI9JJOfBSEs6HbflXH4S9pYZl90+65V8V8VzoOWLvZkvMMcR+2+pmQiVFtHGt9BjeNI+0u6QRzpGsUawZEBR/Dm3+0cHoL3LVA4f49TxubW8XlW3SXJHhls1ZxPGXRGEYEmiggkCIEEIZAgBBKEQIIQSBACCUIgQQgkCIEEIZAgBBKEQIIQSBDCvwAAAP//48RV15SrIN0AAAAASUVORK5CYII=",qa="data:image/png;base64,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",Ga="/static/librechat-B_E0ZJlu.png",Ka=t=>d.createElement("svg",{width:600,height:600,viewBox:"0 0 600 600",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},d.createElement("rect",{width:600,height:600,fill:"black"}),d.createElement("path",{d:"M176.04 397C174.162 397 172.473 396.347 170.971 395.04C169.657 393.733 169 392.053 169 390V208C169 205.947 169.657 204.267 170.971 202.96C172.473 201.653 174.162 201 176.04 201H202.228C205.044 201 207.109 201.747 208.423 203.24C209.924 204.733 210.957 205.853 211.52 206.6L263.333 301.52L315.709 206.6C316.084 205.853 316.929 204.733 318.243 203.24C319.745 201.747 321.904 201 324.719 201H350.907C352.972 201 354.662 201.653 355.976 202.96C357.29 204.267 357.947 205.947 357.947 208V390C357.947 392.053 357.29 393.733 355.976 395.04C354.662 396.347 352.972 397 350.907 397H322.185C320.308 397 318.712 396.347 317.398 395.04C316.084 393.733 315.427 392.053 315.427 390V276.88L279.665 343.52C278.726 345.2 277.506 346.693 276.004 348C274.503 349.307 272.531 349.96 270.091 349.96H256.856C254.416 349.96 252.445 349.307 250.943 348C249.441 346.693 248.221 345.2 247.282 343.52L211.52 276.88V390C211.52 392.053 210.863 393.733 209.549 395.04C208.235 396.347 206.639 397 204.762 397H176.04Z",fill:"white"}),d.createElement("path",{d:"M392.422 397C390.357 397 388.668 396.347 387.354 395.04C386.039 393.733 385.382 392.053 385.382 390V358.64C385.382 356.587 386.039 354.907 387.354 353.6C388.668 352.293 390.357 351.64 392.422 351.64H423.96C426.025 351.64 427.715 352.293 429.029 353.6C430.343 354.907 431 356.587 431 358.64V390C431 392.053 430.343 393.733 429.029 395.04C427.715 396.347 426.025 397 423.96 397H392.422Z",fill:"white"})),Za="/static/litellm-DTX0R3KV.png",Wa="/static/lobehub-pJ_Ir45m.png",Ja="data:image/png;base64,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",Xa="/static/obsidian-Di8zTHG6.png",_a="data:image/png;base64,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",$a="/static/open-webui-xr3MWn-S.png",en="2026-10-10",lt=[{id:"coding",subs:[{id:"cli"},{id:"ide"}]},{id:"agents",subs:[]},{id:"clients",subs:[{id:"app"},{id:"productivity"}]},{id:"devtools",subs:[]},{id:"creative",subs:[]}],tn=3,rt={builtin:{rank:0,icon:"ShieldCheckLine",tone:"accent"},plugin:{rank:0,icon:"Puzzle2Line",tone:"accent"},package:{rank:1,icon:"Box3Line",tone:"neutral"},compatible:{rank:2,icon:"LinksLine",tone:"neutral"}},Ce=[{slug:"hermes-agent",name:"Hermes Agent",Svg:fa,plate:!0,cat:"agents",tags:["cli"],integ:"compatible",featured:1,accent:"teal",heat:{type:"star",value:252339},proto:"OpenAI / Anthropic",guide:"api/hermes-agent-ai-hubmix",site:"https://hermes-agent.nousresearch.com"},{slug:"opencode",name:"OpenCode",Svg:ba,plate:!0,cat:"coding",sub:"cli",integ:"builtin",heat:{type:"star",value:212442},proto:"OpenAI",guide:"api/Opencode",site:"https://opencode.ai"},{slug:"dify",name:"Dify",logo:ya,plate:!0,cat:"agents",integ:"plugin",featured:3,accent:"blue",heat:{type:"install",value:42806},heat2:{type:"star",value:158051},proto:"OpenAI / Anthropic / Gemini",guide:"api/Dify-plugin",site:"https://dify.ai"},{slug:"cline",name:"Cline",Svg:xa,cat:"coding",sub:"ide",integ:"builtin",heat:{type:"star",value:70091},proto:"OpenAI",guide:"clients/Cline",site:"https://cline.bot"},{slug:"cc-switch",name:"cc-switch",logo:Oa,cat:"devtools",integ:"builtin",heat:{type:"star",value:142113},guide:"api/cc-switch",site:"https://github.com/farion1231/cc-switch"},{slug:"pi",name:"Pi",Svg:Aa,plate:!0,cat:"coding",sub:"cli",integ:"package",heat:{type:"star",value:113885},site:"https://github.com/earendil-works/pi"},{slug:"open-design",name:"Open Design",logo:_a,cat:"creative",integ:"compatible",heat:{type:"star",value:100273},guide:"clients/Open-Design",site:"https://github.com/nexu-io/open-design"},{slug:"lobehub",name:"LobeHub",logo:Wa,cat:"clients",sub:"app",integ:"builtin",heat:{type:"star",value:83093},guide:{cn:"clients/lobe-hub",default:"clients/using-lobehub"},site:"https://lobehub.com"},{slug:"litellm",name:"LiteLLM",logo:Za,cat:"devtools",integ:"compatible",heat:{type:"star",value:60785},guide:{cn:"clients/LiteLLM",default:"clients/using-lite-llm"},site:"https://litellm.ai"},{slug:"cherry-studio",name:"Cherry Studio",logo:Ha,cat:"clients",sub:"app",integ:"builtin",heat:{type:"star",value:52503},guide:"clients/Cherry-Studio",site:"https://cherry-ai.com"},{slug:"crush",name:"Crush",logo:za,cat:"coding",sub:"cli",integ:"builtin",heat:{type:"star",value:28580},guide:"api/Crush",site:"https://github.com/charmbracelet/crush"},{slug:"kilo-code",name:"Kilo Code",logo:Va,cat:"coding",sub:"ide",integ:"builtin",heat:{type:"star",value:27544},guide:"api/Kilo-Code",site:"https://kilocode.ai"},{slug:"camel",name:"CAMEL",logo:Ma,cat:"agents",integ:"compatible",heat:{type:"star",value:17844},site:"https://www.camel-ai.org"},{slug:"models-dev",name:"models.dev",Svg:Ka,cat:"devtools",integ:"builtin",featured:2,accent:"violet",heat:{type:"star",value:7173},site:"https://models.dev"},{slug:"ai-sdk",name:"Vercel AI SDK",Svg:Da,cat:"devtools",integ:"package",featured:4,accent:"orange",heat:{type:"npm",value:144470},guide:"api/AISDK",site:"https://www.npmjs.com/package/@aihubmix/ai-sdk-provider"},{slug:"claude-code",name:"Claude Code",logo:va,cat:"coding",sub:"cli",integ:"compatible",guide:"api/Claude-Code",site:"https://www.anthropic.com/claude-code"},{slug:"codex",name:"Codex",logo:wa,cat:"coding",sub:"cli",integ:"compatible",guide:"api/Codex-CLI",site:"https://openai.com/codex"},{slug:"cursor",name:"Cursor",logo:ja,cat:"coding",sub:"ide",integ:"compatible",guide:"clients/Cursor",site:"https://cursor.com"},{slug:"n8n",name:"n8n",logo:Ja,cat:"agents",integ:"compatible",guide:"clients/N8N",site:"https://n8n.io"},{slug:"open-webui",name:"Open WebUI",logo:$a,cat:"clients",sub:"app",integ:"compatible",guide:"clients/Open-WebUI",site:"https://openwebui.com"},{slug:"librechat",name:"LibreChat",logo:Ga,cat:"clients",sub:"app",integ:"compatible",guide:"clients/LibreChat",site:"https://librechat.ai"},{slug:"chatbox",name:"Chatbox",logo:Fa,cat:"clients",sub:"app",integ:"compatible",guide:"clients/ChatBox",site:"https://chatboxai.app"},{slug:"immersive-translate",name:"Immersive Translate",names:{zh:"沉浸式翻译","zh-TW":"沉浸式翻譯"},logo:Ya,cat:"clients",sub:"productivity",integ:"compatible",guide:"clients/Immersive-Translate",site:"https://immersivetranslate.com"},{slug:"obsidian",name:"Obsidian",logo:Xa,cat:"clients",sub:"productivity",integ:"compatible",guide:"clients/Obsidian",site:"https://obsidian.md"},{slug:"langchain",name:"LangChain",logo:qa,cat:"devtools",integ:"compatible",guide:"clients/LangChain",site:"https://langchain.com"}],St=[{id:"t1"},{id:"t2"},{id:"t3"},{id:"t4"}];function Oe(t,s){const o=typeof document<"u"&&document.getElementById(s);if(!o)return;t.preventDefault();const r=window.matchMedia?.("(prefers-reduced-motion: reduce)").matches;o.scrollIntoView({behavior:r?"auto":"smooth",block:"start"}),window.history.replaceState(null,"",`#${s}`)}const Be=(t="en")=>{const s=String(t).toLowerCase();return/^zh[-_](hant|tw|hk|mo)/.test(s)?"zh-TW":s.startsWith("zh")?"zh":s.split(/[-_]/)[0]||"en"},sn={en:"en-US",zh:"zh-CN",pt:"pt-BR"},Se=t=>sn[Be(t)]||Be(t);function kt(t,s){const o=Be(s);return o==="zh"?t>=1e4?`${(t/1e4).toFixed(1).replace(/\.0$/,"")} 万`:t.toLocaleString("zh-CN"):o==="en"?t>=1e6?`${(t/1e6).toFixed(1).replace(/\.0$/,"")}M`:t>=1e3?`${(t/1e3).toFixed(t>=1e5?0:1).replace(/\.0$/,"")}k`:String(t):new Intl.NumberFormat(Se(s),{notation:"compact",maximumFractionDigits:t>=1e5&&t<1e6?0:1}).format(t)}const Jt=t=>{if(t instanceof Date)return t;if(typeof t=="number")return new Date(t<1e12?t*1e3:t);const s=/^(\d{4})-(\d{2})-(\d{2})$/.exec(t||"");return s?new Date(+s[1],s[2]-1,+s[3]):new Date(t)};function Xt(t,s){const o=Jt(t);return Number.isNaN(o.getTime())?"":new Intl.DateTimeFormat(Se(s),{dateStyle:"medium"}).format(o)}function an(t,s){const o=Jt(t);return Number.isNaN(o.getTime())?"":new Intl.DateTimeFormat(Se(s),{dateStyle:"medium",timeStyle:"short"}).format(o)}const nn={zh:40,"zh-TW":40,ja:40,ko:50},It=t=>nn[Be(t)]||100,Lt=!1,Qe="ecosystem-apply-draft",on=/^[a-zA-Z0-9][a-zA-Z0-9-_.]*(\.[a-zA-Z0-9][a-zA-Z0-9-_.]*)+(\/.*)?$/,et={1:["name","url","type","desc","logo"],2:["usage"]},rn=50*1024,cn=["image/png","image/webp"],He=t=>t.replace(/^https?:\/\//i,""),ie=(t="")=>({name:"",url:"",type:"",desc:"",usage:"",email:t,status:"",repo:"",im:"",listed:!0,logo:"",logoName:""}),Ee=t=>({id:t.id,revision:t.revision,status:t.status,name:t.app_name||"",url:He(t.app_url||""),type:t.category||"",desc:t.description||"",usage:t.monthly_spend||"",email:t.contact_email||"",im:t.other_contact||"",logo:t.icon_url||"",listed:t.listed!==!1,listingState:t.listing_state,appCode:t.app_code||null,reason:t.reject_reason||"",time:t.created_at||""}),ze=(t="")=>He(t.trim()),dt=t=>{try{return JSON.parse(t.submission?.fingerprint||"null")}catch{return null}},ln=(t,s)=>{if(!t?.key)return!1;try{const o=JSON.parse(t.fingerprint);if(!o||Array.isArray(o)||typeof o!="object")return!1;delete o.contact_email;const r=JSON.parse(JSON.stringify(s)),u=Object.keys(r);return Object.keys(o).length===u.length&&u.every(n=>o[n]===r[n])}catch{return!1}},tt=(t,s)=>{const o=dt(s),r=s.resolvedApplicationId||o?.id||s.id,u=ze(o?.app_url||s.url);return t.find(n=>r?n.id===r:ze(n.url)===u)},st=(t,s)=>{const o=dt(s);return!t?.id||!o?!1:s.resolvedApplicationId===t.id||!o.id||t.revision>o.revision||t.status!=="rejected"},dn=["name","url","type","desc","usage","email","im","logo","listed"],Tt=(t,s)=>s==="url"?ze(t[s]):typeof t[s]=="string"?t[s].trim():t[s],un=(t,s)=>{const o=Ee(dt(t)||{});return Object.fromEntries(dn.filter(r=>r==="logo"&&t.logo===o.logo?!1:Tt(t,r)!==Tt(s,r)).map(r=>[r,t[r]]))},De={legacy:{name:"NoteForge",url:"noteforge.app"}},mn=({catLabel:t,onStateChange:s})=>{const{t:o,i18n:r}=Wt(),u=Vt(r.language),n=(i,c)=>o(`ecosystemPage.${i}`,{brand:u,...c}),p=ls(),{isLoaded:P,isSignedIn:q,displayEmail:D,accountId:Z}=ds(),O=P&&q,C=D||"",Y=Z||C,[k,y]=d.useState("loading"),[m,f]=d.useState(ie()),[w,L]=d.useState({}),[F,v]=d.useState(null),[j,K]=d.useState(!1),[te,J]=d.useState(!1),[E,G]=d.useState(1),[H,ye]=d.useState("forward"),[M,W]=d.useState(null),[oe,_]=d.useState([]),[,re]=d.useState(null),[V,ce]=d.useState(null),[xe,le]=d.useState(!1),[ge,ue]=d.useState(!1),[x,b]=d.useState("live"),[A,B]=d.useState(!1),[I,R]=d.useState(0),U=d.useRef(!1);d.useRef(!1);const $=d.useRef(null),a=d.useRef(null),g=d.useRef(0),S=d.useRef(!1),z=d.useRef(!1),ee=d.useRef(null),X=d.useRef(0),[fe,ut]=d.useState(0),[es,mt]=d.useState(Date.now()),Ve=Math.max(0,Math.ceil((fe-es)/1e3));d.useEffect(()=>{X.current+=1,ee.current=null,S.current=!1,z.current=!1,K(!1),_([]),re(null),W(null),f(ie(O?C:"")),G(1),L({}),v(null),J(!1)},[O,Y]),d.useEffect(()=>{if(!fe)return;const i=setInterval(()=>{const c=Date.now();mt(c),c>=fe&&ut(0)},1e3);return()=>clearInterval(i)},[fe]);const pt=Lt;d.useEffect(()=>{const i=k==="applications"?oe[0]||null:k==="form"||k==="loading"?m:k==="legacy"||k==="sunset"?{name:V?.name||De.legacy.name,url:V?.url||De.legacy.url}:M||m;s?.({view:k,data:i})},[k,m,M,V,oe,s]);const me=!O||te,ht=()=>{Ae();const i=Ra();if(i){Qa(i);return}p("/sign-in?redirect=/ecosystem%23apply",void 0,"ecosystem_signin_prompt")};d.useEffect(()=>{},[]),d.useEffect(()=>{if(!P&&!O){y("loading");return}if(!O){_([]),W(null),ee.current=null,f(c=>({...c,email:c.email||""})),y("form");return}let i=!0;return y("loading"),v(null),Promise.allSettled([je.get(Ne.PARTNER_APPLICATION,{skipErrorToast:!0,params:{all:!0}}),je.get(Ne.APP_LIST,{skipErrorToast:!0})]).then(([c,h])=>{if(!i)return;if(c.status==="rejected"&&c.reason?.response?.status===401){J(!0),y("form");return}const l=c.status==="fulfilled"?c.value.data?.data:null,T=h.status==="fulfilled"?h.value.data?.data?.[0]:null;if(c.status==="rejected"||c.value.data?.success!==!0){v("load"),y("error");return}const Q=ts();if(Array.isArray(l)){const N=l.map(Ee);_(N);const se=new URLSearchParams(window.location.search).get("new")==="1";if(se){const ne=new URL(window.location.href);ne.searchParams.delete("new"),window.history.replaceState(window.history.state,"",ne)}if(se&&(!Q||Q.id)){W(null),f(ie(C)),G(1),y("form");return}const ae=Q&&tt(N,Q);if(Q&&ae&&(Q.id||st(ae,Q))){qe(ae,Q);return}if(Q?.id){v("load"),y("error");return}if(Q){f({...ie(C),...Q}),G(2),v("restored"),y("form");return}if(N.length===1){W(N[0]),y(N[0].status);return}if(N.length){y("applications");return}}if(l?.status){const N=Ee(l);_([N]),W(N),y(l.status);return}if(T?.code){ce({code:T.code,name:T.app_name,url:He(T.app_url||""),endAt:(T.discount_end_at||"").slice(0,10)}),y(T.discount_end_at?"sunset":"legacy");return}f(N=>Q?{...ie(C),...Q}:N.name||N.url||N.desc||N.logo?N:ie(C)),Q&&G(2),v(Q?"restored":null),y("form")}),()=>{i=!1}},[pt,x,P,O,Y,I]),d.useEffect(()=>{(k==="pending"||k==="approved"||k==="rejected")&&a.current?.focus?.({preventScroll:!0})},[k]);const ts=()=>{try{const i=sessionStorage.getItem(Qe),c=i?JSON.parse(i):null;if(!c)return null;if(c.ownerId)return c.ownerId===Z?c:null;if(c.ownerEmail&&c.ownerEmail!==C)return null;if(Z){c.ownerId=Z;try{sessionStorage.setItem(Qe,JSON.stringify(c))}catch{}}return c}catch{return null}},gt=()=>{try{sessionStorage.removeItem(Qe)}catch{}ee.current=null,re(null),f(ie(C))},Ae=(i=m)=>{if(!(!i.name&&!i.url&&!i.logo&&!i.desc))try{sessionStorage.setItem(Qe,JSON.stringify({...i,ownerId:Z||void 0,ownerEmail:C}))}catch{}},qe=(i,c)=>{const h=un(c,i);Ae({...c,resolvedApplicationId:i.id}),ee.current=null,re({id:i.id,changes:h}),f(ie(C)),W(i),y(i.status)},de=(i,c)=>{U.current||(U.current=!0,he("ecosystem_apply_start",{signed_in:!me})),f(h=>({...h,[i]:i==="url"?He(c):c})),w[i]&&L(h=>{const l={...h};return delete l[i],l})},ss=i=>{if(!i||j)return;const c=++g.current;if(!cn.includes(i.type)||i.size>rn||!i.size){f(l=>({...l,logo:"",logoName:""})),L(l=>({...l,logo:n("err.logo")}));return}f(l=>({...l,logo:"",logoName:""}));const h=new FileReader;h.onload=()=>{c===g.current&&(de("logo",h.result),de("logoName",i.name))},h.onerror=()=>{c===g.current&&(f(l=>({...l,logo:"",logoName:""})),L(l=>({...l,logo:n("err.logo")})))},h.readAsDataURL(i)},Ge=(i,c)=>{const h={},l=It(r.language);return i.name.trim().length<2&&(h.name=n("err.required")),i.url.trim()?on.test(i.url.trim())||(h.url=n("err.url")):h.url=n("err.required"),i.type||(h.type=n("err.select")),i.desc.trim()?[...i.desc.trim()].length>l&&(h.desc=n("err.desc",{max:l})):h.desc=n("err.required"),i.logo||(h.logo=n("err.required")),i.usage||(h.usage=n("err.select")),c?Object.fromEntries(Object.entries(h).filter(([T])=>et[c].includes(T))):h},ft=i=>{j||(ye(i>E?"forward":"back"),G(i),v(c=>c==="restored"?c:null),setTimeout(()=>Ke(et[i][0]),0))},bt=(i,c)=>{L(i),c!==E&&(ye("back"),G(c)),setTimeout(()=>Ke(et[c].find(h=>i[h])),0),ue(!0),setTimeout(()=>ue(!1),400)},Ke=i=>{const c=$.current?.querySelector(i==="usage"?'input[name="usage"]':`#eco-f-${i}`);c?.focus({preventScroll:!0});const h=c?.closest(".form-body");if(h){const l=c.getBoundingClientRect(),T=h.getBoundingClientRect();l.top<T.top?h.scrollTop+=l.top-T.top:l.bottom>T.bottom&&(h.scrollTop+=l.bottom-T.bottom)}},as=async i=>{if(i.preventDefault(),S.current||j||Date.now()<fe)return;if(E===1){const N=Ge(m,1);if(Object.keys(N).length){bt(N,1);return}L({}),ft(2);return}const c=Ge(m);if(v(null),Object.keys(c).length){bt(c,Object.keys(Ge(m,1)).length?1:2);return}if(L({}),me){Ae(),he("ecosystem_apply_login_gate"),ht();return}const h=X.current;S.current=!0,K(!0);const l={...m.id?{id:m.id,revision:m.revision}:{},app_name:m.name.trim(),app_url:`https://${ze(m.url)}`,category:m.type,description:m.desc.trim(),monthly_spend:m.usage,other_contact:m.im.trim()||void 0,listed:m.listed,locale:r.language},T=new Date().toISOString(),Ie=g.current;let Q=m;try{let N;if(!pt){if(m.logo.startsWith("data:")){let Re;try{Re=await(await fetch(m.logo)).blob()}catch(Te){throw Object.assign(new Error(Te?.message||"Logo could not be read"),{business:!0})}if(h!==X.current)return;const wt=new FormData;wt.append("file",Re,m.logoName||"logo.png");const Pe=await je.post(Ne.PARTNER_LOGO,wt,{skipErrorToast:!0,timeout:15e3});if(!Pe.data?.success||!Pe.data?.data?.url)throw Object.assign(new Error(Pe.data?.message||"Logo upload failed"),{business:!0});if(Ie!==g.current||h!==X.current)return;l.icon_url=Pe.data.data.url,f(Te=>Te.logo===m.logo?{...Te,logo:l.icon_url}:Te)}else l.icon_url=m.logo;const ae=JSON.stringify(l),ne=ee.current||m.submission,Le=ln(ne,l)?{...ne,fingerprint:ae}:{fingerprint:ae,key:[...crypto.getRandomValues(new Uint8Array(16))].map(Re=>Re.toString(16).padStart(2,"0")).join("")};ee.current=Le,Q={...m,logo:l.icon_url,submission:Le},f(Q),Ae(Q);const _e=await je.post(Ne.PARTNER_APPLICATION,l,{skipErrorToast:!0,timeout:15e3,headers:{"Idempotency-Key":Le.key}});if(!_e.data?.success)throw Object.assign(new Error(_e.data?.message||"Submission failed"),{business:!0});N=_e.data?.data}if(h!==X.current)return;he("ecosystem_apply_submit",{result:"success",monthly_spend:m.usage,category:m.type});const se=N?Ee(N):{...m,status:"pending",time:T};W(se),se.id&&_(ae=>[se,...ae.filter(ne=>ne.id!==se.id)]),gt(),y(se.status||"pending")}catch(N){if(h!==X.current)return;if(N?.response?.status===429){const ae=N.response.headers?.["retry-after"],ne=Number(ae),Le=Number.isFinite(ne)&&ne>0?ne*1e3:Math.max(1e3,Date.parse(ae)-Date.now())||6e4;mt(Date.now()),ut(Date.now()+Math.min(Le,1440*60*1e3)),v("rate");return}if(N?.response?.status===401){Ae(Q),J(!0),y("form");return}const se=!N?.business&&(N?.code==="ECONNABORTED"||!N?.response);he("ecosystem_apply_submit",{result:se?"unknown":"error"}),v(se?"timeout":`failed:${N.response?.data?.message||N.message||""}`)}finally{h===X.current&&(S.current=!1,K(!1))}},Ze=()=>{S.current||(gt(),W(null),f(ie(C)),L({}),v(null),G(1),y("form"))},ns=()=>{S.current||(k==="form"&&Ae(),L({}),v(null),y("applications"))},is=()=>{f({...ie(C),name:V?.name||De.legacy.name,url:V?.url||De.legacy.url}),L({}),v(null),G(1),y("form"),setTimeout(()=>Ke("type"),0)},yt=()=>{if(z.current)return;if(k==="error"){R(c=>c+1);return}y("loading"),z.current=!0;const i=X.current;je.get(Ne.PARTNER_APPLICATION,{skipErrorToast:!0,params:{all:!0}}).then(c=>{if(i!==X.current)return;if(c.data?.success!==!0)throw new Error(c.data?.message||"Failed to load application");const h=c.data?.data;if(Array.isArray(h)){const l=h.map(Ee);_(l);const T=tt(l,m);T?st(T,m)?qe(T,m):(W(T),y(T.status)):y("form"),v(null);return}if(h?.status){const l=Ee(h);tt([l],m)&&st(l,m)?qe(l,m):(W(l),y(h.status))}else y("form");v(null)}).catch(c=>{if(i===X.current){if(c?.response?.status===401){J(!0),y("form");return}y("error"),v("load")}}).finally(()=>{i===X.current&&(z.current=!1)})},os=i=>{bs(i).then(()=>{le(!0),Na.success(n("status.copied")),setTimeout(()=>le(!1),1500)})},be=i=>`eco-f-${i}-err`,xt=i=>e.jsx("p",{className:"ds-error field-error",id:be(i),hidden:!w[i],children:w[i]||""}),We=i=>{const c=St.some(l=>l.id===i.usage)?n(`form.tier.${i.usage}`):"—",h=[["name",i.name],["url",`https://${i.url}`],["type",t(i.type)],["usage",c],["public",i.listed?n("status.yes"):n("status.no")],["time",i.time&&an(i.time,r.language)]].filter(([,l])=>l);return e.jsx("dl",{className:"summary",children:h.map(([l,T])=>e.jsxs("div",{children:[e.jsx("dt",{children:n(`status.${l}`)}),e.jsx("dd",{children:T})]},l))})},At=oe.length>0&&!me&&!["applications","loading","error"].includes(k),Je=(i,c)=>e.jsxs("div",{className:"apply-card-head",children:[e.jsxs("div",{className:"application-heading",children:[At&&e.jsx("button",{type:"button",className:"ds-button ds-button-text back-to-applications",disabled:j,"aria-label":n("applications.back"),title:n("applications.back"),onClick:ns,children:e.jsx(fs,{className:"icon","aria-hidden":"true"})}),e.jsx("h3",{className:"card-title",children:i})]}),c]}),ke=({tone:i,Icon:c,title:h,body:l,extra:T,actions:Ie,centered:Q})=>e.jsxs("div",{className:"apply-view status-view",children:[At&&Je(n("applications.title"),e.jsx("button",{type:"button",className:"ds-button ds-button-secondary new-application",disabled:j,onClick:Ze,children:n("applications.new")})),e.jsxs("div",{className:`status-card${Q?" status-centered":""}`,children:[e.jsxs("div",{className:"status-head",children:[e.jsx("span",{className:`status-icon status-${i}`,children:e.jsx(c,{className:"icon","aria-hidden":"true"})}),e.jsx("h3",{className:"card-title",tabIndex:-1,ref:a,children:h})]}),l&&e.jsx("p",{className:"status-body",children:l}),T,Ie&&e.jsx("div",{className:"form-actions",children:Ie})]})]}),Xe=i=>e.jsxs("div",{className:"code-row",children:[e.jsx("code",{className:"code-value",children:i}),e.jsxs("button",{type:"button",className:"ds-button ds-button-secondary copy-btn",onClick:()=>os(i),children:[xe?e.jsx(ps,{className:"icon ds-icon-swap-in","aria-hidden":"true"}):e.jsx(hs,{className:"icon","aria-hidden":"true"}),e.jsx("span",{children:n("status.copy")})]})]}),vt=()=>F==="rate"?e.jsxs("div",{className:"notice notice-warn",role:"alert",children:[e.jsx(Nt,{className:"icon","aria-hidden":"true"}),e.jsx("span",{children:n(Ve?"applications.retry":"applications.retryReady",{seconds:Ve})})]}):F==="restored"?e.jsxs("div",{className:"notice notice-info",role:"status",children:[e.jsx(gs,{className:"icon","aria-hidden":"true"}),e.jsx("span",{children:n("form.restored")})]}):F==="timeout"?e.jsxs("div",{className:"notice notice-warn",role:"alert",children:[e.jsx(Ue,{className:"icon","aria-hidden":"true"}),e.jsx("span",{children:n("err.timeout")}),e.jsx("button",{type:"button",className:"ds-button ds-button-text notice-action",onClick:yt,children:n("err.refresh")})]}):F==="load"?e.jsxs("div",{className:"notice notice-warn",role:"alert",children:[e.jsx(Ue,{className:"icon","aria-hidden":"true"}),e.jsx("span",{children:n("err.load")}),e.jsx("button",{type:"button",className:"ds-button ds-button-text notice-action",onClick:yt,children:n("err.refresh")})]}):F?.startsWith("failed:")?e.jsxs("div",{className:"notice notice-error",role:"alert",children:[e.jsx(Ue,{className:"icon","aria-hidden":"true"}),e.jsx("span",{children:n("err.failed",{message:F.slice(7)})})]}):Object.keys(w).length?e.jsxs("div",{className:"notice notice-error",role:"alert",children:[e.jsx(Ue,{className:"icon","aria-hidden":"true"}),e.jsx("span",{children:n("err.summary")})]}):null,ve=(i,c,h,{required:l=!0}={})=>e.jsxs("div",{className:`field${w[i]?" has-error":""}`,children:[e.jsxs("label",{className:"field-label",htmlFor:`eco-f-${i}`,children:[c,l&&e.jsx("span",{className:"req","aria-hidden":"true",children:"*"})]}),h,xt(i)]}),rs=()=>{const i=It(r.language),c=[...m.desc].length,h=E===2;return e.jsxs("form",{className:`apply-view form-card${ge?" ds-shake":""}`,noValidate:!0,onSubmit:as,ref:$,inert:me||void 0,"aria-hidden":me||void 0,children:[Je(n("form.title"),e.jsxs("span",{className:"step-count","aria-label":n("form.stepOf",{step:E,total:2}),children:[e.jsx("span",{className:`step-bar${E>=1?" is-on":""}`}),e.jsx("span",{className:`step-bar${E>=2?" is-on":""}`}),E,"/2"]})),e.jsx("p",{className:"step-name",children:n(h?"form.step2":"form.step1")}),vt(),e.jsx("div",{className:`form-body ${H==="back"?"ds-enter-back":"ds-enter-forward"} ds-enter`,children:h?e.jsxs(e.Fragment,{children:[e.jsxs("fieldset",{className:`field${w.usage?" has-error":""}`,"aria-describedby":be("usage"),children:[e.jsxs("legend",{className:"field-label",children:[n("form.usage"),e.jsx("span",{className:"req","aria-hidden":"true",children:"*"})]}),e.jsx("div",{className:"radio-chips",children:St.map(l=>e.jsxs("label",{className:"radio-chip",children:[e.jsx("input",{type:"radio",name:"usage",value:l.id,checked:m.usage===l.id,disabled:j,onChange:()=>de("usage",l.id)}),e.jsx("span",{children:n(`form.tier.${l.id}`)})]},l.id))}),xt("usage")]}),e.jsxs("div",{className:"field",children:[e.jsx("span",{className:"field-label",children:n("form.email")}),e.jsx("p",{id:"eco-account-email",children:C||"—"})]}),ve("im",n("form.im"),e.jsx("input",{className:"ds-input",id:"eco-f-im",placeholder:n("form.imPh"),value:m.im,disabled:j,onChange:l=>de("im",l.target.value)}),{required:!1}),e.jsx("div",{className:"checks",children:e.jsxs("label",{className:"check",children:[e.jsx("input",{type:"checkbox",checked:m.listed,disabled:j,onChange:l=>de("listed",l.target.checked)}),e.jsx("span",{children:n("form.public")})]})})]}):e.jsxs(e.Fragment,{children:[ve("name",n("form.name"),e.jsx("input",{className:"ds-input",id:"eco-f-name",maxLength:40,autoComplete:"organization",placeholder:n("form.namePh"),value:m.name,disabled:j,onChange:l=>de("name",l.target.value),"aria-required":"true","aria-invalid":!!w.name,"aria-describedby":be("name")})),ve("url",n("form.url"),e.jsxs("div",{className:`input-affix${w.url?" is-invalid":""}`,children:[e.jsx("span",{className:"affix","aria-hidden":"true",children:"https://"}),e.jsx("input",{className:"ds-input",id:"eco-f-url",inputMode:"url",autoComplete:"url",placeholder:n("form.urlPh"),value:m.url,disabled:j,onChange:l=>de("url",l.target.value),"aria-required":"true","aria-invalid":!!w.url,"aria-describedby":be("url")})]})),ve("type",n("form.type"),e.jsxs("select",{className:"ds-select",id:"eco-f-type",value:m.type,disabled:j,onChange:l=>de("type",l.target.value),"aria-required":"true","aria-invalid":!!w.type,"aria-describedby":be("type"),children:[e.jsx("option",{value:"",disabled:!0,children:n("form.typePh")}),lt.map(l=>e.jsx("option",{value:l.id,children:t(l.id)},l.id)),e.jsx("option",{value:"other",children:n("browse.other")})]})),ve("desc",n("form.desc"),e.jsxs("div",{className:"counter-wrap",children:[e.jsx("input",{className:"ds-input",id:"eco-f-desc",placeholder:n("form.descPh"),value:m.desc,disabled:j,onChange:l=>de("desc",l.target.value),"aria-required":"true","aria-invalid":!!w.desc,"aria-describedby":`${be("desc")} eco-f-desc-count`}),e.jsxs("span",{className:`counter${c>i?" over":""}`,id:"eco-f-desc-count",children:[c,"/",i]})]})),ve("logo",n("form.logo"),e.jsxs("div",{className:"eco-logo-field",children:[e.jsx("input",{className:"sr-only eco-logo-input",id:"eco-f-logo",type:"file",accept:"image/png,image/webp",disabled:j,onChange:l=>{ss(l.target.files?.[0]),l.target.value=""},"aria-invalid":!!w.logo,"aria-describedby":`${be("logo")} eco-f-logo-hint`}),e.jsx("label",{className:"ds-button ds-button-secondary eco-logo-choose",htmlFor:"eco-f-logo",children:n("form.typePh")}),m.logoName&&e.jsx("span",{className:"eco-logo-filename",children:m.logoName}),m.logo&&e.jsx("img",{src:m.logo,alt:n("form.logo"),className:"eco-logo-preview"}),e.jsx("span",{className:"field-hint",id:"eco-f-logo-hint",children:n("form.logoHint")})]}))]})},E),e.jsxs("div",{className:"form-foot",children:[h?e.jsx("button",{type:"button",className:"ds-button ds-button-text",disabled:j,onClick:()=>ft(1),children:n("form.back")}):e.jsx("span",{}),e.jsx("button",{type:"submit",className:"ds-button ds-button-primary submit-btn",disabled:j||Ve>0,"aria-busy":j||void 0,"aria-disabled":j||void 0,children:h?j?e.jsxs(e.Fragment,{children:[e.jsx(ms,{className:"icon ds-spinner","aria-hidden":"true"}),e.jsx("span",{className:"ds-swap-in",children:n("form.submitting")})]}):e.jsxs(e.Fragment,{children:[me&&e.jsx(jt,{className:"icon","aria-hidden":"true"}),e.jsx("span",{children:n(me?"form.submitGuest":"form.submit")})]}):e.jsx("span",{children:n("form.next")})})]})]})},cs=()=>{const i=C||M?.email||"—";switch(k){case"applications":return e.jsxs("div",{className:"apply-view applications-card",children:[Je(n("applications.title"),e.jsx("button",{type:"button",className:"ds-button ds-button-primary new-application",onClick:Ze,children:n("applications.new")})),e.jsx("ul",{className:"application-list ds-list",children:oe.map(c=>e.jsx("li",{children:e.jsxs("button",{type:"button",className:"ds-list-item application-item",onClick:()=>{W(c),y(c.status)},children:[e.jsxs("span",{className:"application-identity",children:[e.jsx("strong",{children:c.name}),e.jsx("span",{children:c.url})]}),e.jsxs("span",{className:"application-status",children:[e.jsx("span",{className:`pill pill-${{approved:"ok",pending:"warn",rejected:"error"}[c.status]}`,children:n(`applications.${c.status}`)}),e.jsx(us,{className:"icon","aria-hidden":"true"})]})]})},c.id))})]});case"error":return e.jsx("div",{className:"apply-view status-card",children:vt()});case"loading":return e.jsxs("div",{className:"apply-view apply-loading","aria-busy":"true",children:[e.jsx("div",{className:"ds-skeleton"}),e.jsx("div",{className:"ds-skeleton"}),e.jsx("div",{className:"ds-skeleton"}),e.jsx("div",{className:"ds-skeleton"}),e.jsx("span",{className:"sr-only",children:n("form.loading")})]});case"pending":return ke({tone:"ok",Icon:$e,title:n("status.pendingTitle"),body:n("status.pendingBody",{email:i}),centered:!0,extra:M?.id?We(M):null});case"approved":return ke({tone:"ok",Icon:$e,title:n("status.approvedTitle"),body:n("status.approvedBody",{email:i}),extra:e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"listing-row",children:[e.jsx("span",{children:n("status.listing")}),e.jsx("span",{className:`pill${M.listed&&M.listingState==="展示中"?" pill-ok":""}`,children:M.listed&&M.listingState==="展示中"?n("status.listingOn"):n("status.listingOff")}),M.listed&&M.listingState==="展示中"&&e.jsx("a",{className:"ds-link",href:"#community",onClick:c=>Oe(c,"community"),children:n("status.view")})]}),M.appCode&&Xe(M.appCode.code),We(M)]})});case"rejected":return ke({tone:"error",Icon:ys,title:n("status.rejectedTitle"),extra:e.jsxs(e.Fragment,{children:[M.reason&&e.jsxs("div",{className:"reason",children:[e.jsx("p",{className:"reason-label",children:n("status.reason")}),e.jsx("p",{children:M.reason})]}),We(M)]})});case"legacy":return ke({tone:"ok",Icon:$e,title:n("status.legacyTitle"),body:n("status.legacyBody"),extra:Xe(V.code),actions:e.jsx("button",{type:"button",className:"ds-button ds-button-primary new-application",onClick:Ze,children:n("applications.new")})});case"sunset":return ke({tone:"warn",Icon:Nt,title:n("status.sunsetTitle",{date:Xt(V.endAt,r.language)}),body:n("status.sunsetBody"),extra:Xe(V.code),actions:e.jsx("button",{type:"button",className:"ds-button ds-button-primary",onClick:is,children:n("status.sunsetApply")})});default:return rs()}};return e.jsxs("div",{className:"apply-panel","aria-live":"polite",children:[Lt,e.jsx("div",{className:"ds-card apply-card application-frame",children:cs()}),me&&k==="form"&&e.jsx("div",{className:"apply-login-overlay",children:e.jsxs("div",{className:"apply-login-prompt",children:[e.jsx(jt,{className:"icon","aria-hidden":"true"}),e.jsx("h3",{className:"card-title",children:n("form.submitGuest")}),e.jsx("button",{type:"button",className:"ds-button ds-button-primary",onClick:()=>{he("ecosystem_apply_login_gate"),ht()},children:o("Login")})]})})]})},pn=[xs,As,vs,ws,js,qt,Ns,Cs,Es,Ss,ks,Is,Ls,Ts,Bs,Rs,Ps,Us,Gt,Qs,Ds,Ms,Os,Fs,Hs,zs,Ys,Vs,qs,Gs,Ks,ot,Zs,Ws,Js,Xs,_s,$s,ea,ta,sa,aa,na,ia],hn=t=>t({}).props.children.props.d,gn=30,pe=72,fn=26,Bt=23,Rt=26,bn=1,yn=.08,xn=9.9,Pt=1100,An=900,vn="3,8,10",wn="37,99,235",Me=t=>t*Math.PI/180,_t={side:{tilt:Me(44),yaw:Me(26),x:.5,y:.8,unit:(t,s)=>Math.max(.8,Math.min(t,s)/520)},back:{tilt:Me(26),yaw:Me(22),x:.72,y:.8,unit:(t,s)=>Math.min(1.1,Math.max(.85,s/700))}};Object.values(_t).forEach(t=>{Object.assign(t,{cosT:Math.cos(t.tilt),sinT:Math.sin(t.tilt),cosY:Math.cos(t.yaw),sinY:Math.sin(t.yaw)})});const jn="(max-width: 1023px)",Nn=t=>()=>{t|=0,t=t+1831565813|0;let s=Math.imul(t^t>>>15,1|t);return s=s+Math.imul(s^s>>>7,61|s)^s,((s^s>>>14)>>>0)/4294967296},Cn=({label:t})=>{const s=d.useRef(null),o=d.useRef(null),r=d.useRef(null);return d.useEffect(()=>{const u=s.current,n=o.current,p=r.current;if(!u||!n||!p||typeof IntersectionObserver>"u")return;const P=n.getContext("2d"),q=p.getContext("2d");if(!P||!q||typeof Path2D>"u")return;const D=window.matchMedia?.("(prefers-reduced-motion: reduce)").matches,Z=window.matchMedia?.("(hover: hover)").matches,O=window.matchMedia?.(jn),C=pn.map(x=>new Path2D(hn(x))),Y=Nn(11),k=[];for(let x=0;x<Rt;x++)for(let b=0;b<Bt;b++)Y()>bn||k.push({u:(b-(Bt-1)/2+(x%2?.5:0))*pe+(Y()-.5)*pe*.08,v:x*pe+(Y()-.5)*pe*.08,icon:Math.floor(Y()*C.length),prev:-1,swapAt:-1e9,blue:Y()<yn,tone:.75+Y()*.25});const y=Rt*pe;let m=0,f=0,w=1,L=0,F=Pt,v={x:0,y:0,w:1,h:1},j=!1,K=D,te=[],J=!1,E=0,G=0;const H={x:-1e4,y:-1e4,k:0,on:!1},ye=()=>{const x=n.getBoundingClientRect(),b=u.getBoundingClientRect();j=!!O?.matches,K=D||j,v={x:b.left-x.left,y:b.top-x.top,w:b.width,h:b.height};const A=j?u.closest(".hero")?.querySelectorAll(".hero-copy > *"):null;te=A?[...A].map(R=>{const U=R.getBoundingClientRect();return{l:U.left-x.left-10,t:U.top-x.top-8,r:U.right-x.left+10,b:U.bottom-x.top+8}}):[];const B=Math.round(x.width),I=Math.round(x.height);return!B||!I?!1:((B!==m||I!==f)&&(m=B,f=I,w=Math.min(2,window.devicePixelRatio||1),[n,p].forEach(R=>{R.width=Math.round(m*w),R.height=Math.round(f*w)})),!0)},M=(x,b)=>{const A=_t[j?"back":"side"],B=A.unit(v.w,v.h),I=x,R=-b*A.cosT,U=b*A.sinT,$=I*A.cosY+U*A.sinY,a=-I*A.sinY+U*A.cosY,g=400,S=g+a+30;if(S<120)return null;const z=g/S;return{x:v.x+v.w*A.x+$*z*B,y:v.y+v.h*A.y+R*z*B,s:z*B,z:S}},W=(x,b,A)=>te.some(B=>x+A>B.l&&x-A<B.r&&b+A>B.t&&b-A<B.b),oe=()=>{if(!m)return;[P,q].forEach(A=>{A.setTransform(1,0,0,1,0,0),A.clearRect(0,0,n.width,n.height)});const x=K?0:L/1e3*xn;H.k+=((H.on?1:0)-H.k)*.12;const b=[];k.forEach(A=>{const B=((A.v-x)%y+y)%y-pe,I=M(A.u,B);if(!I)return;const R=fn*I.s;if(R<8||I.x<-R||I.x>m+R||I.y<-R||I.y>f+R)return;const U=Math.min(1,Math.max(0,(I.s-(j?.2:.32))/.55)),$=Math.min(1,(B+pe)/(pe*1.8));let a=(A.blue?.9:.62*A.tone)*U*$,g=$<.7||!j&&U<.36;if(j&&W(I.x,I.y,R/2)&&(g=!0,a*=.4),H.k>.01){const S=Math.hypot(I.x-H.x,I.y-H.y);S<120&&(a=Math.min(1,a+(1-S/120)**2*.3*H.k))}a>.01&&b.push({cell:A,p:I,size:R,a,c:g?q:P})}),b.sort((A,B)=>B.p.z-A.p.z),b.forEach(({cell:A,p:B,size:I,a:R,c:U})=>{const $=A.blue?wn:vn,a=Math.min(1,Math.max(0,(L-A.swapAt)/An)),g=I/24*w;U.setTransform(g,0,0,g,(B.x-I/2)*w,(B.y-I/2)*w),a<1&&A.prev>=0&&(U.fillStyle=`rgba(${$},${(R*(1-a)).toFixed(3)})`,U.fill(C[A.prev])),U.fillStyle=`rgba(${$},${(R*a).toFixed(3)})`,U.fill(C[A.icon])})},_=x=>{if(L+=x,L>=F){F=L+Pt*(.7+Y()*.6);const b=k[Math.floor(Y()*k.length)];b.prev=b.icon,b.icon=(b.icon+1+Math.floor(Y()*(C.length-1)))%C.length,b.swapAt=L}},re=x=>{if(E=0,K||!J||document.hidden){G=0;return}G||(G=x);const b=x-G;b>=1e3/gn-2&&(_(Math.min(b,80)),G=x,oe()),E=requestAnimationFrame(re)},V=()=>{!K&&!E&&J&&!document.hidden&&(E=requestAnimationFrame(re))},ce=()=>{ye()&&oe(),V()},xe=x=>{const b=n.getBoundingClientRect();H.x=x.clientX-b.left,H.y=x.clientY-b.top,H.on=!K&&H.x>=0&&H.y>=0&&H.x<=b.width&&H.y<=b.height};ce();const le=new ResizeObserver(ce);le.observe(u);const ge=u.closest(".hero");ge&&le.observe(ge),O?.addEventListener?.("change",ce);const ue=new IntersectionObserver(([x])=>{J=x.isIntersecting,V()},{threshold:.05});return ue.observe(u),document.addEventListener("visibilitychange",V),document.fonts?.ready?.then(ce),Z&&!D&&window.addEventListener("pointermove",xe,{passive:!0}),()=>{le.disconnect(),ue.disconnect(),O?.removeEventListener?.("change",ce),document.removeEventListener("visibilitychange",V),window.removeEventListener("pointermove",xe),E&&cancelAnimationFrame(E)}},[]),e.jsx("div",{className:"matrix",ref:s,role:"img","aria-label":t,children:e.jsxs("div",{className:"matrix-stage",style:{position:"absolute",inset:"var(--matrix-bleed, 0)"},"aria-hidden":"true",children:[e.jsx("canvas",{className:"matrix-canvas matrix-soft",ref:r,style:{position:"absolute",inset:0,width:"100%",height:"100%"}}),e.jsx("canvas",{className:"matrix-canvas",ref:o,style:{position:"absolute",inset:0,width:"100%",height:"100%"}})]})})},En=t=>d.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",role:"img","aria-label":"AIHubMix",...t},d.createElement("defs",null,d.createElement("linearGradient",{id:"ahm-mark-color-light-g",x1:12,y1:0,x2:12,y2:24,gradientUnits:"userSpaceOnUse"},d.createElement("stop",{stopColor:"#2563EB"}),d.createElement("stop",{offset:1,stopColor:"#0049DF"}))),d.createElement("circle",{cx:12,cy:12,r:12,fill:"url(#ahm-mark-color-light-g)"}),d.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.2408 8.39297C11.3346 7.74922 11.5424 6.92266 11.8643 5.91328L12.0002 5.49609L12.1361 5.91328C12.458 6.92266 12.6658 7.74922 12.7596 8.39297C12.8314 8.86484 12.8314 9.46484 12.7596 10.193C12.6877 10.9242 12.6877 11.5289 12.7596 12.007C12.8658 12.707 13.1861 13.2883 13.7205 13.7508C14.2643 14.2227 14.8939 14.4586 15.6096 14.4586C16.4033 14.4586 17.0814 14.1789 17.6439 13.6195C18.2033 13.0602 18.4861 12.3852 18.4924 11.5945C18.4955 10.8945 18.5674 10.1227 18.708 9.27891C18.7768 8.85703 18.8471 8.50391 18.9189 8.21953L19.0127 7.83516L19.1814 8.19141C19.6658 9.21641 19.9189 10.2977 19.9408 11.4352V11.5945C19.9408 12.6727 19.733 13.7023 19.3174 14.6836C18.9143 15.6367 18.3471 16.4789 17.6158 17.2102C16.8814 17.9414 16.0393 18.5086 15.0893 18.9117C14.108 19.3273 13.0783 19.5352 12.0002 19.5352C10.9221 19.5352 9.89238 19.3273 8.91113 18.9117C7.96113 18.5086 7.11895 17.9414 6.38457 17.2102C5.65332 16.4789 5.08613 15.6367 4.68301 14.6836C4.26738 13.7023 4.05957 12.6727 4.05957 11.5945V11.4352C4.08145 10.2977 4.33457 9.21641 4.81895 8.19141L4.9877 7.83516L5.08145 8.21953C5.15332 8.50391 5.22363 8.85703 5.29238 9.27891C5.43301 10.1227 5.50488 10.8945 5.50801 11.5945C5.51426 12.3852 5.79707 13.0602 6.35645 13.6195C6.91895 14.1789 7.59707 14.4586 8.39082 14.4586C9.10645 14.4586 9.73613 14.2227 10.2799 13.7508C10.8143 13.2883 11.1346 12.707 11.2408 12.007C11.3127 11.5289 11.3127 10.9242 11.2408 10.193C11.1689 9.46484 11.1689 8.86484 11.2408 8.39297ZM12.0002 18.0867C13.0971 18.0867 14.1252 17.8273 15.0846 17.3086C15.7645 16.9427 16.3549 16.4766 16.8558 15.9103C16.9184 15.8397 16.8447 15.7321 16.7536 15.7568C16.3846 15.857 16.0032 15.907 15.6096 15.907C14.8283 15.907 14.1018 15.7102 13.4299 15.3164C12.887 15 12.4372 14.5891 12.0804 14.0839C12.0415 14.0289 11.9589 14.0289 11.92 14.0839C11.5632 14.5891 11.1134 15 10.5705 15.3164C9.89863 15.7102 9.17207 15.907 8.39082 15.907C7.99719 15.907 7.61584 15.857 7.24676 15.7568C7.15571 15.7321 7.08204 15.8397 7.14455 15.9103C7.64551 16.4766 8.23593 16.9427 8.91582 17.3086C9.8752 17.8273 10.9033 18.0867 12.0002 18.0867Z",fill:"#FFFFFF"})),Ut=[["OpenAI","logos_svg/logo_GPT.svg"],["Anthropic","logos_svg/logo_claude2.svg"],["Google","logos/logo_gemini.svg"],["DeepSeek","logos_svg/logo_deepseek.svg"],["Qwen","logos_svg/logo_qwen.svg"],["xAI","logos_svg/logo_Grok.svg"]],Sn=t=>ra(`https://assets.aihubmix.com/${t}`),Qt=[[[0],1800],[[0,2],900],[[2],1600],[[2,4],700],[[4],1400],[[1,4,5],900],[[1],1500],[[1,3],800],[[3],1700],[[5],1300],[[0,5],800]],kn=typeof window>"u"?d.useEffect:d.useLayoutEffect,Dt=([t,s],[o,r])=>{const u=(t+o)/2;return`M${t} ${s} C${u} ${s} ${u} ${r} ${o} ${r}`},In=({src:t})=>{const[s,o]=d.useState(!1);return d.useEffect(()=>o(!1),[t]),t&&!s?e.jsx("span",{className:"svc-app-icon has-img",children:e.jsx("img",{src:t,alt:"",width:24,height:24,referrerPolicy:"no-referrer",onError:()=>o(!0)})}):e.jsx("span",{className:"svc-app-icon",children:e.jsx(oa,{"aria-hidden":"true"})})},Ln=({label:t,name:s,host:o,icon:r,pill:u})=>{const n=d.useRef(null),p=d.useRef(null),P=d.useRef(null),q=d.useRef([]),[D,Z]=d.useState(null),[O,C]=d.useState(!1),[Y,k]=d.useState(0),[y,m]=Qt[Y];return kn(()=>{const f=n.current;if(!f)return;const w=()=>{const v=f.getBoundingClientRect(),j=E=>({l:E.left-v.left,r:E.right-v.left,cy:E.top-v.top+E.height/2}),K=j(p.current.getBoundingClientRect()),te=j(P.current.getBoundingClientRect()),J=q.current.filter(Boolean).map(E=>j(E.getBoundingClientRect()));Z({w:v.width,h:v.height,wire:Dt([K.r,K.cy],[te.l,te.cy]),fan:J.map(E=>Dt([te.r,te.cy],[E.l,E.cy]))})};w();const L=typeof ResizeObserver<"u"?new ResizeObserver(w):null;L?.observe(f);const F=typeof IntersectionObserver<"u"?new IntersectionObserver(([v])=>C(v.isIntersecting),{threshold:.2}):null;return F?.observe(f),()=>{L?.disconnect(),F?.disconnect()}},[]),d.useEffect(()=>{if(!O||window.matchMedia?.("(prefers-reduced-motion: reduce)").matches)return;const f=setTimeout(()=>k(w=>(w+1)%Qt.length),m);return()=>clearTimeout(f)},[O,Y,m]),e.jsxs("figure",{className:`svc${O?" is-live":""}`,ref:n,"aria-label":t,children:[D&&e.jsxs("svg",{className:"svc-lines",width:D.w,height:D.h,viewBox:`0 0 ${D.w} ${D.h}`,"aria-hidden":"true",children:[e.jsx("path",{d:D.wire,className:"svc-line","data-state":"active"}),D.fan.map((f,w)=>e.jsx("path",{d:f,className:"svc-line","data-state":y.includes(w)?"active":"idle"},Ut[w]?.[0]||w))]}),e.jsxs("div",{className:"svc-app",ref:p,children:[u,e.jsx(In,{src:r}),e.jsx("span",{className:"svc-app-name",children:s}),e.jsx("span",{className:"ds-caption svc-app-host",children:o})]}),e.jsx("span",{className:"svc-gap","aria-hidden":"true"}),e.jsx("span",{className:"svc-hub",ref:P,children:e.jsx(En,{"aria-hidden":"true",focusable:"false"})}),e.jsx("span",{className:"svc-gap","aria-hidden":"true"}),e.jsx("ul",{className:"svc-models",children:Ut.map(([f,w],L)=>e.jsx("li",{title:f,ref:F=>{q.current[L]=F},"data-state":y.includes(L)?"active":"idle",children:e.jsx("img",{src:Sn(w),alt:f,width:20,height:20,loading:"lazy",decoding:"async"})},f))})]})},Mt={"ai.cybernight.city":"https://ai.cybernight.city/static/apple-touch-icon.png","ai.ionestep.com":"https://ai.ionestep.com/favicon.ico","alma.now":"https://alma.now/assets/alma.png","api.ai.five-plus-one.com":"https://api.ai.five-plus-one.com/logo.png","api.htdo.hk":"https://api.htdo.hk/logo.png","api.pezayo.com":"https://api.pezayo.com/logo.png","beta.04160518.xyz":"https://beta.04160518.xyz/icon.png","chat.m5stack.com":"https://chat.m5stack.com/static/favicon.ico","dinoai.fun":"https://dinoai.fun/dinox-apple-touch-icon.png","dny-jiyu.com":"https://dny-jiyu.com/images/icons/icon-ji-192.png?v=20260704-ji","hermes-agent.nousresearch.com":"https://hermes-agent.nousresearch.com/marketing-static/assets/hermes-agent/icon.png","huachi.online":"https://huachi.online/assets/favicon-97599b36.ico","kelivo.psycheas.top":"https://kelivo.psycheas.top/apple-touch-icon.png","manggo.pylogmon.com":"https://manggo.pylogmon.com/assets/app.svg","mediatodaygroup.com":"https://www.mediatodaygroup.com/img/fav-red.ico","next-ai-drawio.jiang.jp":"https://next-ai-drawio.jiang.jp/favicon.ico?favicon.1_luwg54gwjqp.ico","perstein.com":"https://perstein.com/brand/apple-touch.png","platform.fullstack-dao.com":"https://platform.fullstack-dao.com/zennect_logo.ico","pptai.com":"https://pptai.com/apple-touch-icon.png","prompt2tool.com":"https://img.prompt2tool.com/logo/logo-auth-128.jpg","songdio.app":"https://songdio.app/apple-touch-icon.png?v=4","the-attic-seven.vercel.app":"https://the-attic-seven.vercel.app/app-icon.png","wowomc.com":"https://wowomc.com/favicon.png","writer.myaichatbox.com":"https://writer.myaichatbox.com/favicon.ico","www.aidesignhouse.io":"https://www.aidesignhouse.io/apple-touch-icon.png","www.blesstiger.com":"https://www.blesstiger.com/LOGO.png","www.deepsik.icu":"https://www.deepsik.icu/favicon.svg","www.hzhuanju.com":"https://www.hzhuanju.com/favicon.ico","www.twitterspacegpt.com":"https://www.twitterspacegpt.com/favicon.ico","www.whimery.com":"https://www.whimery.com/images/favicon.ico","www.zeroy.app":"https://www.zeroy.app/favicon.ico"},Tn=["astrbot","one-api","chatwise","deepchat","kelivo","next ai drawio","seede","helpknow","daily_stock_analysis","m5chatbot"],Bn={rikkahub:"rikkahub",gcmp:"VicBilibily"},Rn=["ai sdk","cherry studio","lobehub","lobechat","chatbox","crush","dify","hermes","hermes agent","cline","open design","@h00w/pi-provider-aihubmix"],Pn=["ai-sdk.dev","hermes-agent.nousresearch.com"],Fe=(t="")=>t.trim().toLowerCase(),ct=(t="")=>{try{return new URL(t).hostname.toLowerCase()}catch{return""}},at=t=>t==="aihubmix.com"||t.endsWith(".aihubmix.com"),Ot=["docs.aihubmix.com","github.com","www.npmjs.com"],Un=t=>/^[\d.]+$/.test(t),Qn=t=>t.startsWith("aihubmix."),Dn=t=>/^api\./.test(t)||/\.(vercel\.app|netlify\.app|github\.io|pages\.dev)$/.test(t);function Mn(t,s){return t.icon_url?3:s?/github\.com\/[^/]+\.png/.test(s)||/\.ico(\?|$)/i.test(s)?1:2:0}const nt=t=>t.length>=3&&!/_/.test(t)&&/[A-Z\u4e00-\u9fff ]/.test(t);function On(t){if(t.icon_url)return t.icon_url;const s=ct(t.app_url);if(Mt[s])return Mt[s];const o=Bn[Fe(t.app_name)];if(o)return`https://github.com/${o}.png?size=64`;if(s==="github.com"){const r=new URL(t.app_url).pathname.split("/")[1];if(r)return`https://github.com/${r}.png?size=64`}return""}function Fn(t=[]){const s=new Map;return t.forEach(o=>{const r=(o.app_name||"").trim(),u=ct(o.app_url);if(!r||!u.includes(".")||Un(u)||Qn(u)||at(u)&&!u.startsWith("docs.")||Rn.includes(Fe(r))||Pn.includes(u))return;const n=[`name:${Fe(r)}`,...Ot.includes(u)?[]:[`host:${u}`]],p=n.find(q=>s.has(q)),P=p&&s.get(p);if(P){const D={...nt(P.app_name.trim())||!nt(r)?P:o,token_count:Math.max(P.token_count||0,o.token_count||0)};[...s].forEach(([Z,O])=>{O===P&&s.delete(Z)}),n.forEach(Z=>s.set(Z,D));return}n.forEach(q=>s.set(q,o))}),[...new Set(s.values())].map(o=>{const r=ct(o.app_url),u=On(o),n=o.app_name.trim(),P=at(r)||Ot.includes(r)?1:Dn(r)?0:2;return{name:n,url:o.app_url,host:r.replace(/^www\./,""),isGuide:at(r),logo:u,quality:Mn(o,u)+P+(nt(n)?1:0)+(Tn.includes(Fe(n))?3:0),activity:o.token_count||0}}).sort((o,r)=>r.quality-o.quality||r.activity-o.activity||o.name.localeCompare(r.name))}const Hn={builtin:Kt,plugin:qt,package:ha,compatible:pa},zn={star:ma,install:ua,npm:da},Yn=[{slug:"cline",a:0,ring:"outer"},{slug:"cursor",a:45,ring:"inner"},{slug:"hermes-agent",a:90,ring:"outer"},{slug:"codex",a:135,ring:"inner"},{slug:"opencode",a:180,ring:"outer"},{slug:"dify",a:225,ring:"inner"},{slug:"pi",a:270,ring:"outer"},{slug:"claude-code",a:315,ring:"inner"}],Ft=new Set(Yn.map(t=>t.slug)),Vn=["clients","devtools","agents","creative","coding"],qn=(t,s)=>{const o=la(s),r=o.split("/").pop(),u=typeof t=="string"?t:t[r]||t.default;return`${o}/${u}`},it=(t,s)=>t.guide?{href:qn(t.guide,s),kind:"guide"}:{href:t.site,kind:"site"},Ye=(t,s)=>t.names?.[Be(s)]||t.name,$t=(t,s)=>[...t].sort((o,r)=>rt[o.integ].rank-rt[r.integ].rank||(r.heat?.value||0)-(o.heat?.value||0)||Ye(o,s).localeCompare(Ye(r,s),Se(s)));function Gn(t,s){const o=$t(t,s),r=Vn.map(n=>o.filter(p=>p.cat===n&&!Ft.has(p.slug))),u=[];for(;r.some(n=>n.length);)r.forEach(n=>{n.length&&u.push(n.shift())});return[...u,...o.filter(n=>Ft.has(n.slug))]}const Kn=()=>lt.filter(t=>Ce.filter(s=>s.cat===t.id).length>=tn),we={products:[12,8,6],community:[16,10,6]},Ht=(t,[s,o,r])=>[t>s&&"more-d",t>o&&"more-t",t>r&&"more-m"].filter(Boolean).join(" "),zt=({product:t,size:s=40,language:o})=>{const[r,u]=d.useState(!1),n=Ye(t,o),{Svg:p}=t;return p?e.jsx("span",{className:`logo${t.plate?" logo-plate":""}`,style:{"--logo":`${s}px`},children:e.jsx(p,{"aria-hidden":"true",focusable:"false"})}):!t.logo||r?e.jsx("span",{className:"logo logo-fallback",style:{"--logo":`${s}px`},"data-initial":n[0].toUpperCase()}):e.jsx("span",{className:`logo${t.plate?" logo-plate":""}`,style:{"--logo":`${s}px`},children:e.jsx("img",{src:t.logo,alt:"",width:s,height:s,loading:"lazy",decoding:"async",onError:()=>u(!0)})})},Zn=({src:t,name:s,size:o=32})=>{const[r,u]=d.useState(!1);d.useEffect(()=>u(!1),[t]);const n=(s||"?").trim()[0]?.toUpperCase()||"?";return!t||r?e.jsx("span",{className:"logo logo-fallback",style:{"--logo":`${o}px`},"data-initial":n}):e.jsx("span",{className:"logo logo-plate",style:{"--logo":`${o}px`},children:e.jsx("img",{src:t,alt:"",width:o,height:o,loading:"lazy",decoding:"async",referrerPolicy:"no-referrer",onError:()=>u(!0)})})},Yt=({expanded:t,onToggle:s,className:o,labels:r})=>e.jsxs("button",{type:"button",className:`more-link ${o}`,"aria-expanded":t,onClick:s,children:[t?r.less:r.more,e.jsx(Zt,{className:"icon ds-chevron","aria-hidden":"true"})]}),ii=({initialApps:t,modelCount:s})=>{const{t:o,i18n:r}=Wt(),{language:u}=r,n=Vt(r.language),p=(a,g)=>o(`ecosystemPage.${a}`,{brand:n,...g}),P=a=>Ye(a,u),q=a=>p(`catalog.products.${a.slug}`),D=a=>lt.some(g=>g.id===a)?p(`catalog.categories.${a}`):p("browse.other"),Z=a=>`${D(a.cat)}${a.sub?` · ${p(`catalog.subs.${a.sub}`)}`:""}`,O={more:p("browse.expand"),less:p("browse.collapse")},[C,Y]=d.useState("all"),[k,y]=d.useState(""),[m,f]=d.useState(!1),[w,L]=d.useState({view:"form",data:null}),F=w.data,[v,j]=d.useState(Array.isArray(t)?t:[]),[K,te]=d.useState(!1);d.useEffect(()=>{if(Array.isArray(t)&&t.length)return;let a=!0;return je.get(Ne.APP_RANK,{skipErrorToast:!0}).then(g=>{a&&j(Array.isArray(g.data?.data)?g.data.data:[])}).catch(()=>{}),()=>{a=!1}},[t]);const J=d.useMemo(()=>Fn(v),[v]),E=s>0?ga(s):0,G=a=>E?p(a,{total:E}):p(`${a}NoCount`),H=d.useRef(null),ye=a=>{if(he("ecosystem_find_cta",{placement:"hero"}),Oe(a,"browse"),!window.matchMedia?.("(pointer: fine)").matches)return;let g=!1;const S=()=>{g||(g=!0,window.removeEventListener("scrollend",S),H.current?.focus({preventScroll:!0}))};window.addEventListener("scrollend",S,{once:!0}),setTimeout(S,1200)},M=(()=>{const a=Ce.reduce((z,ee)=>{const X=[ee.heat,ee.heat2].find(fe=>fe?.type==="star");return z+(X?X.value:0)},0),g=Ce.find(z=>z.slug==="dify").heat.value,S=(z,ee)=>p("metaHero.stat.more",{value:kt(Math.floor(z/ee)*ee,u)});return[["products",String(Ce.length)],["stars",S(a,1e5)],["installs",S(g,1e3)]]})(),W=Ce.filter(a=>a.featured).sort((a,g)=>a.featured-g.featured),oe=Kn(),_=k.trim().toLocaleLowerCase(Se(u)),re=Ce.filter(a=>(C==="all"||a.cat===C)&&(!_||[a.name,P(a),q(a),D(a.cat),o(`ecosystemPage.catalog.products.${a.slug}`,{lng:"en"})].some(g=>g.toLocaleLowerCase(Se(u)).includes(_)))),V=C==="all"&&!_?Gn(re,u):$t(re,u),ce=a=>{a!==C&&(Y(a),f(!1),he("ecosystem_filter",{category:a,has_search:!!_}))},xe=()=>{Y("all"),y(""),f(!1)},le=(a,g,S)=>Et({appName:a.name,target:g,category:a.cat,surface:S}),ge=(a,g=!1)=>{if(!a)return null;const S=zn[a.type],z=`${p(`heat.${a.type}`)} · ${Xt(en,u)}`;return e.jsxs("span",{className:`heat${g?" heat-lg":""}`,title:z,children:[e.jsx(S,{className:"icon","aria-hidden":"true"}),e.jsx("span",{className:"heat-value",children:kt(a.value,u)}),e.jsx("span",{className:"sr-only",children:z})]})},ue=a=>{const g=rt[a],S=Hn[a];return e.jsxs("span",{className:`integ integ-${g.tone}`,title:p(`catalog.integ.${a}.def`),children:[e.jsx(S,{className:"icon","aria-hidden":"true"}),p(`catalog.integ.${a}.label`)]})},x=p("metaHero.title").split(`
`),b=(F?.url||"").split("/")[0],[A,B]=d.useState("");d.useEffect(()=>{const a=/^[a-z0-9-]+(\.[a-z0-9-]{2,})+$/i.test(b),g=setTimeout(()=>B(a?`https://${b}/favicon.ico`:""),600);return()=>clearTimeout(g)},[b]);const I=F?.name?.trim()||p("preview.name"),{view:R}=w,U=R==="approved"&&F?.listed===!1?"unlisted":["pending","approved","rejected","legacy","sunset"].includes(R)?R:"draft",$={pending:"info",approved:"ok",legacy:"ok",rejected:"error",sunset:"warn"}[U]||"neutral";return e.jsxs("div",{className:"eco ah-ds",children:[e.jsx("section",{className:"hero","aria-labelledby":"eco-hero-title",children:e.jsxs("div",{className:"ds-container hero-grid",children:[e.jsxs("div",{className:"hero-copy",children:[e.jsx("h1",{className:"ds-marketing-title hero-title",id:"eco-hero-title",children:x.map(a=>e.jsx("span",{className:"hero-line",children:a},a))}),e.jsx("p",{className:"ds-prose hero-sub ds-enter",style:{"--ah-stagger-index":1},children:G("metaHero.sub")}),e.jsxs("div",{className:"hero-actions ds-enter",style:{"--ah-stagger-index":2},children:[e.jsx("a",{className:"ds-button ds-button-primary ds-button-cta",href:"#apply",onClick:a=>{he("ecosystem_apply_cta",{placement:"hero"}),Oe(a,"apply")},children:p("metaHero.integrate")}),e.jsx("a",{className:"ds-button ds-button-secondary ds-button-cta",href:"#browse",onClick:ye,children:p("metaHero.find")})]}),e.jsx("dl",{className:"hero-stats ds-enter",style:{"--ah-stagger-index":3},children:M.map(([a,g])=>e.jsxs("div",{className:"stat",children:[e.jsx("dt",{children:p(`metaHero.stat.${a}`)}),e.jsx("dd",{children:g})]},a))})]}),e.jsx(Cn,{label:p("metaHero.hubLabel")})]})}),e.jsx("section",{className:"band","aria-labelledby":"eco-featured-title",children:e.jsxs("div",{className:"ds-container",children:[e.jsx("div",{className:"section-head",children:e.jsx("h2",{className:"ds-section-marketing",id:"eco-featured-title",children:p("featured.title")})}),e.jsx("div",{className:"featured-grid",children:W.map(a=>e.jsxs("article",{className:`ds-card feature-card accent-${a.accent}`,children:[e.jsxs("div",{className:"feature-top",children:[e.jsx(zt,{product:a,size:40,language:u}),ge(a.heat,!0)]}),e.jsx("h3",{className:"feature-name",children:e.jsx("a",{className:"pc-link",href:it(a,u).href,target:"_blank",rel:"noopener noreferrer",onClick:()=>le(a,it(a,u).kind,"ecosystem_featured"),children:P(a)})}),e.jsx("p",{className:"feature-desc",children:q(a)}),e.jsxs("div",{className:"feature-meta",children:[ue(a.integ),e.jsx(Ct,{className:"icon pc-out","aria-hidden":"true"})]})]},a.slug))})]})}),e.jsx("section",{className:"band",id:"browse","aria-labelledby":"eco-browse-title",children:e.jsxs("div",{className:"ds-container",children:[e.jsx("div",{className:"section-head",children:e.jsx("h2",{className:"ds-section-marketing",id:"eco-browse-title",children:p("browse.title")})}),e.jsxs("div",{className:"filter-bar",children:[e.jsx("div",{className:"filter-group",role:"group","aria-label":p("browse.filterLabel"),children:[{id:"all",label:p("browse.all")},...oe.map(a=>({id:a.id,label:D(a.id)}))].map(a=>e.jsx("button",{type:"button",className:"ds-button ds-button-choice filter-chip","aria-pressed":C===a.id,onClick:()=>ce(a.id),children:a.label},a.id))}),e.jsxs("label",{className:"ds-search search-box",children:[e.jsx(ot,{className:"icon","aria-hidden":"true"}),e.jsx("input",{ref:H,type:"search",value:k,placeholder:p("browse.search"),"aria-label":p("browse.search"),onChange:a=>{y(a.target.value),f(!1)}})]})]}),e.jsx("p",{className:"sr-only","aria-live":"polite",children:p("browse.count",{count:V.length})}),V.length>0?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:`product-grid${m?"":" is-collapsed"}`,children:V.map((a,g)=>{const{href:S,kind:z}=it(a,u);return e.jsxs("article",{className:`product-card${m&&g>=we.products[2]?" ds-enter":""}`,style:{"--ah-stagger-index":Math.max(0,g-we.products[2])},children:[e.jsxs("div",{className:"pc-head",children:[e.jsx(zt,{product:a,size:36,language:u}),e.jsxs("div",{className:"pc-title",children:[e.jsx("h3",{children:e.jsx("a",{className:"pc-link",href:S,target:"_blank",rel:"noopener noreferrer",onClick:()=>le(a,z,"ecosystem_grid"),children:P(a)})}),e.jsx("p",{children:Z(a)})]}),ge(a.heat)]}),e.jsx("p",{className:"pc-desc",children:q(a)}),e.jsxs("div",{className:"pc-foot",children:[ue(a.integ),e.jsx(Ct,{className:"icon pc-out","aria-hidden":"true"})]})]},a.slug)})}),e.jsx(Yt,{expanded:m,onToggle:()=>f(a=>!a),className:Ht(V.length,we.products),labels:O})]}):e.jsxs("div",{className:"empty",children:[e.jsx(ot,{className:"icon empty-icon","aria-hidden":"true"}),e.jsx("p",{className:"empty-title",children:p("browse.emptyTitle",{query:k||D(C)})}),e.jsx("p",{className:"ds-caption",children:p("browse.emptyBody")}),e.jsxs("div",{className:"empty-actions",children:[e.jsx("button",{type:"button",className:"ds-button ds-button-secondary",onClick:xe,children:p("browse.clear")}),e.jsx("a",{className:"ds-button ds-button-text",href:"#apply",onClick:a=>Oe(a,"apply"),children:p("metaHero.apply")})]})]})]})}),J.length>0&&e.jsx("section",{className:"band",id:"community","aria-labelledby":"eco-community-title",children:e.jsxs("div",{className:"ds-container",children:[e.jsx("div",{className:"section-head",children:e.jsx("h2",{className:"ds-section-marketing",id:"eco-community-title",children:p("community.title")})}),e.jsx("ul",{className:`community-grid${K?"":" is-collapsed"}`,children:J.map((a,g)=>e.jsx("li",{className:K&&g>=we.community[2]?"ds-enter":void 0,style:{"--ah-stagger-index":Math.max(0,g-we.community[2])},children:e.jsxs("a",{className:"community-item",href:a.url,target:"_blank",rel:"noopener noreferrer",onClick:()=>Et({appName:a.name,target:"site",surface:"ecosystem_community"}),children:[e.jsx(Zn,{src:a.logo,name:a.name}),e.jsxs("span",{className:"ci-text",children:[e.jsx("span",{className:"ci-name",children:a.name}),e.jsx("span",{className:"ds-caption ci-host",children:a.isGuide?p("browse.guide"):a.host})]})]})},a.url))}),e.jsx(Yt,{expanded:K,onToggle:()=>te(a=>!a),className:Ht(J.length,we.community),labels:O})]})}),e.jsx("section",{className:"band apply-band",id:"apply","aria-labelledby":"eco-apply-title",children:e.jsxs("div",{className:"ds-container apply-grid",children:[e.jsxs("div",{className:"apply-copy",children:[e.jsx("p",{className:"eyebrow",children:p("apply.eyebrow")}),e.jsx("h2",{className:"ds-section-marketing",id:"eco-apply-title",children:p("apply.title")}),e.jsx(Ln,{label:p("svc.label"),name:I,host:b||"example.com",icon:F?.logo||A,pill:e.jsx("span",{className:`stage-pill pill-${$}`,children:p(`stage.${U}`)})}),e.jsx("ul",{className:"svc-values",children:[[Gt,"Models"],[Kt,"Reliable"],[ca,"Pricing"]].map(([a,g])=>e.jsxs("li",{children:[e.jsx("span",{className:"value-icon",children:e.jsx(a,{className:"icon","aria-hidden":"true"})}),e.jsx("strong",{children:g==="Models"?G("apply.vModels"):p(`apply.v${g}`)})]},g))})]}),e.jsx(mn,{catLabel:D,onStateChange:L})]})}),e.jsx("section",{className:"band","aria-labelledby":"eco-faq-title",children:e.jsxs("div",{className:"ds-container faq-grid",children:[e.jsx("h2",{className:"ds-section-marketing",id:"eco-faq-title",children:p("faq.title")}),e.jsx(Wn,{tp:p})]})})]})},Wn=({tp:t})=>{const[s,o]=d.useState({});return e.jsx("div",{className:"faq-list",children:[1,2,3,4,5,6].map(r=>{const u=!!s[r];return e.jsxs("div",{className:"faq-item",children:[e.jsx("h3",{children:e.jsxs("button",{type:"button",className:"faq-q","aria-expanded":u,"aria-controls":`eco-faq-${r}`,onClick:()=>o(n=>({...n,[r]:!n[r]})),children:[e.jsx("span",{children:t(`faq.q${r}`)}),e.jsx(Zt,{className:"icon ds-chevron","aria-hidden":"true"})]})}),e.jsx("div",{className:`ds-collapse${u?" ds-open":""}`,id:`eco-faq-${r}`,children:e.jsx("div",{children:e.jsx("p",{className:"faq-a",children:t(`faq.a${r}`)})})})]},r)})})};export{Ye as appName,ii as default,qn as docsUrl,Gn as orderForAll,$t as sortProducts,Kn as visibleCategories};
