@next-bricks/nav 1.10.1 → 1.10.4

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.
Files changed (91) hide show
  1. package/dist/bricks.json +7 -7
  2. package/dist/chunks/2252.c3dd7b78.js +3 -0
  3. package/dist/chunks/2252.c3dd7b78.js.map +1 -0
  4. package/dist/chunks/4130.e6afe507.js +2 -0
  5. package/dist/chunks/4130.e6afe507.js.map +1 -0
  6. package/dist/chunks/4204.598a3655.js +3 -0
  7. package/dist/chunks/{4204.9cb50511.js.map → 4204.598a3655.js.map} +1 -1
  8. package/dist/chunks/4904.5dfde72c.js +3 -0
  9. package/dist/chunks/{4904.66c677e1.js.map → 4904.5dfde72c.js.map} +1 -1
  10. package/dist/chunks/5669.7740bce7.js +2 -0
  11. package/dist/chunks/5669.7740bce7.js.map +1 -0
  12. package/dist/chunks/8050.20120cde.js +2 -0
  13. package/dist/chunks/8050.20120cde.js.map +1 -0
  14. package/dist/chunks/875.37a51b37.js +2 -0
  15. package/dist/chunks/875.37a51b37.js.map +1 -0
  16. package/dist/chunks/9155.ccd49444.js +3 -0
  17. package/dist/chunks/{9155.c860cfb6.js.map → 9155.ccd49444.js.map} +1 -1
  18. package/dist/chunks/920.cc397fb7.js +2 -0
  19. package/dist/chunks/{920.eda5db5b.js.map → 920.cc397fb7.js.map} +1 -1
  20. package/dist/chunks/easyops-navbar-alerts.306d30d1.js +2 -0
  21. package/dist/chunks/{easyops-navbar-alerts.e9761ecb.js.map → easyops-navbar-alerts.306d30d1.js.map} +1 -1
  22. package/dist/chunks/{eo-directory-tree.ab46e6b2.js → eo-directory-tree.c040c65a.js} +2 -2
  23. package/dist/chunks/{eo-directory-tree.ab46e6b2.js.map → eo-directory-tree.c040c65a.js.map} +1 -1
  24. package/dist/chunks/{eo-directory.ec3ff4bc.js → eo-directory.83d59198.js} +3 -3
  25. package/dist/chunks/{eo-directory.ec3ff4bc.js.map → eo-directory.83d59198.js.map} +1 -1
  26. package/dist/chunks/eo-frame-breadcrumb.e67c04ad.js +2 -0
  27. package/dist/chunks/{eo-frame-breadcrumb.e9db68b7.js.map → eo-frame-breadcrumb.e67c04ad.js.map} +1 -1
  28. package/dist/chunks/eo-launchpad-button-v2.5084e989.js +2 -0
  29. package/dist/chunks/{eo-launchpad-button-v2.772a1021.js.map → eo-launchpad-button-v2.5084e989.js.map} +1 -1
  30. package/dist/chunks/eo-nav-menu.c181cb6c.js +3 -0
  31. package/dist/chunks/{eo-nav-menu.85627937.js.map → eo-nav-menu.c181cb6c.js.map} +1 -1
  32. package/dist/chunks/eo-sidebar-menu-group.88649be4.js +3 -0
  33. package/dist/chunks/{eo-sidebar-menu-group.846e8b68.js.map → eo-sidebar-menu-group.88649be4.js.map} +1 -1
  34. package/dist/chunks/eo-sidebar-menu-submenu.f36c2d41.js +3 -0
  35. package/dist/chunks/{eo-sidebar-menu-submenu.1794ff61.js.map → eo-sidebar-menu-submenu.f36c2d41.js.map} +1 -1
  36. package/dist/chunks/eo-sidebar-menu.214b7ec3.js +2 -0
  37. package/dist/chunks/{eo-sidebar-menu.4bd28e48.js.map → eo-sidebar-menu.214b7ec3.js.map} +1 -1
  38. package/dist/chunks/eo-sidebar-sub-menu.2b0ab8c4.js +3 -0
  39. package/dist/chunks/{eo-sidebar-sub-menu.b8edf54e.js.map → eo-sidebar-sub-menu.2b0ab8c4.js.map} +1 -1
  40. package/dist/chunks/eo-sidebar.54157ae6.js +3 -0
  41. package/dist/chunks/{eo-sidebar.45f62d98.js.map → eo-sidebar.54157ae6.js.map} +1 -1
  42. package/dist/chunks/launchpad-config.f652114f.js +3 -0
  43. package/dist/chunks/{launchpad-config.e9ae9800.js.map → launchpad-config.f652114f.js.map} +1 -1
  44. package/dist/chunks/main.6573d3cc.js +2 -0
  45. package/dist/chunks/main.6573d3cc.js.map +1 -0
  46. package/dist/chunks/nav-logo.4fa19422.js +2 -0
  47. package/dist/chunks/{nav-logo.379c6926.js.map → nav-logo.4fa19422.js.map} +1 -1
  48. package/dist/index.a66fdc67.js +2 -0
  49. package/dist/index.a66fdc67.js.map +1 -0
  50. package/dist/manifest.json +10 -10
  51. package/package.json +2 -2
  52. package/dist/chunks/1972.6375973e.js +0 -2
  53. package/dist/chunks/1972.6375973e.js.map +0 -1
  54. package/dist/chunks/2252.58dd2b4f.js +0 -3
  55. package/dist/chunks/2252.58dd2b4f.js.map +0 -1
  56. package/dist/chunks/3208.199af3be.js +0 -2
  57. package/dist/chunks/3208.199af3be.js.map +0 -1
  58. package/dist/chunks/4130.5ccf8efd.js +0 -2
  59. package/dist/chunks/4130.5ccf8efd.js.map +0 -1
  60. package/dist/chunks/4204.9cb50511.js +0 -3
  61. package/dist/chunks/4904.66c677e1.js +0 -3
  62. package/dist/chunks/9155.c860cfb6.js +0 -3
  63. package/dist/chunks/920.eda5db5b.js +0 -2
  64. package/dist/chunks/9591.767273db.js +0 -2
  65. package/dist/chunks/9591.767273db.js.map +0 -1
  66. package/dist/chunks/easyops-navbar-alerts.e9761ecb.js +0 -2
  67. package/dist/chunks/eo-frame-breadcrumb.e9db68b7.js +0 -2
  68. package/dist/chunks/eo-launchpad-button-v2.772a1021.js +0 -2
  69. package/dist/chunks/eo-nav-menu.85627937.js +0 -3
  70. package/dist/chunks/eo-sidebar-menu-group.846e8b68.js +0 -3
  71. package/dist/chunks/eo-sidebar-menu-submenu.1794ff61.js +0 -3
  72. package/dist/chunks/eo-sidebar-menu.4bd28e48.js +0 -2
  73. package/dist/chunks/eo-sidebar-sub-menu.b8edf54e.js +0 -3
  74. package/dist/chunks/eo-sidebar.45f62d98.js +0 -3
  75. package/dist/chunks/launchpad-config.e9ae9800.js +0 -3
  76. package/dist/chunks/main.a1dc92c5.js +0 -2
  77. package/dist/chunks/main.a1dc92c5.js.map +0 -1
  78. package/dist/chunks/nav-logo.379c6926.js +0 -2
  79. package/dist/index.efec9255.js +0 -2
  80. package/dist/index.efec9255.js.map +0 -1
  81. /package/dist/chunks/{2252.58dd2b4f.js.LICENSE.txt → 2252.c3dd7b78.js.LICENSE.txt} +0 -0
  82. /package/dist/chunks/{4204.9cb50511.js.LICENSE.txt → 4204.598a3655.js.LICENSE.txt} +0 -0
  83. /package/dist/chunks/{4904.66c677e1.js.LICENSE.txt → 4904.5dfde72c.js.LICENSE.txt} +0 -0
  84. /package/dist/chunks/{9155.c860cfb6.js.LICENSE.txt → 9155.ccd49444.js.LICENSE.txt} +0 -0
  85. /package/dist/chunks/{eo-directory.ec3ff4bc.js.LICENSE.txt → eo-directory.83d59198.js.LICENSE.txt} +0 -0
  86. /package/dist/chunks/{eo-nav-menu.85627937.js.LICENSE.txt → eo-nav-menu.c181cb6c.js.LICENSE.txt} +0 -0
  87. /package/dist/chunks/{eo-sidebar-menu-group.846e8b68.js.LICENSE.txt → eo-sidebar-menu-group.88649be4.js.LICENSE.txt} +0 -0
  88. /package/dist/chunks/{eo-sidebar-menu-submenu.1794ff61.js.LICENSE.txt → eo-sidebar-menu-submenu.f36c2d41.js.LICENSE.txt} +0 -0
  89. /package/dist/chunks/{eo-sidebar-sub-menu.b8edf54e.js.LICENSE.txt → eo-sidebar-sub-menu.2b0ab8c4.js.LICENSE.txt} +0 -0
  90. /package/dist/chunks/{eo-sidebar.45f62d98.js.LICENSE.txt → eo-sidebar.54157ae6.js.LICENSE.txt} +0 -0
  91. /package/dist/chunks/{launchpad-config.e9ae9800.js.LICENSE.txt → launchpad-config.f652114f.js.LICENSE.txt} +0 -0
