@next-bricks/nav 1.11.7 → 1.11.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +11 -11
- package/dist/chunks/{1122.5bbe54b2.js → 1122.a27c7c05.js} +2 -2
- package/dist/chunks/{1122.5bbe54b2.js.map → 1122.a27c7c05.js.map} +1 -1
- package/dist/chunks/{114.e9fc2838.js → 114.0062172c.js} +2 -2
- package/dist/chunks/{114.e9fc2838.js.map → 114.0062172c.js.map} +1 -1
- package/dist/chunks/{1889.432f009e.js → 1889.fed3f058.js} +2 -2
- package/dist/chunks/{1889.432f009e.js.map → 1889.fed3f058.js.map} +1 -1
- package/dist/chunks/{1940.8141de86.js → 1940.7350b616.js} +2 -2
- package/dist/chunks/{1940.8141de86.js.map → 1940.7350b616.js.map} +1 -1
- package/dist/chunks/{2133.5c9a7d4a.js → 2133.a26e206f.js} +2 -2
- package/dist/chunks/{2133.5c9a7d4a.js.map → 2133.a26e206f.js.map} +1 -1
- package/dist/chunks/2252.93071a1d.js +3 -0
- package/dist/chunks/2252.93071a1d.js.map +1 -0
- package/dist/chunks/{2277.0b4a4ee8.js → 2277.fbee5f61.js} +2 -2
- package/dist/chunks/{4658.cf321273.js.map → 2277.fbee5f61.js.map} +1 -1
- package/dist/chunks/2652.0157a722.js +2 -0
- package/dist/chunks/2652.0157a722.js.map +1 -0
- package/dist/chunks/3171.33037407.js +2 -0
- package/dist/chunks/{3171.8603c201.js.map → 3171.33037407.js.map} +1 -1
- package/dist/chunks/3933.a73243c7.js +2 -0
- package/dist/chunks/{3933.8b360754.js.map → 3933.a73243c7.js.map} +1 -1
- package/dist/chunks/{4658.cf321273.js → 4658.2583c3dd.js} +2 -2
- package/dist/chunks/{2277.0b4a4ee8.js.map → 4658.2583c3dd.js.map} +1 -1
- package/dist/chunks/5552.f2d46c16.js +2 -0
- package/dist/chunks/{5552.24c1cd1e.js.map → 5552.f2d46c16.js.map} +1 -1
- package/dist/chunks/6314.d85e6f37.js +2 -0
- package/dist/chunks/{6314.d73b756e.js.map → 6314.d85e6f37.js.map} +1 -1
- package/dist/chunks/{7115.825a79b8.js → 7115.f7d15c7f.js} +2 -2
- package/dist/chunks/{7115.825a79b8.js.map → 7115.f7d15c7f.js.map} +1 -1
- package/dist/chunks/{7733.24bdb3be.js → 7733.2b507fec.js} +2 -2
- package/dist/chunks/{7733.24bdb3be.js.map → 7733.2b507fec.js.map} +1 -1
- package/dist/chunks/{8097.994d4371.js → 8097.f6cdf70a.js} +2 -2
- package/dist/chunks/{8097.994d4371.js.map → 8097.f6cdf70a.js.map} +1 -1
- package/dist/chunks/{8171.5ab2df27.js → 8171.762ffa15.js} +3 -3
- package/dist/chunks/{8171.5ab2df27.js.map → 8171.762ffa15.js.map} +1 -1
- package/dist/chunks/8518.07173362.js +2 -0
- package/dist/chunks/{8518.ab0912a9.js.map → 8518.07173362.js.map} +1 -1
- package/dist/chunks/9043.de76c5e9.js +3 -0
- package/dist/chunks/{9043.8bcfa168.js.map → 9043.de76c5e9.js.map} +1 -1
- package/dist/chunks/9155.a41a0bc2.js +3 -0
- package/dist/chunks/{9155.f0afc99e.js.map → 9155.a41a0bc2.js.map} +1 -1
- package/dist/chunks/{9496.ab68102d.js → 9496.56e34ec0.js} +2 -2
- package/dist/chunks/{9496.ab68102d.js.map → 9496.56e34ec0.js.map} +1 -1
- package/dist/chunks/{9559.b1012037.js → 9559.17a50ae2.js} +2 -2
- package/dist/chunks/{9559.b1012037.js.map → 9559.17a50ae2.js.map} +1 -1
- package/dist/chunks/{easyops-navbar-alerts.f6ad78a0.js → easyops-navbar-alerts.ce0ed251.js} +2 -2
- package/dist/chunks/{easyops-navbar-alerts.f6ad78a0.js.map → easyops-navbar-alerts.ce0ed251.js.map} +1 -1
- package/dist/chunks/{eo-app-bar-wrapper.3691637c.js → eo-app-bar-wrapper.80f95013.js} +3 -3
- package/dist/chunks/{eo-app-bar-wrapper.3691637c.js.map → eo-app-bar-wrapper.80f95013.js.map} +1 -1
- package/dist/chunks/{eo-directory-tree-internal-node.de4409f6.js → eo-directory-tree-internal-node.1d72f9bd.js} +2 -2
- package/dist/chunks/{eo-directory-tree-internal-node.de4409f6.js.map → eo-directory-tree-internal-node.1d72f9bd.js.map} +1 -1
- package/dist/chunks/{eo-directory-tree-leaf.c1a00150.js → eo-directory-tree-leaf.3bf3d08d.js} +2 -2
- package/dist/chunks/{eo-directory-tree-leaf.c1a00150.js.map → eo-directory-tree-leaf.3bf3d08d.js.map} +1 -1
- package/dist/chunks/{eo-directory-tree.29184701.js → eo-directory-tree.bbf18ec2.js} +2 -2
- package/dist/chunks/{eo-directory-tree.29184701.js.map → eo-directory-tree.bbf18ec2.js.map} +1 -1
- package/dist/chunks/{eo-directory.7c097209.js → eo-directory.ef83eae6.js} +3 -3
- package/dist/chunks/{eo-directory.7c097209.js.map → eo-directory.ef83eae6.js.map} +1 -1
- package/dist/chunks/{eo-frame-breadcrumb.dbb26ac0.js → eo-frame-breadcrumb.77e69e56.js} +2 -2
- package/dist/chunks/{eo-frame-breadcrumb.dbb26ac0.js.map → eo-frame-breadcrumb.77e69e56.js.map} +1 -1
- package/dist/chunks/eo-launchpad-button-v2.d97fe9ed.js +2 -0
- package/dist/chunks/{eo-launchpad-button-v2.5ba88fdd.js.map → eo-launchpad-button-v2.d97fe9ed.js.map} +1 -1
- package/dist/chunks/eo-launchpad-button.3f910fc5.js +2 -0
- package/dist/chunks/{eo-launchpad-button.1f0870e4.js.map → eo-launchpad-button.3f910fc5.js.map} +1 -1
- package/dist/chunks/{eo-launchpad-quick-access.7ac63f22.js → eo-launchpad-quick-access.a624d8c6.js} +3 -3
- package/dist/chunks/{eo-launchpad-quick-access.7ac63f22.js.map → eo-launchpad-quick-access.a624d8c6.js.map} +1 -1
- package/dist/chunks/{eo-launchpad-recent-visits.2e678485.js → eo-launchpad-recent-visits.b0f8cfa1.js} +3 -3
- package/dist/chunks/{eo-launchpad-recent-visits.2e678485.js.map → eo-launchpad-recent-visits.b0f8cfa1.js.map} +1 -1
- package/dist/chunks/{eo-nav-menu.c24753a1.js → eo-nav-menu.0cdf6056.js} +2 -2
- package/dist/chunks/{eo-nav-menu.c24753a1.js.map → eo-nav-menu.0cdf6056.js.map} +1 -1
- package/dist/chunks/{eo-search-launchpad.aacda867.js → eo-search-launchpad.fad47849.js} +2 -2
- package/dist/chunks/{eo-search-launchpad.aacda867.js.map → eo-search-launchpad.fad47849.js.map} +1 -1
- package/dist/chunks/{eo-sidebar-menu-group.c1cf3370.js → eo-sidebar-menu-group.39f5595a.js} +3 -3
- package/dist/chunks/{eo-sidebar-menu-group.c1cf3370.js.map → eo-sidebar-menu-group.39f5595a.js.map} +1 -1
- package/dist/chunks/{eo-sidebar-menu-item.3ad25258.js → eo-sidebar-menu-item.89ad2379.js} +2 -2
- package/dist/chunks/{eo-sidebar-menu-item.3ad25258.js.map → eo-sidebar-menu-item.89ad2379.js.map} +1 -1
- package/dist/chunks/{eo-sidebar-menu-submenu.f6b3be69.js → eo-sidebar-menu-submenu.b890adba.js} +3 -3
- package/dist/chunks/{eo-sidebar-menu-submenu.f6b3be69.js.map → eo-sidebar-menu-submenu.b890adba.js.map} +1 -1
- package/dist/chunks/{eo-sidebar-menu.82f13039.js → eo-sidebar-menu.b1572fa2.js} +2 -2
- package/dist/chunks/{eo-sidebar-menu.82f13039.js.map → eo-sidebar-menu.b1572fa2.js.map} +1 -1
- package/dist/chunks/{eo-sidebar-sub-menu.030ecbc3.js → eo-sidebar-sub-menu.c20b1996.js} +3 -3
- package/dist/chunks/{eo-sidebar-sub-menu.030ecbc3.js.map → eo-sidebar-sub-menu.c20b1996.js.map} +1 -1
- package/dist/chunks/eo-sidebar.4c0d1760.js +3 -0
- package/dist/chunks/{eo-sidebar.6a75caf3.js.map → eo-sidebar.4c0d1760.js.map} +1 -1
- package/dist/chunks/launchpad-config.86427c45.js +3 -0
- package/dist/chunks/{launchpad-config.cc9a9b20.js.map → launchpad-config.86427c45.js.map} +1 -1
- package/dist/chunks/main.a23da813.js +2 -0
- package/dist/chunks/main.a23da813.js.map +1 -0
- package/dist/chunks/{nav-logo.ee0985e8.js → nav-logo.c713f3d6.js} +2 -2
- package/dist/chunks/{nav-logo.ee0985e8.js.map → nav-logo.c713f3d6.js.map} +1 -1
- package/dist/examples.json +3 -3
- package/dist/index.718866d9.js +2 -0
- package/dist/index.718866d9.js.map +1 -0
- package/dist/manifest.json +46 -46
- package/package.json +4 -4
- package/dist/chunks/2252.8e3cc0ce.js +0 -3
- package/dist/chunks/2252.8e3cc0ce.js.map +0 -1
- package/dist/chunks/2652.a10e7cfa.js +0 -2
- package/dist/chunks/2652.a10e7cfa.js.map +0 -1
- package/dist/chunks/3171.8603c201.js +0 -2
- package/dist/chunks/3933.8b360754.js +0 -2
- package/dist/chunks/5552.24c1cd1e.js +0 -2
- package/dist/chunks/6314.d73b756e.js +0 -2
- package/dist/chunks/8518.ab0912a9.js +0 -2
- package/dist/chunks/9043.8bcfa168.js +0 -3
- package/dist/chunks/9155.f0afc99e.js +0 -3
- package/dist/chunks/eo-launchpad-button-v2.5ba88fdd.js +0 -2
- package/dist/chunks/eo-launchpad-button.1f0870e4.js +0 -2
- package/dist/chunks/eo-sidebar.6a75caf3.js +0 -3
- package/dist/chunks/launchpad-config.cc9a9b20.js +0 -3
- package/dist/chunks/main.2a01421f.js +0 -2
- package/dist/chunks/main.2a01421f.js.map +0 -1
- package/dist/index.d88a9f84.js +0 -2
- package/dist/index.d88a9f84.js.map +0 -1
- /package/dist/chunks/{2252.8e3cc0ce.js.LICENSE.txt → 2252.93071a1d.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{8171.5ab2df27.js.LICENSE.txt → 8171.762ffa15.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{9043.8bcfa168.js.LICENSE.txt → 9043.de76c5e9.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{9155.f0afc99e.js.LICENSE.txt → 9155.a41a0bc2.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-app-bar-wrapper.3691637c.js.LICENSE.txt → eo-app-bar-wrapper.80f95013.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-directory.7c097209.js.LICENSE.txt → eo-directory.ef83eae6.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-launchpad-quick-access.7ac63f22.js.LICENSE.txt → eo-launchpad-quick-access.a624d8c6.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-launchpad-recent-visits.2e678485.js.LICENSE.txt → eo-launchpad-recent-visits.b0f8cfa1.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-sidebar-menu-group.c1cf3370.js.LICENSE.txt → eo-sidebar-menu-group.39f5595a.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-sidebar-menu-submenu.f6b3be69.js.LICENSE.txt → eo-sidebar-menu-submenu.b890adba.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-sidebar-sub-menu.030ecbc3.js.LICENSE.txt → eo-sidebar-sub-menu.c20b1996.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-sidebar.6a75caf3.js.LICENSE.txt → eo-sidebar.4c0d1760.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{launchpad-config.cc9a9b20.js.LICENSE.txt → launchpad-config.86427c45.js.LICENSE.txt} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[5821],{816:(e,t,n)=>{n.r(t),n.d(t,{NavMenu:()=>W});var i,r,l,a,o,s,m,c=n(918),u=n(6121),d=n(829),h=n(2740),p=n(9575),v=n(8769),y=n.n(v),g=n(
|
|
2
|
-
//# sourceMappingURL=eo-nav-menu.
|
|
1
|
+
"use strict";(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[5821],{816:(e,t,n)=>{n.r(t),n.d(t,{NavMenu:()=>W});var i,r,l,a,o,s,m,c=n(918),u=n(6121),d=n(829),h=n(2740),p=n(9575),v=n(8769),y=n.n(v),g=n(3741),w=n(4466),b=n(6430),f=n(6370),E=n(9527),k=n(764),x=(n(6329),n(3373)),N=n.n(x),T=n(1283),A=n(9044),I=n(9998),K=n(839),D=n(1122),{defineElement:C,property:M}=(n(4211),(0,g.createDecorators)()),R=(0,b.wrapBrick)("eo-menu-item"),_=(0,b.wrapBrick)("eo-popover",{onVisibleChange:"visible.change",beforeVisibleChange:"before.visible.change"});function G(e){var{item:t}=e;return(0,E.Wf)(t,e.topData)?y().createElement(L,(0,p.A)({},e,{item:t})):(0,E.IZ)(t)?y().createElement(V,(0,p.A)({},e,{item:t})):y().createElement(S,(0,p.A)({},e,{item:t}))}function S(e){var{item:t,index:n,hidden:i,showTooltip:r,selectedKey:l=[]}=e;return y().createElement(R,{"data-index":n,className:i?"overflow-menu-item":"",key:t.key,title:r?t.text:"",active:!!t.key&&l.includes(t.key)},(0,E.q5)(t,{width:"100%"}))}var W,F=e=>{var t,n=null!==(t=m)&&void 0!==t?t:m=window.innerWidth-document.body.clientWidth;document.body.style.paddingRight=e.detail?n+"px":"",document.body.style.overflow=e.detail?"hidden":"",document.body.style.touchAction=e.detail?"none":""};function L(e){var t,{index:n,hidden:i,item:r,topData:l,showTooltip:a,selectedKey:o=[],overflow:s}=e;return(null===(t=r.items)||void 0===t?void 0:t.length)>0?y().createElement(_,{"data-index":n,className:N()("popover",{subprime:!l,"overflow-menu-item":i}),arrow:!1,trigger:"hover",placement:l?"bottom-start":"right-start",distance:0,anchorDisplay:"block",strategy:"fixed"},y().createElement(R,{className:"sub-menu-item-label",key:r.key,slot:"anchor",title:a?r.title:""},(0,E.Gn)(r,!l)),y().createElement("div",{className:N()("sub-menu-wrapper",{"overflow-menu-wrapper":s})},r.items.map((e=>y().createElement(y().Fragment,{key:e.key},y().createElement(G,{item:e,selectedKey:o,showTooltip:a})))))):null}function V(e){var t,{item:n,showTooltip:i,selectedKey:r=[]}=e;return(null===(t=n.items)||void 0===t?void 0:t.length)>0?"category"===n.childLayout?y().createElement(B,{item:n,selectedKey:r,showTooltip:i,placement:"right-start",anchorDisplay:"block"}):"siteMap"===n.childLayout?y().createElement(O,{item:n,selectedKey:r,showTooltip:i,placement:"right-start",anchorDisplay:"block",topData:!1}):y().createElement(y().Fragment,null,y().createElement("div",{className:"group-label"},n.title),y().createElement("div",{className:"group-wrapper"},n.items.map((e=>y().createElement(y().Fragment,{key:e.key},y().createElement(G,{item:e,showTooltip:i,selectedKey:r})))))):null}function B(e){var t,{index:n,hidden:i,item:r,selectedKey:l=[],showTooltip:a,placement:o="bottom-start",anchorDisplay:s}=e;return(null===(t=r.items)||void 0===t?void 0:t.length)>0?y().createElement(_,{"data-index":n,className:N()("three-level-menu-popover","popover",{"overflow-menu-item":i}),arrow:!1,trigger:"hover",placement:o,distance:0,key:r.key,strategy:"fixed",anchorDisplay:s,beforeVisibleChange:F},y().createElement(R,{className:"sub-menu-item-label",key:r.key,slot:"anchor",title:a?r.title:""},(0,E.Gn)(r)),y().createElement("div",{className:"sub-menu-wrapper"},y().createElement(T.s,{menuItem:r,selectedKey:l}))):null}function O(e){var t,{index:n,hidden:i,item:r,selectedKey:l=[],showTooltip:a,placement:o="bottom-start",anchorDisplay:s,topData:m}=e,[c,u]=(0,v.useState)();return(null===(t=r.items)||void 0===t?void 0:t.length)>0?y().createElement(_,{"data-index":n,className:N()("popover",{"overflow-menu-item":i}),trigger:"hover",placement:o,distance:0,key:r.key,strategy:"fixed",arrow:!1,anchorDisplay:s,beforeVisibleChange:e=>{u(e.detail),F(e)}},y().createElement(R,{className:"sub-menu-item-label",key:r.key,slot:"anchor",title:a?r.title:""},(0,E.Gn)(r)),y().createElement("div",{className:N()("sub-menu-sit-map-wrapper",{"in-group-site-map":!m}),onClick:e=>e.stopPropagation()},y().createElement(A.bw,{menuGroup:r,selectedKey:l,visible:c}))):null}var J=new WeakMap,P=new WeakMap;class q extends b.ReactNextElement{constructor(){super(...arguments),(0,c.A)(this,J,l(this)),(0,c.A)(this,P,(a(this),o(this))),s(this)}get menu(){return(0,d.A)(J,this)}set menu(e){(0,u.A)(J,this,e)}get showTooltip(){return(0,d.A)(P,this)}set showTooltip(e){(0,u.A)(P,this,e)}render(){return y().createElement(z,{menu:this.menu,showTooltip:this.showTooltip})}}function z(e){var t,n,{menu:i,showTooltip:r}=e,l=(0,w.getHistory)(),a=(0,v.useRef)(null),[o,s]=(0,v.useState)(l.location),[m,c]=(0,v.useState)(Number.MAX_SAFE_INTEGER),{pathname:u,search:d}=o,h=(0,v.useMemo)((()=>{var e,{selectedKeys:t}=(0,k.LP)(null!==(e=null==i?void 0:i.menuItems)&&void 0!==e?e:[],u,d,"");return t}),[null==i?void 0:i.menuItems,u,d]);(0,v.useEffect)((()=>{var e=l.listen((e=>{s(e)}));return e}),[]),(0,v.useEffect)((()=>{if(a.current){var e=new ResizeObserver((()=>{if(a.current){var e,{width:t}=null!==(e=a.current.getClientRects()[0])&&void 0!==e?e:{},n=a.current.childNodes;if(n.length&&t){for(var i=t,r=n.length,l=0;l<n.length;l++){var{width:o,height:s}=n[l].getClientRects()[0];if(!s&&i-40<0){r=l-1;break}if((i=i-o-(l>0?8:0))<0){r=l;break}}c(r<0?0:r)}}}));return e.observe(a.current),()=>{e.disconnect()}}}),[]);var p=(0,v.useMemo)((()=>({type:"subMenu",title:"···",items:null==i?void 0:i.menuItems.slice(m,i.menuItems.length)})),[null==i?void 0:i.menuItems,m]);return y().createElement("div",{ref:a,className:"nav-menu-wrapper"},null==i?void 0:i.menuItems.map(((e,t)=>{var n,i=m<=t;return y().createElement(y().Fragment,{key:e.key},(0,E.Wf)(e,!0)&&"category"===e.childLayout&&null!==(n=e.items)&&void 0!==n&&n.length?y().createElement(B,{index:t,hidden:i,item:e,showTooltip:r,selectedKey:h}):"group"===e.type&&"siteMap"===e.childLayout?y().createElement(O,{index:t,hidden:i,item:e,showTooltip:r,selectedKey:h,topData:!0}):y().createElement(G,{index:t,hidden:i,item:e,showTooltip:r,selectedKey:h,topData:!0}))})),y().createElement(G,{hidden:m>(null!==(t=null==i||null===(n=i.menuItems)||void 0===n?void 0:n.length)&&void 0!==t?t:0),item:p,showTooltip:r,selectedKey:h,overflow:!0,topData:!0}))}i=q,({e:[l,a,o,s],c:[W,r]}=(0,h.A)(i,[C("eo-nav-menu",{styleTexts:[I.A,K.A,D.A,f.A]})],[[M({attribute:!1}),1,"menu"],[M({type:Boolean}),1,"showTooltip"]],0,void 0,b.ReactNextElement)),r()},4612:(e,t,n)=>{n.d(t,{G:()=>i});class i{constructor(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"brick-next-";this.storage=e,this.prefix=t}setItem(e,t){this.storage.setItem(this.prefix+e,JSON.stringify(t))}getItem(e){return JSON.parse(this.storage.getItem(this.prefix+e))}removeItem(e){return this.storage.removeItem(this.prefix+e)}clear(){return this.storage.clear()}}}}]);
|
|
2
|
+
//# sourceMappingURL=eo-nav-menu.0cdf6056.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/eo-nav-menu.c24753a1.js","mappings":"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","sources":["webpack:///./src/nav-menu/index.tsx","webpack:///../../src/JsonStorage.ts"],"sourcesContent":["import React, {\n CSSProperties,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { getHistory } from \"@next-core/runtime\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport styleText from \"./nav-menu.shadow.css\";\nimport { UnregisterCallback } from \"history\";\nimport type { SidebarMenu } from \"@next-bricks/basic/menu\";\nimport type {\n MenuItem as MenuItemComponent,\n MenuComponentProps,\n} from \"@next-bricks/basic/menu-item\";\nimport { isSubMenu, isGroup, renderLinkCom, renderSpanCom } from \"./utils.js\";\nimport { initMenuItemAndMatchCurrentPathKeys } from \"@next-shared/general/menu\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport type {\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping,\n Placement,\n} from \"@next-bricks/basic/popover\";\nimport \"@next-core/theme\";\nimport classnames from \"classnames\";\nimport { ThreeLevelMenuPopoverContent } from \"./ThreeLevelMenuPopoverContent.js\";\nimport { SiteMapItem } from \"./site-map/SiteMapItem.js\";\nimport SiteMapStyleText from \"../nav-menu/site-map/SiteMapItem.shadow.css\";\nimport ItemTagStyleText from \"../nav-menu/site-map/ItemTag.shadow.css\";\nimport GroupItemStyleText from \"../nav-menu/site-map/GroupItem.shadow.css\";\nimport \"./host-context.css\";\n\nconst { defineElement, property } = createDecorators();\n\nconst WrappedMenuItem = wrapBrick<MenuItemComponent, MenuComponentProps>(\n \"eo-menu-item\"\n);\nconst WrappedPopover = wrapBrick<\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping\n>(\"eo-popover\", {\n onVisibleChange: \"visible.change\",\n beforeVisibleChange: \"before.visible.change\",\n});\n\nconst GAP_WIDTH = 8;\n\ninterface NavMenuProps {\n menu?: SidebarMenu;\n showTooltip?: boolean;\n}\n\ninterface MenuItemComProps {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuItem;\n topData?: boolean;\n selectedKey?: string[];\n showTooltip?: boolean;\n overflow?: boolean;\n}\ninterface SimpleMenuItemComProps extends MenuItemComProps {\n item: SidebarMenuSimpleItem;\n}\ninterface MenuGroupComProps extends MenuItemComProps {\n item: SidebarMenuGroup;\n}\nfunction RenderMenuItemCom(props: MenuItemComProps) {\n const { item } = props;\n return isSubMenu(item as SidebarMenuGroup, props.topData) ? (\n <SubMenuItemCom {...props} item={item as SidebarMenuGroup}></SubMenuItemCom>\n ) : isGroup(item) ? (\n <GroupMenuItemCom {...props} item={item as SidebarMenuGroup} />\n ) : (\n <SimpleMenuItemCom\n {...props}\n item={item as SidebarMenuSimpleItem}\n ></SimpleMenuItemCom>\n );\n}\nfunction SimpleMenuItemCom(props: SimpleMenuItemComProps) {\n const { item, index, hidden, showTooltip, selectedKey = [] } = props;\n return (\n <WrappedMenuItem\n data-index={index}\n className={hidden ? \"overflow-menu-item\" : \"\"}\n key={item.key}\n title={showTooltip ? item.text : \"\"}\n active={item.key ? selectedKey.includes(item.key) : false}\n >\n {renderLinkCom(item, { width: \"100%\" })}\n </WrappedMenuItem>\n );\n}\n\nlet scrollWidth: number;\n// istanbul ignore next;\nconst handlePopupVisibleChange = (event: CustomEvent<boolean>) => {\n // 当用户设置滚动条一直显示时,来回切换 overflow: hidden 会导致滚动条显示或隐藏\n // 造成页面宽度变化而导致的抖动的问题\n const paddingRight =\n scrollWidth ??\n (scrollWidth = window.innerWidth - document.body.clientWidth);\n\n document.body.style.paddingRight = event.detail ? paddingRight + \"px\" : \"\";\n document.body.style.overflow = event.detail ? \"hidden\" : \"\";\n document.body.style.touchAction = event.detail ? \"none\" : \"\";\n};\n\nfunction SubMenuItemCom({\n index,\n hidden,\n item,\n topData,\n showTooltip,\n selectedKey = [],\n overflow,\n}: MenuGroupComProps) {\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"popover\", {\n subprime: !topData,\n \"overflow-menu-item\": hidden,\n })}\n arrow={false}\n trigger=\"hover\"\n placement={topData ? \"bottom-start\" : \"right-start\"}\n distance={0}\n anchorDisplay=\"block\"\n strategy=\"fixed\"\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item, !topData)}\n </WrappedMenuItem>\n <div\n className={classnames(\"sub-menu-wrapper\", {\n \"overflow-menu-wrapper\": overflow,\n })}\n >\n {item.items.map((innerItem) => (\n <React.Fragment key={innerItem.key}>\n <RenderMenuItemCom\n item={innerItem}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n />\n </React.Fragment>\n ))}\n </div>\n </WrappedPopover>\n ) : null;\n}\n\nfunction GroupMenuItemCom({\n item,\n showTooltip,\n selectedKey = [],\n}: MenuGroupComProps) {\n return item.items?.length > 0 ? (\n item.childLayout === \"category\" ? (\n <ThreeLevelMenuCom\n item={item}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n placement=\"right-start\"\n anchorDisplay=\"block\"\n />\n ) : (item as SidebarMenuGroup).childLayout === \"siteMap\" ? (\n <SitMapMenCom\n item={item}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n placement=\"right-start\"\n anchorDisplay=\"block\"\n topData={false}\n />\n ) : (\n <>\n <div className=\"group-label\">{item.title}</div>\n <div className=\"group-wrapper\">\n {item.items.map((innerItem) => {\n return (\n <React.Fragment key={innerItem.key}>\n <RenderMenuItemCom\n item={innerItem}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n />\n </React.Fragment>\n );\n })}\n </div>\n </>\n )\n ) : null;\n}\n\nfunction ThreeLevelMenuCom({\n index,\n hidden,\n item,\n selectedKey = [],\n showTooltip,\n placement = \"bottom-start\",\n anchorDisplay,\n}: {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuGroup;\n selectedKey?: string[];\n showTooltip?: boolean;\n placement?: Placement;\n anchorDisplay?: CSSProperties[\"display\"];\n}) {\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"three-level-menu-popover\", \"popover\", {\n \"overflow-menu-item\": hidden,\n })}\n arrow={false}\n trigger={\"hover\"}\n placement={placement}\n distance={0}\n key={item.key}\n strategy=\"fixed\"\n anchorDisplay={anchorDisplay}\n beforeVisibleChange={handlePopupVisibleChange}\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item)}\n </WrappedMenuItem>\n <div className=\"sub-menu-wrapper\">\n <ThreeLevelMenuPopoverContent\n menuItem={item}\n selectedKey={selectedKey}\n ></ThreeLevelMenuPopoverContent>\n </div>\n </WrappedPopover>\n ) : null;\n}\n\nfunction SitMapMenCom({\n index,\n hidden,\n item,\n selectedKey = [],\n showTooltip,\n placement = \"bottom-start\",\n anchorDisplay,\n topData,\n}: {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuGroup;\n selectedKey?: string[];\n showTooltip?: boolean;\n placement?: Placement;\n anchorDisplay?: CSSProperties[\"display\"];\n topData?: boolean;\n}) {\n const [visible, setVisible] = useState<boolean>();\n\n const handleVisibleChange = (event: CustomEvent<boolean>): void => {\n setVisible(event.detail);\n handlePopupVisibleChange(event);\n };\n\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"popover\", {\n \"overflow-menu-item\": hidden,\n })}\n trigger={\"hover\"}\n placement={placement}\n distance={0}\n key={item.key}\n strategy=\"fixed\"\n arrow={false}\n anchorDisplay={anchorDisplay}\n beforeVisibleChange={handleVisibleChange}\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item)}\n </WrappedMenuItem>\n <div\n className={classnames(\"sub-menu-sit-map-wrapper\", {\n \"in-group-site-map\": !topData,\n })}\n onClick={(e) => e.stopPropagation()}\n >\n <SiteMapItem\n menuGroup={item}\n selectedKey={selectedKey}\n visible={visible}\n />\n </div>\n </WrappedPopover>\n ) : null;\n}\n\n/**\n * 菜单构件\n * @author sailor\n * @category navigation\n */\n@defineElement(\"eo-nav-menu\", {\n styleTexts: [\n SiteMapStyleText,\n ItemTagStyleText,\n GroupItemStyleText,\n styleText,\n ],\n})\nclass NavMenu extends ReactNextElement {\n /**\n * 菜单项\n */\n @property({\n attribute: false,\n })\n accessor menu: SidebarMenu | undefined;\n\n /**\n * 是否显示 tooltip\n */\n @property({\n type: Boolean,\n })\n accessor showTooltip: boolean | undefined;\n\n render() {\n return <NavMenuComponent menu={this.menu} showTooltip={this.showTooltip} />;\n }\n}\n\nfunction NavMenuComponent(props: NavMenuProps) {\n const { menu, showTooltip } = props;\n\n const history = getHistory();\n const navMenuWrapperRef = useRef<HTMLDivElement>(null);\n const [location, setLocation] = useState(history.location);\n const [overflowIndex, setOverflowIndex] = useState<number>(\n Number.MAX_SAFE_INTEGER\n );\n const { pathname, search } = location;\n\n const selectedKey = useMemo(() => {\n const { selectedKeys } = initMenuItemAndMatchCurrentPathKeys(\n menu?.menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n return selectedKeys;\n }, [menu?.menuItems, pathname, search]);\n\n useEffect(() => {\n const unListen: UnregisterCallback = history.listen((location) => {\n setLocation(location);\n });\n return unListen;\n }, []);\n\n useEffect(() => {\n if (navMenuWrapperRef.current) {\n const resizeObserver = new ResizeObserver(() => {\n if (navMenuWrapperRef.current) {\n const { width } = navMenuWrapperRef.current.getClientRects()[0] ?? {};\n const childNodes = navMenuWrapperRef.current.childNodes;\n\n if (childNodes.length && width) {\n let wrapperWidth = width;\n let overflowIndex = childNodes.length;\n\n for (let i = 0; i < childNodes.length; i++) {\n const { width: childWidth, height: childHeight } = (\n childNodes[i] as HTMLElement\n ).getClientRects()[0];\n\n if (!childHeight && wrapperWidth - 40 < 0) {\n overflowIndex = i - 1;\n break;\n }\n\n wrapperWidth =\n wrapperWidth - childWidth - (i > 0 ? GAP_WIDTH : 0);\n if (wrapperWidth < 0) {\n overflowIndex = i;\n break;\n }\n }\n\n setOverflowIndex(overflowIndex < 0 ? 0 : overflowIndex);\n }\n }\n });\n resizeObserver.observe(navMenuWrapperRef.current);\n\n return () => {\n resizeObserver.disconnect();\n };\n }\n }, []);\n\n const overflowMenu = useMemo(\n (): SidebarMenuItem => ({\n type: \"subMenu\",\n title: \"···\",\n items: menu?.menuItems.slice(\n overflowIndex,\n menu.menuItems.length\n ) as SidebarMenuItem[],\n }),\n [menu?.menuItems, overflowIndex]\n );\n\n return (\n <div ref={navMenuWrapperRef} className=\"nav-menu-wrapper\">\n {menu?.menuItems.map((item, index) => {\n const isHidden = overflowIndex <= index;\n return (\n <React.Fragment key={item.key}>\n {isSubMenu(item as SidebarMenuGroup, true) &&\n (item as SidebarMenuGroup).childLayout === \"category\" &&\n (item as SidebarMenuGroup).items?.length ? (\n <ThreeLevelMenuCom\n index={index}\n hidden={isHidden}\n item={item as SidebarMenuGroup}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n />\n ) : (item as SidebarMenuGroup).type === \"group\" &&\n (item as SidebarMenuGroup).childLayout === \"siteMap\" ? (\n <SitMapMenCom\n index={index}\n hidden={isHidden}\n item={item as SidebarMenuGroup}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n topData={true}\n />\n ) : (\n <RenderMenuItemCom\n index={index}\n hidden={isHidden}\n item={item}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n topData={true}\n />\n )}\n </React.Fragment>\n );\n })}\n <RenderMenuItemCom\n hidden={overflowIndex > (menu?.menuItems?.length ?? 0)}\n item={overflowMenu}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n overflow={true}\n topData={true}\n />\n </div>\n );\n}\n\nexport { NavMenu };\n","export class JsonStorage {\n constructor(\n private storage: Storage,\n private prefix: string = \"brick-next-\"\n ) {}\n\n setItem<T = any>(name: string, value: T): void {\n this.storage.setItem(this.prefix + name, JSON.stringify(value));\n }\n\n getItem<T = any>(name: string): T {\n return JSON.parse(this.storage.getItem(this.prefix + name) as string) as T;\n }\n\n removeItem(name: string): void {\n return this.storage.removeItem(this.prefix + name);\n }\n\n clear(): void {\n return this.storage.clear();\n }\n}\n"],"names":["scrollWidth","defineElement","property","createDecorators","WrappedMenuItem","wrapBrick","WrappedPopover","onVisibleChange","beforeVisibleChange","RenderMenuItemCom","props","item","isSubMenu","topData","React","SubMenuItemCom","_extends","isGroup","GroupMenuItemCom","SimpleMenuItemCom","index","hidden","showTooltip","selectedKey","className","key","title","text","active","includes","renderLinkCom","width","_NavMenu","handlePopupVisibleChange","event","_scrollWidth","paddingRight","window","innerWidth","document","body","clientWidth","style","detail","overflow","touchAction","_ref","_item$items","items","length","classnames","subprime","arrow","trigger","placement","distance","anchorDisplay","strategy","slot","renderSpanCom","map","innerItem","_ref2","_item$items2","childLayout","ThreeLevelMenuCom","SitMapMenCom","_ref3","_item$items3","ThreeLevelMenuPopoverContent","menuItem","_ref4","_item$items4","visible","setVisible","useState","onClick","e","stopPropagation","SiteMapItem","menuGroup","_A","WeakMap","_B","NavMenu","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_menu","_init_extra_menu","_init_showTooltip","_init_extra_showTooltip","menu","_classPrivateFieldGet","v","_classPrivateFieldSet","render","NavMenuComponent","this","_menu$menuItems$lengt","_menu$menuItems2","history","getHistory","navMenuWrapperRef","useRef","location","setLocation","overflowIndex","setOverflowIndex","Number","MAX_SAFE_INTEGER","pathname","search","useMemo","_menu$menuItems","selectedKeys","initMenuItemAndMatchCurrentPathKeys","menuItems","useEffect","unListen","listen","current","resizeObserver","ResizeObserver","_navMenuWrapperRef$cu","getClientRects","childNodes","wrapperWidth","i","childWidth","height","childHeight","observe","disconnect","overflowMenu","type","slice","ref","_items","isHidden","_NavMenu2","c","_initClass","_applyDecs","styleTexts","SiteMapStyleText","ItemTagStyleText","GroupItemStyleText","styleText","attribute","Boolean","JsonStorage","storage","prefix","undefined","setItem","name","value","JSON","stringify","getItem","parse","removeItem","clear"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"chunks/eo-nav-menu.0cdf6056.js","mappings":"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","sources":["webpack:///./src/nav-menu/index.tsx","webpack:///../../src/JsonStorage.ts"],"sourcesContent":["import React, {\n CSSProperties,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { getHistory } from \"@next-core/runtime\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport styleText from \"./nav-menu.shadow.css\";\nimport { UnregisterCallback } from \"history\";\nimport type { SidebarMenu } from \"@next-bricks/basic/menu\";\nimport type {\n MenuItem as MenuItemComponent,\n MenuComponentProps,\n} from \"@next-bricks/basic/menu-item\";\nimport { isSubMenu, isGroup, renderLinkCom, renderSpanCom } from \"./utils.js\";\nimport { initMenuItemAndMatchCurrentPathKeys } from \"@next-shared/general/menu\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport type {\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping,\n Placement,\n} from \"@next-bricks/basic/popover\";\nimport \"@next-core/theme\";\nimport classnames from \"classnames\";\nimport { ThreeLevelMenuPopoverContent } from \"./ThreeLevelMenuPopoverContent.js\";\nimport { SiteMapItem } from \"./site-map/SiteMapItem.js\";\nimport SiteMapStyleText from \"../nav-menu/site-map/SiteMapItem.shadow.css\";\nimport ItemTagStyleText from \"../nav-menu/site-map/ItemTag.shadow.css\";\nimport GroupItemStyleText from \"../nav-menu/site-map/GroupItem.shadow.css\";\nimport \"./host-context.css\";\n\nconst { defineElement, property } = createDecorators();\n\nconst WrappedMenuItem = wrapBrick<MenuItemComponent, MenuComponentProps>(\n \"eo-menu-item\"\n);\nconst WrappedPopover = wrapBrick<\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping\n>(\"eo-popover\", {\n onVisibleChange: \"visible.change\",\n beforeVisibleChange: \"before.visible.change\",\n});\n\nconst GAP_WIDTH = 8;\n\ninterface NavMenuProps {\n menu?: SidebarMenu;\n showTooltip?: boolean;\n}\n\ninterface MenuItemComProps {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuItem;\n topData?: boolean;\n selectedKey?: string[];\n showTooltip?: boolean;\n overflow?: boolean;\n}\ninterface SimpleMenuItemComProps extends MenuItemComProps {\n item: SidebarMenuSimpleItem;\n}\ninterface MenuGroupComProps extends MenuItemComProps {\n item: SidebarMenuGroup;\n}\nfunction RenderMenuItemCom(props: MenuItemComProps) {\n const { item } = props;\n return isSubMenu(item as SidebarMenuGroup, props.topData) ? (\n <SubMenuItemCom {...props} item={item as SidebarMenuGroup}></SubMenuItemCom>\n ) : isGroup(item) ? (\n <GroupMenuItemCom {...props} item={item as SidebarMenuGroup} />\n ) : (\n <SimpleMenuItemCom\n {...props}\n item={item as SidebarMenuSimpleItem}\n ></SimpleMenuItemCom>\n );\n}\nfunction SimpleMenuItemCom(props: SimpleMenuItemComProps) {\n const { item, index, hidden, showTooltip, selectedKey = [] } = props;\n return (\n <WrappedMenuItem\n data-index={index}\n className={hidden ? \"overflow-menu-item\" : \"\"}\n key={item.key}\n title={showTooltip ? item.text : \"\"}\n active={item.key ? selectedKey.includes(item.key) : false}\n >\n {renderLinkCom(item, { width: \"100%\" })}\n </WrappedMenuItem>\n );\n}\n\nlet scrollWidth: number;\n// istanbul ignore next;\nconst handlePopupVisibleChange = (event: CustomEvent<boolean>) => {\n // 当用户设置滚动条一直显示时,来回切换 overflow: hidden 会导致滚动条显示或隐藏\n // 造成页面宽度变化而导致的抖动的问题\n const paddingRight =\n scrollWidth ??\n (scrollWidth = window.innerWidth - document.body.clientWidth);\n\n document.body.style.paddingRight = event.detail ? paddingRight + \"px\" : \"\";\n document.body.style.overflow = event.detail ? \"hidden\" : \"\";\n document.body.style.touchAction = event.detail ? \"none\" : \"\";\n};\n\nfunction SubMenuItemCom({\n index,\n hidden,\n item,\n topData,\n showTooltip,\n selectedKey = [],\n overflow,\n}: MenuGroupComProps) {\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"popover\", {\n subprime: !topData,\n \"overflow-menu-item\": hidden,\n })}\n arrow={false}\n trigger=\"hover\"\n placement={topData ? \"bottom-start\" : \"right-start\"}\n distance={0}\n anchorDisplay=\"block\"\n strategy=\"fixed\"\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item, !topData)}\n </WrappedMenuItem>\n <div\n className={classnames(\"sub-menu-wrapper\", {\n \"overflow-menu-wrapper\": overflow,\n })}\n >\n {item.items.map((innerItem) => (\n <React.Fragment key={innerItem.key}>\n <RenderMenuItemCom\n item={innerItem}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n />\n </React.Fragment>\n ))}\n </div>\n </WrappedPopover>\n ) : null;\n}\n\nfunction GroupMenuItemCom({\n item,\n showTooltip,\n selectedKey = [],\n}: MenuGroupComProps) {\n return item.items?.length > 0 ? (\n item.childLayout === \"category\" ? (\n <ThreeLevelMenuCom\n item={item}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n placement=\"right-start\"\n anchorDisplay=\"block\"\n />\n ) : (item as SidebarMenuGroup).childLayout === \"siteMap\" ? (\n <SitMapMenCom\n item={item}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n placement=\"right-start\"\n anchorDisplay=\"block\"\n topData={false}\n />\n ) : (\n <>\n <div className=\"group-label\">{item.title}</div>\n <div className=\"group-wrapper\">\n {item.items.map((innerItem) => {\n return (\n <React.Fragment key={innerItem.key}>\n <RenderMenuItemCom\n item={innerItem}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n />\n </React.Fragment>\n );\n })}\n </div>\n </>\n )\n ) : null;\n}\n\nfunction ThreeLevelMenuCom({\n index,\n hidden,\n item,\n selectedKey = [],\n showTooltip,\n placement = \"bottom-start\",\n anchorDisplay,\n}: {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuGroup;\n selectedKey?: string[];\n showTooltip?: boolean;\n placement?: Placement;\n anchorDisplay?: CSSProperties[\"display\"];\n}) {\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"three-level-menu-popover\", \"popover\", {\n \"overflow-menu-item\": hidden,\n })}\n arrow={false}\n trigger={\"hover\"}\n placement={placement}\n distance={0}\n key={item.key}\n strategy=\"fixed\"\n anchorDisplay={anchorDisplay}\n beforeVisibleChange={handlePopupVisibleChange}\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item)}\n </WrappedMenuItem>\n <div className=\"sub-menu-wrapper\">\n <ThreeLevelMenuPopoverContent\n menuItem={item}\n selectedKey={selectedKey}\n ></ThreeLevelMenuPopoverContent>\n </div>\n </WrappedPopover>\n ) : null;\n}\n\nfunction SitMapMenCom({\n index,\n hidden,\n item,\n selectedKey = [],\n showTooltip,\n placement = \"bottom-start\",\n anchorDisplay,\n topData,\n}: {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuGroup;\n selectedKey?: string[];\n showTooltip?: boolean;\n placement?: Placement;\n anchorDisplay?: CSSProperties[\"display\"];\n topData?: boolean;\n}) {\n const [visible, setVisible] = useState<boolean>();\n\n const handleVisibleChange = (event: CustomEvent<boolean>): void => {\n setVisible(event.detail);\n handlePopupVisibleChange(event);\n };\n\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"popover\", {\n \"overflow-menu-item\": hidden,\n })}\n trigger={\"hover\"}\n placement={placement}\n distance={0}\n key={item.key}\n strategy=\"fixed\"\n arrow={false}\n anchorDisplay={anchorDisplay}\n beforeVisibleChange={handleVisibleChange}\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item)}\n </WrappedMenuItem>\n <div\n className={classnames(\"sub-menu-sit-map-wrapper\", {\n \"in-group-site-map\": !topData,\n })}\n onClick={(e) => e.stopPropagation()}\n >\n <SiteMapItem\n menuGroup={item}\n selectedKey={selectedKey}\n visible={visible}\n />\n </div>\n </WrappedPopover>\n ) : null;\n}\n\n/**\n * 菜单构件\n * @author sailor\n * @category navigation\n */\n@defineElement(\"eo-nav-menu\", {\n styleTexts: [\n SiteMapStyleText,\n ItemTagStyleText,\n GroupItemStyleText,\n styleText,\n ],\n})\nclass NavMenu extends ReactNextElement {\n /**\n * 菜单项\n */\n @property({\n attribute: false,\n })\n accessor menu: SidebarMenu | undefined;\n\n /**\n * 是否显示 tooltip\n */\n @property({\n type: Boolean,\n })\n accessor showTooltip: boolean | undefined;\n\n render() {\n return <NavMenuComponent menu={this.menu} showTooltip={this.showTooltip} />;\n }\n}\n\nfunction NavMenuComponent(props: NavMenuProps) {\n const { menu, showTooltip } = props;\n\n const history = getHistory();\n const navMenuWrapperRef = useRef<HTMLDivElement>(null);\n const [location, setLocation] = useState(history.location);\n const [overflowIndex, setOverflowIndex] = useState<number>(\n Number.MAX_SAFE_INTEGER\n );\n const { pathname, search } = location;\n\n const selectedKey = useMemo(() => {\n const { selectedKeys } = initMenuItemAndMatchCurrentPathKeys(\n menu?.menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n return selectedKeys;\n }, [menu?.menuItems, pathname, search]);\n\n useEffect(() => {\n const unListen: UnregisterCallback = history.listen((location) => {\n setLocation(location);\n });\n return unListen;\n }, []);\n\n useEffect(() => {\n if (navMenuWrapperRef.current) {\n const resizeObserver = new ResizeObserver(() => {\n if (navMenuWrapperRef.current) {\n const { width } = navMenuWrapperRef.current.getClientRects()[0] ?? {};\n const childNodes = navMenuWrapperRef.current.childNodes;\n\n if (childNodes.length && width) {\n let wrapperWidth = width;\n let overflowIndex = childNodes.length;\n\n for (let i = 0; i < childNodes.length; i++) {\n const { width: childWidth, height: childHeight } = (\n childNodes[i] as HTMLElement\n ).getClientRects()[0];\n\n if (!childHeight && wrapperWidth - 40 < 0) {\n overflowIndex = i - 1;\n break;\n }\n\n wrapperWidth =\n wrapperWidth - childWidth - (i > 0 ? GAP_WIDTH : 0);\n if (wrapperWidth < 0) {\n overflowIndex = i;\n break;\n }\n }\n\n setOverflowIndex(overflowIndex < 0 ? 0 : overflowIndex);\n }\n }\n });\n resizeObserver.observe(navMenuWrapperRef.current);\n\n return () => {\n resizeObserver.disconnect();\n };\n }\n }, []);\n\n const overflowMenu = useMemo(\n (): SidebarMenuItem => ({\n type: \"subMenu\",\n title: \"···\",\n items: menu?.menuItems.slice(\n overflowIndex,\n menu.menuItems.length\n ) as SidebarMenuItem[],\n }),\n [menu?.menuItems, overflowIndex]\n );\n\n return (\n <div ref={navMenuWrapperRef} className=\"nav-menu-wrapper\">\n {menu?.menuItems.map((item, index) => {\n const isHidden = overflowIndex <= index;\n return (\n <React.Fragment key={item.key}>\n {isSubMenu(item as SidebarMenuGroup, true) &&\n (item as SidebarMenuGroup).childLayout === \"category\" &&\n (item as SidebarMenuGroup).items?.length ? (\n <ThreeLevelMenuCom\n index={index}\n hidden={isHidden}\n item={item as SidebarMenuGroup}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n />\n ) : (item as SidebarMenuGroup).type === \"group\" &&\n (item as SidebarMenuGroup).childLayout === \"siteMap\" ? (\n <SitMapMenCom\n index={index}\n hidden={isHidden}\n item={item as SidebarMenuGroup}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n topData={true}\n />\n ) : (\n <RenderMenuItemCom\n index={index}\n hidden={isHidden}\n item={item}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n topData={true}\n />\n )}\n </React.Fragment>\n );\n })}\n <RenderMenuItemCom\n hidden={overflowIndex > (menu?.menuItems?.length ?? 0)}\n item={overflowMenu}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n overflow={true}\n topData={true}\n />\n </div>\n );\n}\n\nexport { NavMenu };\n","export class JsonStorage {\n constructor(\n private storage: Storage,\n private prefix: string = \"brick-next-\"\n ) {}\n\n setItem<T = any>(name: string, value: T): void {\n this.storage.setItem(this.prefix + name, JSON.stringify(value));\n }\n\n getItem<T = any>(name: string): T {\n return JSON.parse(this.storage.getItem(this.prefix + name) as string) as T;\n }\n\n removeItem(name: string): void {\n return this.storage.removeItem(this.prefix + name);\n }\n\n clear(): void {\n return this.storage.clear();\n }\n}\n"],"names":["scrollWidth","defineElement","property","createDecorators","WrappedMenuItem","wrapBrick","WrappedPopover","onVisibleChange","beforeVisibleChange","RenderMenuItemCom","props","item","isSubMenu","topData","React","SubMenuItemCom","_extends","isGroup","GroupMenuItemCom","SimpleMenuItemCom","index","hidden","showTooltip","selectedKey","className","key","title","text","active","includes","renderLinkCom","width","_NavMenu","handlePopupVisibleChange","event","_scrollWidth","paddingRight","window","innerWidth","document","body","clientWidth","style","detail","overflow","touchAction","_ref","_item$items","items","length","classnames","subprime","arrow","trigger","placement","distance","anchorDisplay","strategy","slot","renderSpanCom","map","innerItem","_ref2","_item$items2","childLayout","ThreeLevelMenuCom","SitMapMenCom","_ref3","_item$items3","ThreeLevelMenuPopoverContent","menuItem","_ref4","_item$items4","visible","setVisible","useState","onClick","e","stopPropagation","SiteMapItem","menuGroup","_A","WeakMap","_B","NavMenu","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_menu","_init_extra_menu","_init_showTooltip","_init_extra_showTooltip","menu","_classPrivateFieldGet","v","_classPrivateFieldSet","render","NavMenuComponent","this","_menu$menuItems$lengt","_menu$menuItems2","history","getHistory","navMenuWrapperRef","useRef","location","setLocation","overflowIndex","setOverflowIndex","Number","MAX_SAFE_INTEGER","pathname","search","useMemo","_menu$menuItems","selectedKeys","initMenuItemAndMatchCurrentPathKeys","menuItems","useEffect","unListen","listen","current","resizeObserver","ResizeObserver","_navMenuWrapperRef$cu","getClientRects","childNodes","wrapperWidth","i","childWidth","height","childHeight","observe","disconnect","overflowMenu","type","slice","ref","_items","isHidden","_NavMenu2","c","_initClass","_applyDecs","styleTexts","SiteMapStyleText","ItemTagStyleText","GroupItemStyleText","styleText","attribute","Boolean","JsonStorage","storage","prefix","undefined","setItem","name","value","JSON","stringify","getItem","parse","removeItem","clear"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[131],{8356:(e,n,a)=>{a.d(n,{P:()=>l,z:()=>o});var t=a(8769),r=a.n(t),o=r().createContext({}),l=()=>r().useContext(o)},8839:(e,n,a)=>{a.d(n,{F:()=>p,r:()=>u});var t=a(9575),r=a(8769),o=a.n(r),l=a(1030),i=a(3373),c=a.n(i),s=a(9393),m=a(8356);function u(e){var{name:n,items:a}=e;return o().createElement("li",{className:"menu-group"},o().createElement("div",{className:"menu-group-label"},n),o().createElement("ul",{className:"menu"},a.map((e=>"dir"===e.type?o().createElement(h,{key:"".concat(e.type,"-").concat(e.id),name:e.name,items:e.items}):o().createElement(d,{key:"".concat(e.type,"-").concat(e.id),item:e})))))}function d(e){var n,{item:a}=e,{loadingFavorites:i,readonly:u,pushRecentVisit:d,toggleStar:p,isStarred:h}=(0,m.P)(),g=(0,r.useMemo)((()=>h(a)),[h,a]),x=(0,r.useCallback)((()=>{p(a)}),[a,p]),b=(0,r.useCallback)((()=>{d(a)}),[a,d]);return o().createElement("li",{className:c()("menu-item",{starred:g,"can-star":!i})},o().createElement(s.EM,(0,t.A)({onClick:b},"app"===a.type?{url:a.url}:{href:a.url,target:"_blank"}),o().createElement(s.Bj,(0,t.A)({className:"menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(n=a.menuIcon)&&void 0!==n&&n.lib&&a.menuIcon.icon?(0,l.pick)(a.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},a.name)),!u&&o().createElement(s.Bj,{lib:"fa",prefix:g?"fas":"far",icon:"star",className:"menu-item-star",title:g?"取消收藏":"收藏",onClick:x}))}function p(e){var n,{item:a}=e,{readonly:i,pushRecentVisit:c,toggleStar:u}=(0,m.P)(),d=(0,r.useCallback)((()=>{"link"!==a.type&&c(a)}),[a,c]),p=(0,r.useCallback)((()=>{u(a)}),[a,u]);return o().createElement("li",{className:"sidebar-menu-item"},o().createElement(s.EM,(0,t.A)({onClick:d},"app"===a.type?{url:a.url}:{href:a.url,target:"_blank"}),o().createElement(s.Bj,(0,t.A)({className:"sidebar-menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(n=a.menuIcon)&&void 0!==n&&n.lib&&a.menuIcon.icon?(0,l.pick)(a.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},a.name)),!i&&o().createElement(s.Bj,{lib:"fa",icon:"xmark",className:"menu-item-remove",onClick:p}))}function h(e){var{name:n,items:a}=e,{searching:t}=(0,m.P)(),[l,i]=(0,r.useState)(!1),[u,p]=(0,r.useState)(!1),h=(0,r.useCallback)((()=>{t?p((e=>!e)):i((e=>!e))}),[t]);(0,r.useEffect)((()=>{p(!0)}),[t]);var g=t?u:l;return o().createElement("li",{className:"menu-item folder"},o().createElement(s.EM,{onClick:h},o().createElement(s.Bj,{lib:"fa",prefix:"far",icon:"folder-open",className:"menu-icon"}),o().createElement("span",{className:"menu-item-label"},n),o().createElement(s.Bj,{lib:"antd",icon:g?"up":"down",className:"menu-item-toggle"})),o().createElement("ul",{className:c()("sub-menu",{expanded:g})},a.map((e=>o().createElement(d,{key:"".concat(e.type,"-").concat(e.id),item:e})))))}},306:(e,n,a)=>{a.r(n),a.d(n,{EoSearchLaunchpad:()=>i,EoSearchLaunchpadComponent:()=>S,WrappedIcon:()=>E});var t,r,o,l,i,c=a(918),s=a(6121),m=a(829),u=a(2740),d=a(8769),p=a.n(d),h=a(
|
|
2
|
-
//# sourceMappingURL=eo-search-launchpad.
|
|
1
|
+
"use strict";(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[131],{8356:(e,n,a)=>{a.d(n,{P:()=>l,z:()=>o});var t=a(8769),r=a.n(t),o=r().createContext({}),l=()=>r().useContext(o)},8839:(e,n,a)=>{a.d(n,{F:()=>p,r:()=>u});var t=a(9575),r=a(8769),o=a.n(r),l=a(1030),i=a(3373),c=a.n(i),s=a(9393),m=a(8356);function u(e){var{name:n,items:a}=e;return o().createElement("li",{className:"menu-group"},o().createElement("div",{className:"menu-group-label"},n),o().createElement("ul",{className:"menu"},a.map((e=>"dir"===e.type?o().createElement(h,{key:"".concat(e.type,"-").concat(e.id),name:e.name,items:e.items}):o().createElement(d,{key:"".concat(e.type,"-").concat(e.id),item:e})))))}function d(e){var n,{item:a}=e,{loadingFavorites:i,readonly:u,pushRecentVisit:d,toggleStar:p,isStarred:h}=(0,m.P)(),g=(0,r.useMemo)((()=>h(a)),[h,a]),x=(0,r.useCallback)((()=>{p(a)}),[a,p]),b=(0,r.useCallback)((()=>{d(a)}),[a,d]);return o().createElement("li",{className:c()("menu-item",{starred:g,"can-star":!i})},o().createElement(s.EM,(0,t.A)({onClick:b},"app"===a.type?{url:a.url}:{href:a.url,target:"_blank"}),o().createElement(s.Bj,(0,t.A)({className:"menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(n=a.menuIcon)&&void 0!==n&&n.lib&&a.menuIcon.icon?(0,l.pick)(a.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},a.name)),!u&&o().createElement(s.Bj,{lib:"fa",prefix:g?"fas":"far",icon:"star",className:"menu-item-star",title:g?"取消收藏":"收藏",onClick:x}))}function p(e){var n,{item:a}=e,{readonly:i,pushRecentVisit:c,toggleStar:u}=(0,m.P)(),d=(0,r.useCallback)((()=>{"link"!==a.type&&c(a)}),[a,c]),p=(0,r.useCallback)((()=>{u(a)}),[a,u]);return o().createElement("li",{className:"sidebar-menu-item"},o().createElement(s.EM,(0,t.A)({onClick:d},"app"===a.type?{url:a.url}:{href:a.url,target:"_blank"}),o().createElement(s.Bj,(0,t.A)({className:"sidebar-menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(n=a.menuIcon)&&void 0!==n&&n.lib&&a.menuIcon.icon?(0,l.pick)(a.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},a.name)),!i&&o().createElement(s.Bj,{lib:"fa",icon:"xmark",className:"menu-item-remove",onClick:p}))}function h(e){var{name:n,items:a}=e,{searching:t}=(0,m.P)(),[l,i]=(0,r.useState)(!1),[u,p]=(0,r.useState)(!1),h=(0,r.useCallback)((()=>{t?p((e=>!e)):i((e=>!e))}),[t]);(0,r.useEffect)((()=>{p(!0)}),[t]);var g=t?u:l;return o().createElement("li",{className:"menu-item folder"},o().createElement(s.EM,{onClick:h},o().createElement(s.Bj,{lib:"fa",prefix:"far",icon:"folder-open",className:"menu-icon"}),o().createElement("span",{className:"menu-item-label"},n),o().createElement(s.Bj,{lib:"antd",icon:g?"up":"down",className:"menu-item-toggle"})),o().createElement("ul",{className:c()("sub-menu",{expanded:g})},a.map((e=>o().createElement(d,{key:"".concat(e.type,"-").concat(e.id),item:e})))))}},306:(e,n,a)=>{a.r(n),a.d(n,{EoSearchLaunchpad:()=>i,EoSearchLaunchpadComponent:()=>S,WrappedIcon:()=>E});var t,r,o,l,i,c=a(918),s=a(6121),m=a(829),u=a(2740),d=a(8769),p=a.n(d),h=a(3741),g=a(6430),x=(a(6329),a(3873)),b=a(3373),v=a.n(b),f=a(8356),y=a(2133),k=a(8839),E=(a(1837),(0,g.wrapBrick)("eo-icon")),{defineElement:w,property:N}=(0,h.createDecorators)(),C=new WeakMap;class A extends g.ReactNextElement{constructor(){super(...arguments),(0,c.A)(this,C,o(this)),l(this)}get readonly(){return(0,m.A)(C,this)}set readonly(e){(0,s.A)(C,this,e)}render(){return p().createElement(S,{readonly:this.readonly})}}function S(e){var{readonly:n}=e,a=(0,d.useRef)(null),t=(0,d.useCallback)((()=>{var e;null===(e=a.current)||void 0===e||e.focus()}),[]),[r,o]=(0,d.useState)(!1),{loading:l,q:i,setQ:c,menuGroups:s,loadingFavorites:m,pushRecentVisit:u,toggleStar:h,isStarred:g}=(0,y.sZ)(r),x=!!i,b=(0,d.useCallback)((e=>{c(e.target.value)}),[c]),w=(0,d.useCallback)((()=>{c("")}),[c]);return p().createElement(f.z.Provider,{value:{searching:x,loadingFavorites:m,readonly:n,pushRecentVisit:u,toggleStar:h,isStarred:g}},p().createElement("div",{className:"container"},p().createElement("div",{className:"search-box",onClick:t},p().createElement(E,{lib:"fa",icon:"magnifying-glass",className:"search-icon"}),p().createElement("input",{ref:a,placeholder:"搜索产品/微应用",value:i,onChange:b,className:"search-input",onFocus:()=>o(!0),onBlur:()=>o(!1)}),p().createElement(E,{lib:"antd",theme:"filled",icon:"close-circle",className:v()("search-clear",{searching:x}),onClick:w,onMouseDown:e=>e.preventDefault()})),p().createElement("div",{className:v()("dropdown",{"dropdown-active":r}),onMouseDown:e=>e.preventDefault()},p().createElement("div",{className:v()("dropdown-content",{loading:l})},p().createElement(z,{loading:l}),p().createElement("ul",{className:"menu-groups"},s.map((e=>p().createElement(k.r,{key:e.name,name:e.name,items:e.items}))))))))}function z(e){var{loading:n}=e;return n&&p().createElement("div",{className:"spinner"},p().createElement(E,{lib:"fa",icon:"spinner",spinning:!0}))}t=A,({e:[o,l],c:[i,r]}=(0,u.A)(t,[w("eo-search-launchpad",{styleTexts:[x.A]})],[[N({type:Boolean}),1,"readonly"]],0,void 0,g.ReactNextElement)),r()},7839:(e,n,a)=>{a.d(n,{A:()=>i});var t=a(6758),r=a.n(t),o=a(935),l=a.n(o)()(r());l.push([e.id,':root{--eo-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme="dark"],\nhtml[data-theme="dark-v2"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}',""]);const i=l},3873:(e,n,a)=>{a.d(n,{A:()=>i});var t=a(6758),r=a.n(t),o=a(935),l=a.n(o)()(r());l.push([e.id,":host{display:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;grid-gap:32px 8px;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:-webkit-min-content;height:-moz-min-content;height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}}",""]);const i=l.toString()},1837:(e,n,a)=>{var t=a(2591),r=a.n(t),o=a(1740),l=a.n(o),i=a(8128),c=a.n(i),s=a(855),m=a.n(s),u=a(3051),d=a.n(u),p=a(3656),h=a.n(p),g=a(7839),x={};x.styleTagTransform=h(),x.setAttributes=m(),x.insert=c().bind(null,"head"),x.domAPI=l(),x.insertStyleElement=d(),r()(g.A,x),g.A&&g.A.locals&&g.A.locals}}]);
|
|
2
|
+
//# sourceMappingURL=eo-search-launchpad.fad47849.js.map
|
package/dist/chunks/{eo-search-launchpad.aacda867.js.map → eo-search-launchpad.fad47849.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/eo-search-launchpad.aacda867.js","mappings":"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","sources":["webpack:///./src/launchpad-button-v2/LaunchpadContext.ts","webpack:///./src/launchpad-button-v2/MenuGroup.tsx","webpack:///./src/search-launchpad/index.tsx","webpack:///./src/search-launchpad/host-context.css","webpack:///./src/search-launchpad/styles.shadow.css","webpack:///./src/search-launchpad/host-context.css?4d0b"],"sourcesContent":["import React from \"react\";\nimport type { MenuItemDataLink, MenuItemDataNormal } from \"./interfaces\";\n\nexport interface LaunchpadContextData {\n searching: boolean;\n loadingFavorites: boolean;\n readonly?: boolean;\n pushRecentVisit(item: MenuItemDataNormal): void;\n toggleStar(item: MenuItemDataNormal | MenuItemDataLink): void;\n isStarred(item: MenuItemDataNormal): boolean;\n}\n\nexport const LaunchpadsContext = React.createContext<LaunchpadContextData>(\n {} as LaunchpadContextData\n);\n\nexport const useLaunchpadContext = (): LaunchpadContextData =>\n React.useContext(LaunchpadsContext);\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { pick } from \"lodash\";\nimport classNames from \"classnames\";\nimport { WrappedIcon, WrappedLink } from \"./wrapped-bricks\";\nimport { useLaunchpadContext } from \"./LaunchpadContext\";\nimport type {\n MenuItemData,\n MenuItemDataNormal,\n SidebarMenuItemData,\n} from \"./interfaces\";\n\nexport interface MenuGroupProps {\n name: string;\n items: MenuItemData[];\n}\n\nexport function MenuGroup({ name, items }: MenuGroupProps) {\n return (\n <li className=\"menu-group\">\n <div className=\"menu-group-label\">{name}</div>\n <ul className=\"menu\">\n {items.map((item) =>\n item.type === \"dir\" ? (\n <MenuItemFolder\n key={`${item.type}-${item.id}`}\n name={item.name}\n items={item.items}\n />\n ) : (\n <MenuItem key={`${item.type}-${item.id}`} item={item} />\n )\n )}\n </ul>\n </li>\n );\n}\n\nexport interface MenuItemProps {\n item: MenuItemDataNormal;\n}\n\nfunction MenuItem({ item }: MenuItemProps) {\n const { loadingFavorites, readonly, pushRecentVisit, toggleStar, isStarred } =\n useLaunchpadContext();\n\n const starred = useMemo(() => isStarred(item), [isStarred, item]);\n\n const handleStarClick = useCallback(() => {\n toggleStar(item);\n }, [item, toggleStar]);\n\n const handleClick = useCallback(() => {\n pushRecentVisit(item);\n }, [item, pushRecentVisit]);\n\n return (\n <li\n className={classNames(\"menu-item\", {\n starred,\n \"can-star\": !loadingFavorites,\n })}\n >\n <WrappedLink\n onClick={handleClick}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n target: \"_blank\",\n })}\n >\n <WrappedIcon\n className=\"menu-icon\"\n lib=\"easyops\"\n icon=\"micro-app-center\"\n {...(item.menuIcon?.lib && item.menuIcon.icon\n ? (pick(item.menuIcon, [\n \"lib\",\n \"icon\",\n \"theme\",\n \"category\",\n \"prefix\",\n ]) as any)\n : null)}\n />\n <span className=\"menu-item-label\">{item.name}</span>\n </WrappedLink>\n {!readonly && (\n <WrappedIcon\n lib=\"fa\"\n prefix={starred ? \"fas\" : \"far\"}\n icon=\"star\"\n className=\"menu-item-star\"\n title={starred ? \"取消收藏\" : \"收藏\"}\n onClick={handleStarClick}\n />\n )}\n </li>\n );\n}\n\nexport interface SidebarMenuItemProps {\n item: SidebarMenuItemData;\n}\n\nexport function SidebarMenuItem({ item }: SidebarMenuItemProps) {\n const { readonly, pushRecentVisit, toggleStar } = useLaunchpadContext();\n\n const handleClick = useCallback(() => {\n if (item.type !== \"link\") {\n pushRecentVisit(item);\n }\n }, [item, pushRecentVisit]);\n\n const handleRemoveStar = useCallback(() => {\n toggleStar(item);\n }, [item, toggleStar]);\n\n return (\n <li className=\"sidebar-menu-item\">\n <WrappedLink\n onClick={handleClick}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n target: \"_blank\",\n })}\n >\n <WrappedIcon\n className={`sidebar-menu-icon`}\n lib=\"easyops\"\n icon=\"micro-app-center\"\n {...(item.menuIcon?.lib && item.menuIcon.icon\n ? (pick(item.menuIcon, [\n \"lib\",\n \"icon\",\n \"theme\",\n \"category\",\n \"prefix\",\n ]) as any)\n : null)}\n />\n <span className=\"menu-item-label\">{item.name}</span>\n </WrappedLink>\n {!readonly && (\n <WrappedIcon\n lib=\"fa\"\n icon=\"xmark\"\n className=\"menu-item-remove\"\n onClick={handleRemoveStar}\n />\n )}\n </li>\n );\n}\n\nexport interface MenuItemFolderProps {\n name: string;\n items: MenuItemDataNormal[];\n}\n\nfunction MenuItemFolder({ name, items }: MenuItemFolderProps) {\n const { searching } = useLaunchpadContext();\n const [expanded, setExpanded] = useState(false);\n const [searchingExpanded, setSearchingExpanded] = useState(false);\n\n const toggle = useCallback(() => {\n // Use separated expanded states for searching and non-searching.\n if (searching) {\n setSearchingExpanded((previous) => !previous);\n } else {\n setExpanded((previous) => !previous);\n }\n }, [searching]);\n\n useEffect(() => {\n // Each time when start searching, set it as expanded.\n setSearchingExpanded(true);\n }, [searching]);\n\n const actualExpanded = searching ? searchingExpanded : expanded;\n\n return (\n <li className=\"menu-item folder\">\n <WrappedLink onClick={toggle}>\n <WrappedIcon\n lib=\"fa\"\n prefix=\"far\"\n icon=\"folder-open\"\n className=\"menu-icon\"\n />\n <span className=\"menu-item-label\">{name}</span>\n <WrappedIcon\n lib=\"antd\"\n icon={actualExpanded ? \"up\" : \"down\"}\n className=\"menu-item-toggle\"\n />\n </WrappedLink>\n <ul className={classNames(\"sub-menu\", { expanded: actualExpanded })}>\n {items.map((item) => (\n <MenuItem key={`${item.type}-${item.id}`} item={item} />\n ))}\n </ul>\n </li>\n );\n}\n","import React, { useCallback, useRef, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport classNames from \"classnames\";\nimport { LaunchpadsContext } from \"../launchpad-button-v2/LaunchpadContext\";\nimport { useLaunchpadInfo } from \"../launchpad-button-v2/useLaunchpadInfo\";\nimport { MenuGroup } from \"../launchpad-button-v2/MenuGroup\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport \"./host-context.css\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst { defineElement, property } = createDecorators();\n\n/**\n * launchpad 搜索\n * @insider\n */\nexport\n@defineElement(\"eo-search-launchpad\", {\n styleTexts: [styleText],\n})\nclass EoSearchLaunchpad extends ReactNextElement {\n /**\n * 简约模式\n */\n @property({\n type: Boolean,\n })\n accessor readonly: boolean | undefined;\n\n render() {\n return <EoSearchLaunchpadComponent readonly={this.readonly} />;\n }\n}\n\ninterface EoSearchLaunchpadComponentProps {\n readonly?: boolean;\n}\n\nexport function EoSearchLaunchpadComponent({\n readonly,\n}: EoSearchLaunchpadComponentProps) {\n const searchInputRef = useRef<HTMLInputElement>(null);\n const handleClickSearchBox = useCallback(() => {\n searchInputRef.current?.focus();\n }, []);\n\n const [active, setActive] = useState(false);\n\n const {\n loading,\n q,\n setQ,\n menuGroups,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n } = useLaunchpadInfo(active);\n const searching = !!q;\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setQ(e.target.value);\n },\n [setQ]\n );\n\n const clearSearch = useCallback(() => {\n setQ(\"\");\n }, [setQ]);\n\n return (\n <LaunchpadsContext.Provider\n value={{\n searching,\n loadingFavorites,\n readonly,\n pushRecentVisit,\n toggleStar,\n isStarred,\n }}\n >\n <div className=\"container\">\n <div className=\"search-box\" onClick={handleClickSearchBox}>\n <WrappedIcon\n lib=\"fa\"\n icon=\"magnifying-glass\"\n className=\"search-icon\"\n />\n <input\n ref={searchInputRef}\n placeholder=\"搜索产品/微应用\"\n value={q}\n onChange={handleSearch}\n className=\"search-input\"\n onFocus={() => setActive(true)}\n onBlur={() => setActive(false)}\n />\n <WrappedIcon\n lib=\"antd\"\n theme=\"filled\"\n icon=\"close-circle\"\n className={classNames(\"search-clear\", { searching })}\n onClick={clearSearch}\n onMouseDown={(e) => e.preventDefault()}\n />\n </div>\n <div\n className={classNames(\"dropdown\", { \"dropdown-active\": active })}\n onMouseDown={(e) => e.preventDefault()}\n >\n <div className={classNames(\"dropdown-content\", { loading })}>\n <Loading loading={loading} />\n <ul className=\"menu-groups\">\n {menuGroups.map((group) => (\n <MenuGroup\n key={group.name}\n name={group.name}\n items={group.items}\n />\n ))}\n </ul>\n </div>\n </div>\n </div>\n </LaunchpadsContext.Provider>\n );\n}\n\nfunction Loading({ loading }: { loading: boolean }) {\n return (\n loading && (\n <div className=\"spinner\">\n <WrappedIcon lib=\"fa\" icon=\"spinner\" spinning />\n </div>\n )\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-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}`, \"\"]);\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:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;grid-gap:32px 8px;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:-webkit-min-content;height:-moz-min-content;height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left: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;\n\n options.insert = insertFn.bind(null, \"head\");\n \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"],"names":["LaunchpadsContext","React","useLaunchpadContext","MenuGroup","_ref","name","items","className","map","item","type","MenuItemFolder","key","concat","id","MenuItem","_ref2","_item$menuIcon","loadingFavorites","readonly","pushRecentVisit","toggleStar","isStarred","starred","useMemo","handleStarClick","useCallback","handleClick","classNames","WrappedLink","_extends","onClick","url","href","target","WrappedIcon","lib","icon","menuIcon","pick","prefix","title","SidebarMenuItem","_ref3","_item$menuIcon2","handleRemoveStar","_ref4","searching","expanded","setExpanded","useState","searchingExpanded","setSearchingExpanded","toggle","previous","useEffect","actualExpanded","_EoSearchLaunchpad","wrapBrick","defineElement","property","createDecorators","_A","WeakMap","EoSearchLaunchpad","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_readonly","_init_extra_readonly","_classPrivateFieldGet","v","_classPrivateFieldSet","render","EoSearchLaunchpadComponent","this","searchInputRef","useRef","handleClickSearchBox","_searchInputRef$curre","current","focus","active","setActive","loading","q","setQ","menuGroups","useLaunchpadInfo","handleSearch","e","value","clearSearch","Provider","ref","placeholder","onChange","onFocus","onBlur","theme","onMouseDown","preventDefault","Loading","group","spinning","_EoSearchLaunchpad2","c","_initClass","_applyDecs","styleTexts","styleText","Boolean","___CSS_LOADER_EXPORT___","push","module","toString","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"chunks/eo-search-launchpad.fad47849.js","mappings":"mKAYaA,EAAoBC,IAAAA,cAC/B,CAAC,GAGUC,EAAsBA,IACjCD,IAAAA,WAAiBD,E,4HCDZ,SAASG,EAASC,GAAkC,IAAjC,KAAEC,EAAI,MAAEC,GAAuBF,EACvD,OACEH,IAAAA,cAAA,MAAIM,UAAU,cACZN,IAAAA,cAAA,OAAKM,UAAU,oBAAoBF,GACnCJ,IAAAA,cAAA,MAAIM,UAAU,QACXD,EAAME,KAAKC,GACI,QAAdA,EAAKC,KACHT,IAAAA,cAACU,EAAc,CACbC,IAAG,GAAAC,OAAKJ,EAAKC,KAAI,KAAAG,OAAIJ,EAAKK,IAC1BT,KAAMI,EAAKJ,KACXC,MAAOG,EAAKH,QAGdL,IAAAA,cAACc,EAAQ,CAACH,IAAG,GAAAC,OAAKJ,EAAKC,KAAI,KAAAG,OAAIJ,EAAKK,IAAML,KAAMA,OAM5D,CAMA,SAASM,EAAQC,GAA0B,IAAAC,GAAzB,KAAER,GAAqBO,GACjC,iBAAEE,EAAgB,SAAEC,EAAQ,gBAAEC,EAAe,WAAEC,EAAU,UAAEC,IAC/DpB,EAAAA,EAAAA,KAEIqB,GAAUC,EAAAA,EAAAA,UAAQ,IAAMF,EAAUb,IAAO,CAACa,EAAWb,IAErDgB,GAAkBC,EAAAA,EAAAA,cAAY,KAClCL,EAAWZ,EAAK,GACf,CAACA,EAAMY,IAEJM,GAAcD,EAAAA,EAAAA,cAAY,KAC9BN,EAAgBX,EAAK,GACpB,CAACA,EAAMW,IAEV,OACEnB,IAAAA,cAAA,MACEM,UAAWqB,IAAW,YAAa,CACjCL,UACA,YAAaL,KAGfjB,IAAAA,cAAC4B,EAAAA,IAAWC,EAAAA,EAAAA,GAAA,CACVC,QAASJ,GACU,QAAdlB,EAAKC,KACN,CACEsB,IAAKvB,EAAKuB,KAEZ,CACEC,KAAMxB,EAAKuB,IACXE,OAAQ,WAGdjC,IAAAA,cAACkC,EAAAA,IAAWL,EAAAA,EAAAA,GAAA,CACVvB,UAAU,YACV6B,IAAI,UACJC,KAAK,oBACa,QAAbpB,EAAAR,EAAK6B,gBAAQ,IAAArB,GAAbA,EAAemB,KAAO3B,EAAK6B,SAASD,MACpCE,EAAAA,EAAAA,MAAK9B,EAAK6B,SAAU,CACnB,MACA,OACA,QACA,WACA,WAEF,OAENrC,IAAAA,cAAA,QAAMM,UAAU,mBAAmBE,EAAKJ,QAExCc,GACAlB,IAAAA,cAACkC,EAAAA,GAAW,CACVC,IAAI,KACJI,OAAQjB,EAAU,MAAQ,MAC1Bc,KAAK,OACL9B,UAAU,iBACVkC,MAAOlB,EAAU,OAAS,KAC1BQ,QAASN,IAKnB,CAMO,SAASiB,EAAeC,GAAiC,IAAAC,GAAhC,KAAEnC,GAA4BkC,GACtD,SAAExB,EAAQ,gBAAEC,EAAe,WAAEC,IAAenB,EAAAA,EAAAA,KAE5CyB,GAAcD,EAAAA,EAAAA,cAAY,KACZ,SAAdjB,EAAKC,MACPU,EAAgBX,EAClB,GACC,CAACA,EAAMW,IAEJyB,GAAmBnB,EAAAA,EAAAA,cAAY,KACnCL,EAAWZ,EAAK,GACf,CAACA,EAAMY,IAEV,OACEpB,IAAAA,cAAA,MAAIM,UAAU,qBACZN,IAAAA,cAAC4B,EAAAA,IAAWC,EAAAA,EAAAA,GAAA,CACVC,QAASJ,GACU,QAAdlB,EAAKC,KACN,CACEsB,IAAKvB,EAAKuB,KAEZ,CACEC,KAAMxB,EAAKuB,IACXE,OAAQ,WAGdjC,IAAAA,cAACkC,EAAAA,IAAWL,EAAAA,EAAAA,GAAA,CACVvB,UAAS,oBACT6B,IAAI,UACJC,KAAK,oBACa,QAAbO,EAAAnC,EAAK6B,gBAAQ,IAAAM,GAAbA,EAAeR,KAAO3B,EAAK6B,SAASD,MACpCE,EAAAA,EAAAA,MAAK9B,EAAK6B,SAAU,CACnB,MACA,OACA,QACA,WACA,WAEF,OAENrC,IAAAA,cAAA,QAAMM,UAAU,mBAAmBE,EAAKJ,QAExCc,GACAlB,IAAAA,cAACkC,EAAAA,GAAW,CACVC,IAAI,KACJC,KAAK,QACL9B,UAAU,mBACVwB,QAASc,IAKnB,CAOA,SAASlC,EAAcmC,GAAuC,IAAtC,KAAEzC,EAAI,MAAEC,GAA4BwC,GACpD,UAAEC,IAAc7C,EAAAA,EAAAA,MACf8C,EAAUC,IAAeC,EAAAA,EAAAA,WAAS,IAClCC,EAAmBC,IAAwBF,EAAAA,EAAAA,WAAS,GAErDG,GAAS3B,EAAAA,EAAAA,cAAY,KAErBqB,EACFK,GAAsBE,IAAcA,IAEpCL,GAAaK,IAAcA,GAC7B,GACC,CAACP,KAEJQ,EAAAA,EAAAA,YAAU,KAERH,GAAqB,EAAK,GACzB,CAACL,IAEJ,IAAMS,EAAiBT,EAAYI,EAAoBH,EAEvD,OACE/C,IAAAA,cAAA,MAAIM,UAAU,oBACZN,IAAAA,cAAC4B,EAAAA,GAAW,CAACE,QAASsB,GACpBpD,IAAAA,cAACkC,EAAAA,GAAW,CACVC,IAAI,KACJI,OAAO,MACPH,KAAK,cACL9B,UAAU,cAEZN,IAAAA,cAAA,QAAMM,UAAU,mBAAmBF,GACnCJ,IAAAA,cAACkC,EAAAA,GAAW,CACVC,IAAI,OACJC,KAAMmB,EAAiB,KAAO,OAC9BjD,UAAU,sBAGdN,IAAAA,cAAA,MAAIM,UAAWqB,IAAW,WAAY,CAAEoB,SAAUQ,KAC/ClD,EAAME,KAAKC,GACVR,IAAAA,cAACc,EAAQ,CAACH,IAAG,GAAAC,OAAKJ,EAAKC,KAAI,KAAAG,OAAIJ,EAAKK,IAAML,KAAMA,OAK1D,C,uHClMAgD,E,kJAJatB,G,SAAcuB,EAAAA,EAAAA,WAAyC,aAE9D,cAAEC,EAAa,SAAEC,IAAaC,EAAAA,EAAAA,oBAEpCC,EAAA,IAAAC,QAKA,MAAAC,UAGgCC,EAAAA,iBAAiBC,WAAAA,GAAA,SAAAC,YAC/CC,EAAAA,EAAAA,GAAA,KAAAN,EAAAO,EAAA,OAAAC,EAAA,kBAMSnD,GAAQ,OAAAoD,EAAAA,EAAAA,GAAAT,EAAA,kBAAR3C,CAAQqD,IAAAC,EAAAA,EAAAA,GAAAX,EAAA,KAAAU,EAAA,CAEjBE,MAAAA,GACE,OAAOzE,IAAAA,cAAC0E,EAA0B,CAACxD,SAAUyD,KAAKzD,UACpD,EAOK,SAASwD,EAA0BvE,GAEN,IAFO,SACzCe,GACgCf,EAC1ByE,GAAiBC,EAAAA,EAAAA,QAAyB,MAC1CC,GAAuBrD,EAAAA,EAAAA,cAAY,KAAM,IAAAsD,EACvB,QAAtBA,EAAAH,EAAeI,eAAO,IAAAD,GAAtBA,EAAwBE,OAAO,GAC9B,KAEIC,EAAQC,IAAalC,EAAAA,EAAAA,WAAS,IAE/B,QACJmC,EAAO,EACPC,EAAC,KACDC,EAAI,WACJC,EAAU,iBACVtE,EAAgB,gBAChBE,EAAe,WACfC,EAAU,UACVC,IACEmE,EAAAA,EAAAA,IAAiBN,GACfpC,IAAcuC,EAEdI,GAAehE,EAAAA,EAAAA,cAClBiE,IACCJ,EAAKI,EAAEzD,OAAO0D,MAAM,GAEtB,CAACL,IAGGM,GAAcnE,EAAAA,EAAAA,cAAY,KAC9B6D,EAAK,GAAG,GACP,CAACA,IAEJ,OACEtF,IAAAA,cAACD,EAAAA,EAAkB8F,SAAQ,CACzBF,MAAO,CACL7C,YACA7B,mBACAC,WACAC,kBACAC,aACAC,cAGFrB,IAAAA,cAAA,OAAKM,UAAU,aACbN,IAAAA,cAAA,OAAKM,UAAU,aAAawB,QAASgD,GACnC9E,IAAAA,cAACkC,EAAW,CACVC,IAAI,KACJC,KAAK,mBACL9B,UAAU,gBAEZN,IAAAA,cAAA,SACE8F,IAAKlB,EACLmB,YAAY,WACZJ,MAAON,EACPW,SAAUP,EACVnF,UAAU,eACV2F,QAASA,IAAMd,GAAU,GACzBe,OAAQA,IAAMf,GAAU,KAE1BnF,IAAAA,cAACkC,EAAW,CACVC,IAAI,OACJgE,MAAM,SACN/D,KAAK,eACL9B,UAAWqB,IAAW,eAAgB,CAAEmB,cACxChB,QAAS8D,EACTQ,YAAcV,GAAMA,EAAEW,oBAG1BrG,IAAAA,cAAA,OACEM,UAAWqB,IAAW,WAAY,CAAE,kBAAmBuD,IACvDkB,YAAcV,GAAMA,EAAEW,kBAEtBrG,IAAAA,cAAA,OAAKM,UAAWqB,IAAW,mBAAoB,CAAEyD,aAC/CpF,IAAAA,cAACsG,EAAO,CAAClB,QAASA,IAClBpF,IAAAA,cAAA,MAAIM,UAAU,eACXiF,EAAWhF,KAAKgG,GACfvG,IAAAA,cAACE,EAAAA,EAAS,CACRS,IAAK4F,EAAMnG,KACXA,KAAMmG,EAAMnG,KACZC,MAAOkG,EAAMlG,cAS/B,CAEA,SAASiG,EAAOvF,GAAoC,IAAnC,QAAEqE,GAA+BrE,EAChD,OACEqE,GACEpF,IAAAA,cAAA,OAAKM,UAAU,WACbN,IAAAA,cAACkC,EAAW,CAACC,IAAI,KAAKC,KAAK,UAAUoE,UAAQ,IAIrD,CAzGCC,EAAA1C,IAAA2B,GAAAtB,EAAAC,GAAAqC,GAAAlD,EAAAmD,KAAAC,EAAAA,EAAAA,GAAAH,EAAA,CAfA/C,EAAc,sBAAuB,CACpCmD,WAAY,CAACC,EAAAA,MACb,EAKCnD,EAAS,CACRlD,KAAMsG,UACN,wBAN4B/C,EAAAA,mBAAgB2C,G,kECrB5CK,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOrG,GAAI,yKACkD,KAE3F,S,kECLImG,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOrG,GAAI,ssGAiBD,KAExC,QAAemG,EAAwBG,U,gJCbnCC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,IAAQM,QAAS,IAAQA,M","sources":["webpack:///./src/launchpad-button-v2/LaunchpadContext.ts","webpack:///./src/launchpad-button-v2/MenuGroup.tsx","webpack:///./src/search-launchpad/index.tsx","webpack:///./src/search-launchpad/host-context.css","webpack:///./src/search-launchpad/styles.shadow.css","webpack:///./src/search-launchpad/host-context.css?4d0b"],"sourcesContent":["import React from \"react\";\nimport type { MenuItemDataLink, MenuItemDataNormal } from \"./interfaces\";\n\nexport interface LaunchpadContextData {\n searching: boolean;\n loadingFavorites: boolean;\n readonly?: boolean;\n pushRecentVisit(item: MenuItemDataNormal): void;\n toggleStar(item: MenuItemDataNormal | MenuItemDataLink): void;\n isStarred(item: MenuItemDataNormal): boolean;\n}\n\nexport const LaunchpadsContext = React.createContext<LaunchpadContextData>(\n {} as LaunchpadContextData\n);\n\nexport const useLaunchpadContext = (): LaunchpadContextData =>\n React.useContext(LaunchpadsContext);\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { pick } from \"lodash\";\nimport classNames from \"classnames\";\nimport { WrappedIcon, WrappedLink } from \"./wrapped-bricks\";\nimport { useLaunchpadContext } from \"./LaunchpadContext\";\nimport type {\n MenuItemData,\n MenuItemDataNormal,\n SidebarMenuItemData,\n} from \"./interfaces\";\n\nexport interface MenuGroupProps {\n name: string;\n items: MenuItemData[];\n}\n\nexport function MenuGroup({ name, items }: MenuGroupProps) {\n return (\n <li className=\"menu-group\">\n <div className=\"menu-group-label\">{name}</div>\n <ul className=\"menu\">\n {items.map((item) =>\n item.type === \"dir\" ? (\n <MenuItemFolder\n key={`${item.type}-${item.id}`}\n name={item.name}\n items={item.items}\n />\n ) : (\n <MenuItem key={`${item.type}-${item.id}`} item={item} />\n )\n )}\n </ul>\n </li>\n );\n}\n\nexport interface MenuItemProps {\n item: MenuItemDataNormal;\n}\n\nfunction MenuItem({ item }: MenuItemProps) {\n const { loadingFavorites, readonly, pushRecentVisit, toggleStar, isStarred } =\n useLaunchpadContext();\n\n const starred = useMemo(() => isStarred(item), [isStarred, item]);\n\n const handleStarClick = useCallback(() => {\n toggleStar(item);\n }, [item, toggleStar]);\n\n const handleClick = useCallback(() => {\n pushRecentVisit(item);\n }, [item, pushRecentVisit]);\n\n return (\n <li\n className={classNames(\"menu-item\", {\n starred,\n \"can-star\": !loadingFavorites,\n })}\n >\n <WrappedLink\n onClick={handleClick}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n target: \"_blank\",\n })}\n >\n <WrappedIcon\n className=\"menu-icon\"\n lib=\"easyops\"\n icon=\"micro-app-center\"\n {...(item.menuIcon?.lib && item.menuIcon.icon\n ? (pick(item.menuIcon, [\n \"lib\",\n \"icon\",\n \"theme\",\n \"category\",\n \"prefix\",\n ]) as any)\n : null)}\n />\n <span className=\"menu-item-label\">{item.name}</span>\n </WrappedLink>\n {!readonly && (\n <WrappedIcon\n lib=\"fa\"\n prefix={starred ? \"fas\" : \"far\"}\n icon=\"star\"\n className=\"menu-item-star\"\n title={starred ? \"取消收藏\" : \"收藏\"}\n onClick={handleStarClick}\n />\n )}\n </li>\n );\n}\n\nexport interface SidebarMenuItemProps {\n item: SidebarMenuItemData;\n}\n\nexport function SidebarMenuItem({ item }: SidebarMenuItemProps) {\n const { readonly, pushRecentVisit, toggleStar } = useLaunchpadContext();\n\n const handleClick = useCallback(() => {\n if (item.type !== \"link\") {\n pushRecentVisit(item);\n }\n }, [item, pushRecentVisit]);\n\n const handleRemoveStar = useCallback(() => {\n toggleStar(item);\n }, [item, toggleStar]);\n\n return (\n <li className=\"sidebar-menu-item\">\n <WrappedLink\n onClick={handleClick}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n target: \"_blank\",\n })}\n >\n <WrappedIcon\n className={`sidebar-menu-icon`}\n lib=\"easyops\"\n icon=\"micro-app-center\"\n {...(item.menuIcon?.lib && item.menuIcon.icon\n ? (pick(item.menuIcon, [\n \"lib\",\n \"icon\",\n \"theme\",\n \"category\",\n \"prefix\",\n ]) as any)\n : null)}\n />\n <span className=\"menu-item-label\">{item.name}</span>\n </WrappedLink>\n {!readonly && (\n <WrappedIcon\n lib=\"fa\"\n icon=\"xmark\"\n className=\"menu-item-remove\"\n onClick={handleRemoveStar}\n />\n )}\n </li>\n );\n}\n\nexport interface MenuItemFolderProps {\n name: string;\n items: MenuItemDataNormal[];\n}\n\nfunction MenuItemFolder({ name, items }: MenuItemFolderProps) {\n const { searching } = useLaunchpadContext();\n const [expanded, setExpanded] = useState(false);\n const [searchingExpanded, setSearchingExpanded] = useState(false);\n\n const toggle = useCallback(() => {\n // Use separated expanded states for searching and non-searching.\n if (searching) {\n setSearchingExpanded((previous) => !previous);\n } else {\n setExpanded((previous) => !previous);\n }\n }, [searching]);\n\n useEffect(() => {\n // Each time when start searching, set it as expanded.\n setSearchingExpanded(true);\n }, [searching]);\n\n const actualExpanded = searching ? searchingExpanded : expanded;\n\n return (\n <li className=\"menu-item folder\">\n <WrappedLink onClick={toggle}>\n <WrappedIcon\n lib=\"fa\"\n prefix=\"far\"\n icon=\"folder-open\"\n className=\"menu-icon\"\n />\n <span className=\"menu-item-label\">{name}</span>\n <WrappedIcon\n lib=\"antd\"\n icon={actualExpanded ? \"up\" : \"down\"}\n className=\"menu-item-toggle\"\n />\n </WrappedLink>\n <ul className={classNames(\"sub-menu\", { expanded: actualExpanded })}>\n {items.map((item) => (\n <MenuItem key={`${item.type}-${item.id}`} item={item} />\n ))}\n </ul>\n </li>\n );\n}\n","import React, { useCallback, useRef, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport classNames from \"classnames\";\nimport { LaunchpadsContext } from \"../launchpad-button-v2/LaunchpadContext\";\nimport { useLaunchpadInfo } from \"../launchpad-button-v2/useLaunchpadInfo\";\nimport { MenuGroup } from \"../launchpad-button-v2/MenuGroup\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport \"./host-context.css\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst { defineElement, property } = createDecorators();\n\n/**\n * launchpad 搜索\n * @insider\n */\nexport\n@defineElement(\"eo-search-launchpad\", {\n styleTexts: [styleText],\n})\nclass EoSearchLaunchpad extends ReactNextElement {\n /**\n * 简约模式\n */\n @property({\n type: Boolean,\n })\n accessor readonly: boolean | undefined;\n\n render() {\n return <EoSearchLaunchpadComponent readonly={this.readonly} />;\n }\n}\n\ninterface EoSearchLaunchpadComponentProps {\n readonly?: boolean;\n}\n\nexport function EoSearchLaunchpadComponent({\n readonly,\n}: EoSearchLaunchpadComponentProps) {\n const searchInputRef = useRef<HTMLInputElement>(null);\n const handleClickSearchBox = useCallback(() => {\n searchInputRef.current?.focus();\n }, []);\n\n const [active, setActive] = useState(false);\n\n const {\n loading,\n q,\n setQ,\n menuGroups,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n } = useLaunchpadInfo(active);\n const searching = !!q;\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setQ(e.target.value);\n },\n [setQ]\n );\n\n const clearSearch = useCallback(() => {\n setQ(\"\");\n }, [setQ]);\n\n return (\n <LaunchpadsContext.Provider\n value={{\n searching,\n loadingFavorites,\n readonly,\n pushRecentVisit,\n toggleStar,\n isStarred,\n }}\n >\n <div className=\"container\">\n <div className=\"search-box\" onClick={handleClickSearchBox}>\n <WrappedIcon\n lib=\"fa\"\n icon=\"magnifying-glass\"\n className=\"search-icon\"\n />\n <input\n ref={searchInputRef}\n placeholder=\"搜索产品/微应用\"\n value={q}\n onChange={handleSearch}\n className=\"search-input\"\n onFocus={() => setActive(true)}\n onBlur={() => setActive(false)}\n />\n <WrappedIcon\n lib=\"antd\"\n theme=\"filled\"\n icon=\"close-circle\"\n className={classNames(\"search-clear\", { searching })}\n onClick={clearSearch}\n onMouseDown={(e) => e.preventDefault()}\n />\n </div>\n <div\n className={classNames(\"dropdown\", { \"dropdown-active\": active })}\n onMouseDown={(e) => e.preventDefault()}\n >\n <div className={classNames(\"dropdown-content\", { loading })}>\n <Loading loading={loading} />\n <ul className=\"menu-groups\">\n {menuGroups.map((group) => (\n <MenuGroup\n key={group.name}\n name={group.name}\n items={group.items}\n />\n ))}\n </ul>\n </div>\n </div>\n </div>\n </LaunchpadsContext.Provider>\n );\n}\n\nfunction Loading({ loading }: { loading: boolean }) {\n return (\n loading && (\n <div className=\"spinner\">\n <WrappedIcon lib=\"fa\" icon=\"spinner\" spinning />\n </div>\n )\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-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}`, \"\"]);\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:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;grid-gap:32px 8px;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:-webkit-min-content;height:-moz-min-content;height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left: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;\n\n options.insert = insertFn.bind(null, \"head\");\n \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"],"names":["LaunchpadsContext","React","useLaunchpadContext","MenuGroup","_ref","name","items","className","map","item","type","MenuItemFolder","key","concat","id","MenuItem","_ref2","_item$menuIcon","loadingFavorites","readonly","pushRecentVisit","toggleStar","isStarred","starred","useMemo","handleStarClick","useCallback","handleClick","classNames","WrappedLink","_extends","onClick","url","href","target","WrappedIcon","lib","icon","menuIcon","pick","prefix","title","SidebarMenuItem","_ref3","_item$menuIcon2","handleRemoveStar","_ref4","searching","expanded","setExpanded","useState","searchingExpanded","setSearchingExpanded","toggle","previous","useEffect","actualExpanded","_EoSearchLaunchpad","wrapBrick","defineElement","property","createDecorators","_A","WeakMap","EoSearchLaunchpad","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_readonly","_init_extra_readonly","_classPrivateFieldGet","v","_classPrivateFieldSet","render","EoSearchLaunchpadComponent","this","searchInputRef","useRef","handleClickSearchBox","_searchInputRef$curre","current","focus","active","setActive","loading","q","setQ","menuGroups","useLaunchpadInfo","handleSearch","e","value","clearSearch","Provider","ref","placeholder","onChange","onFocus","onBlur","theme","onMouseDown","preventDefault","Loading","group","spinning","_EoSearchLaunchpad2","c","_initClass","_applyDecs","styleTexts","styleText","Boolean","___CSS_LOADER_EXPORT___","push","module","toString","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals"],"sourceRoot":""}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! For license information please see eo-sidebar-menu-group.
|
|
2
|
-
(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[62,1369,3750,2052],{7144:(e,t,r)=>{"use strict";r.r(t),r.d(t,{EoSidebarMenuGroup:()=>m,EoSidebarMenuGroupComponent:()=>P});var n,o,i,a,s,l,u,c,p,d,m,f=r(918),h=r(6121),g=r(829),v=r(2740),b=r(8769),y=r.n(b),w=r(7122),E=r(6227),x=(r(6329),r(8619)),A=r(3352),k=r(3373),S=r.n(k),{defineElement:C,property:j}=(0,w.createDecorators)(),z=new WeakMap,O=new WeakMap,K=new WeakMap,N=new WeakMap,B=new WeakMap;class M extends E.ReactNextElement{constructor(){super(...arguments),(0,f.A)(this,z,i(this)),(0,f.A)(this,O,(a(this),s(this))),(0,f.A)(this,K,(l(this),u(this))),(0,f.A)(this,N,(c(this),p(this))),(0,f.A)(this,B,(d(this),e=>{this.collapsed=e}))}get collapsable(){return(0,g.A)(z,this)}set collapsable(e){(0,h.A)(z,this,e)}get collapsed(){return(0,g.A)(O,this)}set collapsed(e){(0,h.A)(O,this,e)}get selected(){return(0,g.A)(K,this)}set selected(e){(0,h.A)(K,this,e)}get menuCollapsed(){return(0,g.A)(N,this)}set menuCollapsed(e){(0,h.A)(N,this,e)}render(){return y().createElement(P,{collapsable:this.collapsable,selected:this.selected,collapsed:this.collapsed,menuCollapsed:this.menuCollapsed,onCollapseChange:(0,g.A)(B,this)})}}function P(e){var{collapsable:t=!1,collapsed:r,menuCollapsed:n,onCollapseChange:o}=e,[i]=(0,A.mK)(n),a=(0,b.useRef)(null),s=(0,b.useCallback)((()=>{!n&&(null==o||o(!r))}),[n,o,r]);return(0,b.useEffect)((()=>{var e=a.current;return null==e||e.addEventListener("click",s),()=>{null==e||e.removeEventListener("click",s)}}),[s]),y().createElement("div",{className:S()("menu-group",{"menu-group-collapsed":!!n||r})},y().createElement("div",{className:"menu-group-title",ref:a},y().createElement("span",{className:"menu-group-title-icon-container"},y().createElement("span",{className:"menu-group-title-icon"})),y().createElement("div",{className:"menu-group-title-text"},y().createElement("slot",{name:"title"})),t&&y().createElement("span",{className:"menu-group-arrow"})),y().createElement("div",{className:"menu-group-list"},y().createElement("div",{className:"menu-group-list-inner"},y().createElement("slot",{ref:i}))))}n=M,({e:[i,a,s,l,u,c,p,d],c:[m,o]}=(0,v.A)(n,[C("eo-sidebar-menu-group",{styleTexts:[x.A]})],[[j({type:Boolean}),1,"collapsable"],[j({type:Boolean}),1,"collapsed"],[j({type:Boolean}),1,"selected"],[j({type:Boolean}),1,"menuCollapsed"]],0,void 0,E.ReactNextElement)),o()},3352:(e,t,r)=>{"use strict";r.d(t,{Bb:()=>d,VI:()=>h,Wb:()=>p,i2:()=>g,k_:()=>m,mK:()=>c,wZ:()=>C,zD:()=>f});var n=r(9575),o=r(8769),i=r.n(o),a=r(9924),s=r(6227),l=new Set(["EO-SIDEBAR-MENU-ITEM","EO-SIDEBAR-MENU-GROUP","EO-SIDEBAR-MENU-SUBMENU"]),u=e=>l.has(e.tagName);function c(e){var t=(0,o.useRef)(null),r=(0,o.useCallback)((()=>{var r;null===(r=t.current)||void 0===r||r.assignedElements().forEach((t=>{u(t)&&(t.menuCollapsed=e)}))}),[e]);return(0,o.useEffect)((()=>{r()}),[e,r]),(0,o.useEffect)((()=>{var e=t.current,n=()=>{r()};return null==e||e.addEventListener("slotchange",n),()=>{null==e||e.removeEventListener("slotchange",n)}}),[r]),[t]}var p="side-bar-has-been-used",d="side-bar-expand-state",m="side-bar-resize-width",f=function(e){return e.Collapsed="collapsed",e.Hovered="hovered",e.Expanded="expanded",e}({}),h=parseInt((0,a.getCssPropertyValue)("--side-bar-width",document.body),10)||220,g=parseInt((0,a.getCssPropertyValue)("--side-bar-collapsed-width",document.body),10)||60,v=(0,o.createContext)({selectedKeys:[],openedKeys:[],matchedKeys:[]}),b=(0,s.wrapBrick)("eo-sidebar-menu"),y=(0,s.wrapBrick)("eo-sidebar-menu-item"),w=(0,s.wrapBrick)("eo-sidebar-menu-group"),E=(0,s.wrapBrick)("eo-sidebar-menu-submenu");function x(e){var{to:t,href:r,target:n,icon:a,text:s,id:l,inSubmenu:u}=e,{selectedKeys:c}=(0,o.useContext)(v);return i().createElement(y,{url:t,href:r,target:n,icon:a,inSubmenu:u,selected:c.includes(l)},s)}function A(e){var{title:t,items:r,id:a,top:s,inSubmenu:l}=e,{matchedKeys:u}=(0,o.useContext)(v),c=a&&u.includes(a);return(null==r?void 0:r.length)>0?i().createElement(w,{selected:!!c,collapsable:!s},i().createElement("span",{slot:"title"},t),e.items.map((e=>i().createElement(S,(0,n.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:l}))))):null}function k(e){var{title:t,icon:r,items:a,id:s}=e,{openedKeys:l,matchedKeys:u}=(0,o.useContext)(v),c=s&&u.includes(s);return(null==a?void 0:a.length)>0?i().createElement(E,{icon:r,collapsed:!l.includes(s),selected:!!c},i().createElement("span",{slot:"title"},t),e.items.map((e=>i().createElement(S,(0,n.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:!0}))))):null}function S(e){return"subMenu"===e.type?i().createElement(k,e):"group"===e.type?i().createElement(A,e):i().createElement(x,e)}function C(e){var t,{menu:r,expandedState:o,selectedKeys:a,openedKeys:s,matchedKeys:l}=e;return i().createElement(v.Provider,{value:{selectedKeys:a||[],openedKeys:s||[],matchedKeys:l||[]}},i().createElement(b,{menuCollapsed:o===f.Collapsed},null==r||null===(t=r.menuItems)||void 0===t?void 0:t.map((e=>i().createElement(S,(0,n.A)({key:e.key},e,{id:e.key,top:!0}))))))}},8619:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(6758),o=r.n(n),i=r(935),a=r.n(i)()(o());a.push([e.id,':host{display:block;--menu-item-icon-size:20px}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.menu-group-title{position:relative;display:flex;align-items:center;min-height:36px;padding:8px 12px;line-height:20px;color:var(--left-secondary-text-color);border-radius:var(--larger-border-radius);transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-title-icon-container{flex-shrink:0;margin-right:14px;display:flex;align-items:center;justify-content:center;width:var(--menu-item-icon-size);height:var(--menu-item-icon-size);color:var(--left-sidebar-item-collapsed-icon-color);font-size:var(--menu-item-icon-size);transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-title-icon{width:1em;height:1em;border-bottom:2px solid var(--left-sidebar-group-border-color)}.menu-group-title-text{flex:1;font-size:12px;overflow:hidden;white-space:nowrap;margin-right:12px}.menu-group-list slot::slotted(*){margin-top:2px}.menu-group-arrow{position:absolute;top:50%;right:12px;width:10px;transform:translateY(-2px);transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.menu-group-arrow::before,\n.menu-group-arrow::after{content:"";position:absolute;width:6px;height:1.5px;background-color:currentColor;border-radius:2px;transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.menu-group-arrow::before{transform:rotate(45deg) translateX(2.5px)}.menu-group-arrow::after{transform:rotate(-45deg) translateX(-2.5px)}.menu-group-collapsed .menu-group-arrow{transform:translateY(-50%)}.menu-group-collapsed .menu-group-arrow::before{transform:rotate(-45deg) translateX(2.5px)}.menu-group-collapsed .menu-group-arrow::after{transform:rotate(45deg) translateX(-2.5px)}.menu-group-list{display:grid;grid-template-rows:1fr;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-list-inner{overflow:hidden}:host([menu-collapsed]) .menu-group-title{padding:0px calc(50% - var(--menu-item-icon-size) / 2)}:host(:not([menu-collapsed])) .menu-group-title-icon-container{width:0;margin-right:0;opacity:0}:host([menu-collapsed]) .menu-group-title-text{opacity:0}:host([menu-collapsed]) .menu-group-arrow{opacity:0}:host(:not([menu-collapsed])) .menu-group-title-text{white-space:pre-wrap;display:-webkit-inline-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;text-overflow:ellipsis;color:#7f8ba6}:host([collapsable]) .menu-group-collapsed .menu-group-list{grid-template-rows:0fr;opacity:0}',""]);const s=a.toString()},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r="",n=void 0!==t[5];return t[4]&&(r+="@supports (".concat(t[4],") {")),t[2]&&(r+="@media ".concat(t[2]," {")),n&&(r+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),r+=e(t),n&&(r+="}"),t[2]&&(r+="}"),t[4]&&(r+="}"),r})).join("")},t.i=function(e,r,n,o,i){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(n)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var u=0;u<e.length;u++){var c=[].concat(e[u]);n&&a[c[0]]||(void 0!==i&&(void 0===c[5]||(c[1]="@layer".concat(c[5].length>0?" ".concat(c[5]):""," {").concat(c[1],"}")),c[5]=i),r&&(c[2]?(c[1]="@media ".concat(c[2]," {").concat(c[1],"}"),c[2]=r):c[2]=r),o&&(c[4]?(c[1]="@supports (".concat(c[4],") {").concat(c[1],"}"),c[4]=o):c[4]="".concat(o)),t.push(c))}},t}},6758:e=>{"use strict";e.exports=function(e){return e[1]}},3373:(e,t)=>{var r;!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var r=arguments[t];r&&(e=a(e,i(r)))}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 r in e)n.call(e,r)&&e[r]&&(t=a(t,r));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(r=function(){return o}.apply(t,[]))||(e.exports=r)}()},2740:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(7545),o=r(6902);function i(e,t,r){"symbol"==(0,n.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:r?r+" "+t:t})}catch(e){}return e}var a=r(1369);function s(e,t,r,s,l,u){var c,p,d,m,f,h,g,v=Symbol.metadata||Symbol.for("Symbol.metadata"),b=Object.defineProperty,y=Object.create,w=[y(null),y(null)],E=t.length;function x(t,r,n){return function(o,i){r&&(i=o,o=e);for(var a=0;a<t.length;a++)i=t[a].apply(o,n?[i]:[]);return n?i:o}}function A(e,t,r,n){if("function"!=typeof e&&(n||void 0!==e))throw new TypeError(t+" must "+(r||"be")+" a function"+(n?"":" or undefined"));return e}function k(e,t,r,o,a,s,l,u,d,m,f){function h(e){if(!f(e))throw new TypeError("Attempted to access private element on non-instance")}var g=[].concat(t[0]),v=t[3],y=!l,E=1===a,k=3===a,S=4===a,C=2===a;function j(t,r,n){return function(o,i){return r&&(i=o,o=e),n&&n(o),z[t].call(o,i)}}if(!y){var z={},O=[],K=k?"get":S||E?"set":"value";if(d?(m||E?z={get:i((function(){return v(this)}),o,"get"),set:function(e){t[4](this,e)}}:z[K]=v,m||i(z[K],o,C?"":K)):m||(z=Object.getOwnPropertyDescriptor(e,o)),!m&&!d){if((p=w[+u][o])&&7!=(p^a))throw Error("Decorating two elements with the same name ("+z[K].name+") is not supported yet");w[+u][o]=a<3?1:a}}for(var N=e,B=g.length-1;B>=0;B-=r?2:1){var M=A(g[B],"A decorator","be",!0),P=r?g[B-1]:void 0,I={},T={kind:["field","accessor","method","getter","setter","class"][a],name:o,metadata:c,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");A(t,"An initializer","be",!0),s.push(t)}.bind(null,I)};if(y)p=M.call(P,N,T),I.v=1,A(p,"class decorators","return")&&(N=p);else if(T.static=u,T.private=d,p=T.access={has:d?f.bind():function(e){return o in e}},S||(p.get=d?C?function(e){return h(e),z.value}:j("get",0,h):function(e){return e[o]}),C||k||(p.set=d?j("set",0,h):function(e,t){e[o]=t}),N=M.call(P,E?{get:z.get,set:z.set}:z[K],T),I.v=1,E){if("object"==(0,n.A)(N)&&N)(p=A(N.get,"accessor.get"))&&(z.get=p),(p=A(N.set,"accessor.set"))&&(z.set=p),(p=A(N.init,"accessor.init"))&&O.unshift(p);else if(void 0!==N)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else A(N,(m?"field":"method")+" decorators","return")&&(m?O.unshift(N):z[K]=N)}return a<2&&l.push(x(O,u,1),x(s,u,0)),m||y||(d?E?l.splice(-1,0,j("get",u),j("set",u)):l.push(C?z[K]:A.call.bind(z[K])):b(e,o,z)),N}function S(e){return b(e,v,{configurable:!0,enumerable:!0,value:c})}return void 0!==u&&(c=u[v]),c=y(null==c?null:c),f=[],h=function(e){e&&f.push(x(e))},g=function(t,n){for(var i=0;i<r.length;i++){var s=r[i],u=s[1],c=7&u;if((8&u)==t&&!c==n){var p=s[2],h=!!s[3],g=16&u;k(t?e:e.prototype,s,g,h?"#"+p:(0,a.A)(p),c,c<2?[]:t?m=m||[]:d=d||[],f,!!t,h,n,t&&h?function(t){return(0,o.A)(t)===e}:l)}}},g(8,0),g(0,0),g(8,1),g(0,1),h(d),h(m),p=f,E||S(e),{e:p,get c(){var r=[];return E&&[S(e=k(e,[t],s,e.name,5,r)),x(r,1)]}}}},2559:(e,t,r)=>{"use strict";function n(e,t,r){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:r;throw new TypeError("Private element is not present on this object")}r.d(t,{A:()=>n})},6902:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,n.A)(e):"null"));return e}},2016:(e,t,r)=>{"use strict";function n(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}r.d(t,{A:()=>n})},829:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(2559);function o(e,t){return e.get((0,n.A)(e,t))}},918:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(2016);function o(e,t,r){(0,n.A)(e,t),t.set(e,r)}},6121:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(2559);function o(e,t,r){return e.set((0,n.A)(e,t),r),r}},9575:(e,t,r)=>{"use strict";function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},n.apply(this,arguments)}r.d(t,{A:()=>n})},1369:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7545);function o(e){var t=function(e,t){if("object"!=(0,n.A)(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!=(0,n.A)(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,n.A)(t)?t:t+""}},7545:(e,t,r)=>{"use strict";function n(e){return n="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},n(e)}r.d(t,{A:()=>n})}}]);
|
|
3
|
-
//# sourceMappingURL=eo-sidebar-menu-group.
|
|
1
|
+
/*! For license information please see eo-sidebar-menu-group.39f5595a.js.LICENSE.txt */
|
|
2
|
+
(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[62,1369,3750,2052],{7144:(e,t,r)=>{"use strict";r.r(t),r.d(t,{EoSidebarMenuGroup:()=>m,EoSidebarMenuGroupComponent:()=>P});var n,o,i,a,s,l,u,c,p,d,m,f=r(918),h=r(6121),g=r(829),v=r(2740),b=r(8769),y=r.n(b),w=r(3741),E=r(6430),x=(r(6329),r(8619)),A=r(3352),k=r(3373),S=r.n(k),{defineElement:C,property:j}=(0,w.createDecorators)(),z=new WeakMap,O=new WeakMap,K=new WeakMap,N=new WeakMap,B=new WeakMap;class M extends E.ReactNextElement{constructor(){super(...arguments),(0,f.A)(this,z,i(this)),(0,f.A)(this,O,(a(this),s(this))),(0,f.A)(this,K,(l(this),u(this))),(0,f.A)(this,N,(c(this),p(this))),(0,f.A)(this,B,(d(this),e=>{this.collapsed=e}))}get collapsable(){return(0,g.A)(z,this)}set collapsable(e){(0,h.A)(z,this,e)}get collapsed(){return(0,g.A)(O,this)}set collapsed(e){(0,h.A)(O,this,e)}get selected(){return(0,g.A)(K,this)}set selected(e){(0,h.A)(K,this,e)}get menuCollapsed(){return(0,g.A)(N,this)}set menuCollapsed(e){(0,h.A)(N,this,e)}render(){return y().createElement(P,{collapsable:this.collapsable,selected:this.selected,collapsed:this.collapsed,menuCollapsed:this.menuCollapsed,onCollapseChange:(0,g.A)(B,this)})}}function P(e){var{collapsable:t=!1,collapsed:r,menuCollapsed:n,onCollapseChange:o}=e,[i]=(0,A.mK)(n),a=(0,b.useRef)(null),s=(0,b.useCallback)((()=>{!n&&(null==o||o(!r))}),[n,o,r]);return(0,b.useEffect)((()=>{var e=a.current;return null==e||e.addEventListener("click",s),()=>{null==e||e.removeEventListener("click",s)}}),[s]),y().createElement("div",{className:S()("menu-group",{"menu-group-collapsed":!!n||r})},y().createElement("div",{className:"menu-group-title",ref:a},y().createElement("span",{className:"menu-group-title-icon-container"},y().createElement("span",{className:"menu-group-title-icon"})),y().createElement("div",{className:"menu-group-title-text"},y().createElement("slot",{name:"title"})),t&&y().createElement("span",{className:"menu-group-arrow"})),y().createElement("div",{className:"menu-group-list"},y().createElement("div",{className:"menu-group-list-inner"},y().createElement("slot",{ref:i}))))}n=M,({e:[i,a,s,l,u,c,p,d],c:[m,o]}=(0,v.A)(n,[C("eo-sidebar-menu-group",{styleTexts:[x.A]})],[[j({type:Boolean}),1,"collapsable"],[j({type:Boolean}),1,"collapsed"],[j({type:Boolean}),1,"selected"],[j({type:Boolean}),1,"menuCollapsed"]],0,void 0,E.ReactNextElement)),o()},3352:(e,t,r)=>{"use strict";r.d(t,{Bb:()=>d,VI:()=>h,Wb:()=>p,i2:()=>g,k_:()=>m,mK:()=>c,wZ:()=>C,zD:()=>f});var n=r(9575),o=r(8769),i=r.n(o),a=r(4466),s=r(6430),l=new Set(["EO-SIDEBAR-MENU-ITEM","EO-SIDEBAR-MENU-GROUP","EO-SIDEBAR-MENU-SUBMENU"]),u=e=>l.has(e.tagName);function c(e){var t=(0,o.useRef)(null),r=(0,o.useCallback)((()=>{var r;null===(r=t.current)||void 0===r||r.assignedElements().forEach((t=>{u(t)&&(t.menuCollapsed=e)}))}),[e]);return(0,o.useEffect)((()=>{r()}),[e,r]),(0,o.useEffect)((()=>{var e=t.current,n=()=>{r()};return null==e||e.addEventListener("slotchange",n),()=>{null==e||e.removeEventListener("slotchange",n)}}),[r]),[t]}var p="side-bar-has-been-used",d="side-bar-expand-state",m="side-bar-resize-width",f=function(e){return e.Collapsed="collapsed",e.Hovered="hovered",e.Expanded="expanded",e}({}),h=parseInt((0,a.getCssPropertyValue)("--side-bar-width",document.body),10)||220,g=parseInt((0,a.getCssPropertyValue)("--side-bar-collapsed-width",document.body),10)||60,v=(0,o.createContext)({selectedKeys:[],openedKeys:[],matchedKeys:[]}),b=(0,s.wrapBrick)("eo-sidebar-menu"),y=(0,s.wrapBrick)("eo-sidebar-menu-item"),w=(0,s.wrapBrick)("eo-sidebar-menu-group"),E=(0,s.wrapBrick)("eo-sidebar-menu-submenu");function x(e){var{to:t,href:r,target:n,icon:a,text:s,id:l,inSubmenu:u}=e,{selectedKeys:c}=(0,o.useContext)(v);return i().createElement(y,{url:t,href:r,target:n,icon:a,inSubmenu:u,selected:c.includes(l)},s)}function A(e){var{title:t,items:r,id:a,top:s,inSubmenu:l}=e,{matchedKeys:u}=(0,o.useContext)(v),c=a&&u.includes(a);return(null==r?void 0:r.length)>0?i().createElement(w,{selected:!!c,collapsable:!s},i().createElement("span",{slot:"title"},t),e.items.map((e=>i().createElement(S,(0,n.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:l}))))):null}function k(e){var{title:t,icon:r,items:a,id:s}=e,{openedKeys:l,matchedKeys:u}=(0,o.useContext)(v),c=s&&u.includes(s);return(null==a?void 0:a.length)>0?i().createElement(E,{icon:r,collapsed:!l.includes(s),selected:!!c},i().createElement("span",{slot:"title"},t),e.items.map((e=>i().createElement(S,(0,n.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:!0}))))):null}function S(e){return"subMenu"===e.type?i().createElement(k,e):"group"===e.type?i().createElement(A,e):i().createElement(x,e)}function C(e){var t,{menu:r,expandedState:o,selectedKeys:a,openedKeys:s,matchedKeys:l}=e;return i().createElement(v.Provider,{value:{selectedKeys:a||[],openedKeys:s||[],matchedKeys:l||[]}},i().createElement(b,{menuCollapsed:o===f.Collapsed},null==r||null===(t=r.menuItems)||void 0===t?void 0:t.map((e=>i().createElement(S,(0,n.A)({key:e.key},e,{id:e.key,top:!0}))))))}},8619:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(6758),o=r.n(n),i=r(935),a=r.n(i)()(o());a.push([e.id,':host{display:block;--menu-item-icon-size:20px}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.menu-group-title{position:relative;display:flex;align-items:center;min-height:36px;padding:8px 12px;line-height:20px;color:var(--left-secondary-text-color);border-radius:var(--larger-border-radius);transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-title-icon-container{flex-shrink:0;margin-right:14px;display:flex;align-items:center;justify-content:center;width:var(--menu-item-icon-size);height:var(--menu-item-icon-size);color:var(--left-sidebar-item-collapsed-icon-color);font-size:var(--menu-item-icon-size);transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-title-icon{width:1em;height:1em;border-bottom:2px solid var(--left-sidebar-group-border-color)}.menu-group-title-text{flex:1;font-size:12px;overflow:hidden;white-space:nowrap;margin-right:12px}.menu-group-list slot::slotted(*){margin-top:2px}.menu-group-arrow{position:absolute;top:50%;right:12px;width:10px;transform:translateY(-2px);transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.menu-group-arrow::before,\n.menu-group-arrow::after{content:"";position:absolute;width:6px;height:1.5px;background-color:currentColor;border-radius:2px;transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.menu-group-arrow::before{transform:rotate(45deg) translateX(2.5px)}.menu-group-arrow::after{transform:rotate(-45deg) translateX(-2.5px)}.menu-group-collapsed .menu-group-arrow{transform:translateY(-50%)}.menu-group-collapsed .menu-group-arrow::before{transform:rotate(-45deg) translateX(2.5px)}.menu-group-collapsed .menu-group-arrow::after{transform:rotate(45deg) translateX(-2.5px)}.menu-group-list{display:grid;grid-template-rows:1fr;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-list-inner{overflow:hidden}:host([menu-collapsed]) .menu-group-title{padding:0px calc(50% - var(--menu-item-icon-size) / 2)}:host(:not([menu-collapsed])) .menu-group-title-icon-container{width:0;margin-right:0;opacity:0}:host([menu-collapsed]) .menu-group-title-text{opacity:0}:host([menu-collapsed]) .menu-group-arrow{opacity:0}:host(:not([menu-collapsed])) .menu-group-title-text{white-space:pre-wrap;display:-webkit-inline-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;text-overflow:ellipsis;color:#7f8ba6}:host([collapsable]) .menu-group-collapsed .menu-group-list{grid-template-rows:0fr;opacity:0}',""]);const s=a.toString()},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r="",n=void 0!==t[5];return t[4]&&(r+="@supports (".concat(t[4],") {")),t[2]&&(r+="@media ".concat(t[2]," {")),n&&(r+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),r+=e(t),n&&(r+="}"),t[2]&&(r+="}"),t[4]&&(r+="}"),r})).join("")},t.i=function(e,r,n,o,i){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(n)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var u=0;u<e.length;u++){var c=[].concat(e[u]);n&&a[c[0]]||(void 0!==i&&(void 0===c[5]||(c[1]="@layer".concat(c[5].length>0?" ".concat(c[5]):""," {").concat(c[1],"}")),c[5]=i),r&&(c[2]?(c[1]="@media ".concat(c[2]," {").concat(c[1],"}"),c[2]=r):c[2]=r),o&&(c[4]?(c[1]="@supports (".concat(c[4],") {").concat(c[1],"}"),c[4]=o):c[4]="".concat(o)),t.push(c))}},t}},6758:e=>{"use strict";e.exports=function(e){return e[1]}},3373:(e,t)=>{var r;!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var r=arguments[t];r&&(e=a(e,i(r)))}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 r in e)n.call(e,r)&&e[r]&&(t=a(t,r));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(r=function(){return o}.apply(t,[]))||(e.exports=r)}()},2740:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(7545),o=r(6902);function i(e,t,r){"symbol"==(0,n.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:r?r+" "+t:t})}catch(e){}return e}var a=r(1369);function s(e,t,r,s,l,u){var c,p,d,m,f,h,g,v=Symbol.metadata||Symbol.for("Symbol.metadata"),b=Object.defineProperty,y=Object.create,w=[y(null),y(null)],E=t.length;function x(t,r,n){return function(o,i){r&&(i=o,o=e);for(var a=0;a<t.length;a++)i=t[a].apply(o,n?[i]:[]);return n?i:o}}function A(e,t,r,n){if("function"!=typeof e&&(n||void 0!==e))throw new TypeError(t+" must "+(r||"be")+" a function"+(n?"":" or undefined"));return e}function k(e,t,r,o,a,s,l,u,d,m,f){function h(e){if(!f(e))throw new TypeError("Attempted to access private element on non-instance")}var g=[].concat(t[0]),v=t[3],y=!l,E=1===a,k=3===a,S=4===a,C=2===a;function j(t,r,n){return function(o,i){return r&&(i=o,o=e),n&&n(o),z[t].call(o,i)}}if(!y){var z={},O=[],K=k?"get":S||E?"set":"value";if(d?(m||E?z={get:i((function(){return v(this)}),o,"get"),set:function(e){t[4](this,e)}}:z[K]=v,m||i(z[K],o,C?"":K)):m||(z=Object.getOwnPropertyDescriptor(e,o)),!m&&!d){if((p=w[+u][o])&&7!=(p^a))throw Error("Decorating two elements with the same name ("+z[K].name+") is not supported yet");w[+u][o]=a<3?1:a}}for(var N=e,B=g.length-1;B>=0;B-=r?2:1){var M=A(g[B],"A decorator","be",!0),P=r?g[B-1]:void 0,I={},T={kind:["field","accessor","method","getter","setter","class"][a],name:o,metadata:c,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");A(t,"An initializer","be",!0),s.push(t)}.bind(null,I)};if(y)p=M.call(P,N,T),I.v=1,A(p,"class decorators","return")&&(N=p);else if(T.static=u,T.private=d,p=T.access={has:d?f.bind():function(e){return o in e}},S||(p.get=d?C?function(e){return h(e),z.value}:j("get",0,h):function(e){return e[o]}),C||k||(p.set=d?j("set",0,h):function(e,t){e[o]=t}),N=M.call(P,E?{get:z.get,set:z.set}:z[K],T),I.v=1,E){if("object"==(0,n.A)(N)&&N)(p=A(N.get,"accessor.get"))&&(z.get=p),(p=A(N.set,"accessor.set"))&&(z.set=p),(p=A(N.init,"accessor.init"))&&O.unshift(p);else if(void 0!==N)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else A(N,(m?"field":"method")+" decorators","return")&&(m?O.unshift(N):z[K]=N)}return a<2&&l.push(x(O,u,1),x(s,u,0)),m||y||(d?E?l.splice(-1,0,j("get",u),j("set",u)):l.push(C?z[K]:A.call.bind(z[K])):b(e,o,z)),N}function S(e){return b(e,v,{configurable:!0,enumerable:!0,value:c})}return void 0!==u&&(c=u[v]),c=y(null==c?null:c),f=[],h=function(e){e&&f.push(x(e))},g=function(t,n){for(var i=0;i<r.length;i++){var s=r[i],u=s[1],c=7&u;if((8&u)==t&&!c==n){var p=s[2],h=!!s[3],g=16&u;k(t?e:e.prototype,s,g,h?"#"+p:(0,a.A)(p),c,c<2?[]:t?m=m||[]:d=d||[],f,!!t,h,n,t&&h?function(t){return(0,o.A)(t)===e}:l)}}},g(8,0),g(0,0),g(8,1),g(0,1),h(d),h(m),p=f,E||S(e),{e:p,get c(){var r=[];return E&&[S(e=k(e,[t],s,e.name,5,r)),x(r,1)]}}}},2559:(e,t,r)=>{"use strict";function n(e,t,r){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:r;throw new TypeError("Private element is not present on this object")}r.d(t,{A:()=>n})},6902:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,n.A)(e):"null"));return e}},2016:(e,t,r)=>{"use strict";function n(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}r.d(t,{A:()=>n})},829:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(2559);function o(e,t){return e.get((0,n.A)(e,t))}},918:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(2016);function o(e,t,r){(0,n.A)(e,t),t.set(e,r)}},6121:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(2559);function o(e,t,r){return e.set((0,n.A)(e,t),r),r}},9575:(e,t,r)=>{"use strict";function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},n.apply(this,arguments)}r.d(t,{A:()=>n})},1369:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7545);function o(e){var t=function(e,t){if("object"!=(0,n.A)(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!=(0,n.A)(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,n.A)(t)?t:t+""}},7545:(e,t,r)=>{"use strict";function n(e){return n="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},n(e)}r.d(t,{A:()=>n})}}]);
|
|
3
|
+
//# sourceMappingURL=eo-sidebar-menu-group.39f5595a.js.map
|