@opencompass-fe/oc-webkit-eval 0.1.7 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
import l,{useContext as B,useMemo as de,useCallback as P,useEffect as me}from"react";import S from"classnames";import{OcContext as fe}from"../../providers/OcContext.js";import{OcConfigContext as ge}from"../../providers/OcConfigContext.js";import{message as he,Dropdown as be}from"antd";import"../header/firstHeader.module.less.js";import"../../extraComponents/icon-font/index.js";import"../../extraComponents/button/button.module.less.js";import"../header/header.module.less.js";import"../header/components/create-online-evaluation/component/evaluation-button/evaluation-button.module.less.js";import"../header/components/create-online-evaluation/component/create-evaluation/create-evaluation.js";import"../header/components/create-online-evaluation/component/pre-create-evaluation/index.module.less.js";import"../header/components/create-online-evaluation/component/sidebar/sidebar.module.less.js";import"react-router-dom";import"ahooks";import"@ant-design/icons";import{envTypeEnum as U,langTypeEnum as T}from"../../constants/enums.js";import"../../mobile/components/top-nav/top-nav.module.less.js";import"./top-nav.module.less.js";import"react-device-detect";import"../side-nav/side-nav.module.less.js";import"../footer/footer.module.less.js";import"../dropdown/dropdown.module.less.js";import"../footer-expansion/footer-expansion.module.less.js";import"../md-render/index.js";import V from"../../assets/svg/top-nav/agent.svg.js";import M from"../../assets/svg/top-nav/AI4S.svg.js";import Z from"../../assets/svg/top-nav/finance.svg.js";import F from"../../assets/svg/top-nav/image-understanding.svg.js";import x from"../../assets/svg/top-nav/LLM.svg.js";import H from"../../assets/svg/top-nav/medical.svg.js";import G from"../../assets/svg/top-nav/physical-intelligence.svg.js";import K from"../../assets/svg/top-nav/video-understanding.svg.js";import ve from"../../assets/svg/top-nav/group-bullet.svg.js";import j,{DEFAULT_LANG as Ee}from"../../locale/index.js";var _e=Object.defineProperty,ye=Object.defineProperties,Te=Object.getOwnPropertyDescriptors,I=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable,W=(e,r,n)=>r in e?_e(e,r,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[r]=n,_=(e,r)=>{for(var n in r||(r={}))z.call(r,n)&&W(e,n,r[n]);if(I)for(var n of I(r))Y.call(r,n)&&W(e,n,r[n]);return e},k=(e,r)=>ye(e,Te(r)),Ie=(e,r)=>{var n={};for(var t in e)z.call(e,t)&&r.indexOf(t)<0&&(n[t]=e[t]);if(e!=null&&I)for(var t of I(e))r.indexOf(t)<0&&Y.call(e,t)&&(n[t]=e[t]);return n},ke=(e,r,n)=>new Promise((t,a)=>{var o=u=>{try{s(n.next(u))}catch(c){a(c)}},d=u=>{try{s(n.throw(u))}catch(c){a(c)}},s=u=>u.done?t(u.value):Promise.resolve(u.value).then(o,d);s((n=n.apply(e,r)).next())});function m({src:e,size:r=14}){return l.createElement("img",{src:e,style:{width:r,height:r,objectFit:"contain"},alt:""})}const Le={llm:x,agent:V,ai4s:M,physical:G,item1:F,item2:K,medical:H,finance:Z};function q(e){const r=e.id||e.key;if(r)return Le[r]}function J(e){return e.type==="group"||!!(e.children&&e.children.length>0)}function Q(e,r=14){if(e.icon)return e.icon;const n=q(e);return n?l.createElement(m,{src:n,size:r}):J(e)?l.createElement(m,{src:ve,size:r}):null}const O="logout",i="_self",v="_blank";function Ne(e,r=i){const n=r===v;return{href:e||"#",target:n?v:void 0,rel:n?"noopener noreferrer":void 0}}function X(e,r=i){if(e){if(r===v){window.open(e,v,"noopener,noreferrer");return}window.location.href=e}}function w(e){if(e)return e.map(r=>{var n;return k(_({},r),{linkTarget:(n=r.linkTarget)!=null?n:i,children:w(r.children)})})}function Ue(e,r){return e?e.map(n=>{var t;return k(_({},n),{linkTarget:(t=n.linkTarget)!=null?t:i,dropdownItems:w(n.dropdownItems)})}):r}const L={VITE_COMPASS_URL:"https://opencompass.org.cn",VITE_RANK_URL:"https://rank.opencompass.org.cn",VITE_HUB_URL:"https://hub.opencompass.org.cn",VITE_SSO_URL:"https://sso.openxlab.org.cn",VITE_TOOLS_URL:"https://github.com/open-compass"},Oe={[U.development]:{VITE_COMPASS_URL:"http://dev.opencompass.org.cn",VITE_RANK_URL:"http://rank.dev.opencompass.org.cn",VITE_HUB_URL:"http://hub.dev.opencompass.org.cn",VITE_SSO_URL:"https://sso.dev.openxlab.org.cn",VITE_TOOLS_URL:L.VITE_TOOLS_URL},[U.staging]:{VITE_COMPASS_URL:"https://staging.opencompass.org.cn",VITE_RANK_URL:"https://rank.staging.opencompass.org.cn",VITE_HUB_URL:"https://hub.staging.opencompass.org.cn",VITE_SSO_URL:"https://sso.staging.openxlab.org.cn",VITE_TOOLS_URL:L.VITE_TOOLS_URL},[U.production]:L};function ee(e,r=T.zh){const{VITE_COMPASS_URL:n,VITE_RANK_URL:t,VITE_HUB_URL:a,VITE_SSO_URL:o,VITE_TOOLS_URL:d}=e&&Oe[e]||L;return{brandHref:`${n}/home`,navItems:[{key:"home",labelZh:"\u9996\u9875",labelEn:"Home",href:`${n}/home`,linkTarget:i},{key:"leaderboard",labelZh:"\u8BC4\u6D4B\u699C\u5355",labelEn:"Leaderboard",linkTarget:i,withDown:!0,dropdownItems:[{id:"llm",type:"item",labelZh:"\u5927\u8BED\u8A00\u6A21\u578B",labelEn:"LLM",icon:l.createElement(m,{src:x}),href:`${n}/leaderboard/llm`,linkTarget:i},{type:"divider"},{id:"group1",type:"group",labelZh:"\u591A\u6A21\u6001\u6A21\u578B",labelEn:"Multimodal Models",children:[{id:"item1",type:"item",labelZh:"\u56FE\u50CF\u7406\u89E3",labelEn:"Image Understanding",icon:l.createElement(m,{src:F}),href:`${n}/leaderboard/image-vlm`,linkTarget:i},{id:"item2",type:"item",labelZh:"\u89C6\u9891\u7406\u89E3",labelEn:"Video Understanding",icon:l.createElement(m,{src:K}),href:`${n}/leaderboard/video-vlm`,linkTarget:i}]},{type:"divider"},{id:"agent",type:"item",labelZh:"\u667A\u80FD\u4F53",labelEn:"Agents",icon:l.createElement(m,{src:V}),href:`${n}/leaderboard/agent`,linkTarget:i},{type:"divider"},{id:"ai4s",type:"item",labelZh:"\u79D1\u5B66\u667A\u80FD",labelEn:"AI for Science",icon:l.createElement(m,{src:M}),href:`${n}/leaderboard/ai4science`,linkTarget:i},{type:"divider"},{id:"physical",type:"item",labelZh:"\u7269\u7406\u667A\u80FD",labelEn:"Physical Intelligence",icon:l.createElement(m,{src:G}),href:`${n}/leaderboard/physical-intelligence`,linkTarget:i},{type:"divider"},{id:"group2",type:"group",labelZh:"\u667A\u80FD\u9886\u57DF",labelEn:"Intelligent Domains",children:[{id:"medical",type:"item",labelZh:"\u533B\u7597",labelEn:"Medical",icon:l.createElement(m,{src:H}),href:`${n}/leaderboard/medbench`,linkTarget:i},{id:"finance",type:"item",labelZh:"\u91D1\u878D",labelEn:"Finance",icon:l.createElement(m,{src:Z}),href:`${n}/leaderboard/cnfinbench`,linkTarget:i}]}]},{key:"models",labelZh:"\u6A21\u578B\u5E93",labelEn:"Models",href:`${n}/model`,linkTarget:i},{key:"datasets",labelZh:"\u8BC4\u6D4B\u96C6",labelEn:"Benchmarks",href:`${n}/benchmark`,linkTarget:i,active:!0},{key:"tools",labelZh:"\u8BC4\u6D4B\u5DE5\u5177",labelEn:"Tools",href:d,linkTarget:v}],arena:{labelZh:"\u7ADE\u6280\u573A",labelEn:"Arena",href:`${n}/arena/home`,linkTarget:v},userMenuItems:[{key:"myEvaluation",type:"item",labelZh:"\u6211\u7684\u8BC4\u6D4B",labelEn:"My Evaluation",href:`${t}/online-evaluation?lang=${r}`,linkTarget:i},{key:"myBenchmark",type:"item",labelZh:"\u6211\u7684\u8BC4\u6D4B\u96C6",labelEn:"My Benchmark",href:`${a}/benchmarks?lang=${r}`,linkTarget:i},{key:"myModel",type:"item",labelZh:"\u6211\u7684\u6A21\u578B",labelEn:"My Model",href:`${t}/models?lang=${r}`,linkTarget:i},{key:"user-center",type:"item",labelZh:"\u8D26\u53F7\u4FE1\u606F",labelEn:"User Center",href:`${o}/usercenter?lang=${r}`,linkTarget:i},{type:"divider"},{key:O,type:"item",labelZh:"\u9000\u51FA\u767B\u5F55",labelEn:"Logout"}]}}ee();function we({alt:e="",className:r,size:n,src:t,styles:a}){return l.createElement("span",{className:S(a.iconBox,r),style:{"--icon-size":`${n}px`}},l.createElement("img",{src:t,alt:e}))}function re(e){return e.nickname||e.username||e.email||""}function ne(e){const r=e.trim();if(!r)return"";if(/[\u4e00-\u9fa5]/.test(r))return r.slice(0,2);const n=r.split(/\s+/).filter(Boolean);return n.length>=2?(n[0][0]+n[1][0]).toUpperCase():r.slice(0,2).toUpperCase()}const A=l.forwardRef((e,r)=>{var n=e,{userInfo:t,styles:a,onClick:o,className:d,tabIndex:s,size:u=36}=n,c=Ie(n,["userInfo","styles","onClick","className","tabIndex","size"]);const p=re(t),f=ne(p);return l.createElement("button",k(_({},c),{ref:r,type:"button",className:S(a.userAvatar,d),style:{"--avatar-size":`${u}px`},onClick:o,tabIndex:s,"aria-label":p||"User",title:p}),t.avatar?l.createElement("img",{src:t.avatar,alt:p}):l.createElement("span",{className:a.userAvatarInitials},f))});A.displayName="UserAvatar";function Ae(e){var r,n,t;const{brandHref:a,locale:o,onToggleLocale:d,jumpLogin:s,navItems:u,arena:c,userInfo:p,userMenuItems:f,logout:g,handleUnauth:h}=e,{config:C,setConfig:D}=B(ge),{locales:y}=B(fe),te=(r=e.envType)!=null?r:C==null?void 0:C.envType,E=ee(te,o),ae=a!=null?a:E.brandHref,le=Ue(u,E.navItems),N=c?k(_(_({},E.arena),c),{linkTarget:(n=c.linkTarget)!=null?n:i}):E.arena,oe=de(()=>{var b;return y!=null&&y.topNavHome?y:(b=j[o])!=null?b:j[Ee]},[y,o]),ie=o===T.en?N.labelEn:N.labelZh,$=(t=w(f))!=null?t:E.userMenuItems,ue=P(()=>ke(null,null,function*(){try{g&&(yield g())}catch(b){he.error("request error!")}finally{h==null||h(),(g||h)&&window.location.reload()}}),[h,g]),ce=P(()=>{if(!s)return;const b=s();b&&(window.location.href=b)},[s]);me(()=>{D(e)},[e,D]);const se=!!p,pe=$.length>0;return{arena:N,arenaLabel:ie,brandHref:ae,hasUserMenu:pe,isLoggedIn:se,locale:o,locales:oe,navItems:le,onToggleLocale:d,handleJumpLogin:ce,performLogout:ue,userInfo:p,userMenuItems:$}}function Re(e){return e.map((r,n)=>{var t,a,o;return(t=r.dropdownItems)!=null&&t.length?(o=(a=r.key)!=null?a:r.href)!=null?o:`nav-${n}`:null}).filter(r=>!!r)}function Ce(e){return e.map((r,n)=>r.type==="divider"?null:r.type==="group"||r.children&&r.children.length>0?r.id||r.key||`group-${n}`:null).filter(r=>!!r)}function R({item:e,index:r,locale:n,performLogout:t,styles:a}){var o;if(e.type==="divider")return l.createElement("div",{key:`divider-${r}`,className:a.dropdownDivider});if(e.type==="group"||e.children&&e.children.length>0){const f=e.label||(n===T.en?e.labelEn:e.labelZh);return l.createElement("div",{key:e.key||e.id||`group-${r}`,className:a.dropdownGroup},f?l.createElement("div",{className:a.dropdownGroupHeader},l.createElement("p",{className:a.dropdownGroupTitle},f)):null,(o=e.children)==null?void 0:o.map((g,h)=>R({item:g,index:h,locale:n,performLogout:t,styles:a})))}const d=e.label||(n===T.en?e.labelEn:e.labelZh),u=(e.key||e.id)===O&&!e.href&&!e.onClick,c=Q(e,14),p=f=>{var g;if(u){t();return}(g=e.onClick)==null||g.call(e,f),!f.defaultPrevented&&e.href&&X(e.href,e.linkTarget)};return l.createElement("button",{key:e.key||e.id||`item-${r}`,type:"button",className:a.dropdownItem,onClick:p},c?l.createElement("div",{className:a.dropdownItemIcon},c):null,l.createElement("span",{className:a.dropdownItemLabel},d))}function De({items:e,locale:r,performLogout:n,styles:t}){return!e||e.length===0?null:l.createElement("div",{className:t.customDropdown},e.map((a,o)=>R({item:a,index:o,locale:r,performLogout:n,styles:t})))}function $e({customDropdownRender:e,dropdownTrigger:r,extra:n,hasUserMenu:t,isLoggedIn:a,onAvatarClick:o,styles:d,userInfo:s,userMenuItems:u,avatarSize:c}){if(!a||!s)return null;const p=l.createElement(A,{userInfo:s,styles:d,onClick:o,className:n==null?void 0:n.className,tabIndex:n==null?void 0:n.tabIndex,size:c});return t?l.createElement(be,{trigger:r,popupRender:()=>e(u),placement:"bottomRight",styles:{root:{paddingTop:8}}},p):p}export{we as IconBox,O as LOGOUT_ITEM_KEY,m as NavIcon,A as UserAvatar,Ce as getCollapsibleKeysFromDropdownItems,Re as getCollapsibleKeysFromNavItems,re as getDisplayName,q as getDropdownItemIconSrc,ne as getInitials,Ne as getTopNavLinkProps,J as isDropdownGroupItem,X as jumpTopNavHref,De as renderDropdownContent,R as renderDropdownItem,Q as renderDropdownItemIcon,$e as renderUserAvatar,Ae as useTopNavCommon};
|
|
1
|
+
import l,{useContext as S,useMemo as fe,useCallback as V,useEffect as ge}from"react";import M from"classnames";import{OcContext as he}from"../../providers/OcContext.js";import{OcConfigContext as ve}from"../../providers/OcConfigContext.js";import{message as be,Dropdown as Ee}from"antd";import"../header/firstHeader.module.less.js";import"../../extraComponents/icon-font/index.js";import"../../extraComponents/button/button.module.less.js";import"../header/header.module.less.js";import"../header/components/create-online-evaluation/component/evaluation-button/evaluation-button.module.less.js";import"../header/components/create-online-evaluation/component/create-evaluation/create-evaluation.js";import"../header/components/create-online-evaluation/component/pre-create-evaluation/index.module.less.js";import"../header/components/create-online-evaluation/component/sidebar/sidebar.module.less.js";import"react-router-dom";import"ahooks";import"@ant-design/icons";import{envTypeEnum as w,topNavActiveKeyEnum as _,langTypeEnum as k}from"../../constants/enums.js";import"../../mobile/components/top-nav/top-nav.module.less.js";import"./top-nav.module.less.js";import"react-device-detect";import"../side-nav/side-nav.module.less.js";import"../footer/footer.module.less.js";import"../dropdown/dropdown.module.less.js";import"../footer-expansion/footer-expansion.module.less.js";import"../md-render/index.js";import Z from"../../assets/svg/top-nav/agent.svg.js";import F from"../../assets/svg/top-nav/AI4S.svg.js";import x from"../../assets/svg/top-nav/finance.svg.js";import H from"../../assets/svg/top-nav/image-understanding.svg.js";import G from"../../assets/svg/top-nav/LLM.svg.js";import K from"../../assets/svg/top-nav/medical.svg.js";import j from"../../assets/svg/top-nav/physical-intelligence.svg.js";import z from"../../assets/svg/top-nav/video-understanding.svg.js";import _e from"../../assets/svg/top-nav/group-bullet.svg.js";import Y,{DEFAULT_LANG as ye}from"../../locale/index.js";var Te=Object.defineProperty,Ie=Object.defineProperties,ke=Object.getOwnPropertyDescriptors,L=Object.getOwnPropertySymbols,W=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,J=(e,r,n)=>r in e?Te(e,r,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[r]=n,y=(e,r)=>{for(var n in r||(r={}))W.call(r,n)&&J(e,n,r[n]);if(L)for(var n of L(r))q.call(r,n)&&J(e,n,r[n]);return e},N=(e,r)=>Ie(e,ke(r)),Le=(e,r)=>{var n={};for(var t in e)W.call(e,t)&&r.indexOf(t)<0&&(n[t]=e[t]);if(e!=null&&L)for(var t of L(e))r.indexOf(t)<0&&q.call(e,t)&&(n[t]=e[t]);return n},Ne=(e,r,n)=>new Promise((t,a)=>{var o=u=>{try{s(n.next(u))}catch(p){a(p)}},d=u=>{try{s(n.throw(u))}catch(p){a(p)}},s=u=>u.done?t(u.value):Promise.resolve(u.value).then(o,d);s((n=n.apply(e,r)).next())});function m({src:e,size:r=14}){return l.createElement("img",{src:e,style:{width:r,height:r,objectFit:"contain"},alt:""})}const Ue={llm:G,agent:Z,ai4s:F,physical:j,item1:H,item2:z,medical:K,finance:x};function Q(e){const r=e.id||e.key;if(r)return Ue[r]}function X(e){return e.type==="group"||!!(e.children&&e.children.length>0)}function ee(e,r=14){if(e.icon)return e.icon;const n=Q(e);return n?l.createElement(m,{src:n,size:r}):X(e)?l.createElement(m,{src:_e,size:r}):null}const A="logout",i="_self",b="_blank";function Oe(e,r=i){const n=r===b;return{href:e||"#",target:n?b:void 0,rel:n?"noopener noreferrer":void 0}}function re(e,r=i){if(e){if(r===b){window.open(e,b,"noopener,noreferrer");return}window.location.href=e}}function R(e){if(e)return e.map(r=>{var n;return N(y({},r),{linkTarget:(n=r.linkTarget)!=null?n:i,children:R(r.children)})})}function we(e,r,n){return(e!=null?e:r).map(a=>{var o;return N(y({},a),{active:n?a.key===n:a.active,linkTarget:(o=a.linkTarget)!=null?o:i,dropdownItems:R(a.dropdownItems)})})}const U={VITE_COMPASS_URL:"https://opencompass.org.cn",VITE_RANK_URL:"https://rank.opencompass.org.cn",VITE_HUB_URL:"https://hub.opencompass.org.cn",VITE_SSO_URL:"https://sso.openxlab.org.cn",VITE_TOOLS_URL:"https://github.com/open-compass"},Ae={[w.development]:{VITE_COMPASS_URL:"http://dev.opencompass.org.cn",VITE_RANK_URL:"http://rank.dev.opencompass.org.cn",VITE_HUB_URL:"http://hub.dev.opencompass.org.cn",VITE_SSO_URL:"https://sso.dev.openxlab.org.cn",VITE_TOOLS_URL:U.VITE_TOOLS_URL},[w.staging]:{VITE_COMPASS_URL:"https://staging.opencompass.org.cn",VITE_RANK_URL:"https://rank.staging.opencompass.org.cn",VITE_HUB_URL:"https://hub.staging.opencompass.org.cn",VITE_SSO_URL:"https://sso.staging.openxlab.org.cn",VITE_TOOLS_URL:U.VITE_TOOLS_URL},[w.production]:U};function ne(e,r=k.zh){const{VITE_COMPASS_URL:n,VITE_RANK_URL:t,VITE_HUB_URL:a,VITE_SSO_URL:o,VITE_TOOLS_URL:d}=e&&Ae[e]||U;return{brandHref:`${n}/home`,navItems:[{key:_.home,labelZh:"\u9996\u9875",labelEn:"Home",href:`${n}/home`,linkTarget:i},{key:_.leaderboard,labelZh:"\u8BC4\u6D4B\u699C\u5355",labelEn:"Leaderboard",linkTarget:i,withDown:!0,dropdownItems:[{id:"llm",type:"item",labelZh:"\u5927\u8BED\u8A00\u6A21\u578B",labelEn:"LLM",icon:l.createElement(m,{src:G}),href:`${n}/leaderboard/llm`,linkTarget:i},{type:"divider"},{id:"group1",type:"group",labelZh:"\u591A\u6A21\u6001\u6A21\u578B",labelEn:"Multimodal Models",children:[{id:"item1",type:"item",labelZh:"\u56FE\u50CF\u7406\u89E3",labelEn:"Image Understanding",icon:l.createElement(m,{src:H}),href:`${n}/leaderboard/image-vlm`,linkTarget:i},{id:"item2",type:"item",labelZh:"\u89C6\u9891\u7406\u89E3",labelEn:"Video Understanding",icon:l.createElement(m,{src:z}),href:`${n}/leaderboard/video-vlm`,linkTarget:i}]},{type:"divider"},{id:"agent",type:"item",labelZh:"\u667A\u80FD\u4F53",labelEn:"Agents",icon:l.createElement(m,{src:Z}),href:`${n}/leaderboard/agent`,linkTarget:i},{type:"divider"},{id:"ai4s",type:"item",labelZh:"\u79D1\u5B66\u667A\u80FD",labelEn:"AI for Science",icon:l.createElement(m,{src:F}),href:`${n}/leaderboard/ai4science`,linkTarget:i},{type:"divider"},{id:"physical",type:"item",labelZh:"\u7269\u7406\u667A\u80FD",labelEn:"Physical Intelligence",icon:l.createElement(m,{src:j}),href:`${n}/leaderboard/physical-intelligence`,linkTarget:i},{type:"divider"},{id:"group2",type:"group",labelZh:"\u667A\u80FD\u9886\u57DF",labelEn:"Intelligent Domains",children:[{id:"medical",type:"item",labelZh:"\u533B\u7597",labelEn:"Medical",icon:l.createElement(m,{src:K}),href:`${n}/leaderboard/medbench`,linkTarget:i},{id:"finance",type:"item",labelZh:"\u91D1\u878D",labelEn:"Finance",icon:l.createElement(m,{src:x}),href:`${n}/leaderboard/cnfinbench`,linkTarget:i}]}]},{key:_.models,labelZh:"\u6A21\u578B\u5E93",labelEn:"Models",href:`${n}/model`,linkTarget:i},{key:_.datasets,labelZh:"\u8BC4\u6D4B\u96C6",labelEn:"Benchmarks",href:`${n}/benchmark`,linkTarget:i,active:!0},{key:_.tools,labelZh:"\u8BC4\u6D4B\u5DE5\u5177",labelEn:"Tools",href:d,linkTarget:b}],arena:{labelZh:"\u7ADE\u6280\u573A",labelEn:"Arena",href:`${n}/arena/home`,linkTarget:b},userMenuItems:[{key:"myEvaluation",type:"item",labelZh:"\u6211\u7684\u8BC4\u6D4B",labelEn:"My Evaluation",href:`${t}/online-evaluation?lang=${r}`,linkTarget:i},{key:"myBenchmark",type:"item",labelZh:"\u6211\u7684\u8BC4\u6D4B\u96C6",labelEn:"My Benchmark",href:`${a}/benchmarks?lang=${r}`,linkTarget:i},{key:"myModel",type:"item",labelZh:"\u6211\u7684\u6A21\u578B",labelEn:"My Model",href:`${t}/models?lang=${r}`,linkTarget:i},{key:"user-center",type:"item",labelZh:"\u8D26\u53F7\u4FE1\u606F",labelEn:"User Center",href:`${o}/usercenter?lang=${r}`,linkTarget:i},{type:"divider"},{key:A,type:"item",labelZh:"\u9000\u51FA\u767B\u5F55",labelEn:"Logout"}]}}ne();function Re({alt:e="",className:r,size:n,src:t,styles:a}){return l.createElement("span",{className:M(a.iconBox,r),style:{"--icon-size":`${n}px`}},l.createElement("img",{src:t,alt:e}))}function te(e){return e.nickname||e.username||e.email||""}function ae(e){const r=e.trim();if(!r)return"";if(/[\u4e00-\u9fa5]/.test(r))return r.slice(0,2);const n=r.split(/\s+/).filter(Boolean);return n.length>=2?(n[0][0]+n[1][0]).toUpperCase():r.slice(0,2).toUpperCase()}const C=l.forwardRef((e,r)=>{var n=e,{userInfo:t,styles:a,onClick:o,className:d,tabIndex:s,size:u=36}=n,p=Le(n,["userInfo","styles","onClick","className","tabIndex","size"]);const c=te(t),f=ae(c);return l.createElement("button",N(y({},p),{ref:r,type:"button",className:M(a.userAvatar,d),style:{"--avatar-size":`${u}px`},onClick:o,tabIndex:s,"aria-label":c||"User",title:c}),t.avatar?l.createElement("img",{src:t.avatar,alt:c}):l.createElement("span",{className:a.userAvatarInitials},f))});C.displayName="UserAvatar";function Ce(e){var r,n,t;const{brandHref:a,locale:o,onToggleLocale:d,jumpLogin:s,navItems:u,activeKey:p,arena:c,userInfo:f,userMenuItems:g,logout:h,handleUnauth:T}=e,{config:$,setConfig:B}=S(ve),{locales:I}=S(he),le=(r=e.envType)!=null?r:$==null?void 0:$.envType,E=ne(le,o),oe=a!=null?a:E.brandHref,ie=we(u,E.navItems,p),O=c?N(y(y({},E.arena),c),{linkTarget:(n=c.linkTarget)!=null?n:i}):E.arena,ue=fe(()=>{var v;return I!=null&&I.topNavHome?I:(v=Y[o])!=null?v:Y[ye]},[I,o]),se=o===k.en?O.labelEn:O.labelZh,P=(t=R(g))!=null?t:E.userMenuItems,ce=V(()=>Ne(null,null,function*(){try{h&&(yield h())}catch(v){be.error("request error!")}finally{T==null||T(),(h||T)&&window.location.reload()}}),[T,h]),pe=V(()=>{if(!s)return;const v=s();v&&(window.location.href=v)},[s]);ge(()=>{B(e)},[e,B]);const de=!!f,me=P.length>0;return{arena:O,arenaLabel:se,brandHref:oe,hasUserMenu:me,isLoggedIn:de,locale:o,locales:ue,navItems:ie,onToggleLocale:d,handleJumpLogin:pe,performLogout:ce,userInfo:f,userMenuItems:P}}function De(e){return e.map((r,n)=>{var t,a,o;return(t=r.dropdownItems)!=null&&t.length?(o=(a=r.key)!=null?a:r.href)!=null?o:`nav-${n}`:null}).filter(r=>!!r)}function $e(e){return e.map((r,n)=>r.type==="divider"?null:r.type==="group"||r.children&&r.children.length>0?r.id||r.key||`group-${n}`:null).filter(r=>!!r)}function D({item:e,index:r,locale:n,performLogout:t,styles:a}){var o;if(e.type==="divider")return l.createElement("div",{key:`divider-${r}`,className:a.dropdownDivider});if(e.type==="group"||e.children&&e.children.length>0){const f=e.label||(n===k.en?e.labelEn:e.labelZh);return l.createElement("div",{key:e.key||e.id||`group-${r}`,className:a.dropdownGroup},f?l.createElement("div",{className:a.dropdownGroupHeader},l.createElement("p",{className:a.dropdownGroupTitle},f)):null,(o=e.children)==null?void 0:o.map((g,h)=>D({item:g,index:h,locale:n,performLogout:t,styles:a})))}const d=e.label||(n===k.en?e.labelEn:e.labelZh),u=(e.key||e.id)===A&&!e.href&&!e.onClick,p=ee(e,14),c=f=>{var g;if(u){t();return}(g=e.onClick)==null||g.call(e,f),!f.defaultPrevented&&e.href&&re(e.href,e.linkTarget)};return l.createElement("button",{key:e.key||e.id||`item-${r}`,type:"button",className:a.dropdownItem,onClick:c},p?l.createElement("div",{className:a.dropdownItemIcon},p):null,l.createElement("span",{className:a.dropdownItemLabel},d))}function Be({items:e,locale:r,performLogout:n,styles:t}){return!e||e.length===0?null:l.createElement("div",{className:t.customDropdown},e.map((a,o)=>D({item:a,index:o,locale:r,performLogout:n,styles:t})))}function Pe({customDropdownRender:e,dropdownTrigger:r,extra:n,hasUserMenu:t,isLoggedIn:a,onAvatarClick:o,styles:d,userInfo:s,userMenuItems:u,avatarSize:p}){if(!a||!s)return null;const c=l.createElement(C,{userInfo:s,styles:d,onClick:o,className:n==null?void 0:n.className,tabIndex:n==null?void 0:n.tabIndex,size:p});return t?l.createElement(Ee,{trigger:r,popupRender:()=>e(u),placement:"bottomRight",styles:{root:{paddingTop:8}}},c):c}export{Re as IconBox,A as LOGOUT_ITEM_KEY,m as NavIcon,C as UserAvatar,$e as getCollapsibleKeysFromDropdownItems,De as getCollapsibleKeysFromNavItems,te as getDisplayName,Q as getDropdownItemIconSrc,ae as getInitials,Oe as getTopNavLinkProps,X as isDropdownGroupItem,re as jumpTopNavHref,Be as renderDropdownContent,D as renderDropdownItem,ee as renderDropdownItemIcon,Pe as renderUserAvatar,Ce as useTopNavCommon};
|
package/dist/constants/enums.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var t=(r=>(r.en="en-US",r.zh="zh-CN",r))(t||{}),
|
|
1
|
+
var t=(r=>(r.en="en-US",r.zh="zh-CN",r))(t||{}),l=(r=>(r.development="development",r.staging="staging",r.production="production",r))(l||{}),e=(r=>(r.home="home",r.leaderboard="leaderboard",r.models="models",r.datasets="datasets",r.tools="tools",r))(e||{}),a=(r=>(r.lightWeb="lightWeb",r.blueWeb="blueWeb",r.miniWeb="miniWeb",r.lightMiniWeb="lightMiniWeb",r.transparentWeb="transparentWeb",r))(a||{}),d=(r=>(r.llm="llm",r.mm="mm",r))(d||{});export{l as envTypeEnum,d as evaluationTypeEnum,t as langTypeEnum,e as topNavActiveKeyEnum,a as webTypeEnum};
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{default as OcHeader}from"./components/header/index.js";export{default as OcTopNav}from"./components/top-nav/index.js";export{default as OcOnlineEvaluation}from"./components/online-evaluation/index.js";export{default as OcSideNav}from"./components/side-nav/index.js";export{default as OcFooter}from"./components/footer/index.js";export{default as OcDropdown}from"./components/dropdown/dropdown.js";export{goData,goHub,goInternDiscoveryEvalKit,goKit,goOCHome,goRank,goRules}from"./google-log/home.js";export{default as OcFooterExpansion}from"./components/footer-expansion/index.js";export{default as OcMdRender}from"./components/md-render/index.js";export{envTypeEnum,evaluationTypeEnum,langTypeEnum,webTypeEnum}from"./constants/enums.js";export{getMenuData}from"./helper/index.js";
|
|
1
|
+
export{default as OcHeader}from"./components/header/index.js";export{default as OcTopNav}from"./components/top-nav/index.js";export{default as OcOnlineEvaluation}from"./components/online-evaluation/index.js";export{default as OcSideNav}from"./components/side-nav/index.js";export{default as OcFooter}from"./components/footer/index.js";export{default as OcDropdown}from"./components/dropdown/dropdown.js";export{goData,goHub,goInternDiscoveryEvalKit,goKit,goOCHome,goRank,goRules}from"./google-log/home.js";export{default as OcFooterExpansion}from"./components/footer-expansion/index.js";export{default as OcMdRender}from"./components/md-render/index.js";export{envTypeEnum,evaluationTypeEnum,langTypeEnum,topNavActiveKeyEnum,webTypeEnum}from"./constants/enums.js";export{getMenuData}from"./helper/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e,{useState as S,useEffect as W}from"react";import f from"classnames";import{CloseOutlined as q,MenuOutlined as Q}from"@ant-design/icons";import{langTypeEnum as k}from"../../../constants/enums.js";import X from"../../../assets/svg/top-nav/logo-mark.svg.js";import Y from"../../../assets/svg/top-nav/logo-word.svg.js";import ee from"../../../assets/svg/top-nav/nav-down.svg.js";import ne from"../../../assets/svg/top-nav/arena-flag-mobile.svg.js";import ae from"../../../assets/svg/top-nav/arrow-right-up.svg.js";import n from"./top-nav.module.less.js";import{useTopNavCommon as re,getTopNavLinkProps as y,getCollapsibleKeysFromNavItems as te,renderUserAvatar as le,getCollapsibleKeysFromDropdownItems as oe,isDropdownGroupItem as se,renderDropdownItemIcon as R,jumpTopNavHref as ce,renderDropdownContent as me}from"../../../components/top-nav/shared.js";var pe=Object.defineProperty,ue=Object.defineProperties,ie=Object.getOwnPropertyDescriptors,T=Object.getOwnPropertySymbols,de=Object.prototype.hasOwnProperty,Ee=Object.prototype.propertyIsEnumerable,
|
|
1
|
+
import e,{useState as S,useEffect as W}from"react";import f from"classnames";import{CloseOutlined as q,MenuOutlined as Q}from"@ant-design/icons";import{langTypeEnum as k}from"../../../constants/enums.js";import X from"../../../assets/svg/top-nav/logo-mark.svg.js";import Y from"../../../assets/svg/top-nav/logo-word.svg.js";import ee from"../../../assets/svg/top-nav/nav-down.svg.js";import ne from"../../../assets/svg/top-nav/arena-flag-mobile.svg.js";import ae from"../../../assets/svg/top-nav/arrow-right-up.svg.js";import n from"./top-nav.module.less.js";import{useTopNavCommon as re,getTopNavLinkProps as y,getCollapsibleKeysFromNavItems as te,renderUserAvatar as le,getCollapsibleKeysFromDropdownItems as oe,isDropdownGroupItem as se,renderDropdownItemIcon as R,jumpTopNavHref as ce,renderDropdownContent as me}from"../../../components/top-nav/shared.js";var pe=Object.defineProperty,ue=Object.defineProperties,ie=Object.getOwnPropertyDescriptors,T=Object.getOwnPropertySymbols,de=Object.prototype.hasOwnProperty,Ee=Object.prototype.propertyIsEnumerable,A=(m,l,o)=>l in m?pe(m,l,{enumerable:!0,configurable:!0,writable:!0,value:o}):m[l]=o,v=(m,l)=>{for(var o in l||(l={}))de.call(l,o)&&A(m,o,l[o]);if(T)for(var o of T(l))Ee.call(l,o)&&A(m,o,l[o]);return m},L=(m,l)=>ue(m,ie(l));const fe=m=>{const{brandHref:l,locale:o,onToggleLocale:K,navItems:I,arena:b,userInfo:M,userMenuItems:B,arenaLabel:$,locales:d,handleJumpLogin:j,performLogout:F,isLoggedIn:h,hasUserMenu:G}=re(m),[u,E]=S(!1),[N,_]=S(()=>new Set);W(()=>{u||_(new Set)},[u]);const O=(a,r)=>{_(t=>{const s=new Set(t);return s.has(a)?s.delete(a):(r.forEach(c=>s.delete(c)),s.add(a)),s})},C=(a,r)=>({role:"button",tabIndex:0,onClick:()=>O(a,r),onKeyDown:t=>{(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),O(a,r))}}),P=a=>{const r=N.has(a);return e.createElement("span",{className:f(n.expandBtn,r&&n.expandBtnOpen),"aria-expanded":r,"aria-label":r?"Collapse":"Expand"},e.createElement("img",{src:ee,alt:"",className:n.expandIconImg}))},x=(a,r)=>{const t=a.label||(o===k.en?a.labelEn:a.labelZh),s=a.key||a.id||`item-${r}`,c=R(a,18);return e.createElement("button",{key:s,type:"button",className:f(n.menuLink,n.menuRow),onClick:i=>{var p;(p=a.onClick)==null||p.call(a,i),!i.defaultPrevented&&(a.href&&ce(a.href,a.linkTarget),E(!1))}},c?e.createElement("span",{className:n.menuRowIcon},c):null,e.createElement("span",{className:n.menuRowLabel},t))},U=a=>{const r=oe(a);return a.map((t,s)=>{if(t.type==="divider")return null;const c=t.id||t.key||`drop-${s}`;if(se(t)){const p=t.label||(o===k.en?t.labelEn:t.labelZh),g=N.has(c),D=R(t,18);return e.createElement("div",{key:c,className:n.menuGroup},e.createElement("div",v({className:n.menuRow},C(c,r)),e.createElement("span",{className:n.menuRowIcon},D),e.createElement("span",{className:n.menuRowLabel},p),P(c)),g&&t.children?e.createElement("div",{className:n.menuSubList},t.children.map((w,V)=>x(w,V))):null)}return x(t,s)})},Z=()=>{const a=te(I);return I.map((r,t)=>{var s,c,i;const p=(c=(s=r.key)!=null?s:r.href)!=null?c:`nav-${t}`,g=o===k.en?r.labelEn:r.labelZh;if(!!((i=r.dropdownItems)!=null&&i.length)){const w=N.has(p);return e.createElement("div",{key:p,className:n.menuSection},e.createElement("div",v({className:f(n.menuRow,r.active&&n.menuRowActive)},C(p,a)),e.createElement("span",{className:n.menuRowLabel},g),P(p)),w?e.createElement("div",{className:n.menuSubList},U(r.dropdownItems)):null)}return e.createElement("a",L(v({key:p,className:f(n.menuLink,r.active&&n.menuLinkActive)},y(r.href,r.linkTarget)),{onClick:()=>E(!1)}),e.createElement("span",{className:n.menuLinkLabel},g))})},H=()=>e.createElement("a",L(v({key:"arena",className:f(n.menuLink,n.menuLinkArena)},y(b==null?void 0:b.href,b==null?void 0:b.linkTarget)),{onClick:()=>E(!1)}),e.createElement("span",{className:n.menuLinkContent},e.createElement("span",{className:n.menuLinkIcon},e.createElement("img",{src:ne,alt:""})),e.createElement("span",{className:n.menuLinkLabel},$)),e.createElement("span",{className:n.menuLinkExternalIcon},e.createElement("img",{src:ae,alt:""}))),z=a=>me({items:a,locale:o,performLogout:F,styles:n}),J=a=>le({avatarSize:32,customDropdownRender:z,dropdownTrigger:["click"],extra:a,hasUserMenu:G,isLoggedIn:h,styles:n,userInfo:M,userMenuItems:B});return e.createElement(e.Fragment,null,e.createElement("header",{className:n.topbar},e.createElement("a",L(v({className:n.brand},y(l)),{"aria-label":d.topNavBrandAria}),e.createElement("img",{className:n.brandMark,src:X,alt:""}),e.createElement("img",{className:n.brandWord,src:Y,alt:d.topNavBrandName})),e.createElement("div",{className:n.actions},u?null:e.createElement("button",{className:n.langButton,type:"button",onClick:K},d.topNavLangSwitch),u?null:h?J():e.createElement("button",{className:n.loginButton,type:"button",onClick:j},d.login),e.createElement("button",{className:n.menuButton,type:"button",onClick:()=>E(!u),"aria-label":"Toggle menu"},u?e.createElement(q,null):e.createElement(Q,null)))),u&&e.createElement(e.Fragment,null,e.createElement("div",{className:n.mask,onClick:()=>E(!1)}),e.createElement("nav",{className:n.menuContainer,"aria-label":d.topNavNavAria},Z(),H())))};export{fe as default};
|
|
@@ -7,6 +7,13 @@ declare enum envTypeEnum {
|
|
|
7
7
|
staging = "staging",
|
|
8
8
|
production = "production"
|
|
9
9
|
}
|
|
10
|
+
declare enum topNavActiveKeyEnum {
|
|
11
|
+
home = "home",
|
|
12
|
+
leaderboard = "leaderboard",
|
|
13
|
+
models = "models",
|
|
14
|
+
datasets = "datasets",
|
|
15
|
+
tools = "tools"
|
|
16
|
+
}
|
|
10
17
|
declare enum webTypeEnum {
|
|
11
18
|
lightWeb = "lightWeb",
|
|
12
19
|
blueWeb = "blueWeb",
|
|
@@ -19,4 +26,4 @@ declare enum evaluationTypeEnum {
|
|
|
19
26
|
mm = "mm"
|
|
20
27
|
}
|
|
21
28
|
|
|
22
|
-
export { envTypeEnum, evaluationTypeEnum, langTypeEnum, webTypeEnum };
|
|
29
|
+
export { envTypeEnum, evaluationTypeEnum, langTypeEnum, topNavActiveKeyEnum, webTypeEnum };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -7,8 +7,8 @@ export { default as OcDropdown } from './components/dropdown/dropdown.js';
|
|
|
7
7
|
export { goData, goHub, goInternDiscoveryEvalKit, goKit, goOCHome, goRank, goRules } from './google-log/home.js';
|
|
8
8
|
export { default as OcFooterExpansion } from './components/footer-expansion/index.js';
|
|
9
9
|
export { default as OcMdRender } from './components/md-render/index.js';
|
|
10
|
-
import { envTypeEnum, langTypeEnum, webTypeEnum } from './constants/enums.js';
|
|
11
|
-
export { envTypeEnum, evaluationTypeEnum, langTypeEnum, webTypeEnum } from './constants/enums.js';
|
|
10
|
+
import { envTypeEnum, langTypeEnum, webTypeEnum, topNavActiveKeyEnum } from './constants/enums.js';
|
|
11
|
+
export { envTypeEnum, evaluationTypeEnum, langTypeEnum, topNavActiveKeyEnum, webTypeEnum } from './constants/enums.js';
|
|
12
12
|
export { getMenuData } from './helper/index.js';
|
|
13
13
|
|
|
14
14
|
interface DefaultRespDTO<T> {
|
|
@@ -136,6 +136,8 @@ interface TopNavProps {
|
|
|
136
136
|
brandHref?: string;
|
|
137
137
|
/** 顶部导航菜单配置,根据环境有默认值 */
|
|
138
138
|
navItems?: TopNavNavItem[];
|
|
139
|
+
/** 当前激活的顶部导航菜单 key; 传入后由组件内部标记对应 navItems.active */
|
|
140
|
+
activeKey?: topNavActiveKeyEnum;
|
|
139
141
|
/** Arena 入口的文案和跳转配置,根据环境有默认值 */
|
|
140
142
|
arena?: TopNavArenaConfig;
|
|
141
143
|
/** 跳转登录回调,与 header 组件保持一致 */
|