@next-bricks/nav 1.11.28 → 1.11.29
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.
- package/dist/bricks.json +3 -3
- package/dist/chunks/{8518.cd67eca4.js → 8518.8dd93610.js} +2 -2
- package/dist/chunks/8518.8dd93610.js.map +1 -0
- package/dist/chunks/{eo-sidebar-sub-menu.37ac9fdd.js → eo-sidebar-sub-menu.11f96513.js} +3 -3
- package/dist/chunks/eo-sidebar-sub-menu.11f96513.js.map +1 -0
- package/dist/chunks/{eo-sidebar.0738149e.js → eo-sidebar.1c765223.js} +3 -3
- package/dist/chunks/eo-sidebar.1c765223.js.map +1 -0
- package/dist/chunks/{main.6863a29e.js → main.8da587cb.js} +2 -2
- package/dist/chunks/{main.6863a29e.js.map → main.8da587cb.js.map} +1 -1
- package/dist/index.5d593121.js +2 -0
- package/dist/index.5d593121.js.map +1 -0
- package/dist/manifest.json +4 -4
- package/package.json +2 -2
- package/dist/chunks/8518.cd67eca4.js.map +0 -1
- package/dist/chunks/eo-sidebar-sub-menu.37ac9fdd.js.map +0 -1
- package/dist/chunks/eo-sidebar.0738149e.js.map +0 -1
- package/dist/index.e944fea7.js +0 -2
- package/dist/index.e944fea7.js.map +0 -1
- /package/dist/chunks/{eo-sidebar-sub-menu.37ac9fdd.js.LICENSE.txt → eo-sidebar-sub-menu.11f96513.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-sidebar.0738149e.js.LICENSE.txt → eo-sidebar.1c765223.js.LICENSE.txt} +0 -0
package/dist/bricks.json
CHANGED
|
@@ -51,11 +51,11 @@
|
|
|
51
51
|
"eo-dropdown-actions",
|
|
52
52
|
"basic.show-dialog"
|
|
53
53
|
],
|
|
54
|
-
"
|
|
54
|
+
"nav.easyops-navbar-alerts": [
|
|
55
55
|
"eo-icon",
|
|
56
56
|
"eo-link"
|
|
57
57
|
],
|
|
58
|
-
"
|
|
58
|
+
"eo-launchpad-button": [
|
|
59
59
|
"eo-icon",
|
|
60
60
|
"eo-link"
|
|
61
61
|
],
|
|
@@ -132,5 +132,5 @@
|
|
|
132
132
|
"eo-link"
|
|
133
133
|
]
|
|
134
134
|
},
|
|
135
|
-
"filePath": "bricks/nav/dist/index.
|
|
135
|
+
"filePath": "bricks/nav/dist/index.5d593121.js"
|
|
136
136
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[8518],{1283:(e,t,r)=>{r.d(t,{s:()=>f});var a=r(8769),o=r.n(a),n=r(3373),i=r.n(n),l=r(9527),c=r(1030),s=r(1389),p=r(4612),u=r(7522),m=r(5904);(0,m.initializeReactI18n)(u.NS,u.I);const d=(0,s.wrapBrick)("eo-popover"),g=(0,s.wrapBrick)("eo-search",{onChange:"change",onSearch:"search"}),h=(0,s.wrapBrick)("eo-icon"),v="threeLevelCategoryMenu",x=6;function f(e){const{t}=(0,m.useTranslation)(u.NS),{menuItem:r,selectedKey:n}=e,s=r.items,[f,E]=(0,a.useState)([]),[b,y]=(0,a.useState)(""),_=(0,a.useRef)(null),k=`${v}_${r.title}`,C=(0,a.useMemo)((()=>new p.G(localStorage)),[]),w=C.getItem(k)||[],A=()=>{var e;null===(e=_.current)||void 0===e||e.click()};return o().createElement("div",{className:"three-level-menu-container"},o().createElement("div",{className:"three-level-menu-search-container",onClick:e=>{e.stopPropagation()}},o().createElement(g,{placeholder:t(u.K.SEARCH_BY_MENU_NAME),onSearch:e=>{if(y(e.detail),e.detail){const t=(0,c.uniq)([e.detail,...w]);t.length>x&&t.pop(),C.setItem(k,t),E(s.flatMap((e=>e.items||[])).filter((t=>t.text.toLowerCase().includes(e.detail.trim().toLowerCase()))))}else E([])},onFocus:A,onBlur:A}),o().createElement(d,{trigger:"click",placement:"bottom-start",anchorDisplay:"block",distance:0},o().createElement("div",{slot:"anchor",ref:_}),o().createElement("div",{className:"three-level-menu-search-result"},!!f.length&&f.map((e=>(0,l.q5)(e,{width:"100%"}))),b&&!f.length&&o().createElement("div",{style:{height:"100px",textAlign:"center",lineHeight:"100px"}},t(u.K.NO_DATA))))),!!w.length&&o().createElement("div",{className:"three-level-menu-search-history-container"},o().createElement("div",{className:"three-level-menu-search-history-title"},t(u.K.SEARCH_HISTORY),o().createElement(h,{lib:"antd",theme:"outlined",icon:"delete",className:"three-level-menu-search-history-icon"})),o().createElement("div",null,w.map((e=>o().createElement("span",{key:e,className:"three-level-menu-search-history-text"},e))))),o().createElement("div",{className:"three-level-menu-item-container",style:{gridTemplateColumns:`repeat(${s.length>4?4:s.length},1fr)`}},s.map(((e,t)=>{var r;return o().createElement("div",{key:t},o().createElement("div",{className:"three-level-menu-item-title-container"},o().createElement("span",{className:"three-level-menu-item-title-icon"}),o().createElement("span",{className:"three-level-menu-item-title"},e.title)),null===(r=e.items)||void 0===r?void 0:r.map((e=>o().createElement("span",{key:e.key,className:i()({active:!!e.key&&n.includes(e.key)})},(0,l.q5)(e,{width:"100%"})))))}))))}},7522:(e,t,r)=>{r.d(t,{I:()=>n,K:()=>a,NS:()=>o});let a=function(e){return e.SEARCH_BY_MENU_NAME="SEARCH_BY_MENU_NAME",e.SEARCH_HISTORY="SEARCH_HISTORY",e.NO_DATA="NO_DATA",e.QUICK_ACCESS="QUICK_ACCESS",e.REMOVE_ITEM_FROM_QUICK_ACCESS="REMOVE_ITEM_FROM_QUICK_ACCESS",e.ADD_ITEM_TO_QUICK_ACCESS="ADD_ITEM_TO_QUICK_ACCESS",e.NO_DATA_TIPS_IN_QUICK_ACCESS="NO_DATA_TIPS_IN_QUICK_ACCESS",e.SITE_MAP_SEARCH_RECOMMEND="SITE_MAP_SEARCH_RECOMMEND",e.MAX_COLLECT_COUNT_TIPS="MAX_COLLECT_COUNT_TIPS",e.NO_DATA_SEARCH_INFO="NO_DATA_SEARCH_INFO",e.SEARCH_ITEM_PLACEHOLDER="SEARCH_ITEM_PLACEHOLDER",e}({});const o="bricks/nav/nav-menu",n={en:{SEARCH_BY_MENU_NAME:"Search by menu name",SEARCH_HISTORY:"Search history",NO_DATA:"No data",QUICK_ACCESS:"Quick Access",REMOVE_ITEM_FROM_QUICK_ACCESS:"Remove from Quick Access",ADD_ITEM_TO_QUICK_ACCESS:"Add to Quick Access",NO_DATA_TIPS_IN_QUICK_ACCESS:"No quick access resources have been added yet. Please add from the list below or after searching",SITE_MAP_SEARCH_RECOMMEND:"Search recommend",MAX_COLLECT_COUNT_TIPS:"Need to delete some favorites in order to add",NO_DATA_SEARCH_INFO:"The search result is empty, please enter again",SEARCH_ITEM_PLACEHOLDER:"Please enter keywords to search"},zh:{SEARCH_BY_MENU_NAME:"通过菜单名称搜索",SEARCH_HISTORY:"历史搜索",NO_DATA:"暂无数据",QUICK_ACCESS:"快捷访问",REMOVE_ITEM_FROM_QUICK_ACCESS:"从快捷访问移除",ADD_ITEM_TO_QUICK_ACCESS:"添加至快捷访问",NO_DATA_TIPS_IN_QUICK_ACCESS:"暂未添加快捷访问资源,从下方列表或搜索后添加",SITE_MAP_SEARCH_RECOMMEND:"搜索推荐",MAX_COLLECT_COUNT_TIPS:"需删除部分收藏,才能添加",NO_DATA_SEARCH_INFO:"搜索结果为空,请重新输入",SEARCH_ITEM_PLACEHOLDER:"请输入关键词搜索"}}},9044:(e,t,r)=>{r.d(t,{bw:()=>L});var a=r(8769),o=r.n(a),n=r(1389),i=r(9575),l=r(3373),c=r.n(l),s=r(7522),p=r(4586),u=r(5343),m=r(4156);let d=function(e){return e.Left="left",e.Right="right",e}({});const g="sidebarMenuCollect",h=o().createContext({});var v=r(1030),x=r(1094);const f=new class{constructor(e){(0,p.A)(this,"maxCollectLength",void 0),(0,p.A)(this,"collectMap",new Map),(0,p.A)(this,"collectPromise",new Map),this.maxCollectLength=e??10}getFavoritesById(e){return(0,v.cloneDeep)(this.collectMap.get(e))??[]}async fetchFavorites(e){const t=this.collectPromise.get(e);if(t){return this.collectMap.get(e)||t}const r=(0,u.Q)({module:g,collectionName:e}).then((t=>{var r;const a=null===(r=t.payloads)||void 0===r?void 0:r.map((e=>e.extInfo)).filter(Boolean);return this.collectMap.set(e,a),a}));return this.collectPromise.set(e,r),r}setItemAsFavorite(e,t){const r=this.getFavoritesById(e);r.length>=this.maxCollectLength&&r.pop(),r.unshift(t),this.updateFavoriteItems(e,r)}updateFavoriteItems(e,t){try{this.collectMap.set(e,t),(0,m.B)({module:g,collectionName:e,payloads:null==t?void 0:t.map((e=>({name:e.text,url:e.to,extInfo:e})))})}catch(e){(0,x.handleHttpError)(e)}}equalItem(e,t){return e.text===t.text&&e.to===t.to}removeItemFromFavorite(e,t){const r=this.getFavoritesById(e),a=r.findIndex((e=>this.equalItem(e,t)));-1!==a&&(r.splice(a,1),this.updateFavoriteItems(e,r))}isCollected(e,t){return this.getFavoritesById(e).some((e=>this.equalItem(e,t)))}toggleFavorite(e,t){if(this.isCollected(e,t))this.removeItemFromFavorite(e,t);else{if(this.checkMaxCapacity(e))return;this.setItemAsFavorite(e,t)}}moveFavoriteTo(e,t){const{from:r,to:a,direction:o}=t,n=this.getFavoritesById(e);if(this.equalItem(r,a))return n;const i=n.findIndex((e=>this.equalItem(e,r)));if(-1!==i){n.splice(i,1);const t=n.findIndex((e=>this.equalItem(e,a)));-1!==t&&(o===d.Left?n.splice(t,0,r):n.splice(t+1,0,r),this.updateFavoriteItems(e,n))}return n}checkMaxCapacity(e){return this.getFavoritesById(e).length>=this.maxCollectLength}};var E=r(5904);(0,E.initializeReactI18n)(s.NS,s.I);const b=(0,n.wrapBrick)("eo-link"),y=(0,n.wrapBrick)("eo-icon"),_=(0,n.wrapBrick)("eo-tooltip");function k(e){let{data:t,onDragOver:r,direction:n}=e;const{groupId:i,onFavoriteUpdate:l}=(0,a.useContext)(h);return o().createElement("div",{className:"indicate-wrapper","data-direction":n,"data-to":t.to,onDragEnter:e=>e.target.style.background="var(--palette-blue-1)",onDragLeave:e=>e.target.style.background="transparent","data-text":t.text,onDragOver:r,onDrop:e=>{const r=JSON.parse(e.dataTransfer.getData("application/json")),a=f.moveFavoriteTo(i,{from:r,to:t,direction:n});null==l||l(a)}})}function C(e){const{data:t,suffix:r,className:n}=e,{allowDrag:i,onDragStart:l,overElement:s,direction:p,onDragEnd:u,onDragOver:m}=(0,a.useContext)(h),g=(0,a.useRef)(null),[v,x]=(0,a.useState)(!1),f=(0,a.useMemo)((()=>s&&s.dataset.to==t.to&&s.dataset.text==s.dataset.text),[s,t]);return o().createElement(o().Fragment,null,f&&p===d.Left&&o().createElement(k,{data:t,onDragOver:m,direction:d.Left}),o().createElement(b,{"data-to":t.to,"data-text":t.text,ref:g,draggable:!0,onDragStart:e=>{var r;i?(x(!0),null===(r=e.dataTransfer)||void 0===r||r.setData("application/json",JSON.stringify(t)),null==l||l(e)):e.preventDefault()},onDragEnd:e=>{x(!1),null==u||u(e)},onDragOver:e=>{e.dataTransfer.dropEffect="none",null==m||m(e)},className:c()("tag-container",n,{"is-drag":v}),url:t.to,href:t.href,target:t.target},o().createElement("span",{className:"tag-text ellipsis",title:t.text},t.text),o().createElement("span",{className:"tag-suffix",onClick:e=>e.preventDefault()},r)),f&&p===d.Right&&o().createElement(k,{data:t,onDragOver:m,direction:d.Right}))}function w(e){const{t}=(0,E.useTranslation)(s.NS),{onAllowDrag:r}=(0,a.useContext)(h),{data:n,onFavorite:i,groupId:l}=e,c=(0,a.useRef)(),p=(0,a.useRef)(),u=(0,a.useCallback)((()=>{f.removeItemFromFavorite(l,n),null==i||i(f.getFavoritesById(l))}),[l,n,i]),m=()=>{null==r||r(!0)};(0,a.useEffect)((()=>{const e=p.current;return e.addEventListener("click",u),()=>{e.removeEventListener("click",u)}}),[u]),(0,a.useEffect)((()=>{const e=c.current,t=e=>{e.preventDefault()};return e.addEventListener("click",t),()=>{e.removeEventListener("click",t)}}),[]);const d=(0,a.useMemo)((()=>o().createElement("div",{className:"operation",ref:c},o().createElement(_,{content:t(s.K.REMOVE_ITEM_FROM_QUICK_ACCESS),hoist:!0,placement:"bottom",className:"close"},o().createElement(y,{lib:"antd",icon:"close",ref:p})),o().createElement("span",{className:"drag-wrapper",onMouseDown:m},":::"))),[t,u]);return o().createElement(C,{className:"visit-container",suffix:d,data:n})}function A(e){let{onFavorite:t,className:r,groupId:n,data:l,active:p}=e;const{t:u}=(0,E.useTranslation)(s.NS),m=(0,a.useRef)(),d=e=>{e.preventDefault(),f.toggleFavorite(n,l),null==t||t(f.getFavoritesById(n))};return(0,a.useEffect)((()=>{const e=m.current;return e.addEventListener("click",d),()=>{e.removeEventListener("click",d)}}),[]),o().createElement(_,{content:p?u(s.K.REMOVE_ITEM_FROM_QUICK_ACCESS):f.checkMaxCapacity(n)?u(s.K.MAX_COLLECT_COUNT_TIPS):u(s.K.ADD_ITEM_TO_QUICK_ACCESS),className:c()("star-icon",r)},o().createElement(y,(0,i.A)({ref:m,className:c()({active:p}),lib:"antd",icon:"star"},p?{theme:"filled"}:{})))}function S(e){const{data:t,className:r,groupId:n,onFavorite:i,active:l}=e,s=(0,a.useMemo)((()=>o().createElement(A,{groupId:n,active:l,className:"star",data:t,onFavorite:i})),[t,n,i,l]);return o().createElement(C,{className:c()("recommend-container",r),suffix:s,data:t})}function I(e,t){"group"===e.type&&Array.isArray(e.items)?function(e,t){for(const r of e)I(r,t)}(e.items,t):t.push(e)}const N=(0,n.wrapBrick)("eo-link"),M=240;function T(e){const{groupId:t,selectedKey:r,onFavorite:a}=e,n=function(e){const t=new Map,r=new Set;return null==e||e.forEach((e=>{const a=e.groupFrom??"default";r.add(a);const o=t.get(a);o?o.push(e):t.set(a,[e])})),Array.from(r).map((e=>({groupFrom:e,groups:t.get(e)})))}(e.groups);return o().createElement("div",{className:"group-view"},n.map(((e,n)=>o().createElement("div",{key:n},0!==n&&o().createElement("div",{className:"divider"}),"default"===e.groupFrom?o().createElement(O,{groupId:t,selectedKey:r,groups:e.groups,onFavorite:a}):o().createElement(R,{groupId:t,selectedKey:r,groups:e.groups,onFavorite:a})))))}function O(e){const{groupId:t,onFavorite:r,selectedKey:n,groups:i}=e,l=o().useRef(null),[c,s]=(0,a.useState)();return(0,a.useEffect)((()=>{const e=new ResizeObserver((e=>{for(const t of e)if(t.target===l.current){const e=t.contentRect.width;e&&s(Math.floor(e/M))}}));return e.observe(l.current),()=>e.disconnect()}),[]),o().createElement("div",{className:"group",ref:l,style:c<(null==i?void 0:i.length)?{columnCount:c,columnWidth:M}:{display:"grid",gridTemplateColumns:`repeat(auto-fit, ${M}px)`}},i.map((e=>o().createElement("div",{key:e.key,className:"group-item"},o().createElement("div",{className:"title"},e.title),o().createElement("div",{className:"content"},e.items.map((e=>o().createElement(D,{key:e.key,groupId:t,selectedKey:n,data:e,onFavorite:r}))))))))}function R(e){const{groupId:t,onFavorite:r,selectedKey:a,groups:n}=e;return o().createElement("div",{className:"custom-group"},n.map((e=>o().createElement("div",{key:e.key},o().createElement("div",{className:"title"},e.title),o().createElement("div",{className:"custom-content",style:{display:"grid",gridTemplateColumns:`repeat(auto-fit, ${M}px)`}},e.items.map((e=>o().createElement(D,{key:e.key,selectedKey:a,groupId:t,data:e,onFavorite:r}))))))))}function D(e){const{data:t,groupId:r,onFavorite:a,selectedKey:n}=e;return o().createElement(N,{key:t.key,icon:t.icon,url:t.to,href:t.href,target:t.target,className:c()("item-link",{active:null==n?void 0:n.includes(t.key)})},o().createElement("span",{className:"ellipsis",title:t.text},t.text),o().createElement("span",{className:"icon-wrapper"},o().createElement(A,{active:f.isCollected(r,t),groupId:r,data:t,onFavorite:a})))}const F=(0,n.wrapBrick)("eo-icon"),K=(0,n.wrapBrick)("eo-input",{onValueChange:"change"});function L(e){const{t}=(0,E.useTranslation)(s.NS),{menuGroup:r,selectedKey:n,visible:i}=e,l=r.groupId,[p,u]=(0,a.useState)([]),m=(0,a.useMemo)((()=>function(e){const t=[];return I(e,t),t}(r)),[r]),[g,x]=(0,a.useState)(),[b,y]=(0,a.useState)([]),[_,k]=(0,a.useState)(),[C,A]=(0,a.useState)(),[N,M]=(0,a.useState)(),[O,R]=(0,a.useState)(),[D,L]=(0,a.useState)(!1);(0,a.useEffect)((()=>{i&&!D&&L(!0)}),[i,D]);const H=e=>{u(e)},P=(0,a.useCallback)((e=>{const t=e.detail;x(e.detail),y(t?m.filter((t=>t.text.toLowerCase().includes(e.detail.toLowerCase()))):m)}),[m]),U=(0,a.useMemo)((()=>(0,v.debounce)(P,200)),[P]),B=(0,a.useMemo)((()=>(0,v.throttle)((e=>{e.preventDefault();const t=function(e){let t=e;for(;t;){if(t.draggable||"indicate-wrapper"===t.className)return t;t=t.parentElement}}(e.target);if(A(t),t&&function(e,t){return e&&t&&!(e.dataset.to===t.dataset.to&&e.dataset.text===t.dataset.text)}(t,_))if("indicate-wrapper"===t.className)R(t.dataset.direction);else{const{width:r,left:a}=t.getBoundingClientRect(),o=e.clientX>a+r/2;R(o?d.Right:d.Left)}else R(void 0)}))),[_]);return(0,a.useEffect)((()=>{(async()=>{if(i){const e=await f.fetchFavorites(l);u(e)}})()}),[l,i]),D&&o().createElement("div",{className:"site-map"},o().createElement("div",{className:"search-wrapper"},o().createElement(K,{className:"search-input",style:{width:"100%"},onValueChange:U,placeholder:t(s.K.SEARCH_ITEM_PLACEHOLDER)},o().createElement(F,{slot:"prefix",lib:"antd",icon:"search"}))),!g&&o().createElement("div",null,0!==p.length&&o().createElement("div",{className:c()("visit-access",{hasData:p.length})},o().createElement("span",{className:"title"},t(s.K.QUICK_ACCESS)),o().createElement(h.Provider,{value:{groupId:l,overElement:C,direction:O,allowDrag:N,onDragStart:e=>{k(e.target)},onDragOver:B,onDragEnd:()=>{k(void 0),R(void 0),M(!1)},onAllowDrag:e=>{M(e)},onFavoriteUpdate:H}},o().createElement("div",{className:"tag-wrapper"},p.map((e=>o().createElement(w,{onFavorite:H,groupId:l,key:e.key,data:e})))))),o().createElement(T,{groupId:l,selectedKey:n,groups:r.items,onFavorite:H})),g&&o().createElement("div",{className:"search-panel"},o().createElement("span",{className:"title"},t(s.K.SITE_MAP_SEARCH_RECOMMEND)),b.length?o().createElement("div",{className:"recommend-wrapper"},b.map((e=>o().createElement(S,{key:e.key,groupId:l,data:e,onFavorite:H,active:f.isCollected(l,e)})))):o().createElement("div",{className:"no-data-tips"},t(s.K.NO_DATA_SEARCH_INFO))))}},9527:(e,t,r)=>{r.d(t,{Gn:()=>u,IZ:()=>c,Wf:()=>s,q5:()=>p});var a=r(8769),o=r.n(a),n=r(1389);const i=(0,n.wrapBrick)("eo-icon"),l=(0,n.wrapBrick)("eo-link");function c(e){return"group"===e.type}function s(e,t){return Boolean("subMenu"===e.type||t&&"group"===e.type)}const p=(e,t)=>o().createElement(l,{type:"plain",key:e.key,url:e.to,href:e.href,target:e.target,style:t},o().createElement("span",{className:"menu-item-label"},e.text)),u=(e,t)=>o().createElement("span",{key:e.key,className:"menu-item-label"},e.title,t&&o().createElement(i,{lib:"fa",icon:"angle-right"}))},2605:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,':root{--eo-three-level-menu-search-input-background:linear-gradient(90deg,#e8eef6 0%,rgba(233,234,243,0) 100%);--eo-three-level-menu-hover-color:#6bb3ff;--eo-three-level-menu-title-color:#0b5ad9;--eo-three-level-menu-active-color:#1a7aff;--eo-three-level-menu-search-tag-color:rgb(89,89,89);--eo-three-level-menu-search-tag-background:rgb(245,245,245)}html[data-theme="dark"],\nhtml[data-theme="dark-v2"]{--eo-three-level-menu-search-input-background:linear-gradient(124deg,rgba(255,255,255,0.36) 0%,rgba(255,255,255,0) 100%);--eo-three-level-menu-hover-color:rgba(54,95,175,0.85);--eo-three-level-menu-title-color:#6597e8;--eo-three-level-menu-active-color:#3f75dd;--eo-three-level-menu-search-tag-color:rgb(140,140,140);--eo-three-level-menu-search-tag-background:rgb(107,107,107)}',""]);const l=i},6370:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,":host{display:inline-block;background:none}:host::part(menu-item),\neo-link{display:block}eo-menu-item{margin:4px 0}.sub-menu-wrapper eo-menu-item:first-child,\n.group-wrapper eo-menu-item:first-child{margin-top:0}.sub-menu-wrapper eo-menu-item:last-child{margin-bottom:0}.nav-menu-wrapper{display:flex;align-items:center;gap:8px;white-space:nowrap}.popover .sub-menu-item-label{padding:2px 0px;color:var(--color-normal-text)}.popover.subprime{display:block;width:100%}.sub-menu-wrapper{min-width:160px;max-height:calc(100vh - 100px);background-color:var(--antd-dropdown-menu-bg);padding:12px 0;border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-wrapper{display:flex;flex-direction:column}.sub-menu-wrapper > eo-menu-item{display:block;width:100%}.sub-menu-wrapper > eo-menu-item .menu-item-label,\n.sub-menu-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-menu-item .menu-item-label{display:block;width:100%;padding:7px 24px;box-sizing:border-box;line-height:22px;color:var(--color-normal-text)}.sub-menu-wrapper > eo-popover.subprime .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover.subprime .menu-item-label{display:flex;justify-content:space-between;align-items:center}.sub-menu-wrapper .menu-item-label{border-radius:0}.menu-item-label{display:inline-block;cursor:pointer;border-radius:4px;padding:1px 8px;line-height:22px;color:var(--nav-menu-item-label-color)}.menu-item-label:hover{background-color:var(--top-menu-item-hover-bg)}.group-label{padding-left:16px;font-size:12px;color:var(--palette-gray-7);padding:8px 16px;line-height:20px;margin-top:4px}.sub-menu-wrapper .group-label:first-child{margin-top:0px}.sub-menu-wrapper eo-menu-item[active] .menu-item-label{background:var(--top-menu-item-selected-bg);color:var(--color-brand);font-weight:500}.three-level-menu-container{max-width:980px;max-height:510px;overflow:auto;min-width:160px}.three-level-menu-item-container{display:grid;gap:20px;margin-top:13px;padding:5px 10px}.three-level-menu-item-title-container{display:flex;align-items:center}.three-level-menu-item-title-icon{width:4px;height:4px;background-color:var(--eo-three-level-menu-title-color);margin-right:4px;transform:rotate(45deg)}.three-level-menu-item-title{font-size:14px;font-family:PingFang-SC-Medium,PingFang-SC;font-weight:500;color:var(--eo-three-level-menu-title-color)}.three-level-menu-container .menu-item-label{margin-top:4px;margin-left:4px;padding:4px;width:100%}.three-level-menu-container .active .menu-item-label{color:var(--eo-three-level-menu-active-color)}.three-level-menu-search-result .menu-item-label{margin:0px}.three-level-menu-container .menu-item-label:hover{color:var(--eo-three-level-menu-hover-color)}.three-level-menu-popover .sub-menu-wrapper{padding-top:0px}.three-level-menu-search-container{background:var(--eo-three-level-menu-search-input-background);padding:5px 10px}.three-level-menu-search-result{min-width:187px;max-width:328px;max-height:324px;background-color:var(--antd-dropdown-menu-bg);box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow:scroll}.three-level-menu-search-history-container{padding:5px 10px}.three-level-menu-search-history-text{background:var(--eo-three-level-menu-search-tag-background);border-radius:2px;font-size:7px;line-height:11px;display:inline-block;height:11px;padding:4px;color:var(--eo-three-level-menu-search-tag-color);margin-right:8px}.three-level-menu-search-history-title{color:#8c8c8c;margin:10px 0;display:flex;align-items:center}.three-level-menu-search-history-icon{margin-left:5px}.sub-menu-sit-map-wrapper{box-sizing:border-box;width:calc(100vw);padding:0 60px 24px;max-height:520px;background-color:var(--antd-dropdown-menu-bg);border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-item{position:absolute;opacity:0;height:0;pointer-events:none}.in-group-site-map{width:auto;padding:0 20px}",""]);const l=i.toString()},1122:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,'.group .item-link, .custom-group .item-link{font-weight:400}.group .item-link:hover, .custom-group .item-link:hover{background-color:var(--color-fill-bg-base-1)}.group .item-link:hover::part(link), .custom-group .item-link:hover::part(link){color:var(--color-brand-hover)}.group .item-link:hover::part(icon), .custom-group .item-link:hover::part(icon){color:var(--color-brand-hover)}.group .item-link.active::part(link),\n .custom-group .item-link.active::part(link),\n .group .item-link.active::part(icon),\n .custom-group .item-link.active::part(icon){color:var(--palette-blue-8)}.group .item-link::part(link), .custom-group .item-link::part(link){padding:8px 12px 8px 24px;display:flex;gap:4px;color:var(--color-header-text)}.group .item-link::part(icon), .custom-group .item-link::part(icon){color:var(--color-normal-text)}.group .title, .custom-group .title{padding:8px 16px 8px 24px;font-size:16px;font-weight:500;position:relative}.group .title::before, .custom-group .title::before{content:"";position:absolute;width:6px;height:6px;top:17px;left:9px;transform:rotate(45deg);background:var(--color-secondary-text)}.group .content .icon-wrapper, .custom-group .content .icon-wrapper, .group .custom-content .icon-wrapper, .custom-group .custom-content .icon-wrapper{color:var(--color-secondary-text);font-size:16px;display:none;margin-left:auto}.group .content .item-link:hover .icon-wrapper, .custom-group .content .item-link:hover .icon-wrapper, .group .custom-content .item-link:hover .icon-wrapper, .custom-group .custom-content .item-link:hover .icon-wrapper{display:block}.group .content .item-link:hover .icon-wrapper:hover, .custom-group .content .item-link:hover .icon-wrapper:hover, .group .custom-content .item-link:hover .icon-wrapper:hover, .custom-group .custom-content .item-link:hover .icon-wrapper:hover{color:var(--color-brand-hover)}.group .content, .custom-group .content{display:flex;flex-direction:column}.group .group-item, .custom-group .group-item{page-break-inside:avoid;break-inside:avoid}.group-view{min-height:300px}.group-view .divider{height:2px;background:var(--color-text-divider-line);margin:16px 0}',""]);const l=i.toString()},839:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,".tag-container::part(link){display:flex;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-moz-user-select:none;justify-content:space-between;background-color:var(--color-fill-bg-base-1);border-radius:2px;padding:1px 6px}.tag-container .tag-text{color:var(--color-normal-text);font-weight:400}.tag-container:hover .tag-text{color:var(--color-brand-hover)}.tag-container .tag-suffix{display:inline-flex;font-size:12px;gap:4px;align-items:center;color:var(--color-secondary-text)}.tag-container.is-drag{opacity:0.4}.indicate-wrapper{border:1px dashed var(--color-brand-hover);border-radius:4px;height:20px;margin:2px 0}.close{display:inline-flex;margin-top:2px;padding:0 2px}.close:hover{color:var(--color-error)}.drag-wrapper{cursor:move}.drag-wrapper:hover{color:var(--color-brand-hover)}.star-icon{display:flex;alignitems:center;color:var(--color-secondary-text)}.star-icon:hover{color:var(--color-brand-hover)}.star-icon .active{color:var(--palette-yellow-6)}.recommend-container:hover .star{display:inline-flex}.recommend-container .star{font-size:13px;display:none}.visit-container:hover .operation{display:inline-flex;align-items:center}.visit-container .operation{display:none}",""]);const l=i.toString()},9998:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,'.site-map .search-wrapper{position:sticky;top:0;z-index:9999;padding-top:24px;padding-bottom:16px;background:var(--antd-dropdown-menu-bg)}.site-map .search-input::part(affix-wrapper){border:none;border-bottom:1px solid var(--antd-input-border-color);border-radius:0px;background:transparent}.site-map .visit-access .title, .site-map .search-panel .title{display:inline-block;padding:2px 16px 2px 24px;font-weight:500;line-height:24px;position:relative}.site-map .visit-access .title::before, .site-map .search-panel .title::before{content:"";position:absolute;width:6px;height:6px;top:10px;left:9px;border-radius:50%;background:var(--color-secondary-text)}.site-map .visit-access .no-data-tips, .site-map .search-panel .no-data-tips{display:flex;margin:16px 0 32px;align-items:center;justify-content:center;color:var(--color-secondary-text)}.site-map .visit-access{margin-bottom:8px}.site-map .visit-access.hasData{display:flex}.site-map .visit-access .tag-wrapper{flex:1;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}.site-map .ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-map .search-panel .recommend-wrapper{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}',""]);const l=i.toString()},4211:(e,t,r)=>{var a=r(2591),o=r.n(a),n=r(1740),i=r.n(n),l=r(8128),c=r.n(l),s=r(855),p=r.n(s),u=r(3051),m=r.n(u),d=r(3656),g=r.n(d),h=r(2605),v={};v.styleTagTransform=g(),v.setAttributes=p(),v.insert=c().bind(null,"head"),v.domAPI=i(),v.insertStyleElement=m(),o()(h.A,v),h.A&&h.A.locals&&h.A.locals},764:(e,t,r)=>{r.d(t,{IZ:()=>n,LP:()=>l,Wf:()=>i});var a=r(1201),o=r(1094);function n(e){return"group"===e.type}function i(e,t){return Boolean("subMenu"===e.type||t&&"group"===e.type)}function l(e,t,r,s){const p=[],u=[],m=[];let d=0;return e&&e.forEach((e=>{if(e.key=""===s?`${d}`:`${s}.${d}`,n(e)||i(e)){const a=l(e.items,t,r,e.key);p.push(...a.selectedKeys),(a.selectedKeys.length||e.defaultExpanded)&&u.push(e.key),u.push(...a.openedKeys),m.push(...a.matchedKeys)}else if(function(e,t,r){if(!e.to)return!1;const n="object"==typeof e.to?e.to:(0,a.parsePath)(e.to),i=n.pathname.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1");let l=!!(0,o.matchPath)(t,{path:i,exact:e.exact});if(l&&e.activeMatchSearch&&(l=c(r,n.search)),!l&&Array.isArray(e.activeIncludes))for(const n of e.activeIncludes){var s;let e;const i=n.includes("?");if(i&&(e=(0,a.parsePath)(n)),l=!!(0,o.matchPath)(t,{path:i?e.pathname:n,exact:!0}),l&&null!==(s=e)&&void 0!==s&&s.search&&(l=c(r,e.search)),l)break}if(l&&Array.isArray(e.activeExcludes))for(const r of e.activeExcludes)if(l=!(0,o.matchPath)(t,{path:r,exact:!0}),!l)break;return l}(e,t,r)){p.push(String(e.key));const t=e.key.split(".");for(let e=0;e<t.length;e++)m.push(t.slice(0,e+1).join("."))}d+=1})),p.length&&""!==s&&u.push(s),{selectedKeys:p,openedKeys:u,matchedKeys:m}}function c(e,t){const r=new URLSearchParams(e),a=new URLSearchParams(t);for(const[e,t]of a.entries())if((r.get(e)??"")!==t)return!1;return!0}}}]);
|
|
2
|
-
//# sourceMappingURL=8518.
|
|
1
|
+
"use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[8518],{1283:(e,t,r)=>{r.d(t,{s:()=>f});var a=r(8769),o=r.n(a),n=r(3373),i=r.n(n),l=r(9527),c=r(1030),s=r(1389),p=r(4612),u=r(7522),m=r(5904);(0,m.initializeReactI18n)(u.NS,u.I);const d=(0,s.wrapBrick)("eo-popover"),g=(0,s.wrapBrick)("eo-search",{onChange:"change",onSearch:"search"}),h=(0,s.wrapBrick)("eo-icon"),v="threeLevelCategoryMenu",x=6;function f(e){const{t}=(0,m.useTranslation)(u.NS),{menuItem:r,selectedKey:n}=e,s=r.items,[f,E]=(0,a.useState)([]),[b,y]=(0,a.useState)(""),_=(0,a.useRef)(null),k=`${v}_${r.title}`,C=(0,a.useMemo)((()=>new p.G(localStorage)),[]),w=C.getItem(k)||[],A=()=>{var e;null===(e=_.current)||void 0===e||e.click()};return o().createElement("div",{className:"three-level-menu-container"},o().createElement("div",{className:"three-level-menu-search-container",onClick:e=>{e.stopPropagation()}},o().createElement(g,{placeholder:t(u.K.SEARCH_BY_MENU_NAME),onSearch:e=>{if(y(e.detail),e.detail){const t=(0,c.uniq)([e.detail,...w]);t.length>x&&t.pop(),C.setItem(k,t),E(s.flatMap((e=>e.items||[])).filter((t=>t.text.toLowerCase().includes(e.detail.trim().toLowerCase()))))}else E([])},onFocus:A,onBlur:A}),o().createElement(d,{trigger:"click",placement:"bottom-start",anchorDisplay:"block",distance:0},o().createElement("div",{slot:"anchor",ref:_}),o().createElement("div",{className:"three-level-menu-search-result"},!!f.length&&f.map((e=>(0,l.q5)(e,{width:"100%"}))),b&&!f.length&&o().createElement("div",{style:{height:"100px",textAlign:"center",lineHeight:"100px"}},t(u.K.NO_DATA))))),!!w.length&&o().createElement("div",{className:"three-level-menu-search-history-container"},o().createElement("div",{className:"three-level-menu-search-history-title"},t(u.K.SEARCH_HISTORY),o().createElement(h,{lib:"antd",theme:"outlined",icon:"delete",className:"three-level-menu-search-history-icon"})),o().createElement("div",null,w.map((e=>o().createElement("span",{key:e,className:"three-level-menu-search-history-text"},e))))),o().createElement("div",{className:"three-level-menu-item-container",style:{gridTemplateColumns:`repeat(${s.length>4?4:s.length},1fr)`}},s.map(((e,t)=>{var r;return o().createElement("div",{key:t},o().createElement("div",{className:"three-level-menu-item-title-container"},o().createElement("span",{className:"three-level-menu-item-title-icon"}),o().createElement("span",{className:"three-level-menu-item-title"},e.title)),null===(r=e.items)||void 0===r?void 0:r.map((e=>o().createElement("span",{key:e.key,className:i()({active:!!e.key&&n.includes(e.key)})},(0,l.q5)(e,{width:"100%"})))))}))))}},7522:(e,t,r)=>{r.d(t,{I:()=>n,K:()=>a,NS:()=>o});let a=function(e){return e.SEARCH_BY_MENU_NAME="SEARCH_BY_MENU_NAME",e.SEARCH_HISTORY="SEARCH_HISTORY",e.NO_DATA="NO_DATA",e.QUICK_ACCESS="QUICK_ACCESS",e.REMOVE_ITEM_FROM_QUICK_ACCESS="REMOVE_ITEM_FROM_QUICK_ACCESS",e.ADD_ITEM_TO_QUICK_ACCESS="ADD_ITEM_TO_QUICK_ACCESS",e.NO_DATA_TIPS_IN_QUICK_ACCESS="NO_DATA_TIPS_IN_QUICK_ACCESS",e.SITE_MAP_SEARCH_RECOMMEND="SITE_MAP_SEARCH_RECOMMEND",e.MAX_COLLECT_COUNT_TIPS="MAX_COLLECT_COUNT_TIPS",e.NO_DATA_SEARCH_INFO="NO_DATA_SEARCH_INFO",e.SEARCH_ITEM_PLACEHOLDER="SEARCH_ITEM_PLACEHOLDER",e}({});const o="bricks/nav/nav-menu",n={en:{SEARCH_BY_MENU_NAME:"Search by menu name",SEARCH_HISTORY:"Search history",NO_DATA:"No data",QUICK_ACCESS:"Quick Access",REMOVE_ITEM_FROM_QUICK_ACCESS:"Remove from Quick Access",ADD_ITEM_TO_QUICK_ACCESS:"Add to Quick Access",NO_DATA_TIPS_IN_QUICK_ACCESS:"No quick access resources have been added yet. Please add from the list below or after searching",SITE_MAP_SEARCH_RECOMMEND:"Search recommend",MAX_COLLECT_COUNT_TIPS:"Need to delete some favorites in order to add",NO_DATA_SEARCH_INFO:"The search result is empty, please enter again",SEARCH_ITEM_PLACEHOLDER:"Please enter keywords to search"},zh:{SEARCH_BY_MENU_NAME:"通过菜单名称搜索",SEARCH_HISTORY:"历史搜索",NO_DATA:"暂无数据",QUICK_ACCESS:"快捷访问",REMOVE_ITEM_FROM_QUICK_ACCESS:"从快捷访问移除",ADD_ITEM_TO_QUICK_ACCESS:"添加至快捷访问",NO_DATA_TIPS_IN_QUICK_ACCESS:"暂未添加快捷访问资源,从下方列表或搜索后添加",SITE_MAP_SEARCH_RECOMMEND:"搜索推荐",MAX_COLLECT_COUNT_TIPS:"需删除部分收藏,才能添加",NO_DATA_SEARCH_INFO:"搜索结果为空,请重新输入",SEARCH_ITEM_PLACEHOLDER:"请输入关键词搜索"}}},9044:(e,t,r)=>{r.d(t,{bw:()=>L});var a=r(8769),o=r.n(a),n=r(1389),i=r(9575),l=r(3373),c=r.n(l),s=r(7522),p=r(4586),u=r(5343),m=r(4156);let d=function(e){return e.Left="left",e.Right="right",e}({});const g="sidebarMenuCollect",h=o().createContext({});var v=r(1030),x=r(1094);const f=new class{constructor(e){(0,p.A)(this,"maxCollectLength",void 0),(0,p.A)(this,"collectMap",new Map),(0,p.A)(this,"collectPromise",new Map),this.maxCollectLength=e??10}getFavoritesById(e){return(0,v.cloneDeep)(this.collectMap.get(e))??[]}async fetchFavorites(e){const t=this.collectPromise.get(e);if(t){return this.collectMap.get(e)||t}const r=(0,u.Q)({module:g,collectionName:e}).then((t=>{var r;const a=null===(r=t.payloads)||void 0===r?void 0:r.map((e=>e.extInfo)).filter(Boolean);return this.collectMap.set(e,a),a}));return this.collectPromise.set(e,r),r}setItemAsFavorite(e,t){const r=this.getFavoritesById(e);r.length>=this.maxCollectLength&&r.pop(),r.unshift(t),this.updateFavoriteItems(e,r)}updateFavoriteItems(e,t){try{this.collectMap.set(e,t),(0,m.B)({module:g,collectionName:e,payloads:null==t?void 0:t.map((e=>({name:e.text,url:e.to,extInfo:e})))})}catch(e){(0,x.handleHttpError)(e)}}equalItem(e,t){return e.text===t.text&&e.to===t.to}removeItemFromFavorite(e,t){const r=this.getFavoritesById(e),a=r.findIndex((e=>this.equalItem(e,t)));-1!==a&&(r.splice(a,1),this.updateFavoriteItems(e,r))}isCollected(e,t){return this.getFavoritesById(e).some((e=>this.equalItem(e,t)))}toggleFavorite(e,t){if(this.isCollected(e,t))this.removeItemFromFavorite(e,t);else{if(this.checkMaxCapacity(e))return;this.setItemAsFavorite(e,t)}}moveFavoriteTo(e,t){const{from:r,to:a,direction:o}=t,n=this.getFavoritesById(e);if(this.equalItem(r,a))return n;const i=n.findIndex((e=>this.equalItem(e,r)));if(-1!==i){n.splice(i,1);const t=n.findIndex((e=>this.equalItem(e,a)));-1!==t&&(o===d.Left?n.splice(t,0,r):n.splice(t+1,0,r),this.updateFavoriteItems(e,n))}return n}checkMaxCapacity(e){return this.getFavoritesById(e).length>=this.maxCollectLength}};var E=r(5904);(0,E.initializeReactI18n)(s.NS,s.I);const b=(0,n.wrapBrick)("eo-link"),y=(0,n.wrapBrick)("eo-icon"),_=(0,n.wrapBrick)("eo-tooltip");function k(e){let{data:t,onDragOver:r,direction:n}=e;const{groupId:i,onFavoriteUpdate:l}=(0,a.useContext)(h);return o().createElement("div",{className:"indicate-wrapper","data-direction":n,"data-to":t.to,onDragEnter:e=>e.target.style.background="var(--palette-blue-1)",onDragLeave:e=>e.target.style.background="transparent","data-text":t.text,onDragOver:r,onDrop:e=>{const r=JSON.parse(e.dataTransfer.getData("application/json")),a=f.moveFavoriteTo(i,{from:r,to:t,direction:n});null==l||l(a)}})}function C(e){const{data:t,suffix:r,className:n}=e,{allowDrag:i,onDragStart:l,overElement:s,direction:p,onDragEnd:u,onDragOver:m}=(0,a.useContext)(h),g=(0,a.useRef)(null),[v,x]=(0,a.useState)(!1),f=(0,a.useMemo)((()=>s&&s.dataset.to==t.to&&s.dataset.text==s.dataset.text),[s,t]);return o().createElement(o().Fragment,null,f&&p===d.Left&&o().createElement(k,{data:t,onDragOver:m,direction:d.Left}),o().createElement(b,{"data-to":t.to,"data-text":t.text,ref:g,draggable:!0,onDragStart:e=>{var r;i?(x(!0),null===(r=e.dataTransfer)||void 0===r||r.setData("application/json",JSON.stringify(t)),null==l||l(e)):e.preventDefault()},onDragEnd:e=>{x(!1),null==u||u(e)},onDragOver:e=>{e.dataTransfer.dropEffect="none",null==m||m(e)},className:c()("tag-container",n,{"is-drag":v}),url:t.to,href:t.href,target:t.target},o().createElement("span",{className:"tag-text ellipsis",title:t.text},t.text),o().createElement("span",{className:"tag-suffix",onClick:e=>e.preventDefault()},r)),f&&p===d.Right&&o().createElement(k,{data:t,onDragOver:m,direction:d.Right}))}function w(e){const{t}=(0,E.useTranslation)(s.NS),{onAllowDrag:r}=(0,a.useContext)(h),{data:n,onFavorite:i,groupId:l}=e,c=(0,a.useRef)(),p=(0,a.useRef)(),u=(0,a.useCallback)((()=>{f.removeItemFromFavorite(l,n),null==i||i(f.getFavoritesById(l))}),[l,n,i]),m=()=>{null==r||r(!0)};(0,a.useEffect)((()=>{const e=p.current;return e.addEventListener("click",u),()=>{e.removeEventListener("click",u)}}),[u]),(0,a.useEffect)((()=>{const e=c.current,t=e=>{e.preventDefault()};return e.addEventListener("click",t),()=>{e.removeEventListener("click",t)}}),[]);const d=(0,a.useMemo)((()=>o().createElement("div",{className:"operation",ref:c},o().createElement(_,{content:t(s.K.REMOVE_ITEM_FROM_QUICK_ACCESS),hoist:!0,placement:"bottom",className:"close"},o().createElement(y,{lib:"antd",icon:"close",ref:p})),o().createElement("span",{className:"drag-wrapper",onMouseDown:m},":::"))),[t,u]);return o().createElement(C,{className:"visit-container",suffix:d,data:n})}function A(e){let{onFavorite:t,className:r,groupId:n,data:l,active:p}=e;const{t:u}=(0,E.useTranslation)(s.NS),m=(0,a.useRef)(),d=e=>{e.preventDefault(),f.toggleFavorite(n,l),null==t||t(f.getFavoritesById(n))};return(0,a.useEffect)((()=>{const e=m.current;return e.addEventListener("click",d),()=>{e.removeEventListener("click",d)}}),[]),o().createElement(_,{content:p?u(s.K.REMOVE_ITEM_FROM_QUICK_ACCESS):f.checkMaxCapacity(n)?u(s.K.MAX_COLLECT_COUNT_TIPS):u(s.K.ADD_ITEM_TO_QUICK_ACCESS),className:c()("star-icon",r)},o().createElement(y,(0,i.A)({ref:m,className:c()({active:p}),lib:"antd",icon:"star"},p?{theme:"filled"}:{})))}function S(e){const{data:t,className:r,groupId:n,onFavorite:i,active:l}=e,s=(0,a.useMemo)((()=>o().createElement(A,{groupId:n,active:l,className:"star",data:t,onFavorite:i})),[t,n,i,l]);return o().createElement(C,{className:c()("recommend-container",r),suffix:s,data:t})}function I(e,t){"group"===e.type&&Array.isArray(e.items)?function(e,t){for(const r of e)I(r,t)}(e.items,t):t.push(e)}const N=(0,n.wrapBrick)("eo-link"),M=240;function T(e){const{groupId:t,selectedKey:r,onFavorite:a}=e,n=function(e){const t=new Map,r=new Set;return null==e||e.forEach((e=>{const a=e.groupFrom??"default";r.add(a);const o=t.get(a);o?o.push(e):t.set(a,[e])})),Array.from(r).map((e=>({groupFrom:e,groups:t.get(e)})))}(e.groups);return o().createElement("div",{className:"group-view"},n.map(((e,n)=>o().createElement("div",{key:n},0!==n&&o().createElement("div",{className:"divider"}),"default"===e.groupFrom?o().createElement(O,{groupId:t,selectedKey:r,groups:e.groups,onFavorite:a}):o().createElement(R,{groupId:t,selectedKey:r,groups:e.groups,onFavorite:a})))))}function O(e){const{groupId:t,onFavorite:r,selectedKey:n,groups:i}=e,l=o().useRef(null),[c,s]=(0,a.useState)();return(0,a.useEffect)((()=>{const e=new ResizeObserver((e=>{for(const t of e)if(t.target===l.current){const e=t.contentRect.width;e&&s(Math.floor(e/M))}}));return e.observe(l.current),()=>e.disconnect()}),[]),o().createElement("div",{className:"group",ref:l,style:c<(null==i?void 0:i.length)?{columnCount:c,columnWidth:M}:{display:"grid",gridTemplateColumns:`repeat(auto-fit, ${M}px)`}},i.map((e=>o().createElement("div",{key:e.key,className:"group-item"},o().createElement("div",{className:"title"},e.title),o().createElement("div",{className:"content"},e.items.map((e=>o().createElement(D,{key:e.key,groupId:t,selectedKey:n,data:e,onFavorite:r}))))))))}function R(e){const{groupId:t,onFavorite:r,selectedKey:a,groups:n}=e;return o().createElement("div",{className:"custom-group"},n.map((e=>o().createElement("div",{key:e.key},o().createElement("div",{className:"title"},e.title),o().createElement("div",{className:"custom-content",style:{display:"grid",gridTemplateColumns:`repeat(auto-fit, ${M}px)`}},e.items.map((e=>o().createElement(D,{key:e.key,selectedKey:a,groupId:t,data:e,onFavorite:r}))))))))}function D(e){const{data:t,groupId:r,onFavorite:a,selectedKey:n}=e;return o().createElement(N,{key:t.key,icon:t.icon,url:t.to,href:t.href,target:t.target,className:c()("item-link",{active:null==n?void 0:n.includes(t.key)})},o().createElement("span",{className:"ellipsis",title:t.text},t.text),o().createElement("span",{className:"icon-wrapper"},o().createElement(A,{active:f.isCollected(r,t),groupId:r,data:t,onFavorite:a})))}const F=(0,n.wrapBrick)("eo-icon"),K=(0,n.wrapBrick)("eo-input",{onValueChange:"change"});function L(e){const{t}=(0,E.useTranslation)(s.NS),{menuGroup:r,selectedKey:n,visible:i}=e,l=r.groupId,[p,u]=(0,a.useState)([]),m=(0,a.useMemo)((()=>function(e){const t=[];return I(e,t),t}(r)),[r]),[g,x]=(0,a.useState)(),[b,y]=(0,a.useState)([]),[_,k]=(0,a.useState)(),[C,A]=(0,a.useState)(),[N,M]=(0,a.useState)(),[O,R]=(0,a.useState)(),[D,L]=(0,a.useState)(!1);(0,a.useEffect)((()=>{i&&!D&&L(!0)}),[i,D]);const H=e=>{u(e)},P=(0,a.useCallback)((e=>{const t=e.detail;x(e.detail),y(t?m.filter((t=>t.text.toLowerCase().includes(e.detail.toLowerCase()))):m)}),[m]),U=(0,a.useMemo)((()=>(0,v.debounce)(P,200)),[P]),B=(0,a.useMemo)((()=>(0,v.throttle)((e=>{e.preventDefault();const t=function(e){let t=e;for(;t;){if(t.draggable||"indicate-wrapper"===t.className)return t;t=t.parentElement}}(e.target);if(A(t),t&&function(e,t){return e&&t&&!(e.dataset.to===t.dataset.to&&e.dataset.text===t.dataset.text)}(t,_))if("indicate-wrapper"===t.className)R(t.dataset.direction);else{const{width:r,left:a}=t.getBoundingClientRect(),o=e.clientX>a+r/2;R(o?d.Right:d.Left)}else R(void 0)}))),[_]);return(0,a.useEffect)((()=>{(async()=>{if(i){const e=await f.fetchFavorites(l);u(e)}})()}),[l,i]),D&&o().createElement("div",{className:"site-map"},o().createElement("div",{className:"search-wrapper"},o().createElement(K,{className:"search-input",style:{width:"100%"},onValueChange:U,placeholder:t(s.K.SEARCH_ITEM_PLACEHOLDER)},o().createElement(F,{slot:"prefix",lib:"antd",icon:"search"}))),!g&&o().createElement("div",null,0!==p.length&&o().createElement("div",{className:c()("visit-access",{hasData:p.length})},o().createElement("span",{className:"title"},t(s.K.QUICK_ACCESS)),o().createElement(h.Provider,{value:{groupId:l,overElement:C,direction:O,allowDrag:N,onDragStart:e=>{k(e.target)},onDragOver:B,onDragEnd:()=>{k(void 0),R(void 0),M(!1)},onAllowDrag:e=>{M(e)},onFavoriteUpdate:H}},o().createElement("div",{className:"tag-wrapper"},p.map((e=>o().createElement(w,{onFavorite:H,groupId:l,key:e.key,data:e})))))),o().createElement(T,{groupId:l,selectedKey:n,groups:r.items,onFavorite:H})),g&&o().createElement("div",{className:"search-panel"},o().createElement("span",{className:"title"},t(s.K.SITE_MAP_SEARCH_RECOMMEND)),b.length?o().createElement("div",{className:"recommend-wrapper"},b.map((e=>o().createElement(S,{key:e.key,groupId:l,data:e,onFavorite:H,active:f.isCollected(l,e)})))):o().createElement("div",{className:"no-data-tips"},t(s.K.NO_DATA_SEARCH_INFO))))}},9527:(e,t,r)=>{r.d(t,{Gn:()=>u,IZ:()=>c,Wf:()=>s,q5:()=>p});var a=r(8769),o=r.n(a),n=r(1389);const i=(0,n.wrapBrick)("eo-icon"),l=(0,n.wrapBrick)("eo-link");function c(e){return"group"===e.type}function s(e,t){return Boolean("subMenu"===e.type||t&&"group"===e.type)}const p=(e,t)=>o().createElement(l,{type:"plain",key:e.key,url:e.to,href:e.href,target:e.target,style:t},o().createElement("span",{className:"menu-item-label"},e.text)),u=(e,t)=>o().createElement("span",{key:e.key,className:"menu-item-label"},e.title,t&&o().createElement(i,{lib:"fa",icon:"angle-right"}))},2605:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,':root{--eo-three-level-menu-search-input-background:linear-gradient(90deg,#e8eef6 0%,rgba(233,234,243,0) 100%);--eo-three-level-menu-hover-color:#6bb3ff;--eo-three-level-menu-title-color:#0b5ad9;--eo-three-level-menu-active-color:#1a7aff;--eo-three-level-menu-search-tag-color:rgb(89,89,89);--eo-three-level-menu-search-tag-background:rgb(245,245,245)}html[data-theme="dark"],\nhtml[data-theme="dark-v2"]{--eo-three-level-menu-search-input-background:linear-gradient(124deg,rgba(255,255,255,0.36) 0%,rgba(255,255,255,0) 100%);--eo-three-level-menu-hover-color:rgba(54,95,175,0.85);--eo-three-level-menu-title-color:#6597e8;--eo-three-level-menu-active-color:#3f75dd;--eo-three-level-menu-search-tag-color:rgb(140,140,140);--eo-three-level-menu-search-tag-background:rgb(107,107,107)}',""]);const l=i},6370:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,":host{display:inline-block;background:none}:host::part(menu-item),\neo-link{display:block}eo-menu-item{margin:4px 0}.sub-menu-wrapper eo-menu-item:first-child,\n.group-wrapper eo-menu-item:first-child{margin-top:0}.sub-menu-wrapper eo-menu-item:last-child{margin-bottom:0}.nav-menu-wrapper{display:flex;align-items:center;gap:8px;white-space:nowrap}.popover .sub-menu-item-label{padding:2px 0px;color:var(--color-normal-text)}.popover.subprime{display:block;width:100%}.sub-menu-wrapper{min-width:160px;max-height:calc(100vh - 100px);background-color:var(--antd-dropdown-menu-bg);padding:12px 0;border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-wrapper{display:flex;flex-direction:column}.sub-menu-wrapper > eo-menu-item{display:block;width:100%}.sub-menu-wrapper > eo-menu-item .menu-item-label,\n.sub-menu-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-menu-item .menu-item-label{display:block;width:100%;padding:7px 24px;box-sizing:border-box;line-height:22px;color:var(--color-normal-text)}.sub-menu-wrapper > eo-popover.subprime .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover.subprime .menu-item-label{display:flex;justify-content:space-between;align-items:center}.sub-menu-wrapper .menu-item-label{border-radius:0}.menu-item-label{display:inline-block;cursor:pointer;border-radius:4px;padding:1px 8px;line-height:22px;color:var(--nav-menu-item-label-color)}.menu-item-label:hover{background-color:var(--top-menu-item-hover-bg)}.group-label{padding-left:16px;font-size:12px;color:var(--palette-gray-7);padding:8px 16px;line-height:20px;margin-top:4px}.sub-menu-wrapper .group-label:first-child{margin-top:0px}.sub-menu-wrapper eo-menu-item[active] .menu-item-label{background:var(--top-menu-item-selected-bg);color:var(--color-brand);font-weight:500}.three-level-menu-container{max-width:980px;max-height:510px;overflow:auto;min-width:160px}.three-level-menu-item-container{display:grid;gap:20px;margin-top:13px;padding:5px 10px}.three-level-menu-item-title-container{display:flex;align-items:center}.three-level-menu-item-title-icon{width:4px;height:4px;background-color:var(--eo-three-level-menu-title-color);margin-right:4px;transform:rotate(45deg)}.three-level-menu-item-title{font-size:14px;font-family:PingFang-SC-Medium,PingFang-SC;font-weight:500;color:var(--eo-three-level-menu-title-color)}.three-level-menu-container .menu-item-label{margin-top:4px;margin-left:4px;padding:4px;width:100%}.three-level-menu-container .active .menu-item-label{color:var(--eo-three-level-menu-active-color)}.three-level-menu-search-result .menu-item-label{margin:0px}.three-level-menu-container .menu-item-label:hover{color:var(--eo-three-level-menu-hover-color)}.three-level-menu-popover .sub-menu-wrapper{padding-top:0px}.three-level-menu-search-container{background:var(--eo-three-level-menu-search-input-background);padding:5px 10px}.three-level-menu-search-result{min-width:187px;max-width:328px;max-height:324px;background-color:var(--antd-dropdown-menu-bg);box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow:scroll}.three-level-menu-search-history-container{padding:5px 10px}.three-level-menu-search-history-text{background:var(--eo-three-level-menu-search-tag-background);border-radius:2px;font-size:7px;line-height:11px;display:inline-block;height:11px;padding:4px;color:var(--eo-three-level-menu-search-tag-color);margin-right:8px}.three-level-menu-search-history-title{color:#8c8c8c;margin:10px 0;display:flex;align-items:center}.three-level-menu-search-history-icon{margin-left:5px}.sub-menu-sit-map-wrapper{box-sizing:border-box;width:calc(100vw);padding:0 60px 24px;max-height:520px;background-color:var(--antd-dropdown-menu-bg);border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-item{position:absolute;opacity:0;height:0;pointer-events:none}.in-group-site-map{width:auto;padding:0 20px}",""]);const l=i.toString()},1122:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,'.group .item-link, .custom-group .item-link{font-weight:400}.group .item-link:hover, .custom-group .item-link:hover{background-color:var(--color-fill-bg-base-1)}.group .item-link:hover::part(link), .custom-group .item-link:hover::part(link){color:var(--color-brand-hover)}.group .item-link:hover::part(icon), .custom-group .item-link:hover::part(icon){color:var(--color-brand-hover)}.group .item-link.active::part(link),\n .custom-group .item-link.active::part(link),\n .group .item-link.active::part(icon),\n .custom-group .item-link.active::part(icon){color:var(--palette-blue-8)}.group .item-link::part(link), .custom-group .item-link::part(link){padding:8px 12px 8px 24px;display:flex;gap:4px;color:var(--color-header-text)}.group .item-link::part(icon), .custom-group .item-link::part(icon){color:var(--color-normal-text)}.group .title, .custom-group .title{padding:8px 16px 8px 24px;font-size:16px;font-weight:500;position:relative}.group .title::before, .custom-group .title::before{content:"";position:absolute;width:6px;height:6px;top:17px;left:9px;transform:rotate(45deg);background:var(--color-secondary-text)}.group .content .icon-wrapper, .custom-group .content .icon-wrapper, .group .custom-content .icon-wrapper, .custom-group .custom-content .icon-wrapper{color:var(--color-secondary-text);font-size:16px;display:none;margin-left:auto}.group .content .item-link:hover .icon-wrapper, .custom-group .content .item-link:hover .icon-wrapper, .group .custom-content .item-link:hover .icon-wrapper, .custom-group .custom-content .item-link:hover .icon-wrapper{display:block}.group .content .item-link:hover .icon-wrapper:hover, .custom-group .content .item-link:hover .icon-wrapper:hover, .group .custom-content .item-link:hover .icon-wrapper:hover, .custom-group .custom-content .item-link:hover .icon-wrapper:hover{color:var(--color-brand-hover)}.group .content, .custom-group .content{display:flex;flex-direction:column}.group .group-item, .custom-group .group-item{page-break-inside:avoid;break-inside:avoid}.group-view{min-height:300px}.group-view .divider{height:2px;background:var(--color-text-divider-line);margin:16px 0}',""]);const l=i.toString()},839:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,".tag-container::part(link){display:flex;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-moz-user-select:none;justify-content:space-between;background-color:var(--color-fill-bg-base-1);border-radius:2px;padding:1px 6px}.tag-container .tag-text{color:var(--color-normal-text);font-weight:400}.tag-container:hover .tag-text{color:var(--color-brand-hover)}.tag-container .tag-suffix{display:inline-flex;font-size:12px;gap:4px;align-items:center;color:var(--color-secondary-text)}.tag-container.is-drag{opacity:0.4}.indicate-wrapper{border:1px dashed var(--color-brand-hover);border-radius:4px;height:20px;margin:2px 0}.close{display:inline-flex;margin-top:2px;padding:0 2px}.close:hover{color:var(--color-error)}.drag-wrapper{cursor:move}.drag-wrapper:hover{color:var(--color-brand-hover)}.star-icon{display:flex;alignitems:center;color:var(--color-secondary-text)}.star-icon:hover{color:var(--color-brand-hover)}.star-icon .active{color:var(--palette-yellow-6)}.recommend-container:hover .star{display:inline-flex}.recommend-container .star{font-size:13px;display:none}.visit-container:hover .operation{display:inline-flex;align-items:center}.visit-container .operation{display:none}",""]);const l=i.toString()},9998:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,'.site-map .search-wrapper{position:sticky;top:0;z-index:9999;padding-top:24px;padding-bottom:16px;background:var(--antd-dropdown-menu-bg)}.site-map .search-input::part(affix-wrapper){border:none;border-bottom:1px solid var(--antd-input-border-color);border-radius:0px;background:transparent}.site-map .visit-access .title, .site-map .search-panel .title{display:inline-block;padding:2px 16px 2px 24px;font-weight:500;line-height:24px;position:relative}.site-map .visit-access .title::before, .site-map .search-panel .title::before{content:"";position:absolute;width:6px;height:6px;top:10px;left:9px;border-radius:50%;background:var(--color-secondary-text)}.site-map .visit-access .no-data-tips, .site-map .search-panel .no-data-tips{display:flex;margin:16px 0 32px;align-items:center;justify-content:center;color:var(--color-secondary-text)}.site-map .visit-access{margin-bottom:8px}.site-map .visit-access.hasData{display:flex}.site-map .visit-access .tag-wrapper{flex:1;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}.site-map .ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-map .search-panel .recommend-wrapper{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}',""]);const l=i.toString()},4211:(e,t,r)=>{var a=r(2591),o=r.n(a),n=r(1740),i=r.n(n),l=r(8128),c=r.n(l),s=r(855),p=r.n(s),u=r(3051),m=r.n(u),d=r(3656),g=r.n(d),h=r(2605),v={};v.styleTagTransform=g(),v.setAttributes=p(),v.insert=c().bind(null,"head"),v.domAPI=i(),v.insertStyleElement=m(),o()(h.A,v),h.A&&h.A.locals&&h.A.locals},764:(e,t,r)=>{r.d(t,{IZ:()=>i,LP:()=>c,Wf:()=>l});var a=r(1201),o=r(1094),n=r(1030);function i(e){return"group"===e.type}function l(e,t){return Boolean("subMenu"===e.type||t&&"group"===e.type)}function c(e,t,r,p){const u=[],m=[],d=[];let g=0;return e&&e.forEach((e=>{if(e.key=""===p?`${g}`:`${p}.${g}`,i(e)||l(e)){const a=c(e.items,t,r,e.key);u.push(...a.selectedKeys),(a.selectedKeys.length||e.defaultExpanded)&&m.push(e.key),m.push(...a.openedKeys),d.push(...a.matchedKeys)}else if(function(e,t,r){if(!e.to)return!1;const i="object"==typeof e.to?e.to:(0,a.parsePath)(e.to),l=i.pathname.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1");let c=!!(0,o.matchPath)(t,{path:l,exact:e.exact});if(c&&e.activeMatchSearch&&(c=s(r,i.search)),!c&&Array.isArray(e.activeIncludes))for(const i of e.activeIncludes){let e,l=!0;(0,n.isObject)(i)?(e=Array.isArray(i.path)?i.path:[i.path],l=i.exact):e=[i];for(const n of e){var p;let e;const i=n.includes("?");if(i&&(e=(0,a.parsePath)(n)),c=!!(0,o.matchPath)(t,{path:i?e.pathname:n,exact:l}),c&&null!==(p=e)&&void 0!==p&&p.search&&(c=s(r,e.search)),c)break}if(c)break}if(c&&Array.isArray(e.activeExcludes))for(const r of e.activeExcludes){let e,a=!0;(0,n.isObject)(r)?(e=Array.isArray(r.path)?r.path:[r.path],a=r.exact):e=[r];for(const r of e)if(c=!(0,o.matchPath)(t,{path:r,exact:a}),!c)break;if(!c)break}return c}(e,t,r)){u.push(String(e.key));const t=e.key.split(".");for(let e=0;e<t.length;e++)d.push(t.slice(0,e+1).join("."))}g+=1})),u.length&&""!==p&&m.push(p),{selectedKeys:u,openedKeys:m,matchedKeys:d}}function s(e,t){const r=new URLSearchParams(e),a=new URLSearchParams(t);for(const[e,t]of a.entries())if((r.get(e)??"")!==t)return!1;return!0}}}]);
|
|
2
|
+
//# sourceMappingURL=8518.8dd93610.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/8518.8dd93610.js","mappings":"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","sources":["webpack:///./src/nav-menu/ThreeLevelMenuPopoverContent.tsx","webpack:///./src/nav-menu/i18n.ts","webpack:///./src/nav-menu/site-map/constants.ts","webpack:///./src/nav-menu/site-map/CollectService.ts","webpack:///./src/nav-menu/site-map/ItemTag.tsx","webpack:///./src/nav-menu/site-map/processor.ts","webpack:///./src/nav-menu/site-map/GroupItem.tsx","webpack:///./src/nav-menu/site-map/SiteMapItem.tsx","webpack:///./src/nav-menu/utils.tsx","webpack:///./src/nav-menu/host-context.css","webpack:///./src/nav-menu/nav-menu.shadow.css","webpack:///./src/nav-menu/site-map/GroupItem.shadow.css","webpack:///./src/nav-menu/site-map/ItemTag.shadow.css","webpack:///./src/nav-menu/site-map/SiteMapItem.shadow.css","webpack:///./src/nav-menu/host-context.css?ac7e","webpack:///../../src/menu.ts"],"sourcesContent":["import React, { useMemo, useState, useRef } from \"react\";\nimport classnames from \"classnames\";\nimport { renderLinkCom } from \"./utils.js\";\nimport { uniq } from \"lodash\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { ReactNextElement } from \"@next-core/react-element\";\nimport type { Popover, PopoverProps } from \"@next-bricks/basic/popover\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { JsonStorage } from \"@next-shared/general/JsonStorage\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\n\ninitializeReactI18n(NS, locales);\nconst WrappedPopover = wrapBrick<Popover, PopoverProps>(\"eo-popover\");\ninterface SearchProps {\n value?: string;\n placeholder?: string;\n autoFocus?: boolean;\n clearable?: boolean;\n trim?: boolean;\n debounceTime?: number;\n}\n\ninterface SearchEvents {\n change: CustomEvent<string>;\n search: CustomEvent<string>;\n}\n\ninterface SearchEventsMap {\n onChange: \"change\";\n onSearch: \"search\";\n}\nconst WrappedSearch = wrapBrick<\n ReactNextElement,\n SearchProps,\n SearchEvents,\n SearchEventsMap\n>(\"eo-search\", {\n onChange: \"change\",\n onSearch: \"search\",\n});\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\ninterface ThreeLevelMenuPopoverContentProps {\n menuItem: SidebarMenuGroup;\n selectedKey: string[];\n}\nconst LOCAL_STORAGE_PREFIX = \"threeLevelCategoryMenu\";\nconst maxVisitorLength = 6;\nexport function ThreeLevelMenuPopoverContent(\n props: ThreeLevelMenuPopoverContentProps\n): React.ReactElement {\n const { t } = useTranslation(NS);\n const { menuItem, selectedKey } = props;\n const items = menuItem.items as SidebarMenuGroup[];\n const [searchResult, setSearchResult] = useState<SidebarMenuSimpleItem[]>([]);\n const [searchKey, setSearchKey] = useState(\"\");\n const triggerRef = useRef<HTMLDivElement>(null);\n const nameSpace = `${LOCAL_STORAGE_PREFIX}_${menuItem.title}`;\n const storage = useMemo(() => new JsonStorage(localStorage), []);\n const searchHistory = (storage.getItem(nameSpace) as string[]) || [];\n\n const handleSearch = (e: CustomEvent<string>) => {\n setSearchKey(e.detail);\n if (e.detail) {\n const list = uniq([e.detail, ...searchHistory]);\n if (list.length > maxVisitorLength) {\n list.pop();\n }\n storage.setItem(nameSpace, list);\n setSearchResult(\n items\n .flatMap((i) => (i.items as SidebarMenuSimpleItem[]) || [])\n .filter((i) =>\n (i.text as string)\n .toLowerCase()\n .includes((e.detail as string).trim().toLowerCase())\n )\n );\n } else {\n setSearchResult([]);\n }\n };\n\n const popoverTriggerClick = () => {\n triggerRef.current?.click();\n };\n\n return (\n <div className={\"three-level-menu-container\"}>\n <div\n className=\"three-level-menu-search-container\"\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <WrappedSearch\n placeholder={t(K.SEARCH_BY_MENU_NAME) as string}\n onSearch={handleSearch}\n onFocus={popoverTriggerClick}\n onBlur={popoverTriggerClick}\n />\n <WrappedPopover\n trigger=\"click\"\n placement={\"bottom-start\"}\n anchorDisplay=\"block\"\n distance={0}\n >\n <div slot=\"anchor\" ref={triggerRef}></div>\n {\n <div className=\"three-level-menu-search-result\">\n {!!searchResult.length &&\n searchResult.map((i) => renderLinkCom(i, { width: \"100%\" }))}\n {searchKey && !searchResult.length && (\n <div\n style={{\n height: \"100px\",\n textAlign: \"center\",\n lineHeight: \"100px\",\n }}\n >\n {t(K.NO_DATA)}\n </div>\n )}\n </div>\n }\n </WrappedPopover>\n </div>\n {!!searchHistory.length && (\n <div className=\"three-level-menu-search-history-container\">\n <div className=\"three-level-menu-search-history-title\">\n {t(K.SEARCH_HISTORY)}\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"delete\"\n className=\"three-level-menu-search-history-icon\"\n />\n </div>\n <div>\n {searchHistory.map((h) => (\n <span key={h} className=\"three-level-menu-search-history-text\">\n {h}\n </span>\n ))}\n </div>\n </div>\n )}\n <div\n className={\"three-level-menu-item-container\"}\n style={{\n gridTemplateColumns: `repeat(${\n items.length > 4 ? 4 : items.length\n },1fr)`,\n }}\n >\n {items.map((item: SidebarMenuGroup, index: number) => (\n <div key={index}>\n <div className=\"three-level-menu-item-title-container\">\n <span className=\"three-level-menu-item-title-icon\"></span>\n <span className=\"three-level-menu-item-title\">{item.title}</span>\n </div>\n {item.items?.map((i) => (\n <span\n key={i.key}\n className={classnames({\n active: i.key ? selectedKey.includes(i.key) : false,\n })}\n >\n {renderLinkCom(i as SidebarMenuSimpleItem, { width: \"100%\" })}\n </span>\n ))}\n </div>\n ))}\n </div>\n </div>\n );\n}\n","export enum K {\n SEARCH_BY_MENU_NAME = \"SEARCH_BY_MENU_NAME\",\n SEARCH_HISTORY = \"SEARCH_HISTORY\",\n NO_DATA = \"NO_DATA\",\n QUICK_ACCESS = \"QUICK_ACCESS\",\n REMOVE_ITEM_FROM_QUICK_ACCESS = \"REMOVE_ITEM_FROM_QUICK_ACCESS\",\n ADD_ITEM_TO_QUICK_ACCESS = \"ADD_ITEM_TO_QUICK_ACCESS\",\n NO_DATA_TIPS_IN_QUICK_ACCESS = \"NO_DATA_TIPS_IN_QUICK_ACCESS\",\n SITE_MAP_SEARCH_RECOMMEND = \"SITE_MAP_SEARCH_RECOMMEND\",\n MAX_COLLECT_COUNT_TIPS = \"MAX_COLLECT_COUNT_TIPS\",\n NO_DATA_SEARCH_INFO = \"NO_DATA_SEARCH_INFO\",\n SEARCH_ITEM_PLACEHOLDER = \"SEARCH_ITEM_PLACEHOLDER\",\n}\n\nconst en: Locale = {\n SEARCH_BY_MENU_NAME: \"Search by menu name\",\n SEARCH_HISTORY: \"Search history\",\n NO_DATA: \"No data\",\n QUICK_ACCESS: \"Quick Access\",\n REMOVE_ITEM_FROM_QUICK_ACCESS: \"Remove from Quick Access\",\n ADD_ITEM_TO_QUICK_ACCESS: \"Add to Quick Access\",\n NO_DATA_TIPS_IN_QUICK_ACCESS:\n \"No quick access resources have been added yet. Please add from the list below or after searching\",\n SITE_MAP_SEARCH_RECOMMEND: \"Search recommend\",\n MAX_COLLECT_COUNT_TIPS: \"Need to delete some favorites in order to add\",\n NO_DATA_SEARCH_INFO: \"The search result is empty, please enter again\",\n SEARCH_ITEM_PLACEHOLDER: \"Please enter keywords to search\",\n};\n\nconst zh: Locale = {\n SEARCH_BY_MENU_NAME: \"通过菜单名称搜索\",\n SEARCH_HISTORY: \"历史搜索\",\n NO_DATA: \"暂无数据\",\n QUICK_ACCESS: \"快捷访问\",\n REMOVE_ITEM_FROM_QUICK_ACCESS: \"从快捷访问移除\",\n ADD_ITEM_TO_QUICK_ACCESS: \"添加至快捷访问\",\n NO_DATA_TIPS_IN_QUICK_ACCESS: \"暂未添加快捷访问资源,从下方列表或搜索后添加\",\n SITE_MAP_SEARCH_RECOMMEND: \"搜索推荐\",\n MAX_COLLECT_COUNT_TIPS: \"需删除部分收藏,才能添加\",\n NO_DATA_SEARCH_INFO: \"搜索结果为空,请重新输入\",\n SEARCH_ITEM_PLACEHOLDER: \"请输入关键词搜索\",\n};\n\nexport const NS = \"bricks/nav/nav-menu\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [key in K]: string };\n","import React from \"react\";\n\nexport enum DRAG_DIRECTION {\n Left = \"left\",\n Right = \"right\",\n}\n\nexport interface ContextOfDragProps {\n groupId: string;\n direction?: DRAG_DIRECTION;\n overElement?: HTMLElement;\n allowDrag?: boolean;\n onAllowDrag?: (enable: boolean) => void;\n onDragStart?: (e: React.DragEvent) => void;\n onDragOver?: (e: React.DragEvent) => void;\n onDragEnd?: (e: React.DragEvent) => void;\n onFavoriteUpdate?: (list: any[]) => void;\n}\n\nexport const collectModule = \"sidebarMenuCollect\";\n\nexport const DragContext = React.createContext<ContextOfDragProps>(\n {} as ContextOfDragProps\n);\n","import type { SidebarMenuSimpleItem } from \"@next-shared/general/types\";\nimport {\n MyCollectionApi_listMyCollection,\n MyCollectionApi_ListMyCollectionResponseBody,\n MyCollectionApi_upsertMyCollection,\n} from \"@next-api-sdk/user-service-sdk\";\nimport { DRAG_DIRECTION, collectModule } from \"./constants.js\";\nimport { cloneDeep } from \"lodash\";\nimport { handleHttpError } from \"@next-core/runtime\";\n\nexport class CollectService {\n private maxCollectLength: number;\n private collectMap: Map<string, SidebarMenuSimpleItem[]> = new Map();\n private collectPromise: Map<string, Promise<SidebarMenuSimpleItem[]>> =\n new Map();\n\n constructor(maxCollectLength?: number) {\n this.maxCollectLength = maxCollectLength ?? 10;\n }\n\n public getFavoritesById(id: string): SidebarMenuSimpleItem[] {\n return cloneDeep(this.collectMap.get(id)) ?? [];\n }\n\n public async fetchFavorites(id: string): Promise<SidebarMenuSimpleItem[]> {\n const cachedPromise = this.collectPromise.get(id);\n if (cachedPromise) {\n const collectList = this.collectMap.get(id);\n\n return collectList ? collectList : cachedPromise;\n }\n\n const favoritesPromise = MyCollectionApi_listMyCollection({\n module: collectModule,\n collectionName: id,\n }).then((result) => {\n const list = result.payloads\n ?.map((item) => item.extInfo)\n .filter(Boolean) as SidebarMenuSimpleItem[];\n this.collectMap.set(id, list);\n\n return list;\n }) as Promise<SidebarMenuSimpleItem[]>;\n\n this.collectPromise.set(id, favoritesPromise);\n\n return favoritesPromise;\n }\n\n public setItemAsFavorite(id: string, item: SidebarMenuSimpleItem): void {\n const list = this.getFavoritesById(id);\n\n if (list.length >= this.maxCollectLength) {\n list.pop();\n }\n\n list.unshift(item);\n this.updateFavoriteItems(id, list);\n }\n\n public updateFavoriteItems(id: string, list: SidebarMenuSimpleItem[]): void {\n try {\n this.collectMap.set(id, list);\n MyCollectionApi_upsertMyCollection({\n module: collectModule,\n collectionName: id,\n payloads: list?.map((item) => ({\n name: item.text,\n url: item.to,\n extInfo: item,\n })) as MyCollectionApi_ListMyCollectionResponseBody[\"payloads\"],\n });\n } catch (error) {\n // istanbul ignore next\n handleHttpError(error);\n }\n }\n\n private equalItem(\n prevItem: SidebarMenuSimpleItem,\n item: SidebarMenuSimpleItem\n ): boolean {\n return prevItem.text === item.text && prevItem.to === item.to;\n }\n\n public removeItemFromFavorite(id: string, item: SidebarMenuSimpleItem): void {\n const list = this.getFavoritesById(id);\n const index = list.findIndex((row) => this.equalItem(row, item));\n // istanbul ignore else\n if (index !== -1) {\n list.splice(index, 1);\n this.updateFavoriteItems(id, list);\n }\n }\n\n public isCollected(id: string, item: SidebarMenuSimpleItem): boolean {\n const list = this.getFavoritesById(id);\n return list.some((row) => this.equalItem(row, item));\n }\n\n public toggleFavorite(id: string, item: SidebarMenuSimpleItem): void {\n if (this.isCollected(id, item)) {\n this.removeItemFromFavorite(id, item);\n } else {\n if (this.checkMaxCapacity(id)) return;\n this.setItemAsFavorite(id, item);\n }\n }\n\n public moveFavoriteTo(\n id: string,\n option: {\n from: SidebarMenuSimpleItem;\n to: SidebarMenuSimpleItem;\n direction: DRAG_DIRECTION;\n }\n ): SidebarMenuSimpleItem[] {\n const { from, to, direction } = option;\n\n const list = this.getFavoritesById(id);\n if (this.equalItem(from, to)) return list;\n\n const fromIndex = list.findIndex((row) => this.equalItem(row, from));\n\n // istanbul ignore else\n if (fromIndex !== -1) {\n list.splice(fromIndex, 1);\n\n const toIndex = list.findIndex((row) => this.equalItem(row, to));\n\n // istanbul ignore else\n if (toIndex !== -1) {\n if (direction === DRAG_DIRECTION.Left) {\n list.splice(toIndex, 0, from);\n } else {\n list.splice(toIndex + 1, 0, from);\n }\n\n this.updateFavoriteItems(id, list);\n }\n }\n\n return list;\n }\n\n checkMaxCapacity(groupId: string): boolean {\n return this.getFavoritesById(groupId).length >= this.maxCollectLength;\n }\n}\n\nexport const collectService = new CollectService();\n","import React, {\n useMemo,\n useCallback,\n useRef,\n useState,\n useEffect,\n useContext,\n DragEvent,\n} from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { Link, LinkProps } from \"@next-bricks/basic/link\";\n\nimport { EoTooltip, ToolTipProps } from \"@next-bricks/basic/tooltip\";\nimport classNames from \"classnames\";\nimport { SidebarMenuSimpleItem } from \"@next-shared/general/types\";\nimport { K, NS, locales } from \"../i18n.js\";\nimport { collectService } from \"./CollectService.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport { DRAG_DIRECTION, DragContext } from \"./constants.js\";\n\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\ninitializeReactI18n(NS, locales);\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedTooltip = wrapBrick<EoTooltip, ToolTipProps>(\"eo-tooltip\");\n\ninterface CellItemProps {\n data: SidebarMenuSimpleItem;\n suffix?: React.ReactNode;\n className?: string;\n}\n\nexport type OnFavoriteCallback = (collectList: SidebarMenuSimpleItem[]) => void;\n\ninterface PlaceholderCompProps {\n data: SidebarMenuSimpleItem;\n direction: DRAG_DIRECTION;\n onDragOver?: (e: DragEvent) => void;\n}\nexport function PlaceholderDropComp({\n data,\n onDragOver,\n direction,\n}: PlaceholderCompProps) {\n const { groupId, onFavoriteUpdate } = useContext(DragContext);\n const handleDrop = (e: DragEvent) => {\n const formData = JSON.parse(e.dataTransfer.getData(\"application/json\"));\n\n const newDataList = collectService.moveFavoriteTo(groupId, {\n from: formData,\n to: data,\n direction,\n });\n\n onFavoriteUpdate?.(newDataList);\n };\n\n return (\n <div\n className=\"indicate-wrapper\"\n data-direction={direction}\n data-to={data.to}\n onDragEnter={(e) =>\n ((e.target as HTMLElement).style.background = \"var(--palette-blue-1)\")\n }\n onDragLeave={(e) =>\n ((e.target as HTMLElement).style.background = \"transparent\")\n }\n data-text={data.text}\n onDragOver={onDragOver}\n onDrop={handleDrop}\n />\n );\n}\n\nexport function ItemTag(props: CellItemProps): React.ReactElement {\n const { data, suffix, className } = props;\n\n const {\n allowDrag,\n onDragStart,\n overElement,\n direction,\n onDragEnd,\n onDragOver,\n } = useContext(DragContext);\n const containerRef = useRef<any>(null);\n\n const [isDragIng, setIsDragIng] = useState(false);\n\n const isActive = useMemo(\n () =>\n overElement &&\n overElement.dataset.to == data.to &&\n overElement.dataset.text === overElement.dataset.text,\n [overElement, data]\n );\n\n const handleDragStart = (e: React.DragEvent) => {\n if (!allowDrag) {\n e.preventDefault();\n } else {\n setIsDragIng(true);\n e.dataTransfer?.setData(\"application/json\", JSON.stringify(data));\n onDragStart?.(e);\n }\n };\n\n const handleDragEnd = (e: React.DragEvent) => {\n setIsDragIng(false);\n onDragEnd?.(e);\n };\n\n const handleOver = (e: React.DragEvent) => {\n e.dataTransfer.dropEffect = \"none\";\n onDragOver?.(e);\n };\n\n return (\n <>\n {isActive && direction === DRAG_DIRECTION.Left && (\n <PlaceholderDropComp\n data={data}\n onDragOver={onDragOver}\n direction={DRAG_DIRECTION.Left}\n />\n )}\n <WrappedLink\n data-to={data.to}\n data-text={data.text}\n ref={containerRef}\n draggable\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n onDragOver={handleOver}\n className={classNames(\"tag-container\", className, {\n \"is-drag\": isDragIng,\n })}\n url={data.to as string}\n href={data.href}\n target={data.target as LinkProps[\"target\"]}\n >\n <span className=\"tag-text ellipsis\" title={data.text}>\n {data.text}\n </span>\n <span className=\"tag-suffix\" onClick={(e) => e.preventDefault()}>\n {suffix}\n </span>\n </WrappedLink>\n\n {isActive && direction === DRAG_DIRECTION.Right && (\n <PlaceholderDropComp\n data={data}\n onDragOver={onDragOver}\n direction={DRAG_DIRECTION.Right}\n />\n )}\n </>\n );\n}\n\ninterface QuickVisitTagProps extends CellItemProps {\n groupId: string;\n onFavorite?: OnFavoriteCallback;\n}\n\nexport function QuickVisitItem(props: QuickVisitTagProps): React.ReactElement {\n const { t } = useTranslation(NS);\n const { onAllowDrag } = useContext(DragContext);\n const { data, onFavorite, groupId } = props;\n const suffixRef = useRef<any>();\n const iconRef = useRef<any>();\n\n const handleRemove = useCallback(() => {\n collectService.removeItemFromFavorite(groupId, data);\n onFavorite?.(collectService.getFavoritesById(groupId));\n }, [groupId, data, onFavorite]);\n\n const handleMouseDown = () => {\n onAllowDrag?.(true);\n };\n\n useEffect(() => {\n const icon = iconRef.current;\n icon.addEventListener(\"click\", handleRemove);\n\n return () => {\n icon.removeEventListener(\"click\", handleRemove);\n };\n }, [handleRemove]);\n\n useEffect(() => {\n const suffix = suffixRef.current;\n const handleClick = (e: MouseEvent) => {\n e.preventDefault();\n };\n suffix.addEventListener(\"click\", handleClick);\n\n return () => {\n suffix.removeEventListener(\"click\", handleClick);\n };\n }, []);\n\n const suffixGroups = useMemo(\n () => (\n <div className=\"operation\" ref={suffixRef}>\n <WrappedTooltip\n content={t(K.REMOVE_ITEM_FROM_QUICK_ACCESS)!}\n hoist\n placement=\"bottom\"\n className=\"close\"\n >\n <WrappedIcon lib=\"antd\" icon=\"close\" ref={iconRef} />\n </WrappedTooltip>\n <span className=\"drag-wrapper\" onMouseDown={handleMouseDown}>\n :::\n </span>\n </div>\n ),\n [t, handleRemove]\n );\n\n return (\n <ItemTag className=\"visit-container\" suffix={suffixGroups} data={data} />\n );\n}\n\ninterface StarIconProps {\n onFavorite?: OnFavoriteCallback;\n className?: string;\n groupId: string;\n data: SidebarMenuSimpleItem;\n active?: boolean;\n}\n\nexport function StarIcon({\n onFavorite,\n className,\n groupId,\n data,\n active,\n}: StarIconProps): React.ReactElement {\n const { t } = useTranslation(NS);\n const iconRef = useRef<any>();\n\n const handleClick = (e: React.MouseEvent) => {\n e.preventDefault();\n collectService.toggleFavorite(groupId, data);\n onFavorite?.(collectService.getFavoritesById(groupId));\n };\n\n useEffect(() => {\n // workaround for prevent Link jump when click.\n const icon = iconRef.current;\n icon.addEventListener(\"click\", handleClick);\n\n return () => {\n icon.removeEventListener(\"click\", handleClick);\n };\n }, []);\n\n return (\n <WrappedTooltip\n content={\n active\n ? t(K.REMOVE_ITEM_FROM_QUICK_ACCESS)!\n : collectService.checkMaxCapacity(groupId)\n ? t(K.MAX_COLLECT_COUNT_TIPS)!\n : t(K.ADD_ITEM_TO_QUICK_ACCESS)!\n }\n className={classNames(\"star-icon\", className)}\n >\n <WrappedIcon\n ref={iconRef}\n className={classNames({ active })}\n lib=\"antd\"\n icon=\"star\"\n {...(active ? { theme: \"filled\" } : {})}\n />\n </WrappedTooltip>\n );\n}\n\ninterface RecommendItemProps extends CellItemProps {\n active?: boolean;\n groupId: string;\n onFavorite?: OnFavoriteCallback;\n}\n\nexport function RecommendItem(props: RecommendItemProps): React.ReactElement {\n const { data, className, groupId, onFavorite, active } = props;\n\n const suffixGroups = useMemo(\n () => (\n <StarIcon\n groupId={groupId}\n active={active}\n className=\"star\"\n data={data}\n onFavorite={onFavorite}\n />\n ),\n [data, groupId, onFavorite, active]\n );\n\n return (\n <ItemTag\n className={classNames(\"recommend-container\", className)}\n suffix={suffixGroups}\n data={data}\n />\n );\n}\n","import {\n SidebarMenuItem,\n SidebarMenuGroup,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\n\nfunction walkMenuItem(item: SidebarMenuItem, list: SidebarMenuSimpleItem[]) {\n if (\n (item as SidebarMenuGroup).type === \"group\" &&\n Array.isArray((item as SidebarMenuGroup).items)\n ) {\n walkMenuItems((item as SidebarMenuGroup).items, list);\n } else {\n list.push(item as SidebarMenuSimpleItem);\n }\n}\n\nfunction walkMenuItems(\n items: SidebarMenuItem[],\n list: SidebarMenuSimpleItem[]\n): void {\n for (const item of items) {\n walkMenuItem(item, list);\n }\n}\n\nexport function flatMenuItems(item: SidebarMenuItem): SidebarMenuSimpleItem[] {\n const list: SidebarMenuSimpleItem[] = [];\n\n walkMenuItem(item, list);\n\n return list;\n}\n\nexport function processGroupItems(groups: SidebarMenuGroup[]): Array<{\n groupFrom: string;\n groups: SidebarMenuGroup[];\n}> {\n const groupCategoryMap = new Map<string, SidebarMenuGroup[]>();\n const categoryOrder = new Set<string>();\n\n groups?.forEach((item) => {\n const from = item.groupFrom ?? \"default\";\n categoryOrder.add(from);\n\n const value = groupCategoryMap.get(from);\n\n if (!value) {\n groupCategoryMap.set(from, [item]);\n } else {\n value!.push(item);\n }\n });\n\n return Array.from(categoryOrder).map((key) => ({\n groupFrom: key,\n groups: groupCategoryMap!.get(key)!,\n }));\n}\n","import React, { useEffect, useState } from \"react\";\nimport type {\n SidebarMenuSimpleItem,\n SidebarMenuGroup,\n} from \"@next-shared/general/types\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { StarIcon, OnFavoriteCallback } from \"./ItemTag.js\";\nimport { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport { collectService } from \"./CollectService.js\";\nimport { processGroupItems } from \"./processor.js\";\nimport classNames from \"classnames\";\n\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\n\ninterface GroupViewProps {\n groups: SidebarMenuGroup[];\n groupId: string;\n selectedKey?: string[];\n onFavorite: OnFavoriteCallback;\n}\n\nexport const itemColumnWidth = 240;\n\nexport function GroupView(props: GroupViewProps): React.ReactElement {\n const { groupId, selectedKey, onFavorite } = props;\n const groupMenus = processGroupItems(props.groups);\n\n return (\n <div className=\"group-view\">\n {groupMenus.map((item, index) => {\n return (\n <div key={index}>\n {index !== 0 && <div className=\"divider\" />}\n {item.groupFrom === \"default\" ? (\n <DefaultGroup\n groupId={groupId}\n selectedKey={selectedKey}\n groups={item.groups}\n onFavorite={onFavorite}\n />\n ) : (\n <CustomGroup\n groupId={groupId}\n selectedKey={selectedKey}\n groups={item.groups}\n onFavorite={onFavorite}\n />\n )}\n </div>\n );\n })}\n </div>\n );\n}\n\ninterface BaseGroupProps {\n groupId: string;\n selectedKey?: string[];\n onFavorite: OnFavoriteCallback;\n groups: SidebarMenuGroup[];\n}\nexport function DefaultGroup(props: BaseGroupProps): React.ReactElement {\n const { groupId, onFavorite, selectedKey, groups } = props;\n\n const groupRef = React.useRef<HTMLDivElement>(null);\n const [columnCount, setColumnCount] = useState<number>();\n\n useEffect(() => {\n // istanbul ignore next\n const resizeObserver = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === groupRef.current) {\n const width = entry.contentRect.width;\n\n if (width) {\n setColumnCount(Math.floor(width / itemColumnWidth));\n }\n }\n }\n });\n\n resizeObserver.observe(groupRef.current as HTMLDivElement);\n\n return () => resizeObserver.disconnect();\n }, []);\n\n return (\n <div\n className=\"group\"\n ref={groupRef}\n style={\n (columnCount as number) < groups?.length\n ? { columnCount, columnWidth: itemColumnWidth }\n : {\n display: \"grid\",\n gridTemplateColumns: `repeat(auto-fit, ${itemColumnWidth}px)`,\n }\n }\n >\n {groups.map((group) => (\n <div key={group.key} className=\"group-item\">\n <div className=\"title\">{group.title}</div>\n <div className=\"content\">\n {group.items.map((item) => (\n <GroupItem\n key={item.key}\n groupId={groupId}\n selectedKey={selectedKey}\n data={item as SidebarMenuSimpleItem}\n onFavorite={onFavorite}\n />\n ))}\n </div>\n </div>\n ))}\n </div>\n );\n}\n\nexport function CustomGroup(props: BaseGroupProps): React.ReactElement {\n const { groupId, onFavorite, selectedKey, groups } = props;\n\n return (\n <div className=\"custom-group\">\n {groups.map((group) => (\n <div key={group.key}>\n <div className=\"title\">{group.title}</div>\n <div\n className=\"custom-content\"\n style={{\n display: \"grid\",\n gridTemplateColumns: `repeat(auto-fit, ${itemColumnWidth}px)`,\n }}\n >\n {group.items.map((item) => (\n <GroupItem\n key={item.key}\n selectedKey={selectedKey}\n groupId={groupId}\n data={item as SidebarMenuSimpleItem}\n onFavorite={onFavorite}\n />\n ))}\n </div>\n </div>\n ))}\n </div>\n );\n}\n\ninterface GroupItemProps {\n data: SidebarMenuSimpleItem;\n selectedKey?: string[];\n groupId: string;\n onFavorite: OnFavoriteCallback;\n}\nexport function GroupItem(props: GroupItemProps): React.ReactElement {\n const { data, groupId, onFavorite, selectedKey } = props;\n\n return (\n <WrappedLink\n key={data.key}\n icon={data.icon}\n url={data.to as string}\n href={data.href}\n target={data.target as LinkProps[\"target\"]}\n className={classNames(\"item-link\", {\n active: selectedKey?.includes(data.key as string),\n })}\n >\n <span className=\"ellipsis\" title={data.text}>\n {data.text}\n </span>\n <span className=\"icon-wrapper\">\n <StarIcon\n active={collectService.isCollected(groupId, data)}\n groupId={groupId}\n data={data}\n onFavorite={onFavorite}\n />\n </span>\n </WrappedLink>\n );\n}\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { QuickVisitItem, RecommendItem } from \"./ItemTag.js\";\nimport { GroupView } from \"./GroupItem.js\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { K, NS } from \"../i18n.js\";\nimport { DragContext } from \"./constants.js\";\nimport { useTranslation } from \"@next-core/i18n/react\";\nimport { collectService } from \"./CollectService.js\";\nimport { flatMenuItems } from \"./processor.js\";\nimport { DRAG_DIRECTION } from \"./constants.js\";\nimport classNames from \"classnames\";\nimport { throttle, debounce } from \"lodash\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface InputEvents {\n change: CustomEvent<string>;\n}\n\nexport interface InputEventsMap {\n onValueChange: \"change\";\n}\n\nconst WrappedInput = wrapBrick<any, any, InputEvents, InputEventsMap>(\n \"eo-input\",\n {\n onValueChange: \"change\",\n }\n);\n\ninterface SiteMapItemProps {\n menuGroup: SidebarMenuGroup;\n selectedKey?: string[];\n visible?: boolean;\n}\n\nexport function findDropElement(element: HTMLElement): HTMLElement | undefined {\n let node = element;\n\n while (node) {\n if (node.draggable || node.className === \"indicate-wrapper\") {\n return node;\n }\n\n node = node.parentElement as HTMLElement;\n }\n}\n\nexport function isValidDragAction(\n dragElement: HTMLElement,\n dropElement: HTMLElement\n): boolean {\n return (\n dragElement &&\n dropElement &&\n !(\n dragElement.dataset.to === dropElement.dataset.to &&\n dragElement.dataset.text === dropElement.dataset.text\n )\n );\n}\n\nexport function SiteMapItem(props: SiteMapItemProps) {\n const { t } = useTranslation(NS);\n const { menuGroup, selectedKey, visible } = props;\n const groupId = menuGroup.groupId as string;\n\n const [favoriteList, setFavoriteList] = useState<SidebarMenuSimpleItem[]>([]);\n const flatItems = useMemo(() => flatMenuItems(menuGroup), [menuGroup]);\n const [q, setQ] = useState<string>();\n const [filter, setFilters] = useState<SidebarMenuSimpleItem[]>([]);\n const [dragElement, setDragElement] = useState<HTMLElement>();\n const [overElement, setOverElement] = useState<HTMLElement>();\n const [allowDrag, setAllowDrag] = useState<boolean>();\n const [direction, setDirection] = useState<DRAG_DIRECTION>();\n const [initialized, setInitialized] = useState(false);\n\n useEffect(() => {\n if (visible && !initialized) {\n setInitialized(true);\n }\n }, [visible, initialized]);\n\n const handleFavorite = (collectList: SidebarMenuSimpleItem[]) => {\n setFavoriteList(collectList);\n };\n\n const handleSearch = useCallback(\n (e: CustomEvent<string>): void => {\n const v = e.detail;\n setQ(e.detail);\n\n setFilters(\n !v\n ? flatItems\n : flatItems.filter((item) =>\n item.text.toLowerCase().includes(e.detail.toLowerCase())\n )\n );\n },\n [flatItems]\n );\n\n const debouncedHandleSearch = useMemo(\n () => debounce(handleSearch, 200),\n [handleSearch]\n );\n\n const handleDragStart = (e: React.DragEvent): void => {\n setDragElement(e.target as HTMLElement);\n };\n\n const handleDragOver = useMemo(\n () =>\n throttle((e: React.DragEvent): void => {\n e.preventDefault();\n\n const dropElement = findDropElement(e.target as HTMLElement);\n setOverElement(dropElement);\n\n if (\n dropElement &&\n isValidDragAction(dropElement, dragElement as HTMLElement)\n ) {\n if (dropElement.className === \"indicate-wrapper\") {\n setDirection(dropElement.dataset.direction as DRAG_DIRECTION);\n } else {\n const { width, left } = dropElement.getBoundingClientRect();\n\n const right = e.clientX > left + width / 2;\n setDirection(right ? DRAG_DIRECTION.Right : DRAG_DIRECTION.Left);\n }\n } else {\n setDirection(undefined);\n }\n }),\n [dragElement]\n );\n\n const handleDragEnd = (): void => {\n setDragElement(undefined);\n setDirection(undefined);\n setAllowDrag(false);\n };\n\n const handleAllowDrag = (enable: boolean): void => {\n setAllowDrag(enable);\n };\n\n useEffect(() => {\n (async () => {\n if (visible) {\n const list = await collectService.fetchFavorites(groupId);\n setFavoriteList(list);\n }\n })();\n }, [groupId, visible]);\n\n return (\n initialized && (\n <div className=\"site-map\">\n <div className=\"search-wrapper\">\n <WrappedInput\n className=\"search-input\"\n style={{ width: \"100%\" }}\n onValueChange={debouncedHandleSearch}\n placeholder={t(K.SEARCH_ITEM_PLACEHOLDER)}\n >\n <WrappedIcon slot=\"prefix\" lib=\"antd\" icon=\"search\" />\n </WrappedInput>\n </div>\n\n {!q && (\n <div>\n {favoriteList.length !== 0 && (\n <div\n className={classNames(\"visit-access\", {\n hasData: favoriteList.length,\n })}\n >\n <span className=\"title\">{t(K.QUICK_ACCESS)}</span>\n <DragContext.Provider\n value={{\n groupId,\n overElement,\n direction,\n allowDrag,\n onDragStart: handleDragStart,\n onDragOver: handleDragOver,\n onDragEnd: handleDragEnd,\n onAllowDrag: handleAllowDrag,\n onFavoriteUpdate: handleFavorite,\n }}\n >\n <div className=\"tag-wrapper\">\n {favoriteList.map((item) => (\n <QuickVisitItem\n onFavorite={handleFavorite}\n groupId={groupId}\n key={item.key}\n data={item}\n />\n ))}\n </div>\n </DragContext.Provider>\n </div>\n )}\n\n <GroupView\n groupId={groupId}\n selectedKey={selectedKey}\n groups={menuGroup.items as SidebarMenuGroup[]}\n onFavorite={handleFavorite}\n />\n </div>\n )}\n\n {q && (\n <div className=\"search-panel\">\n <span className=\"title\">{t(K.SITE_MAP_SEARCH_RECOMMEND)}</span>\n {filter.length ? (\n <div className=\"recommend-wrapper\">\n {filter.map((item) => (\n <RecommendItem\n key={item.key}\n groupId={groupId}\n data={item}\n onFavorite={handleFavorite}\n active={collectService.isCollected(groupId, item)}\n />\n ))}\n </div>\n ) : (\n <div className=\"no-data-tips\">{t(K.NO_DATA_SEARCH_INFO)}</div>\n )}\n </div>\n )}\n </div>\n )\n );\n}\n","import React from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst WrappedLinkItem = wrapBrick<Link, LinkProps>(\"eo-link\");\n\nexport function isGroup(item: SidebarMenuItem): item is SidebarMenuGroup {\n return item.type === \"group\";\n}\n\nexport function isSubMenu(\n item: SidebarMenuGroup,\n groupAsSubMenu?: boolean\n): item is SidebarMenuGroup {\n return Boolean(\n item.type === \"subMenu\" || (groupAsSubMenu && item.type === \"group\")\n );\n}\n\nexport function isSimple(item: SidebarMenuItem): item is SidebarMenuSimpleItem {\n return item.type === \"default\" || !item.type;\n}\n\nexport const renderLinkCom = (\n item: SidebarMenuSimpleItem,\n linkStyle?: React.CSSProperties\n): React.ReactElement => {\n return (\n <WrappedLinkItem\n type=\"plain\"\n key={item.key}\n url={item.to as string}\n href={item.href}\n target={item.target as LinkProps[\"target\"]}\n style={linkStyle}\n >\n <span className=\"menu-item-label\">{item.text}</span>\n </WrappedLinkItem>\n );\n};\n\nexport const renderSpanCom = (\n item: SidebarMenuGroup,\n subMenu?: boolean\n): React.ReactElement => {\n return (\n <span key={item.key} className=\"menu-item-label\">\n {item.title}\n {subMenu && <WrappedIcon lib=\"fa\" icon=\"angle-right\" />}\n </span>\n );\n};\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root{--eo-three-level-menu-search-input-background:linear-gradient(90deg,#e8eef6 0%,rgba(233,234,243,0) 100%);--eo-three-level-menu-hover-color:#6bb3ff;--eo-three-level-menu-title-color:#0b5ad9;--eo-three-level-menu-active-color:#1a7aff;--eo-three-level-menu-search-tag-color:rgb(89,89,89);--eo-three-level-menu-search-tag-background:rgb(245,245,245)}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-three-level-menu-search-input-background:linear-gradient(124deg,rgba(255,255,255,0.36) 0%,rgba(255,255,255,0) 100%);--eo-three-level-menu-hover-color:rgba(54,95,175,0.85);--eo-three-level-menu-title-color:#6597e8;--eo-three-level-menu-active-color:#3f75dd;--eo-three-level-menu-search-tag-color:rgb(140,140,140);--eo-three-level-menu-search-tag-background:rgb(107,107,107)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block;background:none}:host::part(menu-item),\neo-link{display:block}eo-menu-item{margin:4px 0}.sub-menu-wrapper eo-menu-item:first-child,\n.group-wrapper eo-menu-item:first-child{margin-top:0}.sub-menu-wrapper eo-menu-item:last-child{margin-bottom:0}.nav-menu-wrapper{display:flex;align-items:center;gap:8px;white-space:nowrap}.popover .sub-menu-item-label{padding:2px 0px;color:var(--color-normal-text)}.popover.subprime{display:block;width:100%}.sub-menu-wrapper{min-width:160px;max-height:calc(100vh - 100px);background-color:var(--antd-dropdown-menu-bg);padding:12px 0;border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-wrapper{display:flex;flex-direction:column}.sub-menu-wrapper > eo-menu-item{display:block;width:100%}.sub-menu-wrapper > eo-menu-item .menu-item-label,\n.sub-menu-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-menu-item .menu-item-label{display:block;width:100%;padding:7px 24px;box-sizing:border-box;line-height:22px;color:var(--color-normal-text)}.sub-menu-wrapper > eo-popover.subprime .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover.subprime .menu-item-label{display:flex;justify-content:space-between;align-items:center}.sub-menu-wrapper .menu-item-label{border-radius:0}.menu-item-label{display:inline-block;cursor:pointer;border-radius:4px;padding:1px 8px;line-height:22px;color:var(--nav-menu-item-label-color)}.menu-item-label:hover{background-color:var(--top-menu-item-hover-bg)}.group-label{padding-left:16px;font-size:12px;color:var(--palette-gray-7);padding:8px 16px;line-height:20px;margin-top:4px}.sub-menu-wrapper .group-label:first-child{margin-top:0px}.sub-menu-wrapper eo-menu-item[active] .menu-item-label{background:var(--top-menu-item-selected-bg);color:var(--color-brand);font-weight:500}.three-level-menu-container{max-width:980px;max-height:510px;overflow:auto;min-width:160px}.three-level-menu-item-container{display:grid;gap:20px;margin-top:13px;padding:5px 10px}.three-level-menu-item-title-container{display:flex;align-items:center}.three-level-menu-item-title-icon{width:4px;height:4px;background-color:var(--eo-three-level-menu-title-color);margin-right:4px;transform:rotate(45deg)}.three-level-menu-item-title{font-size:14px;font-family:PingFang-SC-Medium,PingFang-SC;font-weight:500;color:var(--eo-three-level-menu-title-color)}.three-level-menu-container .menu-item-label{margin-top:4px;margin-left:4px;padding:4px;width:100%}.three-level-menu-container .active .menu-item-label{color:var(--eo-three-level-menu-active-color)}.three-level-menu-search-result .menu-item-label{margin:0px}.three-level-menu-container .menu-item-label:hover{color:var(--eo-three-level-menu-hover-color)}.three-level-menu-popover .sub-menu-wrapper{padding-top:0px}.three-level-menu-search-container{background:var(--eo-three-level-menu-search-input-background);padding:5px 10px}.three-level-menu-search-result{min-width:187px;max-width:328px;max-height:324px;background-color:var(--antd-dropdown-menu-bg);box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow:scroll}.three-level-menu-search-history-container{padding:5px 10px}.three-level-menu-search-history-text{background:var(--eo-three-level-menu-search-tag-background);border-radius:2px;font-size:7px;line-height:11px;display:inline-block;height:11px;padding:4px;color:var(--eo-three-level-menu-search-tag-color);margin-right:8px}.three-level-menu-search-history-title{color:#8c8c8c;margin:10px 0;display:flex;align-items:center}.three-level-menu-search-history-icon{margin-left:5px}.sub-menu-sit-map-wrapper{box-sizing:border-box;width:calc(100vw);padding:0 60px 24px;max-height:520px;background-color:var(--antd-dropdown-menu-bg);border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-item{position:absolute;opacity:0;height:0;pointer-events:none}.in-group-site-map{width:auto;padding:0 20px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.group .item-link, .custom-group .item-link{font-weight:400}.group .item-link:hover, .custom-group .item-link:hover{background-color:var(--color-fill-bg-base-1)}.group .item-link:hover::part(link), .custom-group .item-link:hover::part(link){color:var(--color-brand-hover)}.group .item-link:hover::part(icon), .custom-group .item-link:hover::part(icon){color:var(--color-brand-hover)}.group .item-link.active::part(link),\n .custom-group .item-link.active::part(link),\n .group .item-link.active::part(icon),\n .custom-group .item-link.active::part(icon){color:var(--palette-blue-8)}.group .item-link::part(link), .custom-group .item-link::part(link){padding:8px 12px 8px 24px;display:flex;gap:4px;color:var(--color-header-text)}.group .item-link::part(icon), .custom-group .item-link::part(icon){color:var(--color-normal-text)}.group .title, .custom-group .title{padding:8px 16px 8px 24px;font-size:16px;font-weight:500;position:relative}.group .title::before, .custom-group .title::before{content:\"\";position:absolute;width:6px;height:6px;top:17px;left:9px;transform:rotate(45deg);background:var(--color-secondary-text)}.group .content .icon-wrapper, .custom-group .content .icon-wrapper, .group .custom-content .icon-wrapper, .custom-group .custom-content .icon-wrapper{color:var(--color-secondary-text);font-size:16px;display:none;margin-left:auto}.group .content .item-link:hover .icon-wrapper, .custom-group .content .item-link:hover .icon-wrapper, .group .custom-content .item-link:hover .icon-wrapper, .custom-group .custom-content .item-link:hover .icon-wrapper{display:block}.group .content .item-link:hover .icon-wrapper:hover, .custom-group .content .item-link:hover .icon-wrapper:hover, .group .custom-content .item-link:hover .icon-wrapper:hover, .custom-group .custom-content .item-link:hover .icon-wrapper:hover{color:var(--color-brand-hover)}.group .content, .custom-group .content{display:flex;flex-direction:column}.group .group-item, .custom-group .group-item{page-break-inside:avoid;break-inside:avoid}.group-view{min-height:300px}.group-view .divider{height:2px;background:var(--color-text-divider-line);margin:16px 0}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.tag-container::part(link){display:flex;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-moz-user-select:none;justify-content:space-between;background-color:var(--color-fill-bg-base-1);border-radius:2px;padding:1px 6px}.tag-container .tag-text{color:var(--color-normal-text);font-weight:400}.tag-container:hover .tag-text{color:var(--color-brand-hover)}.tag-container .tag-suffix{display:inline-flex;font-size:12px;gap:4px;align-items:center;color:var(--color-secondary-text)}.tag-container.is-drag{opacity:0.4}.indicate-wrapper{border:1px dashed var(--color-brand-hover);border-radius:4px;height:20px;margin:2px 0}.close{display:inline-flex;margin-top:2px;padding:0 2px}.close:hover{color:var(--color-error)}.drag-wrapper{cursor:move}.drag-wrapper:hover{color:var(--color-brand-hover)}.star-icon{display:flex;alignitems:center;color:var(--color-secondary-text)}.star-icon:hover{color:var(--color-brand-hover)}.star-icon .active{color:var(--palette-yellow-6)}.recommend-container:hover .star{display:inline-flex}.recommend-container .star{font-size:13px;display:none}.visit-container:hover .operation{display:inline-flex;align-items:center}.visit-container .operation{display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.site-map .search-wrapper{position:sticky;top:0;z-index:9999;padding-top:24px;padding-bottom:16px;background:var(--antd-dropdown-menu-bg)}.site-map .search-input::part(affix-wrapper){border:none;border-bottom:1px solid var(--antd-input-border-color);border-radius:0px;background:transparent}.site-map .visit-access .title, .site-map .search-panel .title{display:inline-block;padding:2px 16px 2px 24px;font-weight:500;line-height:24px;position:relative}.site-map .visit-access .title::before, .site-map .search-panel .title::before{content:\"\";position:absolute;width:6px;height:6px;top:10px;left:9px;border-radius:50%;background:var(--color-secondary-text)}.site-map .visit-access .no-data-tips, .site-map .search-panel .no-data-tips{display:flex;margin:16px 0 32px;align-items:center;justify-content:center;color:var(--color-secondary-text)}.site-map .visit-access{margin-bottom:8px}.site-map .visit-access.hasData{display:flex}.site-map .visit-access .tag-wrapper{flex:1;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}.site-map .ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-map .search-panel .recommend-wrapper{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n export default content && content.locals ? content.locals : undefined;\n","import { Location, parsePath } from \"history\";\nimport { matchPath } from \"@next-core/runtime\";\nimport type {\n SidebarMenuSimpleItem,\n SidebarMenuItem,\n SidebarMenuGroup,\n} from \"./types.js\";\nimport { isObject } from \"lodash\";\n\nexport function isGroup(item: SidebarMenuItem): item is SidebarMenuGroup {\n return item.type === \"group\";\n}\n\nexport function isSubMenu(\n item: SidebarMenuItem,\n groupAsSubMenu?: boolean\n): item is SidebarMenuGroup {\n return Boolean(\n item.type === \"subMenu\" || (groupAsSubMenu && item.type === \"group\")\n );\n}\n\nexport function initMenuItemAndMatchCurrentPathKeys(\n menuItems: SidebarMenuItem[],\n pathname: string,\n search: string,\n parentCursor: string\n): {\n selectedKeys: string[];\n openedKeys: string[];\n matchedKeys: string[];\n} {\n const selectedKeys: string[] = [];\n const openedKeys: string[] = [];\n const matchedKeys: string[] = [];\n\n let cursor = 0;\n menuItems &&\n menuItems.forEach((item) => {\n // key的格式最终为0,1,2,0.1,0.2,0.1.1,0.1.2\n item.key =\n parentCursor === \"\" ? `${cursor}` : `${parentCursor}.${cursor}`;\n if (isGroup(item) || isSubMenu(item)) {\n const tmp = initMenuItemAndMatchCurrentPathKeys(\n item.items,\n pathname,\n search,\n item.key\n );\n selectedKeys.push(...tmp.selectedKeys);\n if (tmp.selectedKeys.length || item.defaultExpanded) {\n openedKeys.push(item.key);\n }\n openedKeys.push(...tmp.openedKeys);\n matchedKeys.push(...tmp.matchedKeys);\n } else {\n if (matchMenuItem(item, pathname, search)) {\n selectedKeys.push(String(item.key));\n\n const keyPath = item.key.split(\".\");\n\n for (let i = 0; i < keyPath.length; i++) {\n matchedKeys.push(keyPath.slice(0, i + 1).join(\".\"));\n }\n }\n }\n cursor += 1;\n });\n if (selectedKeys.length && parentCursor !== \"\") {\n openedKeys.push(parentCursor);\n }\n return {\n selectedKeys: selectedKeys,\n openedKeys: openedKeys,\n matchedKeys: matchedKeys,\n };\n}\n\nfunction getMatchOfSearch(\n currentSearch: string,\n toSearch: string | undefined\n): boolean {\n const current = new URLSearchParams(currentSearch);\n const to = new URLSearchParams(toSearch);\n for (const [key, value] of to.entries()) {\n // Allow `?k=` to match `?` (when `k` doesn't exist)\n if ((current.get(key) ?? \"\") !== value) {\n return false;\n }\n }\n return true;\n}\n\nexport function matchMenuItem(\n item: SidebarMenuSimpleItem,\n pathname: string,\n search: string\n): boolean {\n if (!item.to) return false;\n const to = typeof item.to === \"object\" ? item.to : parsePath(item.to);\n\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath = to.pathname!.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n let match = !!matchPath(pathname, {\n path: escapedPath,\n exact: item.exact,\n });\n\n if (match && item.activeMatchSearch) {\n match = getMatchOfSearch(search, to.search);\n }\n\n if (!match && Array.isArray(item.activeIncludes)) {\n for (const include of item.activeIncludes) {\n let paths: string[];\n let exact: boolean | undefined = true;\n\n if (isObject(include)) {\n paths = Array.isArray(include.path) ? include.path : [include.path];\n exact = include.exact;\n } else {\n paths = [include];\n }\n\n for (const path of paths) {\n let parsedPath: Location | undefined;\n const hasSearch = path.includes(\"?\");\n\n if (hasSearch) {\n parsedPath = parsePath(path);\n }\n match = !!matchPath(pathname, {\n path: hasSearch ? parsedPath!.pathname : path,\n exact,\n });\n\n if (match && parsedPath?.search) {\n match = getMatchOfSearch(search, parsedPath.search);\n }\n\n if (match) {\n break;\n }\n }\n\n if (match) {\n break;\n }\n }\n }\n\n if (match && Array.isArray(item.activeExcludes)) {\n for (const include of item.activeExcludes) {\n let paths: string[];\n let exact: boolean | undefined = true;\n\n if (isObject(include)) {\n paths = Array.isArray(include.path) ? include.path : [include.path];\n exact = include.exact;\n } else {\n paths = [include];\n }\n\n for (const path of paths) {\n match = !matchPath(pathname, {\n path,\n exact,\n });\n\n if (!match) {\n break;\n }\n }\n\n if (!match) {\n break;\n }\n }\n }\n\n return match;\n}\n"],"names":["initializeReactI18n","NS","locales","WrappedPopover","wrapBrick","WrappedSearch","onChange","onSearch","WrappedIcon","LOCAL_STORAGE_PREFIX","maxVisitorLength","ThreeLevelMenuPopoverContent","props","useTranslation","menuItem","selectedKey","items","searchResult","setSearchResult","useState","searchKey","setSearchKey","triggerRef","useRef","nameSpace","title","storage","useMemo","JsonStorage","localStorage","searchHistory","getItem","popoverTriggerClick","_triggerRef$current","current","click","React","className","onClick","e","stopPropagation","placeholder","t","K","SEARCH_BY_MENU_NAME","detail","list","uniq","length","pop","setItem","flatMap","i","filter","text","toLowerCase","includes","trim","onFocus","onBlur","trigger","placement","anchorDisplay","distance","slot","ref","map","renderLinkCom","width","style","height","textAlign","lineHeight","NO_DATA","SEARCH_HISTORY","lib","theme","icon","h","key","gridTemplateColumns","item","index","_item$items","classnames","active","en","QUICK_ACCESS","REMOVE_ITEM_FROM_QUICK_ACCESS","ADD_ITEM_TO_QUICK_ACCESS","NO_DATA_TIPS_IN_QUICK_ACCESS","SITE_MAP_SEARCH_RECOMMEND","MAX_COLLECT_COUNT_TIPS","NO_DATA_SEARCH_INFO","SEARCH_ITEM_PLACEHOLDER","zh","DRAG_DIRECTION","collectModule","DragContext","collectService","constructor","maxCollectLength","_defineProperty","Map","this","getFavoritesById","id","cloneDeep","collectMap","get","fetchFavorites","cachedPromise","collectPromise","favoritesPromise","MyCollectionApi_listMyCollection","module","collectionName","then","result","_result$payloads","payloads","extInfo","Boolean","set","setItemAsFavorite","unshift","updateFavoriteItems","MyCollectionApi_upsertMyCollection","name","url","to","error","handleHttpError","equalItem","prevItem","removeItemFromFavorite","findIndex","row","splice","isCollected","some","toggleFavorite","checkMaxCapacity","moveFavoriteTo","option","from","direction","fromIndex","toIndex","Left","groupId","WrappedLink","WrappedTooltip","PlaceholderDropComp","_ref","data","onDragOver","onFavoriteUpdate","useContext","onDragEnter","target","background","onDragLeave","onDrop","formData","JSON","parse","dataTransfer","getData","newDataList","ItemTag","suffix","allowDrag","onDragStart","overElement","onDragEnd","containerRef","isDragIng","setIsDragIng","isActive","dataset","draggable","_e$dataTransfer","setData","stringify","preventDefault","dropEffect","classNames","href","Right","QuickVisitItem","onAllowDrag","onFavorite","suffixRef","iconRef","handleRemove","useCallback","handleMouseDown","useEffect","addEventListener","removeEventListener","handleClick","suffixGroups","content","hoist","onMouseDown","StarIcon","_ref2","_extends","RecommendItem","walkMenuItem","type","Array","isArray","walkMenuItems","push","itemColumnWidth","GroupView","groupMenus","groups","groupCategoryMap","categoryOrder","Set","forEach","groupFrom","add","value","processGroupItems","DefaultGroup","CustomGroup","groupRef","columnCount","setColumnCount","resizeObserver","ResizeObserver","entries","entry","contentRect","Math","floor","observe","disconnect","columnWidth","display","group","GroupItem","WrappedInput","onValueChange","SiteMapItem","menuGroup","visible","favoriteList","setFavoriteList","flatItems","flatMenuItems","q","setQ","setFilters","dragElement","setDragElement","setOverElement","setAllowDrag","setDirection","initialized","setInitialized","handleFavorite","collectList","handleSearch","v","debouncedHandleSearch","debounce","handleDragOver","throttle","dropElement","element","node","parentElement","findDropElement","isValidDragAction","left","getBoundingClientRect","right","clientX","undefined","hasData","Provider","handleDragEnd","enable","WrappedLinkItem","isGroup","isSubMenu","groupAsSubMenu","linkStyle","renderSpanCom","subMenu","___CSS_LOADER_EXPORT___","toString","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","initMenuItemAndMatchCurrentPathKeys","menuItems","pathname","search","parentCursor","selectedKeys","openedKeys","matchedKeys","cursor","tmp","defaultExpanded","parsePath","escapedPath","replace","match","matchPath","path","exact","activeMatchSearch","getMatchOfSearch","activeIncludes","include","paths","isObject","_parsedPath","parsedPath","hasSearch","activeExcludes","matchMenuItem","String","keyPath","split","slice","join","currentSearch","toSearch","URLSearchParams"],"sourceRoot":""}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! For license information please see eo-sidebar-sub-menu.
|
|
2
|
-
(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[1131,1369,2052],{9982:(e,t,n)=>{"use strict";n.r(t),n.d(t,{EoSidebarSubMenu:()=>N,EoSidebarSubMenuComponent:()=>K});var r,o=n(918),i=n(6121),a=n(829),c=n(2740),u=n(8769),s=n.n(u),l=n(4782),m=n(1389),d=n(1094),p=(n(9583),n(764)),f=n(1409),h=n(3373),v=n.n(h);let b,y,g;const x=(0,m.wrapBrick)("eo-icon"),w=(0,m.wrapBrick)("eo-menu"),k=(0,m.wrapBrick)("eo-menu-group"),A=(0,m.wrapBrick)("eo-menu-item-sub-menu"),E=(0,m.wrapBrick)("eo-menu-item"),S=(0,m.wrapBrick)("eo-link"),{defineElement:j,property:P}=(0,l.createDecorators)();let N;var T=new WeakMap;class I extends m.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,T,y(this)),g(this)}get menu(){return(0,a.A)(T,this)}set menu(e){(0,i.A)(T,this,e)}render(){return s().createElement(K,{menu:this.menu})}}function K(e){const{menu:t}=e,n=(0,d.getHistory)(),[r,o]=(0,u.useState)(n.location),{pathname:i,search:a}=r,[c,l]=(0,u.useState)([]),[m,f]=(0,u.useState)([]),h=(0,u.useCallback)((()=>{const{selectedKeys:e,openedKeys:n}=(0,p.LP)((null==t?void 0:t.menuItems)??[],i,a,"");l(e),f(n)}),[null==t?void 0:t.menuItems,i,a]);(0,u.useEffect)((()=>{const e=n.listen((e=>{o(e)}));return h(),e}),[n,h]);const b=(0,u.useCallback)((e=>{var t;return 16*((null===(t=e.key)||void 0===t||null===(t=t.split("."))||void 0===t?void 0:t.length)-1)}),[]);function y(e,t){return(0,p.Wf)(e)?(e=>{var t;if((null===(t=e.items)||void 0===t?void 0:t.length)>0)return s().createElement(A,{className:"menu-sub-item",icon:e.icon,titleStyle:{paddingLeft:b(e)},bodyStyle:{paddingLeft:b(e)/2},collapsed:!m.includes(e.key)},s().createElement("span",{slot:"title"},e.title),e.items.map((e=>s().createElement(s().Fragment,{key:e.key},y(e,{inSubmenu:!0})))))})(e):(0,p.IZ)(e)?(e=>{var t;if((null===(t=e.items)||void 0===t?void 0:t.length)>0)return s().createElement(k,null,s().createElement("span",{slot:"title"},e.title),e.items.map((e=>s().createElement(s().Fragment,{key:e.key},y(e)))))})(e):((e,t)=>s().createElement(E,{className:v()("menu-item",{"in-submenu":null==t?void 0:t.inSubmenu}),style:{paddingLeft:b(e)||16},icon:e.icon,active:!!e.key&&c.includes(e.key)},s().createElement(S,{className:"menu-item-link",type:"plain",url:e.to,href:e.href,title:e.text,target:e.target},s().createElement("span",{className:v()("menu-item-text",{"item-has-icon":e.icon})},e.text))))(e,t)}return s().createElement(w,{className:"menu-container",mode:"vertical"},(null==t?void 0:t.title)&&s().createElement("div",{className:"header"},(null==t?void 0:t.icon)&&s().createElement(x,null==t?void 0:t.icon),s().createElement("span",{className:"title"},null==t?void 0:t.title)),s().createElement("div",{className:"content"},null==t?void 0:t.menuItems.map((e=>s().createElement(s().Fragment,{key:e.key},y(e))))))}r=I,({e:[y,g],c:[N,b]}=(0,c.A)(r,[j("eo-sidebar-sub-menu",{styleTexts:[f.A]})],[[P({attribute:!1}),1,"menu"]],0,void 0,m.ReactNextElement)),b()},1409:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(6758),o=n.n(r),i=n(935),a=n.n(i)()(o());a.push([e.id,":host{display:block}:host([hidden]){display:none}.menu-container{box-sizing:border-box;background:var(--third-menu-default-bg);border:1px solid var(--stroke-color-default);border-width:0 1px 0 0;border-radius:0px;padding:20px 0px;height:100%}.menu-container .header{display:flex;gap:10px;align-items:center;font-size:var(--title-font-size);padding:0 20px 16px 20px;line-height:26px;color:var(--color-header-text)}.menu-container .header .title{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-wrap:break-word}.menu-container .content{padding:0 12px}.menu-container .menu-item,\n .menu-container .menu-sub-item::part(sub-menu-item-title){margin:0;padding-right:16px;height:40px;line-height:40px;border-radius:4px;margin-bottom:4px}.menu-container .menu-item::part(menu-item-icon),\n .menu-container .menu-sub-item::part(menu-item-icon){color:var(--color-secondary-text)}.menu-container .menu-item-link{width:100%;color:var(--color-secondary-text)}.menu-container .menu-item-text,\n .menu-container .menu-group-text,\n .menu-container .menu-item-link{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-container .menu-item-text{display:block;box-sizing:border-box;color:var(--antd-text-color)}.menu-container .menu-item:hover{background:var(--third-menu-item-hover-bg);color:var(--color-header-text)}.menu-container .menu-item:hover .menu-item-text{color:var(--color-header-text);font-weight:var(--font-weight-400)}.menu-container .in-submenu .menu-item-text{color:var(--color-normal-text)}.menu-container .menu-sub-item::part(sub-menu-item-title):hover{color:var(--color-header-text)}.menu-container .menu-item-text.item-has-icon{margin-left:6px}.menu-container .menu-item[active]{color:var(--color-brand);background-color:var(--third-menu-item-selected-bg)}.menu-container .menu-item[active] .menu-item-text{color:var(--color-brand);font-weight:var(--font-weight-500)}",""]);const c=a.toString()},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,i){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(r)for(var c=0;c<this.length;c++){var u=this[c][0];null!=u&&(a[u]=!0)}for(var s=0;s<e.length;s++){var l=[].concat(e[s]);r&&a[l[0]]||(void 0!==i&&(void 0===l[5]||(l[1]="@layer".concat(l[5].length>0?" ".concat(l[5]):""," {").concat(l[1],"}")),l[5]=i),n&&(l[2]?(l[1]="@media ".concat(l[2]," {").concat(l[1],"}"),l[2]=n):l[2]=n),o&&(l[4]?(l[1]="@supports (".concat(l[4],") {").concat(l[1],"}"),l[4]=o):l[4]="".concat(o)),t.push(l))}},t}},6758:e=>{"use strict";e.exports=function(e){return e[1]}},3373:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=a(e,i(n)))}return e}function i(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=a(t,n));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},2740:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(7545),o=n(6902);function i(e,t,n){"symbol"==(0,r.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}var a=n(1369);function c(e,t,n,c,u,s){var l,m,d,p,f,h,v,b=Symbol.metadata||Symbol.for("Symbol.metadata"),y=Object.defineProperty,g=Object.create,x=[g(null),g(null)],w=t.length;function k(t,n,r){return function(o,i){n&&(i=o,o=e);for(var a=0;a<t.length;a++)i=t[a].apply(o,r?[i]:[]);return r?i:o}}function A(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function E(e,t,n,o,a,c,u,s,d,p,f){function h(e){if(!f(e))throw new TypeError("Attempted to access private element on non-instance")}var v=[].concat(t[0]),b=t[3],g=!u,w=1===a,E=3===a,S=4===a,j=2===a;function P(t,n,r){return function(o,i){return n&&(i=o,o=e),r&&r(o),N[t].call(o,i)}}if(!g){var N={},T=[],I=E?"get":S||w?"set":"value";if(d?(p||w?N={get:i((function(){return b(this)}),o,"get"),set:function(e){t[4](this,e)}}:N[I]=b,p||i(N[I],o,j?"":I)):p||(N=Object.getOwnPropertyDescriptor(e,o)),!p&&!d){if((m=x[+s][o])&&7!=(m^a))throw Error("Decorating two elements with the same name ("+N[I].name+") is not supported yet");x[+s][o]=a<3?1:a}}for(var K=e,z=v.length-1;z>=0;z-=n?2:1){var O=A(v[z],"A decorator","be",!0),B=n?v[z-1]:void 0,L={},C={kind:["field","accessor","method","getter","setter","class"][a],name:o,metadata:l,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");A(t,"An initializer","be",!0),c.push(t)}.bind(null,L)};if(g)m=O.call(B,K,C),L.v=1,A(m,"class decorators","return")&&(K=m);else if(C.static=s,C.private=d,m=C.access={has:d?f.bind():function(e){return o in e}},S||(m.get=d?j?function(e){return h(e),N.value}:P("get",0,h):function(e){return e[o]}),j||E||(m.set=d?P("set",0,h):function(e,t){e[o]=t}),K=O.call(B,w?{get:N.get,set:N.set}:N[I],C),L.v=1,w){if("object"==(0,r.A)(K)&&K)(m=A(K.get,"accessor.get"))&&(N.get=m),(m=A(K.set,"accessor.set"))&&(N.set=m),(m=A(K.init,"accessor.init"))&&T.unshift(m);else if(void 0!==K)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else A(K,(p?"field":"method")+" decorators","return")&&(p?T.unshift(K):N[I]=K)}return a<2&&u.push(k(T,s,1),k(c,s,0)),p||g||(d?w?u.splice(-1,0,P("get",s),P("set",s)):u.push(j?N[I]:A.call.bind(N[I])):y(e,o,N)),K}function S(e){return y(e,b,{configurable:!0,enumerable:!0,value:l})}return void 0!==s&&(l=s[b]),l=g(null==l?null:l),f=[],h=function(e){e&&f.push(k(e))},v=function(t,r){for(var i=0;i<n.length;i++){var c=n[i],s=c[1],l=7&s;if((8&s)==t&&!l==r){var m=c[2],h=!!c[3],v=16&s;E(t?e:e.prototype,c,v,h?"#"+m:(0,a.A)(m),l,l<2?[]:t?p=p||[]:d=d||[],f,!!t,h,r,t&&h?function(t){return(0,o.A)(t)===e}:u)}}},v(8,0),v(0,0),v(8,1),v(0,1),h(d),h(p),m=f,w||S(e),{e:m,get c(){var n=[];return w&&[S(e=E(e,[t],c,e.name,5,n)),k(n,1)]}}}},2559:(e,t,n)=>{"use strict";function r(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>r})},6902:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(7545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.A)(e):"null"));return e}},2016:(e,t,n)=>{"use strict";function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>r})},829:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2559);function o(e,t){return e.get((0,r.A)(e,t))}},918:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2016);function o(e,t,n){(0,r.A)(e,t),t.set(e,n)}},6121:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2559);function o(e,t,n){return e.set((0,r.A)(e,t),n),n}},1369:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(7545);function o(e){var t=function(e,t){if("object"!=(0,r.A)(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,"string");if("object"!=(0,r.A)(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:t+""}},7545:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})},764:(e,t,n)=>{"use strict";n.d(t,{IZ:()=>i,LP:()=>c,Wf:()=>a});var r=n(1201),o=n(1094);function i(e){return"group"===e.type}function a(e,t){return Boolean("subMenu"===e.type||t&&"group"===e.type)}function c(e,t,n,s){const l=[],m=[],d=[];let p=0;return e&&e.forEach((e=>{if(e.key=""===s?`${p}`:`${s}.${p}`,i(e)||a(e)){const r=c(e.items,t,n,e.key);l.push(...r.selectedKeys),(r.selectedKeys.length||e.defaultExpanded)&&m.push(e.key),m.push(...r.openedKeys),d.push(...r.matchedKeys)}else if(function(e,t,n){if(!e.to)return!1;const i="object"==typeof e.to?e.to:(0,r.parsePath)(e.to),a=i.pathname.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1");let c=!!(0,o.matchPath)(t,{path:a,exact:e.exact});if(c&&e.activeMatchSearch&&(c=u(n,i.search)),!c&&Array.isArray(e.activeIncludes))for(const i of e.activeIncludes){var s;let e;const a=i.includes("?");if(a&&(e=(0,r.parsePath)(i)),c=!!(0,o.matchPath)(t,{path:a?e.pathname:i,exact:!0}),c&&null!==(s=e)&&void 0!==s&&s.search&&(c=u(n,e.search)),c)break}if(c&&Array.isArray(e.activeExcludes))for(const n of e.activeExcludes)if(c=!(0,o.matchPath)(t,{path:n,exact:!0}),!c)break;return c}(e,t,n)){l.push(String(e.key));const t=e.key.split(".");for(let e=0;e<t.length;e++)d.push(t.slice(0,e+1).join("."))}p+=1})),l.length&&""!==s&&m.push(s),{selectedKeys:l,openedKeys:m,matchedKeys:d}}function u(e,t){const n=new URLSearchParams(e),r=new URLSearchParams(t);for(const[e,t]of r.entries())if((n.get(e)??"")!==t)return!1;return!0}}}]);
|
|
3
|
-
//# sourceMappingURL=eo-sidebar-sub-menu.
|
|
1
|
+
/*! For license information please see eo-sidebar-sub-menu.11f96513.js.LICENSE.txt */
|
|
2
|
+
(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[1131,1369,2052],{9982:(e,t,n)=>{"use strict";n.r(t),n.d(t,{EoSidebarSubMenu:()=>N,EoSidebarSubMenuComponent:()=>I});var r,o=n(918),i=n(6121),a=n(829),c=n(2740),u=n(8769),s=n.n(u),l=n(4782),m=n(1389),d=n(1094),p=(n(9583),n(764)),f=n(1409),h=n(3373),v=n.n(h);let b,y,g;const x=(0,m.wrapBrick)("eo-icon"),w=(0,m.wrapBrick)("eo-menu"),k=(0,m.wrapBrick)("eo-menu-group"),A=(0,m.wrapBrick)("eo-menu-item-sub-menu"),E=(0,m.wrapBrick)("eo-menu-item"),S=(0,m.wrapBrick)("eo-link"),{defineElement:j,property:P}=(0,l.createDecorators)();let N;var O=new WeakMap;class T extends m.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,O,y(this)),g(this)}get menu(){return(0,a.A)(O,this)}set menu(e){(0,i.A)(O,this,e)}render(){return s().createElement(I,{menu:this.menu})}}function I(e){const{menu:t}=e,n=(0,d.getHistory)(),[r,o]=(0,u.useState)(n.location),{pathname:i,search:a}=r,[c,l]=(0,u.useState)([]),[m,f]=(0,u.useState)([]),h=(0,u.useCallback)((()=>{const{selectedKeys:e,openedKeys:n}=(0,p.LP)((null==t?void 0:t.menuItems)??[],i,a,"");l(e),f(n)}),[null==t?void 0:t.menuItems,i,a]);(0,u.useEffect)((()=>{const e=n.listen((e=>{o(e)}));return h(),e}),[n,h]);const b=(0,u.useCallback)((e=>{var t;return 16*((null===(t=e.key)||void 0===t||null===(t=t.split("."))||void 0===t?void 0:t.length)-1)}),[]);function y(e,t){return(0,p.Wf)(e)?(e=>{var t;if((null===(t=e.items)||void 0===t?void 0:t.length)>0)return s().createElement(A,{className:"menu-sub-item",icon:e.icon,titleStyle:{paddingLeft:b(e)},bodyStyle:{paddingLeft:b(e)/2},collapsed:!m.includes(e.key)},s().createElement("span",{slot:"title"},e.title),e.items.map((e=>s().createElement(s().Fragment,{key:e.key},y(e,{inSubmenu:!0})))))})(e):(0,p.IZ)(e)?(e=>{var t;if((null===(t=e.items)||void 0===t?void 0:t.length)>0)return s().createElement(k,null,s().createElement("span",{slot:"title"},e.title),e.items.map((e=>s().createElement(s().Fragment,{key:e.key},y(e)))))})(e):((e,t)=>s().createElement(E,{className:v()("menu-item",{"in-submenu":null==t?void 0:t.inSubmenu}),style:{paddingLeft:b(e)||16},icon:e.icon,active:!!e.key&&c.includes(e.key)},s().createElement(S,{className:"menu-item-link",type:"plain",url:e.to,href:e.href,title:e.text,target:e.target},s().createElement("span",{className:v()("menu-item-text",{"item-has-icon":e.icon})},e.text))))(e,t)}return s().createElement(w,{className:"menu-container",mode:"vertical"},(null==t?void 0:t.title)&&s().createElement("div",{className:"header"},(null==t?void 0:t.icon)&&s().createElement(x,null==t?void 0:t.icon),s().createElement("span",{className:"title"},null==t?void 0:t.title)),s().createElement("div",{className:"content"},null==t?void 0:t.menuItems.map((e=>s().createElement(s().Fragment,{key:e.key},y(e))))))}r=T,({e:[y,g],c:[N,b]}=(0,c.A)(r,[j("eo-sidebar-sub-menu",{styleTexts:[f.A]})],[[P({attribute:!1}),1,"menu"]],0,void 0,m.ReactNextElement)),b()},1409:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(6758),o=n.n(r),i=n(935),a=n.n(i)()(o());a.push([e.id,":host{display:block}:host([hidden]){display:none}.menu-container{box-sizing:border-box;background:var(--third-menu-default-bg);border:1px solid var(--stroke-color-default);border-width:0 1px 0 0;border-radius:0px;padding:20px 0px;height:100%}.menu-container .header{display:flex;gap:10px;align-items:center;font-size:var(--title-font-size);padding:0 20px 16px 20px;line-height:26px;color:var(--color-header-text)}.menu-container .header .title{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-wrap:break-word}.menu-container .content{padding:0 12px}.menu-container .menu-item,\n .menu-container .menu-sub-item::part(sub-menu-item-title){margin:0;padding-right:16px;height:40px;line-height:40px;border-radius:4px;margin-bottom:4px}.menu-container .menu-item::part(menu-item-icon),\n .menu-container .menu-sub-item::part(menu-item-icon){color:var(--color-secondary-text)}.menu-container .menu-item-link{width:100%;color:var(--color-secondary-text)}.menu-container .menu-item-text,\n .menu-container .menu-group-text,\n .menu-container .menu-item-link{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-container .menu-item-text{display:block;box-sizing:border-box;color:var(--antd-text-color)}.menu-container .menu-item:hover{background:var(--third-menu-item-hover-bg);color:var(--color-header-text)}.menu-container .menu-item:hover .menu-item-text{color:var(--color-header-text);font-weight:var(--font-weight-400)}.menu-container .in-submenu .menu-item-text{color:var(--color-normal-text)}.menu-container .menu-sub-item::part(sub-menu-item-title):hover{color:var(--color-header-text)}.menu-container .menu-item-text.item-has-icon{margin-left:6px}.menu-container .menu-item[active]{color:var(--color-brand);background-color:var(--third-menu-item-selected-bg)}.menu-container .menu-item[active] .menu-item-text{color:var(--color-brand);font-weight:var(--font-weight-500)}",""]);const c=a.toString()},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,i){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(r)for(var c=0;c<this.length;c++){var u=this[c][0];null!=u&&(a[u]=!0)}for(var s=0;s<e.length;s++){var l=[].concat(e[s]);r&&a[l[0]]||(void 0!==i&&(void 0===l[5]||(l[1]="@layer".concat(l[5].length>0?" ".concat(l[5]):""," {").concat(l[1],"}")),l[5]=i),n&&(l[2]?(l[1]="@media ".concat(l[2]," {").concat(l[1],"}"),l[2]=n):l[2]=n),o&&(l[4]?(l[1]="@supports (".concat(l[4],") {").concat(l[1],"}"),l[4]=o):l[4]="".concat(o)),t.push(l))}},t}},6758:e=>{"use strict";e.exports=function(e){return e[1]}},3373:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=a(e,i(n)))}return e}function i(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=a(t,n));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},2740:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(7545),o=n(6902);function i(e,t,n){"symbol"==(0,r.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}var a=n(1369);function c(e,t,n,c,u,s){var l,m,d,p,f,h,v,b=Symbol.metadata||Symbol.for("Symbol.metadata"),y=Object.defineProperty,g=Object.create,x=[g(null),g(null)],w=t.length;function k(t,n,r){return function(o,i){n&&(i=o,o=e);for(var a=0;a<t.length;a++)i=t[a].apply(o,r?[i]:[]);return r?i:o}}function A(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function E(e,t,n,o,a,c,u,s,d,p,f){function h(e){if(!f(e))throw new TypeError("Attempted to access private element on non-instance")}var v=[].concat(t[0]),b=t[3],g=!u,w=1===a,E=3===a,S=4===a,j=2===a;function P(t,n,r){return function(o,i){return n&&(i=o,o=e),r&&r(o),N[t].call(o,i)}}if(!g){var N={},O=[],T=E?"get":S||w?"set":"value";if(d?(p||w?N={get:i((function(){return b(this)}),o,"get"),set:function(e){t[4](this,e)}}:N[T]=b,p||i(N[T],o,j?"":T)):p||(N=Object.getOwnPropertyDescriptor(e,o)),!p&&!d){if((m=x[+s][o])&&7!=(m^a))throw Error("Decorating two elements with the same name ("+N[T].name+") is not supported yet");x[+s][o]=a<3?1:a}}for(var I=e,K=v.length-1;K>=0;K-=n?2:1){var z=A(v[K],"A decorator","be",!0),B=n?v[K-1]:void 0,L={},C={kind:["field","accessor","method","getter","setter","class"][a],name:o,metadata:l,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");A(t,"An initializer","be",!0),c.push(t)}.bind(null,L)};if(g)m=z.call(B,I,C),L.v=1,A(m,"class decorators","return")&&(I=m);else if(C.static=s,C.private=d,m=C.access={has:d?f.bind():function(e){return o in e}},S||(m.get=d?j?function(e){return h(e),N.value}:P("get",0,h):function(e){return e[o]}),j||E||(m.set=d?P("set",0,h):function(e,t){e[o]=t}),I=z.call(B,w?{get:N.get,set:N.set}:N[T],C),L.v=1,w){if("object"==(0,r.A)(I)&&I)(m=A(I.get,"accessor.get"))&&(N.get=m),(m=A(I.set,"accessor.set"))&&(N.set=m),(m=A(I.init,"accessor.init"))&&O.unshift(m);else if(void 0!==I)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else A(I,(p?"field":"method")+" decorators","return")&&(p?O.unshift(I):N[T]=I)}return a<2&&u.push(k(O,s,1),k(c,s,0)),p||g||(d?w?u.splice(-1,0,P("get",s),P("set",s)):u.push(j?N[T]:A.call.bind(N[T])):y(e,o,N)),I}function S(e){return y(e,b,{configurable:!0,enumerable:!0,value:l})}return void 0!==s&&(l=s[b]),l=g(null==l?null:l),f=[],h=function(e){e&&f.push(k(e))},v=function(t,r){for(var i=0;i<n.length;i++){var c=n[i],s=c[1],l=7&s;if((8&s)==t&&!l==r){var m=c[2],h=!!c[3],v=16&s;E(t?e:e.prototype,c,v,h?"#"+m:(0,a.A)(m),l,l<2?[]:t?p=p||[]:d=d||[],f,!!t,h,r,t&&h?function(t){return(0,o.A)(t)===e}:u)}}},v(8,0),v(0,0),v(8,1),v(0,1),h(d),h(p),m=f,w||S(e),{e:m,get c(){var n=[];return w&&[S(e=E(e,[t],c,e.name,5,n)),k(n,1)]}}}},2559:(e,t,n)=>{"use strict";function r(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>r})},6902:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(7545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.A)(e):"null"));return e}},2016:(e,t,n)=>{"use strict";function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>r})},829:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2559);function o(e,t){return e.get((0,r.A)(e,t))}},918:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2016);function o(e,t,n){(0,r.A)(e,t),t.set(e,n)}},6121:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2559);function o(e,t,n){return e.set((0,r.A)(e,t),n),n}},1369:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(7545);function o(e){var t=function(e,t){if("object"!=(0,r.A)(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,"string");if("object"!=(0,r.A)(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:t+""}},7545:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})},764:(e,t,n)=>{"use strict";n.d(t,{IZ:()=>a,LP:()=>u,Wf:()=>c});var r=n(1201),o=n(1094),i=n(1030);function a(e){return"group"===e.type}function c(e,t){return Boolean("subMenu"===e.type||t&&"group"===e.type)}function u(e,t,n,l){const m=[],d=[],p=[];let f=0;return e&&e.forEach((e=>{if(e.key=""===l?`${f}`:`${l}.${f}`,a(e)||c(e)){const r=u(e.items,t,n,e.key);m.push(...r.selectedKeys),(r.selectedKeys.length||e.defaultExpanded)&&d.push(e.key),d.push(...r.openedKeys),p.push(...r.matchedKeys)}else if(function(e,t,n){if(!e.to)return!1;const a="object"==typeof e.to?e.to:(0,r.parsePath)(e.to),c=a.pathname.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1");let u=!!(0,o.matchPath)(t,{path:c,exact:e.exact});if(u&&e.activeMatchSearch&&(u=s(n,a.search)),!u&&Array.isArray(e.activeIncludes))for(const a of e.activeIncludes){let e,c=!0;(0,i.isObject)(a)?(e=Array.isArray(a.path)?a.path:[a.path],c=a.exact):e=[a];for(const i of e){var l;let e;const a=i.includes("?");if(a&&(e=(0,r.parsePath)(i)),u=!!(0,o.matchPath)(t,{path:a?e.pathname:i,exact:c}),u&&null!==(l=e)&&void 0!==l&&l.search&&(u=s(n,e.search)),u)break}if(u)break}if(u&&Array.isArray(e.activeExcludes))for(const n of e.activeExcludes){let e,r=!0;(0,i.isObject)(n)?(e=Array.isArray(n.path)?n.path:[n.path],r=n.exact):e=[n];for(const n of e)if(u=!(0,o.matchPath)(t,{path:n,exact:r}),!u)break;if(!u)break}return u}(e,t,n)){m.push(String(e.key));const t=e.key.split(".");for(let e=0;e<t.length;e++)p.push(t.slice(0,e+1).join("."))}f+=1})),m.length&&""!==l&&d.push(l),{selectedKeys:m,openedKeys:d,matchedKeys:p}}function s(e,t){const n=new URLSearchParams(e),r=new URLSearchParams(t);for(const[e,t]of r.entries())if((n.get(e)??"")!==t)return!1;return!0}}}]);
|
|
3
|
+
//# sourceMappingURL=eo-sidebar-sub-menu.11f96513.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/eo-sidebar-sub-menu.11f96513.js","mappings":"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","sources":["webpack:///./src/sidebar-sub-menu/index.tsx","webpack:///./src/sidebar-sub-menu/styles.shadow.css","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/classnames/index.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2311.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../src/menu.ts"],"sourcesContent":["import React, { useState, useEffect, useCallback } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { getHistory } from \"@next-core/runtime\";\nimport { UnregisterCallback } from \"history\";\nimport \"@next-core/theme\";\nimport {\n SidebarMenuSimpleItem,\n SidebarMenuGroup,\n SidebarMenuItem,\n} from \"@next-shared/general/types\";\nimport {\n initMenuItemAndMatchCurrentPathKeys,\n isGroup,\n isSubMenu,\n} from \"@next-shared/general/menu\";\nimport { Menu as MenuComponent, SidebarMenu } from \"@next-bricks/basic/menu\";\nimport { Link, LinkProps, Target } from \"@next-bricks/basic/link\";\nimport {\n EoMenuItemSubMenu,\n EoMenuSubMenuProps,\n} from \"@next-bricks/basic/menu-item-sub-menu\";\nimport { EoMenuGroup } from \"@next-bricks/basic/menu-group\";\nimport { MenuComponentProps, MenuItem } from \"@next-bricks/basic/menu-item\";\nimport styleText from \"./styles.shadow.css\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport classNames from \"classnames\";\n\n// --- NOTE: uncomment these lines below to enable i18n for your brick ---\n// import { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\n// import { K, NS, locales } from \"./i18n.js\";\n// initializeReactI18n(NS, locales);\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst WrappedMenu = wrapBrick<MenuComponent, any>(\"eo-menu\");\n\nconst WrappedMenuGroup = wrapBrick<EoMenuGroup, any>(\"eo-menu-group\");\n\nconst WrapperMenuItemSubMenu = wrapBrick<EoMenuItemSubMenu, EoMenuSubMenuProps>(\n \"eo-menu-item-sub-menu\"\n);\n\nconst WrappedMenuItem = wrapBrick<MenuItem, MenuComponentProps>(\"eo-menu-item\");\n\nconst WrappedLinkItem = wrapBrick<Link, LinkProps>(\"eo-link\");\n\ninterface SidebarSubMenuProps {\n menu?: SidebarMenu;\n showTooltip?: boolean;\n}\n\nconst { defineElement, property } = createDecorators();\n\n/**\n * 构件 `eo-sidebar-sub-menu`\n * @category navigation\n */\nexport\n@defineElement(\"eo-sidebar-sub-menu\", {\n styleTexts: [styleText],\n})\nclass EoSidebarSubMenu extends ReactNextElement {\n /**\n * 菜单项\n */\n @property({\n attribute: false,\n })\n accessor menu: SidebarMenu | undefined;\n\n render() {\n return <EoSidebarSubMenuComponent menu={this.menu} />;\n }\n}\n\nexport function EoSidebarSubMenuComponent(props: SidebarSubMenuProps) {\n // const { t } = useTranslation(NS);\n // const hello = t(K.HELLO);\n const { menu } = props;\n\n const history = getHistory();\n const [location, setLocation] = useState(history.location);\n const { pathname, search } = location;\n\n const [selectedKey, setSelectedKey] = useState<string[]>([]);\n const [openedKeys, setOpenedKeys] = useState<string[]>([]);\n\n const setSelected = useCallback((): void => {\n const { selectedKeys, openedKeys } = initMenuItemAndMatchCurrentPathKeys(\n menu?.menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n setSelectedKey(selectedKeys);\n setOpenedKeys(openedKeys);\n }, [menu?.menuItems, pathname, search]);\n\n useEffect(() => {\n const unListen: UnregisterCallback = history.listen((location) => {\n setLocation(location);\n });\n setSelected();\n return unListen;\n }, [history, setSelected]);\n\n const getMenuItemIndent = useCallback((item: SidebarMenuItem): number => {\n return ((item.key?.split(\".\")?.length as number) - 1) * 16;\n }, []);\n\n const renderSimpleMenuItem = (\n item: SidebarMenuSimpleItem,\n options?: {\n inSubmenu?: boolean;\n }\n ) => {\n return (\n <WrappedMenuItem\n className={classNames(\"menu-item\", {\n \"in-submenu\": options?.inSubmenu,\n })}\n style={{ paddingLeft: getMenuItemIndent(item) || 16 }}\n icon={item.icon}\n active={item.key ? selectedKey.includes(item.key) : false}\n >\n <WrappedLinkItem\n className=\"menu-item-link\"\n type=\"plain\"\n url={item.to as string}\n href={item.href}\n title={item.text}\n target={item.target as Target}\n >\n <span\n className={classNames(\"menu-item-text\", {\n \"item-has-icon\": item.icon,\n })}\n >\n {item.text}\n </span>\n </WrappedLinkItem>\n </WrappedMenuItem>\n );\n };\n\n const renderSubMenuItem = (item: SidebarMenuGroup) => {\n // istanbul ignore else\n if (item.items?.length > 0) {\n return (\n <WrapperMenuItemSubMenu\n className=\"menu-sub-item\"\n icon={item.icon}\n titleStyle={{ paddingLeft: getMenuItemIndent(item) }}\n bodyStyle={{ paddingLeft: getMenuItemIndent(item) / 2 }}\n collapsed={!openedKeys.includes(item.key!)}\n >\n <span slot=\"title\">{item.title}</span>\n {item.items.map((innerItem) => (\n <React.Fragment key={innerItem.key}>\n {renderMenuItem(innerItem, {\n inSubmenu: true,\n })}\n </React.Fragment>\n ))}\n </WrapperMenuItemSubMenu>\n );\n }\n };\n\n const renderGroupMenuItem = (item: SidebarMenuGroup) => {\n // istanbul ignore else\n if (item.items?.length > 0) {\n return (\n <WrappedMenuGroup>\n <span slot=\"title\">{item.title}</span>\n\n {item.items.map((innerItem) => {\n return (\n <React.Fragment key={innerItem.key}>\n {renderMenuItem(innerItem)}\n </React.Fragment>\n );\n })}\n </WrappedMenuGroup>\n );\n }\n };\n\n function renderMenuItem(\n item: SidebarMenuItem,\n options?:\n | {\n inSubmenu?: boolean;\n }\n | undefined\n ) {\n return isSubMenu(item as SidebarMenuGroup)\n ? renderSubMenuItem(item as SidebarMenuGroup)\n : isGroup(item)\n ? renderGroupMenuItem(item)\n : renderSimpleMenuItem(item, options);\n }\n\n return (\n <WrappedMenu className=\"menu-container\" mode=\"vertical\">\n {menu?.title && (\n <div className=\"header\">\n {menu?.icon && <WrappedIcon {...(menu?.icon as GeneralIconProps)} />}\n <span className=\"title\">{menu?.title}</span>\n </div>\n )}\n <div className=\"content\">\n {menu?.menuItems.map((item) => {\n return (\n <React.Fragment key={item.key}>\n {renderMenuItem(item)}\n </React.Fragment>\n );\n })}\n </div>\n </WrappedMenu>\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}.menu-container{box-sizing:border-box;background:var(--third-menu-default-bg);border:1px solid var(--stroke-color-default);border-width:0 1px 0 0;border-radius:0px;padding:20px 0px;height:100%}.menu-container .header{display:flex;gap:10px;align-items:center;font-size:var(--title-font-size);padding:0 20px 16px 20px;line-height:26px;color:var(--color-header-text)}.menu-container .header .title{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-wrap:break-word}.menu-container .content{padding:0 12px}.menu-container .menu-item,\n .menu-container .menu-sub-item::part(sub-menu-item-title){margin:0;padding-right:16px;height:40px;line-height:40px;border-radius:4px;margin-bottom:4px}.menu-container .menu-item::part(menu-item-icon),\n .menu-container .menu-sub-item::part(menu-item-icon){color:var(--color-secondary-text)}.menu-container .menu-item-link{width:100%;color:var(--color-secondary-text)}.menu-container .menu-item-text,\n .menu-container .menu-group-text,\n .menu-container .menu-item-link{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-container .menu-item-text{display:block;box-sizing:border-box;color:var(--antd-text-color)}.menu-container .menu-item:hover{background:var(--third-menu-item-hover-bg);color:var(--color-header-text)}.menu-container .menu-item:hover .menu-item-text{color:var(--color-header-text);font-weight:var(--font-weight-400)}.menu-container .in-submenu .menu-item-text{color:var(--color-normal-text)}.menu-container .menu-sub-item::part(sub-menu-item-title):hover{color:var(--color-header-text)}.menu-container .menu-item-text.item-has-icon{margin-left:6px}.menu-container .menu-item[active]{color:var(--color-brand);background-color:var(--third-menu-item-selected-bg)}.menu-container .menu-item[active] .menu-item-text{color:var(--color-brand);font-weight:var(--font-weight-500)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nimport setFunctionName from \"./setFunctionName.js\";\nimport toPropertyKey from \"./toPropertyKey.js\";\nexport default function applyDecs2311(e, t, n, r, o, i) {\n var a,\n c,\n u,\n s,\n f,\n l,\n p,\n d = Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"),\n m = Object.defineProperty,\n h = Object.create,\n y = [h(null), h(null)],\n v = t.length;\n function g(t, n, r) {\n return function (o, i) {\n n && (i = o, o = e);\n for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []);\n return r ? i : o;\n };\n }\n function b(e, t, n, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\"));\n return e;\n }\n function applyDec(e, t, n, r, o, i, u, s, f, l, p) {\n function d(e) {\n if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\");\n }\n var h = [].concat(t[0]),\n v = t[3],\n w = !u,\n D = 1 === o,\n S = 3 === o,\n j = 4 === o,\n E = 2 === o;\n function I(t, n, r) {\n return function (o, i) {\n return n && (i = o, o = e), r && r(o), P[t].call(o, i);\n };\n }\n if (!w) {\n var P = {},\n k = [],\n F = S ? \"get\" : j || D ? \"set\" : \"value\";\n if (f ? (l || D ? P = {\n get: setFunctionName(function () {\n return v(this);\n }, r, \"get\"),\n set: function set(e) {\n t[4](this, e);\n }\n } : P[F] = v, l || setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) {\n if ((c = y[+s][r]) && 7 != (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\");\n y[+s][r] = o < 3 ? 1 : o;\n }\n }\n for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) {\n var z = b(h[O], \"A decorator\", \"be\", !0),\n A = n ? h[O - 1] : void 0,\n H = {},\n K = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o],\n name: r,\n metadata: a,\n addInitializer: function (e, t) {\n if (e.v) throw Error(\"attempted to call addInitializer after decoration was finished\");\n b(t, \"An initializer\", \"be\", !0), i.push(t);\n }.bind(null, H)\n };\n if (w) c = z.call(A, N, K), H.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (K[\"static\"] = s, K[\"private\"] = f, c = K.access = {\n has: f ? p.bind() : function (e) {\n return r in e;\n }\n }, j || (c.get = f ? E ? function (e) {\n return d(e), P.value;\n } : I(\"get\", 0, d) : function (e) {\n return e[r];\n }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) {\n e[r] = t;\n }), N = z.call(A, D ? {\n get: P.get,\n set: P.set\n } : P[F], K), H.v = 1, D) {\n if (\"object\" == _typeof(N) && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\");\n } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N);\n }\n return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N;\n }\n function w(e) {\n return m(e, d, {\n configurable: !0,\n enumerable: !0,\n value: a\n });\n }\n return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function l(e) {\n e && f.push(g(e));\n }, p = function p(t, r) {\n for (var i = 0; i < n.length; i++) {\n var a = n[i],\n c = a[1],\n l = 7 & c;\n if ((8 & c) == t && !l == r) {\n var p = a[2],\n d = !!a[3],\n m = 16 & c;\n applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) {\n return checkInRHS(t) === e;\n } : o);\n }\n }\n }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), {\n e: c,\n get c() {\n var n = [];\n return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)];\n }\n };\n}","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import { Location, parsePath } from \"history\";\nimport { matchPath } from \"@next-core/runtime\";\nimport type {\n SidebarMenuSimpleItem,\n SidebarMenuItem,\n SidebarMenuGroup,\n} from \"./types.js\";\nimport { isObject } from \"lodash\";\n\nexport function isGroup(item: SidebarMenuItem): item is SidebarMenuGroup {\n return item.type === \"group\";\n}\n\nexport function isSubMenu(\n item: SidebarMenuItem,\n groupAsSubMenu?: boolean\n): item is SidebarMenuGroup {\n return Boolean(\n item.type === \"subMenu\" || (groupAsSubMenu && item.type === \"group\")\n );\n}\n\nexport function initMenuItemAndMatchCurrentPathKeys(\n menuItems: SidebarMenuItem[],\n pathname: string,\n search: string,\n parentCursor: string\n): {\n selectedKeys: string[];\n openedKeys: string[];\n matchedKeys: string[];\n} {\n const selectedKeys: string[] = [];\n const openedKeys: string[] = [];\n const matchedKeys: string[] = [];\n\n let cursor = 0;\n menuItems &&\n menuItems.forEach((item) => {\n // key的格式最终为0,1,2,0.1,0.2,0.1.1,0.1.2\n item.key =\n parentCursor === \"\" ? `${cursor}` : `${parentCursor}.${cursor}`;\n if (isGroup(item) || isSubMenu(item)) {\n const tmp = initMenuItemAndMatchCurrentPathKeys(\n item.items,\n pathname,\n search,\n item.key\n );\n selectedKeys.push(...tmp.selectedKeys);\n if (tmp.selectedKeys.length || item.defaultExpanded) {\n openedKeys.push(item.key);\n }\n openedKeys.push(...tmp.openedKeys);\n matchedKeys.push(...tmp.matchedKeys);\n } else {\n if (matchMenuItem(item, pathname, search)) {\n selectedKeys.push(String(item.key));\n\n const keyPath = item.key.split(\".\");\n\n for (let i = 0; i < keyPath.length; i++) {\n matchedKeys.push(keyPath.slice(0, i + 1).join(\".\"));\n }\n }\n }\n cursor += 1;\n });\n if (selectedKeys.length && parentCursor !== \"\") {\n openedKeys.push(parentCursor);\n }\n return {\n selectedKeys: selectedKeys,\n openedKeys: openedKeys,\n matchedKeys: matchedKeys,\n };\n}\n\nfunction getMatchOfSearch(\n currentSearch: string,\n toSearch: string | undefined\n): boolean {\n const current = new URLSearchParams(currentSearch);\n const to = new URLSearchParams(toSearch);\n for (const [key, value] of to.entries()) {\n // Allow `?k=` to match `?` (when `k` doesn't exist)\n if ((current.get(key) ?? \"\") !== value) {\n return false;\n }\n }\n return true;\n}\n\nexport function matchMenuItem(\n item: SidebarMenuSimpleItem,\n pathname: string,\n search: string\n): boolean {\n if (!item.to) return false;\n const to = typeof item.to === \"object\" ? item.to : parsePath(item.to);\n\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath = to.pathname!.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n let match = !!matchPath(pathname, {\n path: escapedPath,\n exact: item.exact,\n });\n\n if (match && item.activeMatchSearch) {\n match = getMatchOfSearch(search, to.search);\n }\n\n if (!match && Array.isArray(item.activeIncludes)) {\n for (const include of item.activeIncludes) {\n let paths: string[];\n let exact: boolean | undefined = true;\n\n if (isObject(include)) {\n paths = Array.isArray(include.path) ? include.path : [include.path];\n exact = include.exact;\n } else {\n paths = [include];\n }\n\n for (const path of paths) {\n let parsedPath: Location | undefined;\n const hasSearch = path.includes(\"?\");\n\n if (hasSearch) {\n parsedPath = parsePath(path);\n }\n match = !!matchPath(pathname, {\n path: hasSearch ? parsedPath!.pathname : path,\n exact,\n });\n\n if (match && parsedPath?.search) {\n match = getMatchOfSearch(search, parsedPath.search);\n }\n\n if (match) {\n break;\n }\n }\n\n if (match) {\n break;\n }\n }\n }\n\n if (match && Array.isArray(item.activeExcludes)) {\n for (const include of item.activeExcludes) {\n let paths: string[];\n let exact: boolean | undefined = true;\n\n if (isObject(include)) {\n paths = Array.isArray(include.path) ? include.path : [include.path];\n exact = include.exact;\n } else {\n paths = [include];\n }\n\n for (const path of paths) {\n match = !matchPath(pathname, {\n path,\n exact,\n });\n\n if (!match) {\n break;\n }\n }\n\n if (!match) {\n break;\n }\n }\n }\n\n return match;\n}\n"],"names":["WrappedIcon","wrapBrick","WrappedMenu","WrappedMenuGroup","WrapperMenuItemSubMenu","WrappedMenuItem","WrappedLinkItem","defineElement","property","createDecorators","_EoSidebarSubMenu","_A","WeakMap","EoSidebarSubMenu","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_menu","_init_extra_menu","menu","_classPrivateFieldGet","v","_classPrivateFieldSet","render","React","EoSidebarSubMenuComponent","this","props","history","getHistory","location","setLocation","useState","pathname","search","selectedKey","setSelectedKey","openedKeys","setOpenedKeys","setSelected","useCallback","selectedKeys","initMenuItemAndMatchCurrentPathKeys","menuItems","useEffect","unListen","listen","getMenuItemIndent","item","_item$key","key","split","length","renderMenuItem","options","isSubMenu","_item$items","items","className","icon","titleStyle","paddingLeft","bodyStyle","collapsed","includes","slot","title","map","innerItem","inSubmenu","renderSubMenuItem","isGroup","_item$items2","renderGroupMenuItem","renderSimpleMenuItem","classNames","style","active","type","url","to","href","text","target","mode","_EoSidebarSubMenu2","e","c","_initClass","_applyDecs","styleTexts","styleText","attribute","___CSS_LOADER_EXPORT___","push","module","id","toString","exports","cssWithMappingToString","list","content","needLayer","concat","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","_k","hasOwn","hasOwnProperty","classes","arg","appendClass","parseValue","Array","isArray","apply","Object","prototype","call","value","newClass","default","setFunctionName","t","n","description","defineProperty","configurable","applyDecs2311","r","o","a","u","s","f","l","p","d","Symbol","metadata","m","h","create","y","g","b","TypeError","applyDec","w","D","S","j","E","I","P","F","get","set","getOwnPropertyDescriptor","Error","name","N","O","z","A","H","K","kind","addInitializer","bind","access","has","init","unshift","splice","enumerable","toPropertyKey","checkInRHS","_assertClassBrand","_checkInRHS","_checkPrivateRedeclaration","obj","privateCollection","_classPrivateFieldGet2","privateMap","_classPrivateFieldSet2","toPrimitive","String","_typeof","iterator","groupAsSubMenu","Boolean","parentCursor","matchedKeys","cursor","forEach","tmp","defaultExpanded","parsePath","escapedPath","replace","match","matchPath","path","exact","activeMatchSearch","getMatchOfSearch","activeIncludes","include","paths","isObject","_parsedPath","parsedPath","hasSearch","activeExcludes","matchMenuItem","keyPath","slice","currentSearch","toSearch","current","URLSearchParams","entries"],"sourceRoot":""}
|