@@ -0,0 +1,3 @@
1
+ /*! For license information please see eo-sidebar.54157ae6.js.LICENSE.txt */
2
+ (self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[5532,1369,3750,2052],{793:(e,t,n)=>{"use strict";n.d(t,{I:()=>a,K:()=>r,NS:()=>i});var r=function(e){return e.CLICK_TO_FIX_NAVIGATION="CLICK_TO_FIX_NAVIGATION",e.UNPIN_NAVIGATION="UNPIN_NAVIGATION",e.FIXED_NAVIGATION="FIXED_NAVIGATION",e}({}),i="bricks/nav/eo-sidebar",a={en:{UNPIN_NAVIGATION:"Unpin navigation",FIXED_NAVIGATION:"Fixed navigation",CLICK_TO_FIX_NAVIGATION:"Click to {{action}}"},zh:{UNPIN_NAVIGATION:"取消固定",FIXED_NAVIGATION:"固定导航",CLICK_TO_FIX_NAVIGATION:"点击{{action}}"}}},7120:(e,t,n)=>{"use strict";n.r(t),n.d(t,{EoSidebar:()=>q,EoSidebarComponent:()=>de});var r,i,a,o,s,l,c,d,u,p,h,f,m,v,g,b,y,x,E=n(9575),I=n(4635),w=n(918),A=n(1369),N=n(8449),S=n(6902),k=n(8769),z=n.n(k),C=n(9929),O=n(9938),K=(n(330),n(3694)),_=n(4730),D=n(3995),T=n(7290),P=n(4612),V=n(3352),j=n(6911),F=n(793),G=n(3373),M=n.n(G),L=n(764),B=n(4),R=n(6827);function W(e,t,n){return n(H(e,t))}function U(e,t,n){return e.set(H(e,t),n),n}function X(e,t){return e.get(H(e,t))}function H(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}(0,j.initializeReactI18n)(F.NS,F.I);var q,{defineElement:Z,property:J,event:$}=(0,C.createDecorators)(),Q=(0,O.wrapBrick)("eo-tooltip"),Y=(0,O.wrapBrick)("eo-icon"),ee=new WeakMap,te=new WeakMap,ne=new WeakMap,re=new WeakMap,ie=new WeakMap,ae=new WeakSet,oe=new WeakMap,se=new WeakMap,le=new WeakMap;class ce extends O.ReactNextElement{constructor(){super(...arguments),(0,I.A)(this,ae),(0,w.A)(this,ee,i(this)),(0,w.A)(this,te,(a(this),o(this))),(0,w.A)(this,ne,(s(this),l(this))),(0,w.A)(this,re,(c(this),d(this))),(0,w.A)(this,ie,(u(this),p(this))),(0,w.A)(this,oe,(m(this),e=>{W(ae,this,h).emit(e)})),(0,w.A)(this,se,v(this)),(0,w.A)(this,le,(y(this),e=>{this.expandedState=e,W(ae,this,g).emit(e)}))}get menu(){return X(ee,this)}set menu(e){U(ee,this,e)}get hiddenFixedIcon(){return X(te,this)}set hiddenFixedIcon(e){U(te,this,e)}get expandedState(){return X(ne,this)}set expandedState(e){U(ne,this,e)}get position(){return X(re,this)}set position(e){U(re,this,e)}render(){return z().createElement(de,{menu:this.menu,expandedState:this.expandedState,hiddenFixedIcon:this.hiddenFixedIcon,position:this.position,onActualWidthChange:X(oe,this),onExpandedStateChange:X(le,this)})}}function de(e){var{t}=(0,j.useTranslation)(F.NS),{menu:n,hiddenFixedIcon:r,position:i,onActualWidthChange:a,onExpandedStateChange:o}=e,s=z().useMemo((()=>{var e;return null===(e=(0,B.getRuntime)())||void 0===e?void 0:e.getFeatureFlags()["sidebar-show-user-defined-icon"]}),[]),l=(0,k.useMemo)((()=>new P.G(localStorage)),[]),c=(0,B.getHistory)(),d=(0,R.useCurrentApp)(),[u,p]=(0,k.useState)(c.location),{pathname:h,search:f}=u,[m,v]=(0,k.useState)(!l.getItem(V.Wb)),[g,b]=(0,k.useState)(),[y,x]=(0,k.useState)(),[I,w]=(0,k.useState)(e.expandedState||l.getItem(V.Bb)||V.zD.Collapsed),A=s?null==n?void 0:n.icon:null==d?void 0:d.menuIcon,{selectedKeys:N,openedKeys:S,matchedKeys:C}=(0,k.useMemo)((()=>{var e;return(0,L.LP)(null!==(e=null==n?void 0:n.menuItems)&&void 0!==e?e:[],h,f,"")}),[null==n?void 0:n.menuItems,h,f]);(0,k.useEffect)((()=>{var e=c.listen((e=>{p(e)}));return e}),[c]);var O=(0,k.useRef)(null);(0,k.useEffect)((()=>{if(O.current){var e=new IntersectionObserver((e=>{e.forEach((e=>{e.target===O.current&&b(!e.isIntersecting)}))}),{threshold:1});return e.observe(O.current),()=>{e.disconnect()}}}),[]),(0,k.useEffect)((()=>{w(e.expandedState||l.getItem(V.Bb)||V.zD.Collapsed)}),[e.expandedState]),(0,k.useEffect)((()=>{l.setItem(V.Bb,I===V.zD.Expanded?V.zD.Expanded:V.zD.Collapsed)}),[I]);var[K,G]=(0,k.useState)((()=>{var e=parseInt(l.getItem(V.k_),10);return(e<V.VI||Number.isNaN(e))&&(e=V.VI),e}));(0,k.useEffect)((()=>{l.setItem(V.k_,K)}),[K]);var W=(0,k.useRef)(null),U=()=>{w((e=>{var t=e===V.zD.Expanded?V.zD.Expanded:V.zD.Hovered;return t!==e&&(null==o||o(t)),t}))},X=()=>{w((e=>{var t=e===V.zD.Expanded?V.zD.Expanded:V.zD.Collapsed;return t!==e&&(null==o||o(t)),t}))},H=(0,k.useMemo)((()=>I===V.zD.Expanded?K:V.i2),[I,K]);(0,k.useEffect)((()=>{null==a||a(H)}),[a,H]);var q=e=>"static"===i?I===V.zD.Expanded||e&&I===V.zD.Hovered?K:V.i2:I===V.zD.Collapsed?V.i2:K;return(0,k.useEffect)((()=>{var e=W.current;return null==e||e.addEventListener("mouseenter",U),null==e||e.addEventListener("mouseleave",X),()=>{null==e||e.removeEventListener("mouseenter",U),null==e||e.removeEventListener("mouseleave",X)}}),[]),z().createElement("div",{className:M()("sidebar-container","state-".concat(I),{dragging:y}),style:{width:q()},ref:W,"data-testid":"side-bar"},z().createElement("div",{className:"inner",style:{width:q(!0)}},z().createElement("div",{className:"header"},z().createElement("div",{className:"menu-title"},z().createElement("div",{className:M()("menu-title-icon-container")},A?z().createElement(Y,(0,E.A)({},A,{className:"menu-title-icon"})):z().createElement("span",{className:"menu-title-point"})),z().createElement("div",{className:"menu-title-text",title:null==n?void 0:n.title},null==n?void 0:n.title))),z().createElement("div",{className:M()("content",{"show-shadow":g})},z().createElement(V.wZ,{selectedKeys:N,openedKeys:S,matchedKeys:C,menu:n,expandedState:I}),z().createElement("div",{ref:O})),z().createElement("div",{className:"footer"},!r&&z().createElement(Q,{content:I===V.zD.Expanded?m?t(F.K.CLICK_TO_FIX_NAVIGATION,{action:t(F.K.UNPIN_NAVIGATION)}):t(F.K.UNPIN_NAVIGATION):m?t(F.K.CLICK_TO_FIX_NAVIGATION,{action:t(F.K.FIXED_NAVIGATION)}):t(F.K.FIXED_NAVIGATION)},z().createElement("i",{className:"fixed-icon",onClick:()=>{v(!1),l.setItem(V.Wb,!0),w((e=>{var t=e===V.zD.Expanded?V.zD.Collapsed:V.zD.Expanded;return t!==e&&(null==o||o(t)),t}))}},z().createElement(_.A,{style:{display:I===V.zD.Expanded?void 0:"none"}}),z().createElement(D.A,{style:{display:I===V.zD.Expanded?"none":void 0}})))),I===V.zD.Expanded&&z().createElement("span",{className:"resize-line",onMouseDown:e=>{var t,n;x(!0),e.cancelable&&e.preventDefault();var r=null!==(t=null===(n=W.current)||void 0===n?void 0:n.getBoundingClientRect().left)&&void 0!==t?t:0,i=(0,T.G)((e=>{var t=e.clientX-r,n=t>=V.VI?t:V.VI;G(n)})),a=e=>{x(!1),e.preventDefault(),window.removeEventListener("mousemove",i),window.removeEventListener("mouseup",a)};window.addEventListener("mousemove",i,{passive:!0}),window.addEventListener("mouseup",a)}})))}x=ce,({e:[i,a,o,s,l,c,d,u,p,h,f,m,v,g,b,y],c:[q,r]}=function(e,t,n,r,i,a){var o,s,l,c,d,u,p,h=Symbol.metadata||Symbol.for("Symbol.metadata"),f=Object.defineProperty,m=Object.create,v=[m(null),m(null)],g=t.length;function b(t,n,r){return function(i,a){n&&(a=i,i=e);for(var o=0;o<t.length;o++)a=t[o].apply(i,r?[a]:[]);return r?a:i}}function y(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function x(e,t,n,r,i,a,l,c,d,u,p){function h(e){if(!p(e))throw new TypeError("Attempted to access private element on non-instance")}var m=[].concat(t[0]),g=t[3],x=!l,E=1===i,I=3===i,w=4===i,A=2===i;function S(t,n,r){return function(i,a){return n&&(a=i,i=e),r&&r(i),k[t].call(i,a)}}if(!x){var k={},z=[],C=I?"get":w||E?"set":"value";if(d?(u||E?k={get:(0,N.A)((function(){return g(this)}),r,"get"),set:function(e){t[4](this,e)}}:k[C]=g,u||(0,N.A)(k[C],r,A?"":C)):u||(k=Object.getOwnPropertyDescriptor(e,r)),!u&&!d){if((s=v[+c][r])&&7!=(s^i))throw new Error("Decorating two elements with the same name ("+k[C].name+") is not supported yet");v[+c][r]=i<3?1:i}}for(var O=e,K=m.length-1;K>=0;K-=n?2:1){var _=m[K],D=n?m[K-1]:void 0,T={},P={kind:["field","accessor","method","getter","setter","class"][i],name:r,metadata:o,addInitializer:function(e,t){if(e.v)throw new Error("attempted to call addInitializer after decoration was finished");y(t,"An initializer","be",!0),a.push(t)}.bind(null,T)};if(x)s=_.call(D,O,P),T.v=1,y(s,"class decorators","return")&&(O=s);else if(P.static=c,P.private=d,s=P.access={has:d?p.bind():function(e){return r in e}},w||(s.get=d?A?function(e){return h(e),k.value}:S("get",0,h):function(e){return e[r]}),A||I||(s.set=d?S("set",0,h):function(e,t){e[r]=t}),O=_.call(D,E?{get:k.get,set:k.set}:k[C],P),T.v=1,E){if("object"==typeof O&&O)(s=y(O.get,"accessor.get"))&&(k.get=s),(s=y(O.set,"accessor.set"))&&(k.set=s),(s=y(O.init,"accessor.init"))&&z.unshift(s);else if(void 0!==O)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else y(O,(u?"field":"method")+" decorators","return")&&(u?z.unshift(O):k[C]=O)}return i<2&&l.push(b(z,c,1),b(a,c,0)),u||x||(d?E?l.splice(-1,0,S("get",c),S("set",c)):l.push(A?k[C]:y.call.bind(k[C])):f(e,r,k)),O}function E(e){return f(e,h,{configurable:!0,enumerable:!0,value:o})}return void 0!==a&&(o=a[h]),o=m(null==o?null:o),d=[],u=function(e){e&&d.push(b(e))},(p=function(t,r){for(var a=0;a<n.length;a++){var o=n[a],s=o[1],u=7&s;if((8&s)==t&&!u==r){var p=o[2],h=!!o[3],f=16&s;x(t?e:e.prototype,o,f,h?"#"+p:(0,A.A)(p),u,u<2?[]:t?c=c||[]:l=l||[],d,!!t,h,r,t&&h?function(t){return(0,S.A)(t)===e}:i)}}})(8,0),p(0,0),p(8,1),p(0,1),u(l),u(c),s=d,g||E(e),{e:s,get c(){var n=[];return g&&[E(e=x(e,[t],0,e.name,5,n)),b(n,1)]}}}(x,[Z("eo-sidebar",{styleTexts:[K.A]})],[[J({attribute:!1}),1,"menu"],[J({type:Boolean}),1,"hiddenFixedIcon"],[J(),1,"expandedState"],[J(),1,"position"],[$({type:"actual.width.change"}),1,"actualWidthChangeEvent",e=>X(ie,e),(e,t)=>U(ie,e,t)],[$({type:"expanded.state.change"}),1,"expandedStateChangeEvent",e=>X(se,e),(e,t)=>U(se,e,t)]],0,(e=>le.has((0,S.A)(e))),O.ReactNextElement)),r()},3352:(e,t,n)=>{"use strict";n.d(t,{Bb:()=>p,VI:()=>m,Wb:()=>u,i2:()=>v,k_:()=>h,mK:()=>d,wZ:()=>S,zD:()=>f});var r=n(9575),i=n(8769),a=n.n(i),o=n(4),s=n(9938),l=new Set(["EO-SIDEBAR-MENU-ITEM","EO-SIDEBAR-MENU-GROUP","EO-SIDEBAR-MENU-SUBMENU"]),c=e=>l.has(e.tagName);function d(e){var t=(0,i.useRef)(null),n=(0,i.useCallback)((()=>{var n;null===(n=t.current)||void 0===n||n.assignedElements().forEach((t=>{c(t)&&(t.menuCollapsed=e)}))}),[e]);return(0,i.useEffect)((()=>{n()}),[e,n]),(0,i.useEffect)((()=>{var e=t.current,r=()=>{n()};return null==e||e.addEventListener("slotchange",r),()=>{null==e||e.removeEventListener("slotchange",r)}}),[n]),[t]}var u="side-bar-has-been-used",p="side-bar-expand-state",h="side-bar-resize-width",f=function(e){return e.Collapsed="collapsed",e.Hovered="hovered",e.Expanded="expanded",e}({}),m=parseInt((0,o.getCssPropertyValue)("--side-bar-width",document.body),10)||220,v=parseInt((0,o.getCssPropertyValue)("--side-bar-collapsed-width",document.body),10)||60,g=(0,i.createContext)({selectedKeys:[],openedKeys:[],matchedKeys:[]}),b=(0,s.wrapBrick)("eo-sidebar-menu"),y=(0,s.wrapBrick)("eo-sidebar-menu-item"),x=(0,s.wrapBrick)("eo-sidebar-menu-group"),E=(0,s.wrapBrick)("eo-sidebar-menu-submenu");function I(e){var{to:t,href:n,target:r,icon:o,text:s,id:l,inSubmenu:c}=e,{selectedKeys:d}=(0,i.useContext)(g);return a().createElement(y,{url:t,href:n,target:r,icon:o,inSubmenu:c,selected:d.includes(l)},s)}function w(e){var{title:t,items:n,id:o,top:s,inSubmenu:l}=e,{matchedKeys:c}=(0,i.useContext)(g),d=o&&c.includes(o);return(null==n?void 0:n.length)>0?a().createElement(x,{selected:!!d,collapsable:!s},a().createElement("span",{slot:"title"},t),e.items.map((e=>a().createElement(N,(0,r.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:l}))))):null}function A(e){var{title:t,icon:n,items:o,id:s}=e,{openedKeys:l,matchedKeys:c}=(0,i.useContext)(g),d=s&&c.includes(s);return(null==o?void 0:o.length)>0?a().createElement(E,{icon:n,collapsed:!l.includes(s),selected:!!d},a().createElement("span",{slot:"title"},t),e.items.map((e=>a().createElement(N,(0,r.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:!0}))))):null}function N(e){return"subMenu"===e.type?a().createElement(A,e):"group"===e.type?a().createElement(w,e):a().createElement(I,e)}function S(e){var t,{menu:n,expandedState:i,selectedKeys:o,openedKeys:s,matchedKeys:l}=e;return a().createElement(g.Provider,{value:{selectedKeys:o||[],openedKeys:s||[],matchedKeys:l||[]}},a().createElement(b,{menuCollapsed:i===f.Collapsed},null==n||null===(t=n.menuItems)||void 0===t?void 0:t.map((e=>a().createElement(N,(0,r.A)({key:e.key},e,{id:e.key,top:!0}))))))}},4730:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(9575),i=n(8769);const a=e=>i.createElement("svg",(0,r.A)({xmlns:"http://www.w3.org/2000/svg",width:20,height:20,viewBox:"0 0 20 20"},e),i.createElement("g",{fill:"none",fillRule:"evenodd"},i.createElement("path",{d:"M0 0h20v20H0z"}),i.createElement("path",{fill:"#595959",fillRule:"nonzero",d:"m14.599 11.59-1.685-1.606-.348-4.876.93-1.044s.617-.93-.62-1.045L7.323 3s-.85.657-.097 1.296l.754.755-.385 4.76-1.49 1.683s-.388.774.328 1.065l2.961-.02.668 3.887H6.388V17h7.832v-.574h-3.743l.6-3.946 3.154.097s.812-.464.368-.986"})))},3995:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(9575),i=n(8769);const a=e=>i.createElement("svg",(0,r.A)({xmlns:"http://www.w3.org/2000/svg",width:20,height:20,viewBox:"0 0 20 20"},e),i.createElement("g",{fill:"none",fillRule:"evenodd"},i.createElement("path",{d:"M0 0h20v20H0z"}),i.createElement("path",{fill:"#595959",fillRule:"nonzero",d:"m13.06 3.765 3.22 3.08c.42.28.42.84.14 1.26-.42.42-.98.42-1.26.14l-.14-.14-.28-.28-3.22 4.62.98.98c.28.42.28.98-.14 1.26-.28.28-.7.28-1.12 0l-5.88-6.02q-.42-.63 0-1.26c.28-.28.84-.28 1.12 0l.98.98 4.62-3.22-.14-.14c-.42-.42-.42-.84-.14-1.26.28-.28.84-.42 1.26 0m-4.76 9.1-1.12-1.12c-.98 1.12-2.52 2.8-2.8 3.22-.42.42-.7.98-.98 1.54q1.05-.21 1.68-.84c.42-.28 2.1-1.82 3.22-2.8"})))},3694:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(6758),i=n.n(r),a=n(935),o=n.n(a)()(i());o.push([e.id,':host{display:block}:host([hidden]){display:none}:host([position="static"]){height:100%}*,\n*::before,\n*::after{box-sizing:border-box}.sidebar-container{position:relative;z-index:998;height:100%}.sidebar-container,\n.inner{transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}:host(:not([position="static"])) .sidebar-container{position:fixed;left:0;top:var(--app-bar-height);height:calc(100vh - var(--app-bar-height))}.inner{position:absolute;left:0;height:100%;display:flex;flex-direction:column;background-color:var(--left-menu-bg);border-right:1px solid var(--left-sidebar-border-right)}.inner:hover{background-color:var(--left-menu-hover-bg)}.inner::before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;background:var(--sidebar-bg)}.header{padding:0 12px;margin-top:14px;height:52px;flex-shrink:0}.menu-title{height:100%;display:flex;align-items:center;color:var(--left-sidebar-large-title-color)}.menu-title-icon-container{flex-shrink:0;display:flex;justify-content:center;align-items:center;width:20px;height:20px;font-size:20px;line-height:0;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-title-icon{color:var(--left-sidebar-item-collapsed-icon-color)}.menu-title-point{width:4px;height:4px;background:var(--antd-text-color);border-radius:50%}.menu-title-text{font-size:16px;font-weight:var(--font-weight-500);color:var(--left-sidebar-large-title-color);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.state-collapsed .menu-title{padding:0 calc(50% - 10px)}.state-hovered .menu-title,\n.state-expanded .menu-title{padding:0 12px}.state-collapsed .menu-title-icon-container{margin-right:12px}.state-hovered .menu-title-icon-container,\n.state-expanded .menu-title-icon-container{margin-right:0;width:0;opacity:0}.content{padding:0 12px;flex:1;overflow-y:auto;scrollbar-width:none}.content::-webkit-scrollbar{width:0;background:transparent}.content.show-shadow{box-shadow:0 -17px 10px -16px rgb(0 0 0/8%) inset}.footer{height:60px;flex-shrink:0;display:flex;align-items:center;justify-content:flex-end}.fixed-icon{display:flex;justify-content:center;align-items:center;width:20px;height:20px;margin-right:8px;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.fixed-icon > svg{width:100%;height:100%}.fixed-icon:hover > svg path[fill]{fill:var(--color-brand)}.state-collapsed .fixed-icon{visibility:hidden;opacity:0}.state-hovered .fixed-icon,\n.state-expanded .fixed-icon{visibility:visible;opacity:1}.state-hovered .inner{box-shadow:var(--left-sidebar-shadow)}.resize-line{position:absolute;right:-2px;height:100%;width:2px;cursor:col-resize}.resize-line:hover,\n.resize-line:active{background-color:rgba(26,122,255,1)}.dragging,\n.dragging .inner{transition:none}',""]);const s=o.toString()},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,i,a){"string"==typeof e&&(e=[[null,e,void 0]]);var o={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(o[l]=!0)}for(var c=0;c<e.length;c++){var d=[].concat(e[c]);r&&o[d[0]]||(void 0!==a&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=a),n&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=n):d[2]=n),i&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=i):d[4]="".concat(i)),t.push(d))}},t}},6758:e=>{"use strict";e.exports=function(e){return e[1]}},3373:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function i(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=o(e,a(n)))}return e}function a(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return i.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=o(t,n));return t}function o(e,t){return t?e?e+" "+t:e+t:e}e.exports?(i.default=i,e.exports=i):void 0===(n=function(){return i}.apply(t,[]))||(e.exports=n)}()},6902:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(7545);function i(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.A)(e):"null"));return e}},2016:(e,t,n)=>{"use strict";function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>r})},918:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(2016);function i(e,t,n){(0,r.A)(e,t),t.set(e,n)}},4635:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(2016);function i(e,t){(0,r.A)(e,t),t.add(e)}},9575:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{A:()=>r})},8449:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(7545);function i(e,t,n){"symbol"==(0,r.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}},1369:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(7545);function i(e){var t=function(e,t){if("object"!=(0,r.A)(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,"string");if("object"!=(0,r.A)(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:String(t)}},7545:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})},4612:(e,t,n)=>{"use strict";n.d(t,{G:()=>r});class r{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()}}},7290:(e,t,n)=>{"use strict";function r(e){var t,n=()=>cancelAnimationFrame(t),r=function(){for(var r=arguments.length,i=new Array(r),a=0;a<r;a++)i[a]=arguments[a];t&&n(),t=requestAnimationFrame((()=>{e(...i)}))};return r.cancel=n,r}n.d(t,{G:()=>r})},764:(e,t,n)=>{"use strict";n.d(t,{IZ:()=>a,LP:()=>s,Wf:()=>o});var r=n(1201),i=n(4);function a(e){return"group"===e.type}function o(e,t){return Boolean("subMenu"===e.type||t&&"group"===e.type)}function s(e,t,n,c){var d=[],u=[],p=[],h=0;return e.forEach((e=>{if(e.key=""===c?"".concat(h):"".concat(c,".").concat(h),a(e)||o(e)){var f=s(e.items,t,n,e.key);d.push(...f.selectedKeys),(f.selectedKeys.length||e.defaultExpanded)&&u.push(e.key),u.push(...f.openedKeys),p.push(...f.matchedKeys)}else if(function(e,t,n){if(!e.to)return!1;var a="object"==typeof e.to?e.to:(0,r.parsePath)(e.to),o=a.pathname.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),s=!!(0,i.matchPath)(t,{path:o,exact:e.exact});if(s&&e.activeMatchSearch&&(s=l(n,a.search)),!s&&Array.isArray(e.activeIncludes))for(var c of e.activeIncludes){var d,u=void 0,p=c.includes("?");if(p&&(u=(0,r.parsePath)(c)),(s=!!(0,i.matchPath)(t,{path:p?u.pathname:c,exact:!0}))&&null!==(d=u)&&void 0!==d&&d.search&&(s=l(n,u.search)),s)break}if(s&&Array.isArray(e.activeExcludes))for(var h of e.activeExcludes)if(!(s=!(0,i.matchPath)(t,{path:h,exact:!0})))break;return s}(e,t,n)){d.push(String(e.key));for(var m=e.key.split("."),v=0;v<m.length;v++)p.push(m.slice(0,v+1).join("."))}h+=1})),d.length&&""!==c&&u.push(c),{selectedKeys:d,openedKeys:u,matchedKeys:p}}function l(e,t){var n=new URLSearchParams(e),r=new URLSearchParams(t);for(var[i,a]of r.entries()){var o;if((null!==(o=n.get(i))&&void 0!==o?o:"")!==a)return!1}return!0}}}]);
3
+ //# sourceMappingURL=eo-sidebar.54157ae6.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/eo-sidebar.45f62d98.js","mappings":"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","sources":["webpack:///./src/sidebar/i18n.ts","webpack:///./src/sidebar/index.tsx","webpack:///./src/sidebar/utils.tsx","webpack:///./src/images/fixed.svg","webpack:///./src/images/toFixed.svg","webpack:///./src/sidebar/styles.shadow.css","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/classnames/index.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../src/JsonStorage.ts","webpack:///../../src/debounceByAnimationFrame.ts","webpack:///../../src/menu.ts"],"sourcesContent":["export enum K {\n CLICK_TO_FIX_NAVIGATION = \"CLICK_TO_FIX_NAVIGATION\",\n UNPIN_NAVIGATION = \"UNPIN_NAVIGATION\",\n FIXED_NAVIGATION = \"FIXED_NAVIGATION\",\n}\n\nconst en: Locale = {\n UNPIN_NAVIGATION: \"Unpin navigation\",\n FIXED_NAVIGATION: \"Fixed navigation\",\n CLICK_TO_FIX_NAVIGATION: \"Click to {{action}}\",\n};\n\nconst zh: Locale = {\n UNPIN_NAVIGATION: \"取消固定\",\n FIXED_NAVIGATION: \"固定导航\",\n CLICK_TO_FIX_NAVIGATION: \"点击{{action}}\",\n};\n\nexport const NS = \"bricks/nav/eo-sidebar\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [key in K]: string };\n","import React, {\n MouseEventHandler,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport type { EoTooltip, ToolTipProps } from \"@next-bricks/basic/tooltip\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type { SidebarMenu as SidebarMenuType } from \"@next-shared/general/types\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport FixedSvg from \"../images/fixed.svg\";\nimport ToFixedSvg from \"../images/toFixed.svg\";\nimport { debounceByAnimationFrame } from \"@next-shared/general/debounceByAnimationFrame\";\nimport { JsonStorage } from \"@next-shared/general/JsonStorage\";\nimport {\n ExpandedState,\n SIDE_BAR_EXPAND_STATE,\n SIDE_BAR_HAS_BEEN_USED,\n SIDE_BAR_RESIZE_WIDTH,\n SidebarMenu,\n sideBarCollapsedWidth,\n sideBarWidth,\n} from \"./utils.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport classNames from \"classnames\";\nimport { initMenuItemAndMatchCurrentPathKeys } from \"@next-shared/general/menu\";\nimport { UnregisterCallback } from \"history\";\nimport { getHistory, getRuntime } from \"@next-core/runtime\";\nimport { useCurrentApp } from \"@next-core/react-runtime\";\n\ninitializeReactI18n(NS, locales);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedTooltip = wrapBrick<EoTooltip, ToolTipProps>(\"eo-tooltip\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface EoSidebarProps {\n menu: SidebarMenuType;\n expandedState?: ExpandedState;\n hiddenFixedIcon?: boolean;\n position?: \"static\" | \"fixed\";\n}\n\nexport interface EoSidebarEvents {\n \"actual.width.change\": CustomEvent<number>;\n \"expanded.state.change\": CustomEvent<ExpandedState>;\n}\n\nexport interface EoSidebarEventsMapping {\n onActualWidthChange: \"actual.width.change\";\n onExpandedStateChange: \"expanded.state.change\";\n}\n\n/**\n * 侧边栏\n *\n * @category navigation\n */\nexport\n@defineElement(\"eo-sidebar\", {\n styleTexts: [styleText],\n})\nclass EoSidebar extends ReactNextElement implements EoSidebarProps {\n /**\n * 菜单数据\n */\n @property({ attribute: false })\n accessor menu!: SidebarMenuType;\n\n /**\n * 是否隐藏固定按钮\n */\n @property({ type: Boolean })\n accessor hiddenFixedIcon: boolean | undefined;\n\n /**\n * 侧栏状态\n */\n @property()\n accessor expandedState: ExpandedState | undefined;\n\n /**\n * 设置定位方式:静态定位或固定定位。\n *\n * @default \"fixed\"\n */\n @property()\n accessor position: \"static\" | \"fixed\" | undefined;\n\n /**\n * 宽度变化时触发\n * @detail 当前宽度\n */\n @event({ type: \"actual.width.change\" })\n accessor #actualWidthChangeEvent!: EventEmitter<number>;\n #handleActualWidthChange = (actualWidth: number): void => {\n this.#actualWidthChangeEvent.emit(actualWidth);\n };\n\n /**\n * 侧栏状态变化时触发\n * @detail 侧栏状态\n */\n @event({ type: \"expanded.state.change\" })\n accessor #expandedStateChangeEvent!: EventEmitter<ExpandedState>;\n #handleExpandedStateChange = (state: ExpandedState): void => {\n this.expandedState = state;\n this.#expandedStateChangeEvent.emit(state);\n };\n\n render() {\n return (\n <EoSidebarComponent\n menu={this.menu}\n expandedState={this.expandedState}\n hiddenFixedIcon={this.hiddenFixedIcon}\n position={this.position}\n onActualWidthChange={this.#handleActualWidthChange}\n onExpandedStateChange={this.#handleExpandedStateChange}\n />\n );\n }\n}\n\ninterface EoSidebarComponentProps extends EoSidebarProps {\n onActualWidthChange?: (actualWidth: number) => void;\n onExpandedStateChange?: (state: ExpandedState) => void;\n}\n\nexport function EoSidebarComponent(props: EoSidebarComponentProps) {\n const { t } = useTranslation(NS);\n const {\n menu,\n hiddenFixedIcon,\n position,\n onActualWidthChange,\n onExpandedStateChange,\n } = props;\n\n const showUserDefinedIcon = React.useMemo(\n () => getRuntime()?.getFeatureFlags()[\"sidebar-show-user-defined-icon\"],\n []\n );\n\n const storage = useMemo(() => new JsonStorage(localStorage), []);\n const history = getHistory();\n const currentApp = useCurrentApp();\n const [location, setLocation] = useState(history.location);\n const { pathname, search } = location;\n\n const [isFirstUsedTooltip, setIsFirstUsedTooltip] = useState<boolean>(\n !storage.getItem(SIDE_BAR_HAS_BEEN_USED)\n );\n const [showContentShadow, setShowContentShadow] = useState<boolean>();\n const [dragging, setDragging] = useState<boolean>();\n const [expandedState, setExpandedState] = useState<ExpandedState>(\n props.expandedState ||\n storage.getItem(SIDE_BAR_EXPAND_STATE) ||\n ExpandedState.Collapsed\n );\n\n const titleIcon = showUserDefinedIcon ? menu?.icon : currentApp?.menuIcon;\n\n const { selectedKeys, openedKeys, matchedKeys } = useMemo(() => {\n return initMenuItemAndMatchCurrentPathKeys(\n menu?.menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n }, [menu?.menuItems, pathname, search]);\n\n useEffect(() => {\n const unListen: UnregisterCallback = history.listen((location) => {\n setLocation(location);\n });\n return unListen;\n }, [history]);\n\n const contentBottomPlaceholderRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (contentBottomPlaceholderRef.current) {\n const observer = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n if (entry.target === contentBottomPlaceholderRef.current) {\n setShowContentShadow(!entry.isIntersecting);\n }\n });\n },\n { threshold: 1 }\n );\n\n observer.observe(contentBottomPlaceholderRef.current);\n\n return () => {\n observer.disconnect();\n };\n }\n }, []);\n\n useEffect(() => {\n setExpandedState(\n props.expandedState ||\n storage.getItem(SIDE_BAR_EXPAND_STATE) ||\n ExpandedState.Collapsed\n );\n }, [props.expandedState]);\n\n useEffect(() => {\n storage.setItem(\n SIDE_BAR_EXPAND_STATE,\n expandedState === ExpandedState.Expanded\n ? ExpandedState.Expanded\n : ExpandedState.Collapsed\n );\n }, [expandedState]);\n\n const handleFixedIconClick = (): void => {\n setIsFirstUsedTooltip(false);\n storage.setItem(SIDE_BAR_HAS_BEEN_USED, true);\n\n setExpandedState((state) => {\n const newState =\n state === ExpandedState.Expanded\n ? ExpandedState.Collapsed\n : ExpandedState.Expanded;\n\n newState !== state && onExpandedStateChange?.(newState);\n return newState;\n });\n };\n\n const [expandedWidth, setExpandedWidth] = useState<number>(() => {\n // Use parseInt to compatible non-number types\n let memorizedWidth = parseInt(storage.getItem(SIDE_BAR_RESIZE_WIDTH), 10);\n if (memorizedWidth < sideBarWidth || Number.isNaN(memorizedWidth)) {\n memorizedWidth = sideBarWidth;\n }\n return memorizedWidth;\n });\n\n useEffect(() => {\n storage.setItem(SIDE_BAR_RESIZE_WIDTH, expandedWidth);\n }, [expandedWidth]);\n\n const containerRef = useRef<HTMLDivElement>(null);\n\n const handleResizeDown: MouseEventHandler = (e) => {\n setDragging(true);\n\n // Prevent text selection when dragging\n if (e.cancelable) {\n e.preventDefault();\n }\n\n const offsetX = containerRef.current?.getBoundingClientRect().left ?? 0;\n\n const drag = debounceByAnimationFrame((e: MouseEvent) => {\n const x = e.clientX - offsetX;\n const width = x >= sideBarWidth ? x : sideBarWidth;\n\n setExpandedWidth(width);\n });\n const dragEnd = (e: MouseEvent) => {\n setDragging(false);\n e.preventDefault();\n\n window.removeEventListener(\"mousemove\", drag);\n window.removeEventListener(\"mouseup\", dragEnd);\n };\n\n window.addEventListener(\"mousemove\", drag, { passive: true });\n window.addEventListener(\"mouseup\", dragEnd);\n };\n\n const handleMouseEnter = (): void => {\n setExpandedState((state) => {\n const newState =\n state === ExpandedState.Expanded\n ? ExpandedState.Expanded\n : ExpandedState.Hovered;\n\n newState !== state && onExpandedStateChange?.(newState);\n return newState;\n });\n };\n\n const handleMouseLeave = (): void => {\n setExpandedState((state) => {\n const newState =\n state === ExpandedState.Expanded\n ? ExpandedState.Expanded\n : ExpandedState.Collapsed;\n\n newState !== state && onExpandedStateChange?.(newState);\n return newState;\n });\n };\n\n const sidebarActualWidth = useMemo(() => {\n return expandedState === ExpandedState.Expanded\n ? expandedWidth\n : sideBarCollapsedWidth;\n }, [expandedState, expandedWidth]);\n\n useEffect(() => {\n onActualWidthChange?.(sidebarActualWidth);\n }, [onActualWidthChange, sidebarActualWidth]);\n\n const getContainerWidth = (inner?: boolean) => {\n // With static position, when not expanded, the outer container will keep\n // collapsed even if hovered, while only the inner container will expand.\n if (position === \"static\") {\n return expandedState === ExpandedState.Expanded ||\n (inner && expandedState === ExpandedState.Hovered)\n ? expandedWidth\n : sideBarCollapsedWidth;\n }\n return expandedState === ExpandedState.Collapsed\n ? sideBarCollapsedWidth\n : expandedWidth;\n };\n\n useEffect(() => {\n const container = containerRef.current;\n container?.addEventListener(\"mouseenter\", handleMouseEnter);\n container?.addEventListener(\"mouseleave\", handleMouseLeave);\n\n return () => {\n container?.removeEventListener(\"mouseenter\", handleMouseEnter);\n container?.removeEventListener(\"mouseleave\", handleMouseLeave);\n };\n }, []);\n\n return (\n <div\n className={classNames(\"sidebar-container\", `state-${expandedState}`, {\n dragging,\n })}\n style={{ width: getContainerWidth() }}\n ref={containerRef}\n data-testid=\"side-bar\"\n >\n <div className=\"inner\" style={{ width: getContainerWidth(true) }}>\n <div className=\"header\">\n <div className=\"menu-title\">\n <div className={classNames(\"menu-title-icon-container\")}>\n {titleIcon ? (\n <WrappedIcon\n {...(titleIcon as GeneralIconProps)}\n className=\"menu-title-icon\"\n />\n ) : (\n <span className=\"menu-title-point\" />\n )}\n </div>\n <div className=\"menu-title-text\" title={menu?.title}>\n {menu?.title}\n </div>\n </div>\n </div>\n\n <div\n className={classNames(\"content\", {\n \"show-shadow\": showContentShadow,\n })}\n >\n <SidebarMenu\n selectedKeys={selectedKeys}\n openedKeys={openedKeys}\n matchedKeys={matchedKeys}\n menu={menu}\n expandedState={expandedState}\n />\n <div ref={contentBottomPlaceholderRef} />\n </div>\n\n <div className=\"footer\">\n {!hiddenFixedIcon && (\n <WrappedTooltip\n content={\n (expandedState === ExpandedState.Expanded\n ? isFirstUsedTooltip\n ? t(K.CLICK_TO_FIX_NAVIGATION, {\n action: t(K.UNPIN_NAVIGATION),\n })\n : t(K.UNPIN_NAVIGATION)\n : isFirstUsedTooltip\n ? t(K.CLICK_TO_FIX_NAVIGATION, {\n action: t(K.FIXED_NAVIGATION),\n })\n : t(K.FIXED_NAVIGATION)) as string\n }\n >\n <i className=\"fixed-icon\" onClick={handleFixedIconClick}>\n <FixedSvg\n style={{\n display:\n expandedState === ExpandedState.Expanded\n ? undefined\n : \"none\",\n }}\n />\n <ToFixedSvg\n style={{\n display:\n expandedState === ExpandedState.Expanded\n ? \"none\"\n : undefined,\n }}\n />\n </i>\n </WrappedTooltip>\n )}\n </div>\n {expandedState === ExpandedState.Expanded && (\n <span className=\"resize-line\" onMouseDown={handleResizeDown} />\n )}\n </div>\n </div>\n );\n}\n","import React, {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useRef,\n} from \"react\";\nimport { getCssPropertyValue } from \"@next-core/runtime\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n SidebarMenu as SidebarMenuType,\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport type {\n EoSidebarMenu,\n EoSidebarMenuProps,\n} from \"./sidebar-menu/index.js\";\nimport type {\n EoSidebarMenuItem,\n EoSidebarMenuItemProps,\n} from \"./sidebar-menu-item/index.js\";\nimport type {\n EoSidebarMenuGroup,\n EoSidebarMenuGroupProps,\n} from \"./sidebar-menu-group/index.js\";\nimport type {\n EoSidebarMenuSubmenu,\n EoSidebarMenuSubmenuProps,\n} from \"./sidebar-menu-submenu/index.js\";\n\nconst sidebarMenuItemTagNameSet = new Set([\n \"EO-SIDEBAR-MENU-ITEM\",\n \"EO-SIDEBAR-MENU-GROUP\",\n \"EO-SIDEBAR-MENU-SUBMENU\",\n]);\n\nconst isSidebarMenuItem = (element: Element) =>\n sidebarMenuItemTagNameSet.has(element.tagName);\n\nexport function useUpdateMenuCollapsedState(menuCollapsed?: boolean) {\n const slotRef = useRef<HTMLSlotElement>(null);\n\n const updateChildrenMenuCollapsedState = useCallback(() => {\n slotRef.current?.assignedElements().forEach((ele) => {\n if (isSidebarMenuItem(ele)) {\n (ele as any).menuCollapsed = menuCollapsed;\n }\n });\n }, [menuCollapsed]);\n\n useEffect(() => {\n updateChildrenMenuCollapsedState();\n }, [menuCollapsed, updateChildrenMenuCollapsedState]);\n\n useEffect(() => {\n const slotElem = slotRef.current;\n const handleSlotchange = () => {\n updateChildrenMenuCollapsedState();\n };\n slotElem?.addEventListener(\"slotchange\", handleSlotchange);\n\n return () => {\n slotElem?.removeEventListener(\"slotchange\", handleSlotchange);\n };\n }, [updateChildrenMenuCollapsedState]);\n\n return [slotRef];\n}\n\nexport const SIDE_BAR_HAS_BEEN_USED = \"side-bar-has-been-used\";\nexport const SIDE_BAR_EXPAND_STATE = \"side-bar-expand-state\";\nexport const SIDE_BAR_RESIZE_WIDTH = \"side-bar-resize-width\";\n\nexport enum ExpandedState {\n Collapsed = \"collapsed\",\n Hovered = \"hovered\",\n Expanded = \"expanded\",\n}\n\nexport const sideBarWidth =\n parseInt(getCssPropertyValue(\"--side-bar-width\", document.body), 10) || 220;\nexport const sideBarCollapsedWidth =\n parseInt(\n getCssPropertyValue(\"--side-bar-collapsed-width\", document.body),\n 10\n ) || 60;\n\ninterface ContextOfSidebarMenu {\n selectedKeys: string[];\n openedKeys: string[];\n matchedKeys: string[];\n}\n\nconst SidebarMenuContext = createContext<ContextOfSidebarMenu>({\n selectedKeys: [],\n openedKeys: [],\n matchedKeys: [],\n});\n\nconst WrappedSidebarMenu = wrapBrick<EoSidebarMenu, EoSidebarMenuProps>(\n \"eo-sidebar-menu\"\n);\nconst WrappedSidebarMenuItem = wrapBrick<\n EoSidebarMenuItem,\n EoSidebarMenuItemProps\n>(\"eo-sidebar-menu-item\");\nconst WrappedSidebarMenuGroup = wrapBrick<\n EoSidebarMenuGroup,\n EoSidebarMenuGroupProps\n>(\"eo-sidebar-menu-group\");\nconst WrappedSidebarMenuSubmenu = wrapBrick<\n EoSidebarMenuSubmenu,\n EoSidebarMenuSubmenuProps\n>(\"eo-sidebar-menu-submenu\");\n\nfunction MenuSimpleItem(\n props: SidebarMenuSimpleItem & { id?: string; inSubmenu?: boolean }\n) {\n const { to, href, target, icon, text, id, inSubmenu } = props;\n const { selectedKeys } = useContext(SidebarMenuContext);\n\n return (\n <WrappedSidebarMenuItem\n url={to as any}\n href={href}\n target={target as any}\n icon={icon}\n inSubmenu={inSubmenu}\n selected={selectedKeys.includes(id!)}\n >\n {text}\n </WrappedSidebarMenuItem>\n );\n}\n\nfunction MenuGroup(\n props: SidebarMenuGroup & { id?: string; top?: boolean; inSubmenu?: boolean }\n) {\n const { title, items, id, top, inSubmenu } = props;\n const { matchedKeys } = useContext(SidebarMenuContext);\n const isSelected = id && matchedKeys.includes(id);\n\n if (items?.length > 0) {\n return (\n <WrappedSidebarMenuGroup selected={!!isSelected} collapsable={!top}>\n <span slot=\"title\">{title}</span>\n {props.items.map((item) => {\n return (\n <MenuItem\n key={item.key}\n {...item}\n id={item.key}\n top={false}\n inSubmenu={inSubmenu}\n />\n );\n })}\n </WrappedSidebarMenuGroup>\n );\n }\n return null;\n}\n\nfunction MenuSubmenu(props: SidebarMenuGroup & { id?: string }) {\n const { title, icon, items, id } = props;\n const { openedKeys, matchedKeys } = useContext(SidebarMenuContext);\n const isSelected = id && matchedKeys.includes(id);\n\n if (items?.length > 0) {\n return (\n <WrappedSidebarMenuSubmenu\n icon={icon}\n collapsed={!openedKeys.includes(id!)}\n selected={!!isSelected}\n >\n <span slot=\"title\">{title}</span>\n {props.items.map((item) => {\n return (\n <MenuItem\n key={item.key}\n {...item}\n id={item.key}\n top={false}\n inSubmenu={true}\n />\n );\n })}\n </WrappedSidebarMenuSubmenu>\n );\n }\n return null;\n}\n\nfunction MenuItem(\n props: SidebarMenuItem & { id?: string; top?: boolean; inSubmenu?: boolean }\n) {\n if (props.type === \"subMenu\") {\n return <MenuSubmenu {...props} />;\n } else if (props.type === \"group\") {\n return <MenuGroup {...props} />;\n } else {\n return <MenuSimpleItem {...(props as SidebarMenuSimpleItem)} />;\n }\n}\n\nexport function SidebarMenu(props: {\n menu?: SidebarMenuType;\n expandedState: ExpandedState;\n selectedKeys?: string[];\n openedKeys?: string[];\n matchedKeys?: string[];\n}) {\n const { menu, expandedState, selectedKeys, openedKeys, matchedKeys } = props;\n\n return (\n <SidebarMenuContext.Provider\n value={{\n selectedKeys: selectedKeys || [],\n openedKeys: openedKeys || [],\n matchedKeys: matchedKeys || [],\n }}\n >\n <WrappedSidebarMenu\n menuCollapsed={expandedState === ExpandedState.Collapsed}\n >\n {menu?.menuItems?.map((item) => {\n return <MenuItem key={item.key} {...item} id={item.key} top={true} />;\n })}\n </WrappedSidebarMenu>\n </SidebarMenuContext.Provider>\n );\n}\n","import * as React from \"react\";\nconst SvgFixed = props => <svg xmlns=\"http://www.w3.org/2000/svg\" width={20} height={20} viewBox=\"0 0 20 20\" {...props}><g fill=\"none\" fillRule=\"evenodd\"><path d=\"M0 0h20v20H0z\" /><path fill=\"#595959\" fillRule=\"nonzero\" d=\"m14.599 11.59-1.685-1.606-.348-4.876.93-1.044s.617-.93-.62-1.045L7.323 3s-.85.657-.097 1.296l.754.755-.385 4.76-1.49 1.683s-.388.774.328 1.065l2.961-.02.668 3.887H6.388V17h7.832v-.574h-3.743l.6-3.946 3.154.097s.812-.464.368-.986\" /></g></svg>;\nexport default SvgFixed;","import * as React from \"react\";\nconst SvgToFixed = props => <svg xmlns=\"http://www.w3.org/2000/svg\" width={20} height={20} viewBox=\"0 0 20 20\" {...props}><g fill=\"none\" fillRule=\"evenodd\"><path d=\"M0 0h20v20H0z\" /><path fill=\"#595959\" fillRule=\"nonzero\" d=\"m13.06 3.765 3.22 3.08c.42.28.42.84.14 1.26-.42.42-.98.42-1.26.14l-.14-.14-.28-.28-3.22 4.62.98.98c.28.42.28.98-.14 1.26-.28.28-.7.28-1.12 0l-5.88-6.02q-.42-.63 0-1.26c.28-.28.84-.28 1.12 0l.98.98 4.62-3.22-.14-.14c-.42-.42-.42-.84-.14-1.26.28-.28.84-.42 1.26 0m-4.76 9.1-1.12-1.12c-.98 1.12-2.52 2.8-2.8 3.22-.42.42-.7.98-.98 1.54q1.05-.21 1.68-.84c.42-.28 2.1-1.82 3.22-2.8\" /></g></svg>;\nexport default SvgToFixed;","// 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}:host([position=\"static\"]){height:100%}*,\n*::before,\n*::after{box-sizing:border-box}.sidebar-container{position:relative;z-index:998;height:100%}.sidebar-container,\n.inner{transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}:host(:not([position=\"static\"])) .sidebar-container{position:fixed;left:0;top:var(--app-bar-height);height:calc(100vh - var(--app-bar-height))}.inner{position:absolute;left:0;height:100%;display:flex;flex-direction:column;background-color:var(--left-menu-bg);border-right:1px solid var(--left-sidebar-border-right)}.inner:hover{background-color:var(--left-menu-hover-bg)}.inner::before{content:\"\";position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;background:var(--sidebar-bg)}.header{padding:0 12px;margin-top:14px;height:52px;flex-shrink:0}.menu-title{height:100%;display:flex;align-items:center;color:var(--left-sidebar-large-title-color)}.menu-title-icon-container{flex-shrink:0;display:flex;justify-content:center;align-items:center;width:20px;height:20px;font-size:20px;line-height:0;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-title-icon{color:var(--left-sidebar-item-collapsed-icon-color)}.menu-title-point{width:4px;height:4px;background:var(--antd-text-color);border-radius:50%}.menu-title-text{font-size:16px;font-weight:var(--font-weight-500);color:var(--left-sidebar-large-title-color);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.state-collapsed .menu-title{padding:0 calc(50% - 10px)}.state-hovered .menu-title,\n.state-expanded .menu-title{padding:0 12px}.state-collapsed .menu-title-icon-container{margin-right:12px}.state-hovered .menu-title-icon-container,\n.state-expanded .menu-title-icon-container{margin-right:0;width:0;opacity:0}.content{padding:0 12px;flex:1;overflow-y:auto;scrollbar-width:none}.content::-webkit-scrollbar{width:0;background:transparent}.content.show-shadow{box-shadow:0 -17px 10px -16px rgb(0 0 0/8%) inset}.footer{height:60px;flex-shrink:0;display:flex;align-items:center;justify-content:flex-end}.fixed-icon{display:flex;justify-content:center;align-items:center;width:20px;height:20px;margin-right:8px;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.fixed-icon > svg{width:100%;height:100%}.fixed-icon:hover > svg path[fill]{fill:var(--color-brand)}.state-collapsed .fixed-icon{visibility:hidden;opacity:0}.state-hovered .fixed-icon,\n.state-expanded .fixed-icon{visibility:visible;opacity:1}.state-hovered .inner{box-shadow:var(--left-sidebar-shadow)}.resize-line{position:absolute;right:-2px;height:100%;width:2px;cursor:col-resize}.resize-line:hover,\n.resize-line:active{background-color:rgba(26,122,255,1)}.dragging,\n.dragging .inner{transition:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","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","export type SimpleFunction<P extends unknown[] = unknown[], R = unknown> = (\n ...args: P\n) => R;\n\n// The debounce function receives our function as a parameter\nexport function debounceByAnimationFrame<P extends unknown[]>(\n fn: SimpleFunction<P, void>\n): SimpleFunction<P, void> & { cancel: () => void } {\n // This holds the requestAnimationFrame reference, so we can cancel it if we wish\n let frame: number;\n\n const cancel = () => cancelAnimationFrame(frame);\n\n // The debounce function returns a new function that can receive a variable number of arguments\n const func = (...params: P) => {\n // If the frame variable has been defined, clear it now, and queue for next frame\n if (frame) {\n cancel();\n }\n\n // Queue our function call for the next frame\n frame = requestAnimationFrame(() => {\n // Call our function and pass any params we received\n fn(...params);\n });\n };\n\n func.cancel = cancel;\n\n return func;\n}\n","import { Location, parsePath } from \"history\";\nimport { matchPath } from \"@next-core/runtime\";\nimport type {\n SidebarMenuSimpleItem,\n SidebarMenuItem,\n SidebarMenuGroup,\n} from \"./types.js\";\n\nexport function isGroup(item: SidebarMenuItem): item is SidebarMenuGroup {\n return item.type === \"group\";\n}\n\nexport function isSubMenu(\n item: SidebarMenuItem,\n groupAsSubMenu?: boolean\n): item is SidebarMenuGroup {\n return Boolean(\n item.type === \"subMenu\" || (groupAsSubMenu && item.type === \"group\")\n );\n}\n\nexport function initMenuItemAndMatchCurrentPathKeys(\n menuItems: SidebarMenuItem[],\n pathname: string,\n search: string,\n parentCursor: string\n): {\n selectedKeys: string[];\n openedKeys: string[];\n matchedKeys: string[];\n} {\n const selectedKeys: string[] = [];\n const openedKeys: string[] = [];\n const matchedKeys: string[] = [];\n\n let cursor = 0;\n menuItems.forEach((item) => {\n // key的格式最终为0,1,2,0.1,0.2,0.1.1,0.1.2\n item.key = parentCursor === \"\" ? `${cursor}` : `${parentCursor}.${cursor}`;\n if (isGroup(item) || isSubMenu(item)) {\n const tmp = initMenuItemAndMatchCurrentPathKeys(\n item.items,\n pathname,\n search,\n item.key\n );\n selectedKeys.push(...tmp.selectedKeys);\n if (tmp.selectedKeys.length || item.defaultExpanded) {\n openedKeys.push(item.key);\n }\n openedKeys.push(...tmp.openedKeys);\n matchedKeys.push(...tmp.matchedKeys);\n } else {\n if (matchMenuItem(item, pathname, search)) {\n selectedKeys.push(String(item.key));\n\n const keyPath = item.key.split(\".\");\n\n for (let i = 0; i < keyPath.length; i++) {\n matchedKeys.push(keyPath.slice(0, i + 1).join(\".\"));\n }\n }\n }\n cursor += 1;\n });\n if (selectedKeys.length && parentCursor !== \"\") {\n openedKeys.push(parentCursor);\n }\n return {\n selectedKeys: selectedKeys,\n openedKeys: openedKeys,\n matchedKeys: matchedKeys,\n };\n}\n\nfunction getMatchOfSearch(\n currentSearch: string,\n toSearch: string | undefined\n): boolean {\n const current = new URLSearchParams(currentSearch);\n const to = new URLSearchParams(toSearch);\n for (const [key, value] of to.entries()) {\n // Allow `?k=` to match `?` (when `k` doesn't exist)\n if ((current.get(key) ?? \"\") !== value) {\n return false;\n }\n }\n return true;\n}\n\nexport function matchMenuItem(\n item: SidebarMenuSimpleItem,\n pathname: string,\n search: string\n): boolean {\n if (!item.to) return false;\n const to = typeof item.to === \"object\" ? item.to : parsePath(item.to);\n\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath = to.pathname!.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n let match = !!matchPath(pathname, {\n path: escapedPath,\n exact: item.exact,\n });\n\n if (match && item.activeMatchSearch) {\n match = getMatchOfSearch(search, to.search);\n }\n\n if (!match && Array.isArray(item.activeIncludes)) {\n for (const include of item.activeIncludes) {\n let parseInclude: Location | undefined;\n const hasSearch = include.includes(\"?\");\n\n if (hasSearch) {\n parseInclude = parsePath(include);\n }\n match = !!matchPath(pathname, {\n path: hasSearch ? parseInclude!.pathname : include,\n exact: true,\n });\n\n if (match && parseInclude?.search) {\n match = getMatchOfSearch(search, parseInclude.search);\n }\n\n if (match) {\n break;\n }\n }\n }\n\n if (match && Array.isArray(item.activeExcludes)) {\n for (const include of item.activeExcludes) {\n match = !matchPath(pathname, {\n path: include,\n exact: true,\n });\n if (!match) {\n break;\n }\n }\n }\n\n return match;\n}\n"],"names":["K","NS","locales","en","UNPIN_NAVIGATION","FIXED_NAVIGATION","CLICK_TO_FIX_NAVIGATION","zh","initializeReactI18n","_EoSidebar","defineElement","property","event","createDecorators","WrappedTooltip","wrapBrick","WrappedIcon","_A","WeakMap","_B","_C","_D","_E","_EoSidebar_brand","WeakSet","_handleActualWidthChange","_F","_handleExpandedStateChange","EoSidebar","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_menu","_init_extra_menu","_init_hiddenFixedIcon","_init_extra_hiddenFixedIcon","_init_expandedState","_init_extra_expandedState","_init_position","_init_extra_position","_init_actualWidthChangeEvent","_init_extra_actualWidthChangeEvent","actualWidth","_classPrivateGetter","this","_get_actualWidthChangeEvent","emit","_init_expandedStateChangeEvent","_init_extra_expandedStateChangeEvent","state","expandedState","_get_expandedStateChangeEvent","menu","_classPrivateFieldGet","v","_classPrivateFieldSet","hiddenFixedIcon","position","render","React","EoSidebarComponent","onActualWidthChange","onExpandedStateChange","props","useTranslation","showUserDefinedIcon","_getRuntime","getRuntime","getFeatureFlags","storage","useMemo","JsonStorage","localStorage","history","getHistory","currentApp","useCurrentApp","location","setLocation","useState","pathname","search","isFirstUsedTooltip","setIsFirstUsedTooltip","getItem","SIDE_BAR_HAS_BEEN_USED","showContentShadow","setShowContentShadow","dragging","setDragging","setExpandedState","SIDE_BAR_EXPAND_STATE","ExpandedState","Collapsed","titleIcon","icon","menuIcon","selectedKeys","openedKeys","matchedKeys","_menu$menuItems","initMenuItemAndMatchCurrentPathKeys","menuItems","useEffect","unListen","listen","contentBottomPlaceholderRef","useRef","current","observer","IntersectionObserver","entries","forEach","entry","target","isIntersecting","threshold","observe","disconnect","setItem","Expanded","expandedWidth","setExpandedWidth","memorizedWidth","parseInt","SIDE_BAR_RESIZE_WIDTH","sideBarWidth","Number","isNaN","containerRef","handleMouseEnter","newState","Hovered","handleMouseLeave","sidebarActualWidth","sideBarCollapsedWidth","getContainerWidth","inner","container","addEventListener","removeEventListener","className","classNames","concat","style","width","ref","_extends","title","SidebarMenu","content","t","action","onClick","handleFixedIconClick","FixedSvg","display","undefined","ToFixedSvg","onMouseDown","e","_containerRef$current","_containerRef$current2","cancelable","preventDefault","offsetX","getBoundingClientRect","left","drag","debounceByAnimationFrame","x","clientX","dragEnd","window","passive","_EoSidebar2","_set_actualWidthChangeEvent","_set_expandedStateChangeEvent","c","_initClass","_applyDecs","styleTexts","styleText","attribute","type","Boolean","o","_","has","_checkInRHS","sidebarMenuItemTagNameSet","Set","isSidebarMenuItem","element","tagName","useUpdateMenuCollapsedState","menuCollapsed","slotRef","updateChildrenMenuCollapsedState","useCallback","_slotRef$current","assignedElements","ele","slotElem","handleSlotchange","getCssPropertyValue","document","body","SidebarMenuContext","createContext","WrappedSidebarMenu","WrappedSidebarMenuItem","WrappedSidebarMenuGroup","WrappedSidebarMenuSubmenu","MenuSimpleItem","to","href","text","id","inSubmenu","useContext","url","selected","includes","MenuGroup","items","top","isSelected","length","collapsable","slot","map","item","MenuItem","key","MenuSubmenu","collapsed","Provider","value","xmlns","height","viewBox","fill","fillRule","d","___CSS_LOADER_EXPORT___","push","module","toString","exports","cssWithMappingToString","list","needLayer","join","i","modules","media","dedupe","supports","layer","alreadyImportedModules","k","_k","hasOwn","hasOwnProperty","classes","arg","appendClass","parseValue","Array","isArray","apply","Object","prototype","call","newClass","default","TypeError","_checkPrivateRedeclaration","obj","privateCollection","privateMap","set","privateSet","add","assign","bind","source","setFunctionName","n","description","defineProperty","configurable","toPropertyKey","r","Symbol","toPrimitive","String","_typeof","iterator","prefix","name","JSON","stringify","parse","removeItem","clear","fn","frame","cancel","cancelAnimationFrame","func","_len","params","_key","requestAnimationFrame","isGroup","isSubMenu","groupAsSubMenu","parentCursor","cursor","tmp","defaultExpanded","parsePath","escapedPath","replace","match","matchPath","path","exact","activeMatchSearch","getMatchOfSearch","activeIncludes","include","_parseInclude","parseInclude","hasSearch","activeExcludes","_include","matchMenuItem","keyPath","split","slice","currentSearch","toSearch","URLSearchParams","_current$get","get"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/eo-sidebar.54157ae6.js","mappings":"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","sources":["webpack:///./src/sidebar/i18n.ts","webpack:///./src/sidebar/index.tsx","webpack:///./src/sidebar/utils.tsx","webpack:///./src/images/fixed.svg","webpack:///./src/images/toFixed.svg","webpack:///./src/sidebar/styles.shadow.css","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/classnames/index.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../src/JsonStorage.ts","webpack:///../../src/debounceByAnimationFrame.ts","webpack:///../../src/menu.ts"],"sourcesContent":["export enum K {\n CLICK_TO_FIX_NAVIGATION = \"CLICK_TO_FIX_NAVIGATION\",\n UNPIN_NAVIGATION = \"UNPIN_NAVIGATION\",\n FIXED_NAVIGATION = \"FIXED_NAVIGATION\",\n}\n\nconst en: Locale = {\n UNPIN_NAVIGATION: \"Unpin navigation\",\n FIXED_NAVIGATION: \"Fixed navigation\",\n CLICK_TO_FIX_NAVIGATION: \"Click to {{action}}\",\n};\n\nconst zh: Locale = {\n UNPIN_NAVIGATION: \"取消固定\",\n FIXED_NAVIGATION: \"固定导航\",\n CLICK_TO_FIX_NAVIGATION: \"点击{{action}}\",\n};\n\nexport const NS = \"bricks/nav/eo-sidebar\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [key in K]: string };\n","import React, {\n MouseEventHandler,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport type { EoTooltip, ToolTipProps } from \"@next-bricks/basic/tooltip\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type { SidebarMenu as SidebarMenuType } from \"@next-shared/general/types\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport FixedSvg from \"../images/fixed.svg\";\nimport ToFixedSvg from \"../images/toFixed.svg\";\nimport { debounceByAnimationFrame } from \"@next-shared/general/debounceByAnimationFrame\";\nimport { JsonStorage } from \"@next-shared/general/JsonStorage\";\nimport {\n ExpandedState,\n SIDE_BAR_EXPAND_STATE,\n SIDE_BAR_HAS_BEEN_USED,\n SIDE_BAR_RESIZE_WIDTH,\n SidebarMenu,\n sideBarCollapsedWidth,\n sideBarWidth,\n} from \"./utils.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport classNames from \"classnames\";\nimport { initMenuItemAndMatchCurrentPathKeys } from \"@next-shared/general/menu\";\nimport { UnregisterCallback } from \"history\";\nimport { getHistory, getRuntime } from \"@next-core/runtime\";\nimport { useCurrentApp } from \"@next-core/react-runtime\";\n\ninitializeReactI18n(NS, locales);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedTooltip = wrapBrick<EoTooltip, ToolTipProps>(\"eo-tooltip\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface EoSidebarProps {\n menu: SidebarMenuType;\n expandedState?: ExpandedState;\n hiddenFixedIcon?: boolean;\n position?: \"static\" | \"fixed\";\n}\n\nexport interface EoSidebarEvents {\n \"actual.width.change\": CustomEvent<number>;\n \"expanded.state.change\": CustomEvent<ExpandedState>;\n}\n\nexport interface EoSidebarEventsMapping {\n onActualWidthChange: \"actual.width.change\";\n onExpandedStateChange: \"expanded.state.change\";\n}\n\n/**\n * 侧边栏\n *\n * @category navigation\n */\nexport\n@defineElement(\"eo-sidebar\", {\n styleTexts: [styleText],\n})\nclass EoSidebar extends ReactNextElement implements EoSidebarProps {\n /**\n * 菜单数据\n */\n @property({ attribute: false })\n accessor menu!: SidebarMenuType;\n\n /**\n * 是否隐藏固定按钮\n */\n @property({ type: Boolean })\n accessor hiddenFixedIcon: boolean | undefined;\n\n /**\n * 侧栏状态\n */\n @property()\n accessor expandedState: ExpandedState | undefined;\n\n /**\n * 设置定位方式:静态定位或固定定位。\n *\n * @default \"fixed\"\n */\n @property()\n accessor position: \"static\" | \"fixed\" | undefined;\n\n /**\n * 宽度变化时触发\n * @detail 当前宽度\n */\n @event({ type: \"actual.width.change\" })\n accessor #actualWidthChangeEvent!: EventEmitter<number>;\n #handleActualWidthChange = (actualWidth: number): void => {\n this.#actualWidthChangeEvent.emit(actualWidth);\n };\n\n /**\n * 侧栏状态变化时触发\n * @detail 侧栏状态\n */\n @event({ type: \"expanded.state.change\" })\n accessor #expandedStateChangeEvent!: EventEmitter<ExpandedState>;\n #handleExpandedStateChange = (state: ExpandedState): void => {\n this.expandedState = state;\n this.#expandedStateChangeEvent.emit(state);\n };\n\n render() {\n return (\n <EoSidebarComponent\n menu={this.menu}\n expandedState={this.expandedState}\n hiddenFixedIcon={this.hiddenFixedIcon}\n position={this.position}\n onActualWidthChange={this.#handleActualWidthChange}\n onExpandedStateChange={this.#handleExpandedStateChange}\n />\n );\n }\n}\n\ninterface EoSidebarComponentProps extends EoSidebarProps {\n onActualWidthChange?: (actualWidth: number) => void;\n onExpandedStateChange?: (state: ExpandedState) => void;\n}\n\nexport function EoSidebarComponent(props: EoSidebarComponentProps) {\n const { t } = useTranslation(NS);\n const {\n menu,\n hiddenFixedIcon,\n position,\n onActualWidthChange,\n onExpandedStateChange,\n } = props;\n\n const showUserDefinedIcon = React.useMemo(\n () => getRuntime()?.getFeatureFlags()[\"sidebar-show-user-defined-icon\"],\n []\n );\n\n const storage = useMemo(() => new JsonStorage(localStorage), []);\n const history = getHistory();\n const currentApp = useCurrentApp();\n const [location, setLocation] = useState(history.location);\n const { pathname, search } = location;\n\n const [isFirstUsedTooltip, setIsFirstUsedTooltip] = useState<boolean>(\n !storage.getItem(SIDE_BAR_HAS_BEEN_USED)\n );\n const [showContentShadow, setShowContentShadow] = useState<boolean>();\n const [dragging, setDragging] = useState<boolean>();\n const [expandedState, setExpandedState] = useState<ExpandedState>(\n props.expandedState ||\n storage.getItem(SIDE_BAR_EXPAND_STATE) ||\n ExpandedState.Collapsed\n );\n\n const titleIcon = showUserDefinedIcon ? menu?.icon : currentApp?.menuIcon;\n\n const { selectedKeys, openedKeys, matchedKeys } = useMemo(() => {\n return initMenuItemAndMatchCurrentPathKeys(\n menu?.menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n }, [menu?.menuItems, pathname, search]);\n\n useEffect(() => {\n const unListen: UnregisterCallback = history.listen((location) => {\n setLocation(location);\n });\n return unListen;\n }, [history]);\n\n const contentBottomPlaceholderRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (contentBottomPlaceholderRef.current) {\n const observer = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n if (entry.target === contentBottomPlaceholderRef.current) {\n setShowContentShadow(!entry.isIntersecting);\n }\n });\n },\n { threshold: 1 }\n );\n\n observer.observe(contentBottomPlaceholderRef.current);\n\n return () => {\n observer.disconnect();\n };\n }\n }, []);\n\n useEffect(() => {\n setExpandedState(\n props.expandedState ||\n storage.getItem(SIDE_BAR_EXPAND_STATE) ||\n ExpandedState.Collapsed\n );\n }, [props.expandedState]);\n\n useEffect(() => {\n storage.setItem(\n SIDE_BAR_EXPAND_STATE,\n expandedState === ExpandedState.Expanded\n ? ExpandedState.Expanded\n : ExpandedState.Collapsed\n );\n }, [expandedState]);\n\n const handleFixedIconClick = (): void => {\n setIsFirstUsedTooltip(false);\n storage.setItem(SIDE_BAR_HAS_BEEN_USED, true);\n\n setExpandedState((state) => {\n const newState =\n state === ExpandedState.Expanded\n ? ExpandedState.Collapsed\n : ExpandedState.Expanded;\n\n newState !== state && onExpandedStateChange?.(newState);\n return newState;\n });\n };\n\n const [expandedWidth, setExpandedWidth] = useState<number>(() => {\n // Use parseInt to compatible non-number types\n let memorizedWidth = parseInt(storage.getItem(SIDE_BAR_RESIZE_WIDTH), 10);\n if (memorizedWidth < sideBarWidth || Number.isNaN(memorizedWidth)) {\n memorizedWidth = sideBarWidth;\n }\n return memorizedWidth;\n });\n\n useEffect(() => {\n storage.setItem(SIDE_BAR_RESIZE_WIDTH, expandedWidth);\n }, [expandedWidth]);\n\n const containerRef = useRef<HTMLDivElement>(null);\n\n const handleResizeDown: MouseEventHandler = (e) => {\n setDragging(true);\n\n // Prevent text selection when dragging\n if (e.cancelable) {\n e.preventDefault();\n }\n\n const offsetX = containerRef.current?.getBoundingClientRect().left ?? 0;\n\n const drag = debounceByAnimationFrame((e: MouseEvent) => {\n const x = e.clientX - offsetX;\n const width = x >= sideBarWidth ? x : sideBarWidth;\n\n setExpandedWidth(width);\n });\n const dragEnd = (e: MouseEvent) => {\n setDragging(false);\n e.preventDefault();\n\n window.removeEventListener(\"mousemove\", drag);\n window.removeEventListener(\"mouseup\", dragEnd);\n };\n\n window.addEventListener(\"mousemove\", drag, { passive: true });\n window.addEventListener(\"mouseup\", dragEnd);\n };\n\n const handleMouseEnter = (): void => {\n setExpandedState((state) => {\n const newState =\n state === ExpandedState.Expanded\n ? ExpandedState.Expanded\n : ExpandedState.Hovered;\n\n newState !== state && onExpandedStateChange?.(newState);\n return newState;\n });\n };\n\n const handleMouseLeave = (): void => {\n setExpandedState((state) => {\n const newState =\n state === ExpandedState.Expanded\n ? ExpandedState.Expanded\n : ExpandedState.Collapsed;\n\n newState !== state && onExpandedStateChange?.(newState);\n return newState;\n });\n };\n\n const sidebarActualWidth = useMemo(() => {\n return expandedState === ExpandedState.Expanded\n ? expandedWidth\n : sideBarCollapsedWidth;\n }, [expandedState, expandedWidth]);\n\n useEffect(() => {\n onActualWidthChange?.(sidebarActualWidth);\n }, [onActualWidthChange, sidebarActualWidth]);\n\n const getContainerWidth = (inner?: boolean) => {\n // With static position, when not expanded, the outer container will keep\n // collapsed even if hovered, while only the inner container will expand.\n if (position === \"static\") {\n return expandedState === ExpandedState.Expanded ||\n (inner && expandedState === ExpandedState.Hovered)\n ? expandedWidth\n : sideBarCollapsedWidth;\n }\n return expandedState === ExpandedState.Collapsed\n ? sideBarCollapsedWidth\n : expandedWidth;\n };\n\n useEffect(() => {\n const container = containerRef.current;\n container?.addEventListener(\"mouseenter\", handleMouseEnter);\n container?.addEventListener(\"mouseleave\", handleMouseLeave);\n\n return () => {\n container?.removeEventListener(\"mouseenter\", handleMouseEnter);\n container?.removeEventListener(\"mouseleave\", handleMouseLeave);\n };\n }, []);\n\n return (\n <div\n className={classNames(\"sidebar-container\", `state-${expandedState}`, {\n dragging,\n })}\n style={{ width: getContainerWidth() }}\n ref={containerRef}\n data-testid=\"side-bar\"\n >\n <div className=\"inner\" style={{ width: getContainerWidth(true) }}>\n <div className=\"header\">\n <div className=\"menu-title\">\n <div className={classNames(\"menu-title-icon-container\")}>\n {titleIcon ? (\n <WrappedIcon\n {...(titleIcon as GeneralIconProps)}\n className=\"menu-title-icon\"\n />\n ) : (\n <span className=\"menu-title-point\" />\n )}\n </div>\n <div className=\"menu-title-text\" title={menu?.title}>\n {menu?.title}\n </div>\n </div>\n </div>\n\n <div\n className={classNames(\"content\", {\n \"show-shadow\": showContentShadow,\n })}\n >\n <SidebarMenu\n selectedKeys={selectedKeys}\n openedKeys={openedKeys}\n matchedKeys={matchedKeys}\n menu={menu}\n expandedState={expandedState}\n />\n <div ref={contentBottomPlaceholderRef} />\n </div>\n\n <div className=\"footer\">\n {!hiddenFixedIcon && (\n <WrappedTooltip\n content={\n (expandedState === ExpandedState.Expanded\n ? isFirstUsedTooltip\n ? t(K.CLICK_TO_FIX_NAVIGATION, {\n action: t(K.UNPIN_NAVIGATION),\n })\n : t(K.UNPIN_NAVIGATION)\n : isFirstUsedTooltip\n ? t(K.CLICK_TO_FIX_NAVIGATION, {\n action: t(K.FIXED_NAVIGATION),\n })\n : t(K.FIXED_NAVIGATION)) as string\n }\n >\n <i className=\"fixed-icon\" onClick={handleFixedIconClick}>\n <FixedSvg\n style={{\n display:\n expandedState === ExpandedState.Expanded\n ? undefined\n : \"none\",\n }}\n />\n <ToFixedSvg\n style={{\n display:\n expandedState === ExpandedState.Expanded\n ? \"none\"\n : undefined,\n }}\n />\n </i>\n </WrappedTooltip>\n )}\n </div>\n {expandedState === ExpandedState.Expanded && (\n <span className=\"resize-line\" onMouseDown={handleResizeDown} />\n )}\n </div>\n </div>\n );\n}\n","import React, {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useRef,\n} from \"react\";\nimport { getCssPropertyValue } from \"@next-core/runtime\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n SidebarMenu as SidebarMenuType,\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport type {\n EoSidebarMenu,\n EoSidebarMenuProps,\n} from \"./sidebar-menu/index.js\";\nimport type {\n EoSidebarMenuItem,\n EoSidebarMenuItemProps,\n} from \"./sidebar-menu-item/index.js\";\nimport type {\n EoSidebarMenuGroup,\n EoSidebarMenuGroupProps,\n} from \"./sidebar-menu-group/index.js\";\nimport type {\n EoSidebarMenuSubmenu,\n EoSidebarMenuSubmenuProps,\n} from \"./sidebar-menu-submenu/index.js\";\n\nconst sidebarMenuItemTagNameSet = new Set([\n \"EO-SIDEBAR-MENU-ITEM\",\n \"EO-SIDEBAR-MENU-GROUP\",\n \"EO-SIDEBAR-MENU-SUBMENU\",\n]);\n\nconst isSidebarMenuItem = (element: Element) =>\n sidebarMenuItemTagNameSet.has(element.tagName);\n\nexport function useUpdateMenuCollapsedState(menuCollapsed?: boolean) {\n const slotRef = useRef<HTMLSlotElement>(null);\n\n const updateChildrenMenuCollapsedState = useCallback(() => {\n slotRef.current?.assignedElements().forEach((ele) => {\n if (isSidebarMenuItem(ele)) {\n (ele as any).menuCollapsed = menuCollapsed;\n }\n });\n }, [menuCollapsed]);\n\n useEffect(() => {\n updateChildrenMenuCollapsedState();\n }, [menuCollapsed, updateChildrenMenuCollapsedState]);\n\n useEffect(() => {\n const slotElem = slotRef.current;\n const handleSlotchange = () => {\n updateChildrenMenuCollapsedState();\n };\n slotElem?.addEventListener(\"slotchange\", handleSlotchange);\n\n return () => {\n slotElem?.removeEventListener(\"slotchange\", handleSlotchange);\n };\n }, [updateChildrenMenuCollapsedState]);\n\n return [slotRef];\n}\n\nexport const SIDE_BAR_HAS_BEEN_USED = \"side-bar-has-been-used\";\nexport const SIDE_BAR_EXPAND_STATE = \"side-bar-expand-state\";\nexport const SIDE_BAR_RESIZE_WIDTH = \"side-bar-resize-width\";\n\nexport enum ExpandedState {\n Collapsed = \"collapsed\",\n Hovered = \"hovered\",\n Expanded = \"expanded\",\n}\n\nexport const sideBarWidth =\n parseInt(getCssPropertyValue(\"--side-bar-width\", document.body), 10) || 220;\nexport const sideBarCollapsedWidth =\n parseInt(\n getCssPropertyValue(\"--side-bar-collapsed-width\", document.body),\n 10\n ) || 60;\n\ninterface ContextOfSidebarMenu {\n selectedKeys: string[];\n openedKeys: string[];\n matchedKeys: string[];\n}\n\nconst SidebarMenuContext = createContext<ContextOfSidebarMenu>({\n selectedKeys: [],\n openedKeys: [],\n matchedKeys: [],\n});\n\nconst WrappedSidebarMenu = wrapBrick<EoSidebarMenu, EoSidebarMenuProps>(\n \"eo-sidebar-menu\"\n);\nconst WrappedSidebarMenuItem = wrapBrick<\n EoSidebarMenuItem,\n EoSidebarMenuItemProps\n>(\"eo-sidebar-menu-item\");\nconst WrappedSidebarMenuGroup = wrapBrick<\n EoSidebarMenuGroup,\n EoSidebarMenuGroupProps\n>(\"eo-sidebar-menu-group\");\nconst WrappedSidebarMenuSubmenu = wrapBrick<\n EoSidebarMenuSubmenu,\n EoSidebarMenuSubmenuProps\n>(\"eo-sidebar-menu-submenu\");\n\nfunction MenuSimpleItem(\n props: SidebarMenuSimpleItem & { id?: string; inSubmenu?: boolean }\n) {\n const { to, href, target, icon, text, id, inSubmenu } = props;\n const { selectedKeys } = useContext(SidebarMenuContext);\n\n return (\n <WrappedSidebarMenuItem\n url={to as any}\n href={href}\n target={target as any}\n icon={icon}\n inSubmenu={inSubmenu}\n selected={selectedKeys.includes(id!)}\n >\n {text}\n </WrappedSidebarMenuItem>\n );\n}\n\nfunction MenuGroup(\n props: SidebarMenuGroup & { id?: string; top?: boolean; inSubmenu?: boolean }\n) {\n const { title, items, id, top, inSubmenu } = props;\n const { matchedKeys } = useContext(SidebarMenuContext);\n const isSelected = id && matchedKeys.includes(id);\n\n if (items?.length > 0) {\n return (\n <WrappedSidebarMenuGroup selected={!!isSelected} collapsable={!top}>\n <span slot=\"title\">{title}</span>\n {props.items.map((item) => {\n return (\n <MenuItem\n key={item.key}\n {...item}\n id={item.key}\n top={false}\n inSubmenu={inSubmenu}\n />\n );\n })}\n </WrappedSidebarMenuGroup>\n );\n }\n return null;\n}\n\nfunction MenuSubmenu(props: SidebarMenuGroup & { id?: string }) {\n const { title, icon, items, id } = props;\n const { openedKeys, matchedKeys } = useContext(SidebarMenuContext);\n const isSelected = id && matchedKeys.includes(id);\n\n if (items?.length > 0) {\n return (\n <WrappedSidebarMenuSubmenu\n icon={icon}\n collapsed={!openedKeys.includes(id!)}\n selected={!!isSelected}\n >\n <span slot=\"title\">{title}</span>\n {props.items.map((item) => {\n return (\n <MenuItem\n key={item.key}\n {...item}\n id={item.key}\n top={false}\n inSubmenu={true}\n />\n );\n })}\n </WrappedSidebarMenuSubmenu>\n );\n }\n return null;\n}\n\nfunction MenuItem(\n props: SidebarMenuItem & { id?: string; top?: boolean; inSubmenu?: boolean }\n) {\n if (props.type === \"subMenu\") {\n return <MenuSubmenu {...props} />;\n } else if (props.type === \"group\") {\n return <MenuGroup {...props} />;\n } else {\n return <MenuSimpleItem {...(props as SidebarMenuSimpleItem)} />;\n }\n}\n\nexport function SidebarMenu(props: {\n menu?: SidebarMenuType;\n expandedState: ExpandedState;\n selectedKeys?: string[];\n openedKeys?: string[];\n matchedKeys?: string[];\n}) {\n const { menu, expandedState, selectedKeys, openedKeys, matchedKeys } = props;\n\n return (\n <SidebarMenuContext.Provider\n value={{\n selectedKeys: selectedKeys || [],\n openedKeys: openedKeys || [],\n matchedKeys: matchedKeys || [],\n }}\n >\n <WrappedSidebarMenu\n menuCollapsed={expandedState === ExpandedState.Collapsed}\n >\n {menu?.menuItems?.map((item) => {\n return <MenuItem key={item.key} {...item} id={item.key} top={true} />;\n })}\n </WrappedSidebarMenu>\n </SidebarMenuContext.Provider>\n );\n}\n","import * as React from \"react\";\nconst SvgFixed = props => <svg xmlns=\"http://www.w3.org/2000/svg\" width={20} height={20} viewBox=\"0 0 20 20\" {...props}><g fill=\"none\" fillRule=\"evenodd\"><path d=\"M0 0h20v20H0z\" /><path fill=\"#595959\" fillRule=\"nonzero\" d=\"m14.599 11.59-1.685-1.606-.348-4.876.93-1.044s.617-.93-.62-1.045L7.323 3s-.85.657-.097 1.296l.754.755-.385 4.76-1.49 1.683s-.388.774.328 1.065l2.961-.02.668 3.887H6.388V17h7.832v-.574h-3.743l.6-3.946 3.154.097s.812-.464.368-.986\" /></g></svg>;\nexport default SvgFixed;","import * as React from \"react\";\nconst SvgToFixed = props => <svg xmlns=\"http://www.w3.org/2000/svg\" width={20} height={20} viewBox=\"0 0 20 20\" {...props}><g fill=\"none\" fillRule=\"evenodd\"><path d=\"M0 0h20v20H0z\" /><path fill=\"#595959\" fillRule=\"nonzero\" d=\"m13.06 3.765 3.22 3.08c.42.28.42.84.14 1.26-.42.42-.98.42-1.26.14l-.14-.14-.28-.28-3.22 4.62.98.98c.28.42.28.98-.14 1.26-.28.28-.7.28-1.12 0l-5.88-6.02q-.42-.63 0-1.26c.28-.28.84-.28 1.12 0l.98.98 4.62-3.22-.14-.14c-.42-.42-.42-.84-.14-1.26.28-.28.84-.42 1.26 0m-4.76 9.1-1.12-1.12c-.98 1.12-2.52 2.8-2.8 3.22-.42.42-.7.98-.98 1.54q1.05-.21 1.68-.84c.42-.28 2.1-1.82 3.22-2.8\" /></g></svg>;\nexport default SvgToFixed;","// 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}:host([position=\"static\"]){height:100%}*,\n*::before,\n*::after{box-sizing:border-box}.sidebar-container{position:relative;z-index:998;height:100%}.sidebar-container,\n.inner{transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}:host(:not([position=\"static\"])) .sidebar-container{position:fixed;left:0;top:var(--app-bar-height);height:calc(100vh - var(--app-bar-height))}.inner{position:absolute;left:0;height:100%;display:flex;flex-direction:column;background-color:var(--left-menu-bg);border-right:1px solid var(--left-sidebar-border-right)}.inner:hover{background-color:var(--left-menu-hover-bg)}.inner::before{content:\"\";position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;background:var(--sidebar-bg)}.header{padding:0 12px;margin-top:14px;height:52px;flex-shrink:0}.menu-title{height:100%;display:flex;align-items:center;color:var(--left-sidebar-large-title-color)}.menu-title-icon-container{flex-shrink:0;display:flex;justify-content:center;align-items:center;width:20px;height:20px;font-size:20px;line-height:0;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-title-icon{color:var(--left-sidebar-item-collapsed-icon-color)}.menu-title-point{width:4px;height:4px;background:var(--antd-text-color);border-radius:50%}.menu-title-text{font-size:16px;font-weight:var(--font-weight-500);color:var(--left-sidebar-large-title-color);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.state-collapsed .menu-title{padding:0 calc(50% - 10px)}.state-hovered .menu-title,\n.state-expanded .menu-title{padding:0 12px}.state-collapsed .menu-title-icon-container{margin-right:12px}.state-hovered .menu-title-icon-container,\n.state-expanded .menu-title-icon-container{margin-right:0;width:0;opacity:0}.content{padding:0 12px;flex:1;overflow-y:auto;scrollbar-width:none}.content::-webkit-scrollbar{width:0;background:transparent}.content.show-shadow{box-shadow:0 -17px 10px -16px rgb(0 0 0/8%) inset}.footer{height:60px;flex-shrink:0;display:flex;align-items:center;justify-content:flex-end}.fixed-icon{display:flex;justify-content:center;align-items:center;width:20px;height:20px;margin-right:8px;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.fixed-icon > svg{width:100%;height:100%}.fixed-icon:hover > svg path[fill]{fill:var(--color-brand)}.state-collapsed .fixed-icon{visibility:hidden;opacity:0}.state-hovered .fixed-icon,\n.state-expanded .fixed-icon{visibility:visible;opacity:1}.state-hovered .inner{box-shadow:var(--left-sidebar-shadow)}.resize-line{position:absolute;right:-2px;height:100%;width:2px;cursor:col-resize}.resize-line:hover,\n.resize-line:active{background-color:rgba(26,122,255,1)}.dragging,\n.dragging .inner{transition:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","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","export type SimpleFunction<P extends unknown[] = unknown[], R = unknown> = (\n ...args: P\n) => R;\n\n// The debounce function receives our function as a parameter\nexport function debounceByAnimationFrame<P extends unknown[]>(\n fn: SimpleFunction<P, void>\n): SimpleFunction<P, void> & { cancel: () => void } {\n // This holds the requestAnimationFrame reference, so we can cancel it if we wish\n let frame: number;\n\n const cancel = () => cancelAnimationFrame(frame);\n\n // The debounce function returns a new function that can receive a variable number of arguments\n const func = (...params: P) => {\n // If the frame variable has been defined, clear it now, and queue for next frame\n if (frame) {\n cancel();\n }\n\n // Queue our function call for the next frame\n frame = requestAnimationFrame(() => {\n // Call our function and pass any params we received\n fn(...params);\n });\n };\n\n func.cancel = cancel;\n\n return func;\n}\n","import { Location, parsePath } from \"history\";\nimport { matchPath } from \"@next-core/runtime\";\nimport type {\n SidebarMenuSimpleItem,\n SidebarMenuItem,\n SidebarMenuGroup,\n} from \"./types.js\";\n\nexport function isGroup(item: SidebarMenuItem): item is SidebarMenuGroup {\n return item.type === \"group\";\n}\n\nexport function isSubMenu(\n item: SidebarMenuItem,\n groupAsSubMenu?: boolean\n): item is SidebarMenuGroup {\n return Boolean(\n item.type === \"subMenu\" || (groupAsSubMenu && item.type === \"group\")\n );\n}\n\nexport function initMenuItemAndMatchCurrentPathKeys(\n menuItems: SidebarMenuItem[],\n pathname: string,\n search: string,\n parentCursor: string\n): {\n selectedKeys: string[];\n openedKeys: string[];\n matchedKeys: string[];\n} {\n const selectedKeys: string[] = [];\n const openedKeys: string[] = [];\n const matchedKeys: string[] = [];\n\n let cursor = 0;\n menuItems.forEach((item) => {\n // key的格式最终为0,1,2,0.1,0.2,0.1.1,0.1.2\n item.key = parentCursor === \"\" ? `${cursor}` : `${parentCursor}.${cursor}`;\n if (isGroup(item) || isSubMenu(item)) {\n const tmp = initMenuItemAndMatchCurrentPathKeys(\n item.items,\n pathname,\n search,\n item.key\n );\n selectedKeys.push(...tmp.selectedKeys);\n if (tmp.selectedKeys.length || item.defaultExpanded) {\n openedKeys.push(item.key);\n }\n openedKeys.push(...tmp.openedKeys);\n matchedKeys.push(...tmp.matchedKeys);\n } else {\n if (matchMenuItem(item, pathname, search)) {\n selectedKeys.push(String(item.key));\n\n const keyPath = item.key.split(\".\");\n\n for (let i = 0; i < keyPath.length; i++) {\n matchedKeys.push(keyPath.slice(0, i + 1).join(\".\"));\n }\n }\n }\n cursor += 1;\n });\n if (selectedKeys.length && parentCursor !== \"\") {\n openedKeys.push(parentCursor);\n }\n return {\n selectedKeys: selectedKeys,\n openedKeys: openedKeys,\n matchedKeys: matchedKeys,\n };\n}\n\nfunction getMatchOfSearch(\n currentSearch: string,\n toSearch: string | undefined\n): boolean {\n const current = new URLSearchParams(currentSearch);\n const to = new URLSearchParams(toSearch);\n for (const [key, value] of to.entries()) {\n // Allow `?k=` to match `?` (when `k` doesn't exist)\n if ((current.get(key) ?? \"\") !== value) {\n return false;\n }\n }\n return true;\n}\n\nexport function matchMenuItem(\n item: SidebarMenuSimpleItem,\n pathname: string,\n search: string\n): boolean {\n if (!item.to) return false;\n const to = typeof item.to === \"object\" ? item.to : parsePath(item.to);\n\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath = to.pathname!.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n let match = !!matchPath(pathname, {\n path: escapedPath,\n exact: item.exact,\n });\n\n if (match && item.activeMatchSearch) {\n match = getMatchOfSearch(search, to.search);\n }\n\n if (!match && Array.isArray(item.activeIncludes)) {\n for (const include of item.activeIncludes) {\n let parseInclude: Location | undefined;\n const hasSearch = include.includes(\"?\");\n\n if (hasSearch) {\n parseInclude = parsePath(include);\n }\n match = !!matchPath(pathname, {\n path: hasSearch ? parseInclude!.pathname : include,\n exact: true,\n });\n\n if (match && parseInclude?.search) {\n match = getMatchOfSearch(search, parseInclude.search);\n }\n\n if (match) {\n break;\n }\n }\n }\n\n if (match && Array.isArray(item.activeExcludes)) {\n for (const include of item.activeExcludes) {\n match = !matchPath(pathname, {\n path: include,\n exact: true,\n });\n if (!match) {\n break;\n }\n }\n }\n\n return match;\n}\n"],"names":["K","NS","locales","en","UNPIN_NAVIGATION","FIXED_NAVIGATION","CLICK_TO_FIX_NAVIGATION","zh","initializeReactI18n","_EoSidebar","defineElement","property","event","createDecorators","WrappedTooltip","wrapBrick","WrappedIcon","_A","WeakMap","_B","_C","_D","_E","_EoSidebar_brand","WeakSet","_handleActualWidthChange","_F","_handleExpandedStateChange","EoSidebar","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_menu","_init_extra_menu","_init_hiddenFixedIcon","_init_extra_hiddenFixedIcon","_init_expandedState","_init_extra_expandedState","_init_position","_init_extra_position","_init_actualWidthChangeEvent","_init_extra_actualWidthChangeEvent","actualWidth","_classPrivateGetter","this","_get_actualWidthChangeEvent","emit","_init_expandedStateChangeEvent","_init_extra_expandedStateChangeEvent","state","expandedState","_get_expandedStateChangeEvent","menu","_classPrivateFieldGet","v","_classPrivateFieldSet","hiddenFixedIcon","position","render","React","EoSidebarComponent","onActualWidthChange","onExpandedStateChange","props","useTranslation","showUserDefinedIcon","_getRuntime","getRuntime","getFeatureFlags","storage","useMemo","JsonStorage","localStorage","history","getHistory","currentApp","useCurrentApp","location","setLocation","useState","pathname","search","isFirstUsedTooltip","setIsFirstUsedTooltip","getItem","SIDE_BAR_HAS_BEEN_USED","showContentShadow","setShowContentShadow","dragging","setDragging","setExpandedState","SIDE_BAR_EXPAND_STATE","ExpandedState","Collapsed","titleIcon","icon","menuIcon","selectedKeys","openedKeys","matchedKeys","_menu$menuItems","initMenuItemAndMatchCurrentPathKeys","menuItems","useEffect","unListen","listen","contentBottomPlaceholderRef","useRef","current","observer","IntersectionObserver","entries","forEach","entry","target","isIntersecting","threshold","observe","disconnect","setItem","Expanded","expandedWidth","setExpandedWidth","memorizedWidth","parseInt","SIDE_BAR_RESIZE_WIDTH","sideBarWidth","Number","isNaN","containerRef","handleMouseEnter","newState","Hovered","handleMouseLeave","sidebarActualWidth","sideBarCollapsedWidth","getContainerWidth","inner","container","addEventListener","removeEventListener","className","classNames","concat","style","width","ref","_extends","title","SidebarMenu","content","t","action","onClick","handleFixedIconClick","FixedSvg","display","undefined","ToFixedSvg","onMouseDown","e","_containerRef$current","_containerRef$current2","cancelable","preventDefault","offsetX","getBoundingClientRect","left","drag","debounceByAnimationFrame","x","clientX","dragEnd","window","passive","_EoSidebar2","_set_actualWidthChangeEvent","_set_expandedStateChangeEvent","c","_initClass","_applyDecs","styleTexts","styleText","attribute","type","Boolean","o","_","has","_checkInRHS","sidebarMenuItemTagNameSet","Set","isSidebarMenuItem","element","tagName","useUpdateMenuCollapsedState","menuCollapsed","slotRef","updateChildrenMenuCollapsedState","useCallback","_slotRef$current","assignedElements","ele","slotElem","handleSlotchange","getCssPropertyValue","document","body","SidebarMenuContext","createContext","WrappedSidebarMenu","WrappedSidebarMenuItem","WrappedSidebarMenuGroup","WrappedSidebarMenuSubmenu","MenuSimpleItem","to","href","text","id","inSubmenu","useContext","url","selected","includes","MenuGroup","items","top","isSelected","length","collapsable","slot","map","item","MenuItem","key","MenuSubmenu","collapsed","Provider","value","xmlns","height","viewBox","fill","fillRule","d","___CSS_LOADER_EXPORT___","push","module","toString","exports","cssWithMappingToString","list","needLayer","join","i","modules","media","dedupe","supports","layer","alreadyImportedModules","k","_k","hasOwn","hasOwnProperty","classes","arg","appendClass","parseValue","Array","isArray","apply","Object","prototype","call","newClass","default","TypeError","_checkPrivateRedeclaration","obj","privateCollection","privateMap","set","privateSet","add","assign","bind","source","setFunctionName","n","description","defineProperty","configurable","toPropertyKey","r","Symbol","toPrimitive","String","_typeof","iterator","prefix","name","JSON","stringify","parse","removeItem","clear","fn","frame","cancel","cancelAnimationFrame","func","_len","params","_key","requestAnimationFrame","isGroup","isSubMenu","groupAsSubMenu","parentCursor","cursor","tmp","defaultExpanded","parsePath","escapedPath","replace","match","matchPath","path","exact","activeMatchSearch","getMatchOfSearch","activeIncludes","include","_parseInclude","parseInclude","hasSearch","activeExcludes","_include","matchMenuItem","keyPath","split","slice","currentSearch","toSearch","URLSearchParams","_current$get","get"],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ /*! For license information please see launchpad-config.f652114f.js.LICENSE.txt */
2
+ (self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[4344,1369,3750,2052],{9248:(e,t,n)=>{"use strict";n.d(t,{r:()=>p});var r=n(9575),i=n(8769),o=n.n(i),a=n(1030),c=n(3373),l=n.n(c),u=n(4),s=n(10),m=n(6659);function p(e){var{data:t,actions:n,onActionClick:r}=e,{name:a,items:c}=t,[m,p]=(0,i.useState)(!1),h=(0,i.useMemo)((()=>null==n?void 0:n.filter((e=>(0,u.checkIfByTransform)(e,{type:"group"})))),[n]),g=(0,i.useCallback)((e=>{null==r||r({data:t,action:e.detail})}),[t,r]);return o().createElement("li",{className:l()("menu-group",{empty:0===c.length})},o().createElement("div",{className:"menu-group-label-wrapper"},o().createElement("span",{className:"menu-group-label"},a),o().createElement(s.qb,{actions:h,onVisibleChange:e=>{p(e.detail)},onActionClick:g},o().createElement(s.Bj,{lib:"fa",icon:"gear",className:l()("menu-config",{active:m})}))),o().createElement("ul",{className:"menu"},c.map((e=>"dir"===e.type?o().createElement(d,{key:e.instanceId,data:e,actions:n,onActionClick:r}):o().createElement(f,{key:"".concat(e.type,"-").concat(e.id),data:e,actions:n,onActionClick:r})))))}function f(e){var t,{data:n,actions:c,onActionClick:p}=e,f=(0,i.useMemo)((()=>"app"===n.type?(0,m.F)(n.locales,n.name):n.name),[n]),[d,h]=(0,i.useState)(!1),g=(0,i.useMemo)((()=>null==c?void 0:c.filter((e=>(0,u.checkIfByTransform)(e,n)))),[c,n]),v=(0,i.useCallback)((e=>{null==p||p({data:n,action:e.detail})}),[n,p]);return o().createElement("li",{className:"menu-item"},o().createElement(s.EM,null,o().createElement(s.Bj,(0,r.A)({className:"menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(t=n.menuIcon)&&void 0!==t&&t.lib&&n.menuIcon.icon?(0,a.pick)(n.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},f)),o().createElement(s.qb,{actions:g,onVisibleChange:e=>{h(e.detail)},onActionClick:v},o().createElement(s.Bj,{lib:"fa",icon:"gear",className:l()("menu-config",{active:d})})))}function d(e){var{data:t,actions:n,onActionClick:r}=e,{name:a,items:c}=t,[m,p]=(0,i.useState)(!1),[d,h]=(0,i.useState)(!1),g=(0,i.useMemo)((()=>null==n?void 0:n.filter((e=>(0,u.checkIfByTransform)(e,{type:"dir"})))),[n]),v=(0,i.useCallback)((()=>{h((e=>!e))}),[]),b=(0,i.useCallback)((e=>{null==r||r({data:t,action:e.detail})}),[t,r]);return o().createElement("li",{className:l()("menu-item folder",{empty:0===c.length})},o().createElement("div",{className:"menu-folder-label-wrapper"},o().createElement(s.EM,{onClick:v},o().createElement(s.Bj,{lib:"fa",prefix:"far",icon:"folder-open",className:"menu-icon"}),o().createElement("span",{className:"menu-item-label"},a),o().createElement(s.Bj,{lib:"antd",icon:d?"up":"down",className:"menu-item-toggle"})),o().createElement(s.qb,{actions:g,onVisibleChange:e=>{p(e.detail)},onActionClick:b},o().createElement(s.Bj,{lib:"fa",icon:"gear",className:l()("menu-config",{active:m})}))),o().createElement("ul",{className:l()("sub-menu",{expanded:d})},c.map((e=>o().createElement(f,{key:e.instanceId,data:e,actions:n,onActionClick:r})))))}},5658:(e,t,n)=>{"use strict";n.r(t),n.d(t,{LaunchpadConfig:()=>S,LaunchpadConfigComponent:()=>_});var r,i,o,a,c,l,u,s,m,p,f=n(4635),d=n(918),h=n(1369),g=n(8449),v=n(6902),b=n(8769),y=n.n(b),w=n(9929),k=n(9938),x=(n(330),n(9248)),A=n(4081);function E(e,t,n){return e.set(j(e,t),n),n}function C(e,t){return e.get(j(e,t))}function j(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}var S,{defineElement:N,property:O,event:B}=(0,w.createDecorators)(),T=new WeakMap,I=new WeakMap,M=new WeakMap,P=new WeakSet,z=new WeakMap;class G extends k.ReactNextElement{constructor(){super(...arguments),(0,f.A)(this,P),(0,d.A)(this,T,i(this)),(0,d.A)(this,I,(o(this),a(this))),(0,d.A)(this,M,(c(this),l(this))),(0,d.A)(this,z,(m(this),e=>{var t,n;(t=P,this,n=u,n(j(t,this))).emit(e)}))}get menuGroups(){return C(T,this)}set menuGroups(e){E(T,this,e)}get actions(){return C(I,this)}set actions(e){E(I,this,e)}render(){return y().createElement(_,{menuGroups:this.menuGroups,actions:this.actions,onActionClick:C(z,this)})}}function _(e){var{menuGroups:t,actions:n,onActionClick:r}=e;return y().createElement("ul",{className:"menu-groups"},null==t?void 0:t.map((e=>y().createElement(x.r,{key:e.instanceId,data:e,actions:n,onActionClick:r}))))}p=G,({e:[i,o,a,c,l,u,s,m],c:[S,r]}=function(e,t,n,r,i,o){var a,c,l,u,s,m,p,f=Symbol.metadata||Symbol.for("Symbol.metadata"),d=Object.defineProperty,b=Object.create,y=[b(null),b(null)],w=t.length;function k(t,n,r){return function(i,o){n&&(o=i,i=e);for(var a=0;a<t.length;a++)o=t[a].apply(i,r?[o]:[]);return r?o:i}}function x(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function A(e,t,n,r,i,o,l,u,s,m,p){function f(e){if(!p(e))throw new TypeError("Attempted to access private element on non-instance")}var h=[].concat(t[0]),v=t[3],b=!l,w=1===i,A=3===i,E=4===i,C=2===i;function j(t,n,r){return function(i,o){return n&&(o=i,i=e),r&&r(i),S[t].call(i,o)}}if(!b){var S={},N=[],O=A?"get":E||w?"set":"value";if(s?(m||w?S={get:(0,g.A)((function(){return v(this)}),r,"get"),set:function(e){t[4](this,e)}}:S[O]=v,m||(0,g.A)(S[O],r,C?"":O)):m||(S=Object.getOwnPropertyDescriptor(e,r)),!m&&!s){if((c=y[+u][r])&&7!=(c^i))throw new Error("Decorating two elements with the same name ("+S[O].name+") is not supported yet");y[+u][r]=i<3?1:i}}for(var B=e,T=h.length-1;T>=0;T-=n?2:1){var I=h[T],M=n?h[T-1]:void 0,P={},z={kind:["field","accessor","method","getter","setter","class"][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw new Error("attempted to call addInitializer after decoration was finished");x(t,"An initializer","be",!0),o.push(t)}.bind(null,P)};if(b)c=I.call(M,B,z),P.v=1,x(c,"class decorators","return")&&(B=c);else if(z.static=u,z.private=s,c=z.access={has:s?p.bind():function(e){return r in e}},E||(c.get=s?C?function(e){return f(e),S.value}:j("get",0,f):function(e){return e[r]}),C||A||(c.set=s?j("set",0,f):function(e,t){e[r]=t}),B=I.call(M,w?{get:S.get,set:S.set}:S[O],z),P.v=1,w){if("object"==typeof B&&B)(c=x(B.get,"accessor.get"))&&(S.get=c),(c=x(B.set,"accessor.set"))&&(S.set=c),(c=x(B.init,"accessor.init"))&&N.unshift(c);else if(void 0!==B)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else x(B,(m?"field":"method")+" decorators","return")&&(m?N.unshift(B):S[O]=B)}return i<2&&l.push(k(N,u,1),k(o,u,0)),m||b||(s?w?l.splice(-1,0,j("get",u),j("set",u)):l.push(C?S[O]:x.call.bind(S[O])):d(e,r,S)),B}function E(e){return d(e,f,{configurable:!0,enumerable:!0,value:a})}return void 0!==o&&(a=o[f]),a=b(null==a?null:a),s=[],m=function(e){e&&s.push(k(e))},(p=function(t,r){for(var o=0;o<n.length;o++){var a=n[o],c=a[1],m=7&c;if((8&c)==t&&!m==r){var p=a[2],f=!!a[3],d=16&c;A(t?e:e.prototype,a,d,f?"#"+p:(0,h.A)(p),m,m<2?[]:t?u=u||[]:l=l||[],s,!!t,f,r,t&&f?function(t){return(0,v.A)(t)===e}:i)}}})(8,0),p(0,0),p(8,1),p(0,1),m(l),m(u),c=s,w||E(e),{e:c,get c(){var n=[];return w&&[E(e=A(e,[t],0,e.name,5,n)),k(n,1)]}}}(p,[N("nav.launchpad-config",{styleTexts:[A.A]})],[[O({attribute:!1}),1,"menuGroups"],[O({attribute:!1}),1,"actions"],[B({type:"action.click"}),1,"actionClickEvent",e=>C(M,e),(e,t)=>E(M,e,t)]],0,(e=>z.has((0,v.A)(e))),k.ReactNextElement)),r()},10:(e,t,n)=>{"use strict";n.d(t,{Bj:()=>o,EM:()=>a,qb:()=>c});var r=n(9938),i=n(8438),o=(0,r.wrapBrick)("eo-icon"),a=(0,r.wrapBrick)("eo-link"),c=(0,r.wrapBrick)("eo-dropdown-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"});(0,i.unwrapProvider)("basic.show-dialog")},6659:(e,t,n)=>{"use strict";n.d(t,{F:()=>i});var r=n(7058);function i(e,t){var n;if(!e)return t;var i=Object.fromEntries(Object.entries(e).filter((e=>{var[t,n]=e;return n.name})).map((e=>{var[t,n]=e;return[t,n.name]})));return null!==(n=(0,r.i18nText)(i))&&void 0!==n?n:t}},4081:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(6758),i=n.n(r),o=n(935),a=n.n(o)()(i());a.push([e.id,":host{display:block;--local-menu-icon-color:#8c8c8c}:host([hidden]){display:none;--local-menu-icon-color:rgba(255,255,255,0.45)}ul{list-style:none;margin:0;padding:0}.menu-groups{display:grid;grid-gap:32px 16px;gap:32px 16px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-folder-label-wrapper > eo-link,\n.menu-item > eo-link{display:block}.menu-folder-label-wrapper > eo-link::part(link),\n.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-group-label-wrapper,\n.menu-folder-label-wrapper,\n.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-group-label-wrapper{gap:3px}.menu-group:not(.empty) .menu-group-label-wrapper{margin-bottom:14px}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text)}.menu-icon{color:var(--local-menu-icon-color)}.menu-folder-label-wrapper > eo-link,\n.menu-item > eo-link{max-width:100%;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;min-width:0}.sub-menu:not(.expanded){display:none}.sub-menu{margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item:not(.empty) .sub-menu{margin-top:14px}.menu-item-toggle{color:var(--color-secondary-text)}.menu-config{visibility:hidden;color:var(--color-brand);cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;width:0}.menu-config.active,\n.menu-group-label-wrapper:hover .menu-config,\n.menu-item:not(.folder):hover .menu-config,\n.menu-folder-label-wrapper:hover .menu-config{visibility:visible;width:24px}.menu-config:hover,\n.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-folder-label-wrapper > eo-link:hover::part(link),\n.menu-folder-label-wrapper > eo-link:hover .menu-icon,\n.menu-folder-label-wrapper > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.sub-menu,\n .menu,\n .menu-group-label-wrapper,\n .menu-folder-label-wrapper,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.menu-icon{margin-right:8px}eo-dropdown-actions,\n .menu-item-toggle{margin-left:8px}}",""]);const c=a.toString()},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,i,o){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(r)for(var c=0;c<this.length;c++){var l=this[c][0];null!=l&&(a[l]=!0)}for(var u=0;u<e.length;u++){var s=[].concat(e[u]);r&&a[s[0]]||(void 0!==o&&(void 0===s[5]||(s[1]="@layer".concat(s[5].length>0?" ".concat(s[5]):""," {").concat(s[1],"}")),s[5]=o),n&&(s[2]?(s[1]="@media ".concat(s[2]," {").concat(s[1],"}"),s[2]=n):s[2]=n),i&&(s[4]?(s[1]="@supports (".concat(s[4],") {").concat(s[1],"}"),s[4]=i):s[4]="".concat(i)),t.push(s))}},t}},6758:e=>{"use strict";e.exports=function(e){return e[1]}},3373:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function i(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=a(e,o(n)))}return e}function o(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return i.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=a(t,n));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(i.default=i,e.exports=i):void 0===(n=function(){return i}.apply(t,[]))||(e.exports=n)}()},6902:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(7545);function i(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.A)(e):"null"));return e}},2016:(e,t,n)=>{"use strict";function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>r})},918:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(2016);function i(e,t,n){(0,r.A)(e,t),t.set(e,n)}},4635:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(2016);function i(e,t){(0,r.A)(e,t),t.add(e)}},9575:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{A:()=>r})},8449:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(7545);function i(e,t,n){"symbol"==(0,r.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}},1369:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(7545);function i(e){var t=function(e,t){if("object"!=(0,r.A)(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,"string");if("object"!=(0,r.A)(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:String(t)}},7545:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})}}]);
3
+ //# sourceMappingURL=launchpad-config.f652114f.js.map