@next-bricks/nav 1.22.7 → 1.22.9

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 (134) hide show
  1. package/dist/bricks.json +26 -26
  2. package/dist/chunks/{1889.2cc36eb0.js → 1889.5ec75a7c.js} +2 -2
  3. package/dist/chunks/1889.5ec75a7c.js.map +1 -0
  4. package/dist/chunks/2133.a757ee32.js +2 -0
  5. package/dist/chunks/{2133.ea2a4372.js.map → 2133.a757ee32.js.map} +1 -1
  6. package/dist/chunks/2252.e9bdb16d.js +3 -0
  7. package/dist/chunks/{2252.b5b0eabf.js.map → 2252.e9bdb16d.js.map} +1 -1
  8. package/dist/chunks/3171.c2e676f8.js +2 -0
  9. package/dist/chunks/{3171.ea91e438.js.map → 3171.c2e676f8.js.map} +1 -1
  10. package/dist/chunks/{3796.f0bb487b.js → 3796.3de4054c.js} +3 -3
  11. package/dist/chunks/{3796.f0bb487b.js.map → 3796.3de4054c.js.map} +1 -1
  12. package/dist/chunks/4433.14cd7c8d.js +2 -0
  13. package/dist/chunks/4433.14cd7c8d.js.map +1 -0
  14. package/dist/chunks/{4727.3c547231.js → 4727.ceff4319.js} +2 -2
  15. package/dist/chunks/{4727.3c547231.js.map → 4727.ceff4319.js.map} +1 -1
  16. package/dist/chunks/{4765.585e43e8.js → 4765.51a7d252.js} +2 -2
  17. package/dist/chunks/{4765.585e43e8.js.map → 4765.51a7d252.js.map} +1 -1
  18. package/dist/chunks/{4837.b86d7cca.js → 4837.3cb52f40.js} +2 -2
  19. package/dist/chunks/{7218.1769ed60.js.map → 4837.3cb52f40.js.map} +1 -1
  20. package/dist/chunks/5552.5c906641.js +2 -0
  21. package/dist/chunks/{5552.4e93ba05.js.map → 5552.5c906641.js.map} +1 -1
  22. package/dist/chunks/6302.f681cebd.js +3 -0
  23. package/dist/chunks/6302.f681cebd.js.map +1 -0
  24. package/dist/chunks/6595.b1880e3d.js +2 -0
  25. package/dist/chunks/{6595.6fe138dd.js.map → 6595.b1880e3d.js.map} +1 -1
  26. package/dist/chunks/{7146.57a33476.js → 7146.2efd4465.js} +2 -2
  27. package/dist/chunks/{7146.57a33476.js.map → 7146.2efd4465.js.map} +1 -1
  28. package/dist/chunks/{7218.1769ed60.js → 7218.e9c67873.js} +2 -2
  29. package/dist/chunks/{4837.b86d7cca.js.map → 7218.e9c67873.js.map} +1 -1
  30. package/dist/chunks/{8097.9168e009.js → 8097.94a00359.js} +2 -2
  31. package/dist/chunks/{8097.9168e009.js.map → 8097.94a00359.js.map} +1 -1
  32. package/dist/chunks/9140.cac7be06.js +3 -0
  33. package/dist/chunks/9140.cac7be06.js.map +1 -0
  34. package/dist/chunks/{9149.38b0a717.js → 9149.1010c337.js} +2 -2
  35. package/dist/chunks/{9149.38b0a717.js.map → 9149.1010c337.js.map} +1 -1
  36. package/dist/chunks/{9363.20c782a3.js → 9363.ef03e062.js} +3 -3
  37. package/dist/chunks/{9363.20c782a3.js.map → 9363.ef03e062.js.map} +1 -1
  38. package/dist/chunks/{easyops-navbar-alerts.4d6aa96d.js → easyops-navbar-alerts.e5d48d87.js} +2 -2
  39. package/dist/chunks/{easyops-navbar-alerts.4d6aa96d.js.map → easyops-navbar-alerts.e5d48d87.js.map} +1 -1
  40. package/dist/chunks/{eo-app-bar-wrapper.fbe61cce.js → eo-app-bar-wrapper.d2a2c973.js} +3 -3
  41. package/dist/chunks/{eo-app-bar-wrapper.fbe61cce.js.map → eo-app-bar-wrapper.d2a2c973.js.map} +1 -1
  42. package/dist/chunks/{eo-directory-tree-internal-node.0d198fc8.js → eo-directory-tree-internal-node.15e385c0.js} +2 -2
  43. package/dist/chunks/{eo-directory-tree-internal-node.0d198fc8.js.map → eo-directory-tree-internal-node.15e385c0.js.map} +1 -1
  44. package/dist/chunks/{eo-directory-tree-leaf.beb884bf.js → eo-directory-tree-leaf.00d3c00b.js} +2 -2
  45. package/dist/chunks/{eo-directory-tree-leaf.beb884bf.js.map → eo-directory-tree-leaf.00d3c00b.js.map} +1 -1
  46. package/dist/chunks/{eo-directory-tree.4ec90a72.js → eo-directory-tree.e77ee6a7.js} +3 -3
  47. package/dist/chunks/{eo-directory-tree.4ec90a72.js.map → eo-directory-tree.e77ee6a7.js.map} +1 -1
  48. package/dist/chunks/{eo-directory.d83a1d5a.js → eo-directory.57dafeee.js} +3 -3
  49. package/dist/chunks/{eo-directory.d83a1d5a.js.map → eo-directory.57dafeee.js.map} +1 -1
  50. package/dist/chunks/{eo-frame-breadcrumb.fee1eecc.js → eo-frame-breadcrumb.8078314a.js} +2 -2
  51. package/dist/chunks/{eo-frame-breadcrumb.fee1eecc.js.map → eo-frame-breadcrumb.8078314a.js.map} +1 -1
  52. package/dist/chunks/{eo-launchpad-button-v2.2c5ab853.js → eo-launchpad-button-v2.927f72d2.js} +3 -3
  53. package/dist/chunks/{eo-launchpad-button-v2.2c5ab853.js.map → eo-launchpad-button-v2.927f72d2.js.map} +1 -1
  54. package/dist/chunks/{eo-launchpad-button.2b3bccce.js → eo-launchpad-button.350d864f.js} +3 -3
  55. package/dist/chunks/{eo-launchpad-button.2b3bccce.js.map → eo-launchpad-button.350d864f.js.map} +1 -1
  56. package/dist/chunks/{eo-launchpad-quick-access.93e11dbd.js → eo-launchpad-quick-access.d31fac62.js} +3 -3
  57. package/dist/chunks/{eo-launchpad-quick-access.93e11dbd.js.map → eo-launchpad-quick-access.d31fac62.js.map} +1 -1
  58. package/dist/chunks/{eo-launchpad-recent-visits.f11ba505.js → eo-launchpad-recent-visits.e9d9813f.js} +3 -3
  59. package/dist/chunks/{eo-launchpad-recent-visits.f11ba505.js.map → eo-launchpad-recent-visits.e9d9813f.js.map} +1 -1
  60. package/dist/chunks/{eo-nav-menu.66c879ff.js → eo-nav-menu.df20b5a9.js} +2 -2
  61. package/dist/chunks/{eo-nav-menu.66c879ff.js.map → eo-nav-menu.df20b5a9.js.map} +1 -1
  62. package/dist/chunks/{eo-search-launchpad.4bdfc679.js → eo-search-launchpad.3c5eb6d6.js} +2 -2
  63. package/dist/chunks/{eo-search-launchpad.4bdfc679.js.map → eo-search-launchpad.3c5eb6d6.js.map} +1 -1
  64. package/dist/chunks/{eo-sidebar-menu-group.9f248d04.js → eo-sidebar-menu-group.e459c1c4.js} +3 -3
  65. package/dist/chunks/{eo-sidebar-menu-group.9f248d04.js.map → eo-sidebar-menu-group.e459c1c4.js.map} +1 -1
  66. package/dist/chunks/{eo-sidebar-menu-item.c42dcb6d.js → eo-sidebar-menu-item.3abd3d90.js} +2 -2
  67. package/dist/chunks/{eo-sidebar-menu-item.c42dcb6d.js.map → eo-sidebar-menu-item.3abd3d90.js.map} +1 -1
  68. package/dist/chunks/{eo-sidebar-menu-submenu.bcaa6663.js → eo-sidebar-menu-submenu.a2b01091.js} +3 -3
  69. package/dist/chunks/{eo-sidebar-menu-submenu.bcaa6663.js.map → eo-sidebar-menu-submenu.a2b01091.js.map} +1 -1
  70. package/dist/chunks/{eo-sidebar-menu.15ef8268.js → eo-sidebar-menu.969bc4cc.js} +2 -2
  71. package/dist/chunks/{eo-sidebar-menu.15ef8268.js.map → eo-sidebar-menu.969bc4cc.js.map} +1 -1
  72. package/dist/chunks/{eo-sidebar-sub-menu.12877a1d.js → eo-sidebar-sub-menu.3d1261af.js} +3 -3
  73. package/dist/chunks/{eo-sidebar-sub-menu.12877a1d.js.map → eo-sidebar-sub-menu.3d1261af.js.map} +1 -1
  74. package/dist/chunks/{eo-sidebar.f56a5176.js → eo-sidebar.b36031c5.js} +3 -3
  75. package/dist/chunks/{eo-sidebar.f56a5176.js.map → eo-sidebar.b36031c5.js.map} +1 -1
  76. package/dist/chunks/get-menu-config-options.bda24b28.js +2 -0
  77. package/dist/chunks/{get-menu-config-options.d5c02f8d.js.map → get-menu-config-options.bda24b28.js.map} +1 -1
  78. package/dist/chunks/get-menu-config-tree.a1d6cf7f.js +2 -0
  79. package/dist/chunks/{get-menu-config-tree.3c208a90.js.map → get-menu-config-tree.a1d6cf7f.js.map} +1 -1
  80. package/dist/chunks/launchpad-config.48bac834.js +3 -0
  81. package/dist/chunks/{launchpad-config.654bf9d4.js.map → launchpad-config.48bac834.js.map} +1 -1
  82. package/dist/chunks/main.5f7d6c2d.js +2 -0
  83. package/dist/chunks/{main.45f885cf.js.map → main.5f7d6c2d.js.map} +1 -1
  84. package/dist/chunks/{nav-logo.fff63779.js → nav-logo.7e553036.js} +2 -2
  85. package/dist/chunks/{nav-logo.fff63779.js.map → nav-logo.7e553036.js.map} +1 -1
  86. package/dist/chunks/{poll-announce.b1be9cf9.js → poll-announce.a36b3e83.js} +3 -3
  87. package/dist/chunks/{poll-announce.b1be9cf9.js.map → poll-announce.a36b3e83.js.map} +1 -1
  88. package/dist/chunks/query-search.aab4b569.js +3 -0
  89. package/dist/chunks/query-search.aab4b569.js.map +1 -0
  90. package/dist/examples.json +3 -3
  91. package/dist/index.b95ce968.js +2 -0
  92. package/dist/index.b95ce968.js.map +1 -0
  93. package/dist/manifest.json +51 -51
  94. package/dist/types.json +145 -145
  95. package/package.json +2 -2
  96. package/dist/chunks/1889.2cc36eb0.js.map +0 -1
  97. package/dist/chunks/2133.ea2a4372.js +0 -2
  98. package/dist/chunks/2252.b5b0eabf.js +0 -3
  99. package/dist/chunks/3171.ea91e438.js +0 -2
  100. package/dist/chunks/4433.49049133.js +0 -2
  101. package/dist/chunks/4433.49049133.js.map +0 -1
  102. package/dist/chunks/5552.4e93ba05.js +0 -2
  103. package/dist/chunks/6302.b2905216.js +0 -3
  104. package/dist/chunks/6302.b2905216.js.map +0 -1
  105. package/dist/chunks/6595.6fe138dd.js +0 -2
  106. package/dist/chunks/9140.356aebfa.js +0 -3
  107. package/dist/chunks/9140.356aebfa.js.map +0 -1
  108. package/dist/chunks/get-menu-config-options.d5c02f8d.js +0 -2
  109. package/dist/chunks/get-menu-config-tree.3c208a90.js +0 -2
  110. package/dist/chunks/launchpad-config.654bf9d4.js +0 -3
  111. package/dist/chunks/main.45f885cf.js +0 -2
  112. package/dist/chunks/query-search.7b7e3415.js +0 -3
  113. package/dist/chunks/query-search.7b7e3415.js.map +0 -1
  114. package/dist/index.59a98ae7.js +0 -2
  115. package/dist/index.59a98ae7.js.map +0 -1
  116. /package/dist/chunks/{2252.b5b0eabf.js.LICENSE.txt → 2252.e9bdb16d.js.LICENSE.txt} +0 -0
  117. /package/dist/chunks/{3796.f0bb487b.js.LICENSE.txt → 3796.3de4054c.js.LICENSE.txt} +0 -0
  118. /package/dist/chunks/{6302.b2905216.js.LICENSE.txt → 6302.f681cebd.js.LICENSE.txt} +0 -0
  119. /package/dist/chunks/{9140.356aebfa.js.LICENSE.txt → 9140.cac7be06.js.LICENSE.txt} +0 -0
  120. /package/dist/chunks/{9363.20c782a3.js.LICENSE.txt → 9363.ef03e062.js.LICENSE.txt} +0 -0
  121. /package/dist/chunks/{eo-app-bar-wrapper.fbe61cce.js.LICENSE.txt → eo-app-bar-wrapper.d2a2c973.js.LICENSE.txt} +0 -0
  122. /package/dist/chunks/{eo-directory-tree.4ec90a72.js.LICENSE.txt → eo-directory-tree.e77ee6a7.js.LICENSE.txt} +0 -0
  123. /package/dist/chunks/{eo-directory.d83a1d5a.js.LICENSE.txt → eo-directory.57dafeee.js.LICENSE.txt} +0 -0
  124. /package/dist/chunks/{eo-launchpad-button-v2.2c5ab853.js.LICENSE.txt → eo-launchpad-button-v2.927f72d2.js.LICENSE.txt} +0 -0
  125. /package/dist/chunks/{eo-launchpad-button.2b3bccce.js.LICENSE.txt → eo-launchpad-button.350d864f.js.LICENSE.txt} +0 -0
  126. /package/dist/chunks/{eo-launchpad-quick-access.93e11dbd.js.LICENSE.txt → eo-launchpad-quick-access.d31fac62.js.LICENSE.txt} +0 -0
  127. /package/dist/chunks/{eo-launchpad-recent-visits.f11ba505.js.LICENSE.txt → eo-launchpad-recent-visits.e9d9813f.js.LICENSE.txt} +0 -0
  128. /package/dist/chunks/{eo-sidebar-menu-group.9f248d04.js.LICENSE.txt → eo-sidebar-menu-group.e459c1c4.js.LICENSE.txt} +0 -0
  129. /package/dist/chunks/{eo-sidebar-menu-submenu.bcaa6663.js.LICENSE.txt → eo-sidebar-menu-submenu.a2b01091.js.LICENSE.txt} +0 -0
  130. /package/dist/chunks/{eo-sidebar-sub-menu.12877a1d.js.LICENSE.txt → eo-sidebar-sub-menu.3d1261af.js.LICENSE.txt} +0 -0
  131. /package/dist/chunks/{eo-sidebar.f56a5176.js.LICENSE.txt → eo-sidebar.b36031c5.js.LICENSE.txt} +0 -0
  132. /package/dist/chunks/{launchpad-config.654bf9d4.js.LICENSE.txt → launchpad-config.48bac834.js.LICENSE.txt} +0 -0
  133. /package/dist/chunks/{poll-announce.b1be9cf9.js.LICENSE.txt → poll-announce.a36b3e83.js.LICENSE.txt} +0 -0
  134. /package/dist/chunks/{query-search.7b7e3415.js.LICENSE.txt → query-search.aab4b569.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/eo-nav-menu.66c879ff.js","mappings":"wYAwCA,MAAM,cAAEA,EAAa,SAAEC,IAAaC,EAAAA,EAAAA,oBAE9BC,GAAkBC,EAAAA,EAAAA,WACtB,gBAEIC,GAAiBD,EAAAA,EAAAA,WAKrB,aAAc,CACdE,gBAAiB,iBACjBC,sBAAuB,0BA2BzB,SAASC,EAAkBC,GACzB,MAAM,KAAEC,GAASD,EACjB,OAAOE,EAAAA,EAAAA,IAAUD,EAA0BD,EAAMG,SAC/CC,IAAAA,cAACC,GAAcC,EAAAA,EAAAA,GAAA,GAAKN,EAAK,CAAEC,KAAMA,MAC/BM,EAAAA,EAAAA,IAAQN,GACVG,IAAAA,cAACI,GAAgBF,EAAAA,EAAAA,GAAA,GAAKN,EAAK,CAAEC,KAAMA,KAEnCG,IAAAA,cAACK,GAAiBH,EAAAA,EAAAA,GAAA,GACZN,EAAK,CACTC,KAAMA,IAGZ,CACA,SAASQ,EAAkBT,GACzB,MAAM,KAAEC,EAAI,MAAES,EAAK,OAAEC,EAAM,YAAEC,EAAW,YAAEC,EAAc,IAAOb,EAC/D,OACEI,IAAAA,cAACV,EAAe,CACd,aAAYgB,EACZI,UAAWH,EAAS,qBAAuB,GAC3CI,IAAKd,EAAKc,IACVC,MAAOJ,EAAcX,EAAKgB,KAAO,GACjCC,SAAQjB,EAAKc,KAAMF,EAAYM,SAASlB,EAAKc,OAE5CK,EAAAA,EAAAA,IAAcnB,EAAM,CAAEoB,MAAO,QAAUrB,EAAMsB,oBAGpD,CAEA,IAAIC,EAEJ,MAAMC,EAA4BC,IAGhC,MAAMC,EACJH,QAAAA,EACCA,EAAcI,OAAOC,WAAaC,SAASC,KAAKC,YAEnDF,SAASC,KAAKE,MAAMN,aAAeD,EAAMQ,OAASP,EAAe,KAAO,GACxEG,SAASC,KAAKE,MAAME,SAAWT,EAAMQ,OAAS,SAAW,GACzDJ,SAASC,KAAKE,MAAMG,YAAcV,EAAMQ,OAAS,OAAS,EAAE,EAG9D,SAAS5B,EAAc+B,GASD,IAAAC,EAAA,IATE,MACtB3B,EAAK,OACLC,EAAM,KACNV,EAAI,QACJE,EAAO,YACPS,EAAW,YACXC,EAAc,GAAE,SAChBqB,EAAQ,mBACRZ,GACkBc,EAClB,OAAiB,QAAVC,EAAApC,EAAKqC,aAAK,IAAAD,OAAA,EAAVA,EAAYE,QAAS,EAC1BnC,IAAAA,cAACR,EAAc,CACb,aAAYc,EACZI,UAAW0B,IAAW,UAAW,CAC/BC,UAAWtC,EACX,qBAAsBQ,IAExB+B,OAAO,EACPC,QAAQ,QACRC,UAAWzC,EAAU,eAAiB,cACtC0C,SAAU,EACVC,cAAc,QACdC,SAAS,SAET3C,IAAAA,cAACV,EAAe,CACdoB,UAAU,yBACVC,IAAKd,EAAKc,IACViC,KAAK,SACLhC,MAAOJ,EAAcX,EAAKe,MAAQ,KAEjCiC,EAAAA,EAAAA,IAAchD,GAAOE,EAAS,IAAKmB,KAEtClB,IAAAA,cAAA,OACEU,UAAW0B,IAAW,mBAAoB,CACxC,wBAAyBN,KAG1BjC,EAAKqC,MAAMY,KAAKC,GACf/C,IAAAA,cAACA,IAAAA,SAAc,CAACW,IAAKoC,EAAUpC,KAC7BX,IAAAA,cAACL,EAAiB,CAChBE,KAAMkD,EACNtC,YAAaA,EACbD,YAAaA,SAMrB,IACN,CAEA,SAASJ,EAAgB4C,GAIH,IAAAC,EAAA,IAJI,KACxBpD,EAAI,YACJW,EAAW,YACXC,EAAc,IACIuC,EAClB,OAAiB,QAAVC,EAAApD,EAAKqC,aAAK,IAAAe,OAAA,EAAVA,EAAYd,QAAS,EACL,aAArBtC,EAAKqD,YACHlD,IAAAA,cAACmD,EAAiB,CAChBtD,KAAMA,EACNY,YAAaA,EACbD,YAAaA,EACbgC,UAAU,cACVE,cAAc,UAE6B,YAA1C7C,EAA0BqD,YAC7BlD,IAAAA,cAACoD,EAAY,CACXvD,KAAMA,EACNY,YAAaA,EACbD,YAAaA,EACbgC,UAAU,cACVE,cAAc,QACd3C,SAAS,IAGXC,IAAAA,cAAAA,IAAAA,SAAA,KACEA,IAAAA,cAAA,OAAKU,UAAU,eAAeb,EAAKe,OACnCZ,IAAAA,cAAA,OAAKU,UAAU,iBACZb,EAAKqC,MAAMY,KAAKC,GAEb/C,IAAAA,cAACA,IAAAA,SAAc,CAACW,IAAKoC,EAAUpC,KAC7BX,IAAAA,cAACL,EAAiB,CAChBE,KAAMkD,EACNvC,YAAaA,EACbC,YAAaA,SAQzB,IACN,CAEA,SAAS0C,EAAiBE,GAkBvB,IAAAC,EAAA,IAlBwB,MACzBhD,EAAK,OACLC,EAAM,KACNV,EAAI,YACJY,EAAc,GAAE,YAChBD,EAAW,UACXgC,EAAY,eAAc,cAC1BE,EAAa,mBACbxB,GAUDmC,EACC,OAAiB,QAAVC,EAAAzD,EAAKqC,aAAK,IAAAoB,OAAA,EAAVA,EAAYnB,QAAS,EAC1BnC,IAAAA,cAACR,EAAc,CACb,aAAYc,EACZI,UAAW0B,IAAW,2BAA4B,UAAW,CAC3D,qBAAsB7B,IAExB+B,OAAO,EACPC,QAAS,QACTC,UAAWA,EACXC,SAAU,EACV9B,IAAKd,EAAKc,IACVgC,SAAS,QACTD,cAAeA,EACfhD,sBAAuB0B,GAEvBpB,IAAAA,cAACV,EAAe,CACdoB,UAAU,sBACVC,IAAKd,EAAKc,IACViC,KAAK,SACLhC,MAAOJ,EAAcX,EAAKe,MAAQ,KAEjCiC,EAAAA,EAAAA,IAAchD,GAAM,EAAOqB,IAE9BlB,IAAAA,cAAA,OAAKU,UAAU,oBACbV,IAAAA,cAACuD,EAAAA,EAA4B,CAC3BC,SAAU3D,EACVY,YAAaA,MAIjB,IACN,CAEA,SAAS2C,EAAYK,GAoBlB,IAAAC,EAAA,IApBmB,MACpBpD,EAAK,OACLC,EAAM,KACNV,EAAI,YACJY,EAAc,GAAE,YAChBD,EAAW,UACXgC,EAAY,eAAc,cAC1BE,EAAa,QACb3C,EAAO,mBACPmB,GAWDuC,EACC,MAAOE,EAASC,IAAcC,EAAAA,EAAAA,YAO9B,OAAiB,QAAVH,EAAA7D,EAAKqC,aAAK,IAAAwB,OAAA,EAAVA,EAAYvB,QAAS,EAC1BnC,IAAAA,cAACR,EAAc,CACb,aAAYc,EACZI,UAAW0B,IAAW,UAAW,CAC/B,qBAAsB7B,IAExBgC,QAAS,QACTC,UAAWA,EACXC,SAAU,EACV9B,IAAKd,EAAKc,IACVgC,SAAS,QACTL,OAAO,EACPI,cAAeA,EACfhD,sBAlByB2B,IAC3BuC,EAAWvC,EAAMQ,QACjBT,EAAyBC,EAAM,GAkB7BrB,IAAAA,cAACV,EAAe,CACdoB,UAAU,sBACVC,IAAKd,EAAKc,IACViC,KAAK,SACLhC,MAAOJ,EAAcX,EAAKe,MAAQ,KAEjCiC,EAAAA,EAAAA,IAAchD,GAAM,EAAOqB,IAE9BlB,IAAAA,cAAA,OACEU,UAAW0B,IAAW,2BAA4B,CAChD,qBAAsBrC,IAExB+D,QAAUC,GAAMA,EAAEC,mBAElBhE,IAAAA,cAACiE,EAAAA,GAAW,CACVC,UAAWrE,EACXY,YAAaA,EACbkD,QAASA,MAIb,IACN,CAEA,IAAAQ,EAAA,IAAAC,EAAA,IAAAC,QAAAC,EAAA,IAAAD,QAAAE,EAAA,IAAAF,QAKA,MAAAG,UAQsBC,EAAAA,iBAAiBC,WAAAA,GAAA,SAAAC,YACrCC,EAAAA,EAAAA,GAAA,KAAAR,EAAAS,EAAA,QAAAD,EAAAA,EAAAA,GAAA,KAAAN,GAAAQ,EAAA,MAAAC,EAAA,SAaAH,EAAAA,EAAAA,GAAA,KAAAL,GAAAS,EAAA,MAAAC,EAAA,QAAAC,EAAA,cAPSC,GAAI,OAAAC,EAAAA,EAAAA,GAAAhB,EAAA,cAAJe,CAAIE,IAAAC,EAAAA,EAAAA,GAAAlB,EAAA,KAAAiB,EAAA,uBAKJnE,GAAkB,OAAAkE,EAAAA,EAAAA,GAAAd,EAAA,4BAAlBpD,CAAkBmE,IAAAC,EAAAA,EAAAA,GAAAhB,EAAA,KAAAe,EAAA,gBAQlB7E,GAAW,OAAA4E,EAAAA,EAAAA,GAAAb,EAAA,qBAAX/D,CAAW6E,IAAAC,EAAAA,EAAAA,GAAAf,EAAA,KAAAc,EAAA,CAEpBE,MAAAA,GACE,OACEvF,IAAAA,cAACwF,EAAgB,CACfL,KAAMM,KAAKN,KACX3E,YAAaiF,KAAKjF,YAClBU,mBAAoBuE,KAAKvE,oBAG/B,EAGF,SAASsE,EAAiB5F,GACxB,MAAM,KAAEuF,EAAI,YAAE3E,GAAgBZ,EAExB8F,GAAUC,EAAAA,EAAAA,cACVC,GAAoBC,EAAAA,EAAAA,QAAuB,OAC1CC,EAAUC,IAAelC,EAAAA,EAAAA,UAAS6B,EAAQI,WAC1CE,EAAeC,IAAoBpC,EAAAA,EAAAA,UACxCqC,OAAOC,mBAEH,SAAEC,EAAQ,OAAEC,GAAWP,EAEvBQ,GAAYC,EAAAA,EAAAA,UAAQ,KAAM,IAAAC,EAC9B,OAAuB,QAAhBA,EAACrB,aAAI,EAAJA,EAAMmB,iBAAS,IAAAE,EAAAA,EAAI,IAAIC,QAC5B5G,IAAI,IAAA6G,EAAA,MAEW,YAAd7G,EAAK8G,OAEJ9G,EAAK8G,MAEL,CAAC,QAAS,WAAW5F,SAASlB,EAAK8G,QACF,QADOD,EACtC7G,EAA0BqC,aAAK,IAAAwE,OAAA,EAAhCA,EAAkCvE,OAAO,GAC9C,GACA,CAACgD,aAAI,EAAJA,EAAMmB,YAEJ7F,GAAc8F,EAAAA,EAAAA,UAAQ,KAC1B,MAAM,aAAEK,IAAiBC,EAAAA,EAAAA,IACvBP,QAAAA,EAAa,GACbF,EACAC,EACA,IAEF,OAAOO,CAAY,GAClB,CAACN,EAAWF,EAAUC,KAEzBS,EAAAA,EAAAA,YAAU,KACR,MAAMC,EAA+BrB,EAAQsB,QAAQlB,IACnDC,EAAYD,EAAS,IAEvB,OAAOiB,CAAQ,GACd,KAEHD,EAAAA,EAAAA,YAAU,KACR,GAAIlB,EAAkBqB,QAAS,CAC7B,MAAMC,EAAiB,IAAIC,gBAAe,KACxC,GAAIvB,EAAkBqB,QAAS,KAAAG,EAC7B,MAAM,MAAEnG,GAAuD,QAAhDmG,EAAGxB,EAAkBqB,QAAQI,iBAAiB,UAAE,IAAAD,EAAAA,EAAI,CAAC,EAC9DE,EAAa1B,EAAkBqB,QAAQK,WAE7C,GAAIA,EAAWnF,QAAUlB,EAAO,CAC9B,IAAIsG,EAAetG,EACf+E,EAAgBsB,EAAWnF,OAE/B,IAAK,IAAIqF,EAAI,EAAGA,EAAIF,EAAWnF,OAAQqF,IAAK,CAC1C,MAAQvG,MAAOwG,EAAYC,OAAQC,GACjCL,EAAWE,GACXH,iBAAiB,GAEnB,IAAKM,GAAeJ,EAAe,GAAK,EAAG,CACzCvB,EAAgBwB,EAAI,EACpB,KACF,CAIA,GAFAD,EACEA,EAAeE,GAAcD,EAAI,EArY/B,EAqY+C,GAC/CD,EAAe,EAAG,CACpBvB,EAAgBwB,EAChB,KACF,CACF,CAEAvB,EAAiBD,EAAgB,EAAI,EAAIA,EAC3C,CACF,KAIF,OAFAkB,EAAeU,QAAQhC,EAAkBqB,SAElC,KACLC,EAAeW,YAAY,CAE/B,IACC,IAGH,MAAMC,GAAevB,EAAAA,EAAAA,UACnB,MACEI,KAAM,UACN/F,MAAO,MACPsB,MAAOoE,EAAUyB,MAAM/B,EAAeM,EAAUnE,QAAQW,KAAK0E,IAAC,IACzDA,EACHb,KAAiB,UAAXa,EAAEb,MAAoBa,EAAEtF,MAAMC,OAAS,UAAYqF,EAAEb,YAG/D,CAACL,EAAWN,IAGd,OACEhG,IAAAA,cAAA,OAAKgI,IAAKpC,EAAmBlF,UAAU,oBACpC4F,EAAUxD,KAAI,CAACjD,EAAMS,KAAU,IAAA2H,EAC9B,MAAMC,EAAWlC,GAAiB1F,EAClC,OACEN,IAAAA,cAACA,IAAAA,SAAc,CAACW,IAAKd,EAAKc,MACvBb,EAAAA,EAAAA,IAAUD,GAA0B,IACM,aAA1CA,EAA0BqD,aACK,QADqB+E,EACpDpI,EAA0BqC,aAAK,IAAA+F,GAAhCA,EAAkC9F,OAChCnC,IAAAA,cAACmD,EAAiB,CAChB7C,MAAOA,EACPC,OAAQ2H,EACRrI,KAAMA,EACNW,YAAaA,EACbC,YAAaA,EACbS,mBAAoBtB,EAAMsB,qBAEU,UAAnCrB,EAA0B8G,MACc,YAA1C9G,EAA0BqD,YAC3BlD,IAAAA,cAACoD,EAAY,CACX9C,MAAOA,EACPC,OAAQ2H,EACRrI,KAAMA,EACNW,YAAaA,EACbC,YAAaA,EACbV,SAAS,EACTmB,mBAAoBtB,EAAMsB,qBAG5BlB,IAAAA,cAACL,EAAiB,CAChBW,MAAOA,EACPC,OAAQ2H,EACRrI,KAAMA,EACNW,YAAaA,EACbC,YAAaA,EACbV,SAAS,EACTmB,mBAAoBtB,EAAMsB,qBAGf,IAGrBlB,IAAAA,cAACL,EAAiB,CAChBY,OAAQyF,EAAgBM,EAAUnE,OAClCtC,KAAMiI,EACNtH,YAAaA,EACbC,YAAaA,EACbqB,UAAU,EACV/B,SAAS,EACTmB,mBAAoBtB,EAAMsB,qBAE5BlB,IAAAA,cAAA,QAAMmI,KAAK,cAGjB,CAvJCC,EAAA5D,IAAAT,GAAAc,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,GAAAmD,GAAAlE,EAAAmE,KAAAC,EAAAA,EAAAA,GAAAH,EAAA,CAvCAjJ,EAAc,cAAe,CAC5BqJ,WAAY,CACVC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,MAEF,EAKCxJ,EAAS,CACRyJ,WAAW,IACX,WAGDzJ,EAAS,CACRyJ,WAAW,IACX,yBAMDzJ,EAAS,CACRuH,KAAMmC,UACN,2BAnBkBrE,EAAAA,mBAAgB6D,G","sources":["webpack:///./src/nav-menu/index.tsx"],"sourcesContent":["import React, {\n CSSProperties,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { getHistory } from \"@next-core/runtime\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport styleText from \"./nav-menu.shadow.css\";\nimport { UnregisterCallback } from \"history\";\nimport type { SidebarMenu } from \"@next-bricks/basic/menu\";\nimport type {\n MenuItem as MenuItemComponent,\n MenuComponentProps,\n} from \"@next-bricks/basic/menu-item\";\nimport { isSubMenu, isGroup, renderLinkCom, renderSpanCom } from \"./utils.js\";\nimport { initMenuItemAndMatchCurrentPathKeys } from \"@next-shared/general/menu\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport type {\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping,\n Placement,\n} from \"@next-bricks/basic/popover\";\nimport \"@next-core/theme\";\nimport classnames from \"classnames\";\nimport { ThreeLevelMenuPopoverContent } from \"./ThreeLevelMenuPopoverContent.js\";\nimport { SiteMapItem } from \"./site-map/SiteMapItem.js\";\nimport SiteMapStyleText from \"../nav-menu/site-map/SiteMapItem.shadow.css\";\nimport ItemTagStyleText from \"../nav-menu/site-map/ItemTag.shadow.css\";\nimport GroupItemStyleText from \"../nav-menu/site-map/GroupItem.shadow.css\";\nimport \"./host-context.css\";\n\nconst { defineElement, property } = createDecorators();\n\nconst WrappedMenuItem = wrapBrick<MenuItemComponent, MenuComponentProps>(\n \"eo-menu-item\"\n);\nconst WrappedPopover = wrapBrick<\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping\n>(\"eo-popover\", {\n onVisibleChange: \"visible.change\",\n onBeforeVisibleChange: \"before.visible.change\",\n});\n\nconst GAP_WIDTH = 8;\n\ninterface NavMenuProps {\n menu?: SidebarMenu;\n showTooltip?: boolean;\n mainMenuTitleStyle: CSSProperties | undefined;\n}\n\ninterface MenuItemComProps {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuItem;\n topData?: boolean;\n selectedKey?: string[];\n showTooltip?: boolean;\n overflow?: boolean;\n mainMenuTitleStyle?: CSSProperties;\n}\ninterface SimpleMenuItemComProps extends MenuItemComProps {\n item: SidebarMenuSimpleItem;\n}\ninterface MenuGroupComProps extends MenuItemComProps {\n item: SidebarMenuGroup;\n}\nfunction RenderMenuItemCom(props: MenuItemComProps) {\n const { item } = props;\n return isSubMenu(item as SidebarMenuGroup, props.topData) ? (\n <SubMenuItemCom {...props} item={item as SidebarMenuGroup}></SubMenuItemCom>\n ) : isGroup(item) ? (\n <GroupMenuItemCom {...props} item={item as SidebarMenuGroup} />\n ) : (\n <SimpleMenuItemCom\n {...props}\n item={item as SidebarMenuSimpleItem}\n ></SimpleMenuItemCom>\n );\n}\nfunction SimpleMenuItemCom(props: SimpleMenuItemComProps) {\n const { item, index, hidden, showTooltip, selectedKey = [] } = props;\n return (\n <WrappedMenuItem\n data-index={index}\n className={hidden ? \"overflow-menu-item\" : \"\"}\n key={item.key}\n title={showTooltip ? item.text : \"\"}\n active={item.key ? selectedKey.includes(item.key) : false}\n >\n {renderLinkCom(item, { width: \"100%\" }, props.mainMenuTitleStyle)}\n </WrappedMenuItem>\n );\n}\n\nlet scrollWidth: number;\n// istanbul ignore next;\nconst handlePopupVisibleChange = (event: CustomEvent<boolean>) => {\n // 当用户设置滚动条一直显示时,来回切换 overflow: hidden 会导致滚动条显示或隐藏\n // 造成页面宽度变化而导致的抖动的问题\n const paddingRight =\n scrollWidth ??\n (scrollWidth = window.innerWidth - document.body.clientWidth);\n\n document.body.style.paddingRight = event.detail ? paddingRight + \"px\" : \"\";\n document.body.style.overflow = event.detail ? \"hidden\" : \"\";\n document.body.style.touchAction = event.detail ? \"none\" : \"\";\n};\n\nfunction SubMenuItemCom({\n index,\n hidden,\n item,\n topData,\n showTooltip,\n selectedKey = [],\n overflow,\n mainMenuTitleStyle,\n}: MenuGroupComProps) {\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"popover\", {\n subprime: !topData,\n \"overflow-menu-item\": hidden,\n })}\n arrow={false}\n trigger=\"hover\"\n placement={topData ? \"bottom-start\" : \"right-start\"}\n distance={0}\n anchorDisplay=\"block\"\n strategy=\"fixed\"\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label 22\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item, !topData, { ...mainMenuTitleStyle })}\n </WrappedMenuItem>\n <div\n className={classnames(\"sub-menu-wrapper\", {\n \"overflow-menu-wrapper\": overflow,\n })}\n >\n {item.items.map((innerItem) => (\n <React.Fragment key={innerItem.key}>\n <RenderMenuItemCom\n item={innerItem}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n />\n </React.Fragment>\n ))}\n </div>\n </WrappedPopover>\n ) : null;\n}\n\nfunction GroupMenuItemCom({\n item,\n showTooltip,\n selectedKey = [],\n}: MenuGroupComProps) {\n return item.items?.length > 0 ? (\n item.childLayout === \"category\" ? (\n <ThreeLevelMenuCom\n item={item}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n placement=\"right-start\"\n anchorDisplay=\"block\"\n />\n ) : (item as SidebarMenuGroup).childLayout === \"siteMap\" ? (\n <SitMapMenCom\n item={item}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n placement=\"right-start\"\n anchorDisplay=\"block\"\n topData={false}\n />\n ) : (\n <>\n <div className=\"group-label\">{item.title}</div>\n <div className=\"group-wrapper\">\n {item.items.map((innerItem) => {\n return (\n <React.Fragment key={innerItem.key}>\n <RenderMenuItemCom\n item={innerItem}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n />\n </React.Fragment>\n );\n })}\n </div>\n </>\n )\n ) : null;\n}\n\nfunction ThreeLevelMenuCom({\n index,\n hidden,\n item,\n selectedKey = [],\n showTooltip,\n placement = \"bottom-start\",\n anchorDisplay,\n mainMenuTitleStyle,\n}: {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuGroup;\n selectedKey?: string[];\n showTooltip?: boolean;\n placement?: Placement;\n anchorDisplay?: CSSProperties[\"display\"];\n mainMenuTitleStyle?: CSSProperties;\n}) {\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"three-level-menu-popover\", \"popover\", {\n \"overflow-menu-item\": hidden,\n })}\n arrow={false}\n trigger={\"hover\"}\n placement={placement}\n distance={0}\n key={item.key}\n strategy=\"fixed\"\n anchorDisplay={anchorDisplay}\n onBeforeVisibleChange={handlePopupVisibleChange}\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item, false, mainMenuTitleStyle)}\n </WrappedMenuItem>\n <div className=\"sub-menu-wrapper\">\n <ThreeLevelMenuPopoverContent\n menuItem={item}\n selectedKey={selectedKey}\n ></ThreeLevelMenuPopoverContent>\n </div>\n </WrappedPopover>\n ) : null;\n}\n\nfunction SitMapMenCom({\n index,\n hidden,\n item,\n selectedKey = [],\n showTooltip,\n placement = \"bottom-start\",\n anchorDisplay,\n topData,\n mainMenuTitleStyle,\n}: {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuGroup;\n selectedKey?: string[];\n showTooltip?: boolean;\n placement?: Placement;\n anchorDisplay?: CSSProperties[\"display\"];\n topData?: boolean;\n mainMenuTitleStyle?: CSSProperties;\n}) {\n const [visible, setVisible] = useState<boolean>();\n\n const handleVisibleChange = (event: CustomEvent<boolean>): void => {\n setVisible(event.detail);\n handlePopupVisibleChange(event);\n };\n\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"popover\", {\n \"overflow-menu-item\": hidden,\n })}\n trigger={\"hover\"}\n placement={placement}\n distance={0}\n key={item.key}\n strategy=\"fixed\"\n arrow={false}\n anchorDisplay={anchorDisplay}\n onBeforeVisibleChange={handleVisibleChange}\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item, false, mainMenuTitleStyle)}\n </WrappedMenuItem>\n <div\n className={classnames(\"sub-menu-sit-map-wrapper\", {\n \"in-group-site-map\": !topData,\n })}\n onClick={(e) => e.stopPropagation()}\n >\n <SiteMapItem\n menuGroup={item}\n selectedKey={selectedKey}\n visible={visible}\n />\n </div>\n </WrappedPopover>\n ) : null;\n}\n\n/**\n * 菜单构件\n * @author sailor\n * @category navigation\n */\n@defineElement(\"eo-nav-menu\", {\n styleTexts: [\n SiteMapStyleText,\n ItemTagStyleText,\n GroupItemStyleText,\n styleText,\n ],\n})\nclass NavMenu extends ReactNextElement {\n /**\n * 菜单项\n */\n @property({\n attribute: false,\n })\n accessor menu: SidebarMenu | undefined;\n\n @property({\n attribute: false,\n })\n accessor mainMenuTitleStyle: CSSProperties | undefined;\n\n /**\n * 是否显示 tooltip\n */\n @property({\n type: Boolean,\n })\n accessor showTooltip: boolean | undefined;\n\n render() {\n return (\n <NavMenuComponent\n menu={this.menu}\n showTooltip={this.showTooltip}\n mainMenuTitleStyle={this.mainMenuTitleStyle}\n />\n );\n }\n}\n\nfunction NavMenuComponent(props: NavMenuProps) {\n const { menu, showTooltip } = props;\n\n const history = getHistory();\n const navMenuWrapperRef = useRef<HTMLDivElement>(null);\n const [location, setLocation] = useState(history.location);\n const [overflowIndex, setOverflowIndex] = useState<number>(\n Number.MAX_SAFE_INTEGER\n );\n const { pathname, search } = location;\n\n const menuItems = useMemo(() => {\n return (menu?.menuItems ?? []).filter(\n (item) =>\n // 默认\n item.type === \"default\" ||\n // 没有类型\n !item.type ||\n // 分组类型并且没有子项,过滤\n ([\"group\", \"subMenu\"].includes(item.type) &&\n (item as SidebarMenuGroup).items?.length)\n );\n }, [menu?.menuItems]);\n\n const selectedKey = useMemo(() => {\n const { selectedKeys } = initMenuItemAndMatchCurrentPathKeys(\n menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n return selectedKeys;\n }, [menuItems, pathname, search]);\n\n useEffect(() => {\n const unListen: UnregisterCallback = history.listen((location) => {\n setLocation(location);\n });\n return unListen;\n }, []);\n\n useEffect(() => {\n if (navMenuWrapperRef.current) {\n const resizeObserver = new ResizeObserver(() => {\n if (navMenuWrapperRef.current) {\n const { width } = navMenuWrapperRef.current.getClientRects()[0] ?? {};\n const childNodes = navMenuWrapperRef.current.childNodes;\n\n if (childNodes.length && width) {\n let wrapperWidth = width;\n let overflowIndex = childNodes.length;\n\n for (let i = 0; i < childNodes.length; i++) {\n const { width: childWidth, height: childHeight } = (\n childNodes[i] as HTMLElement\n ).getClientRects()[0];\n\n if (!childHeight && wrapperWidth - 40 < 0) {\n overflowIndex = i - 1;\n break;\n }\n\n wrapperWidth =\n wrapperWidth - childWidth - (i > 0 ? GAP_WIDTH : 0);\n if (wrapperWidth < 0) {\n overflowIndex = i;\n break;\n }\n }\n\n setOverflowIndex(overflowIndex < 0 ? 0 : overflowIndex);\n }\n }\n });\n resizeObserver.observe(navMenuWrapperRef.current);\n\n return () => {\n resizeObserver.disconnect();\n };\n }\n }, []);\n\n // istanbul ignore next;\n const overflowMenu = useMemo(\n (): SidebarMenuItem => ({\n type: \"subMenu\",\n title: \"···\",\n items: menuItems.slice(overflowIndex, menuItems.length).map((i) => ({\n ...i,\n type: i.type === \"group\" && i.items.length ? \"subMenu\" : i.type,\n })) as SidebarMenuItem[],\n }),\n [menuItems, overflowIndex]\n );\n\n return (\n <div ref={navMenuWrapperRef} className=\"nav-menu-wrapper\">\n {menuItems.map((item, index) => {\n const isHidden = overflowIndex <= index;\n return (\n <React.Fragment key={item.key}>\n {isSubMenu(item as SidebarMenuGroup, true) &&\n (item as SidebarMenuGroup).childLayout === \"category\" &&\n (item as SidebarMenuGroup).items?.length ? (\n <ThreeLevelMenuCom\n index={index}\n hidden={isHidden}\n item={item as SidebarMenuGroup}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n mainMenuTitleStyle={props.mainMenuTitleStyle}\n />\n ) : (item as SidebarMenuGroup).type === \"group\" &&\n (item as SidebarMenuGroup).childLayout === \"siteMap\" ? (\n <SitMapMenCom\n index={index}\n hidden={isHidden}\n item={item as SidebarMenuGroup}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n topData={true}\n mainMenuTitleStyle={props.mainMenuTitleStyle}\n />\n ) : (\n <RenderMenuItemCom\n index={index}\n hidden={isHidden}\n item={item}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n topData={true}\n mainMenuTitleStyle={props.mainMenuTitleStyle}\n />\n )}\n </React.Fragment>\n );\n })}\n <RenderMenuItemCom\n hidden={overflowIndex > menuItems.length}\n item={overflowMenu}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n overflow={true}\n topData={true}\n mainMenuTitleStyle={props.mainMenuTitleStyle}\n />\n <slot name=\"afterMenu\" />\n </div>\n );\n}\n\nexport { NavMenu };\n"],"names":["defineElement","property","createDecorators","WrappedMenuItem","wrapBrick","WrappedPopover","onVisibleChange","onBeforeVisibleChange","RenderMenuItemCom","props","item","isSubMenu","topData","React","SubMenuItemCom","_extends","isGroup","GroupMenuItemCom","SimpleMenuItemCom","index","hidden","showTooltip","selectedKey","className","key","title","text","active","includes","renderLinkCom","width","mainMenuTitleStyle","scrollWidth","handlePopupVisibleChange","event","paddingRight","window","innerWidth","document","body","clientWidth","style","detail","overflow","touchAction","_ref","_item$items","items","length","classnames","subprime","arrow","trigger","placement","distance","anchorDisplay","strategy","slot","renderSpanCom","map","innerItem","_ref2","_item$items2","childLayout","ThreeLevelMenuCom","SitMapMenCom","_ref3","_item$items3","ThreeLevelMenuPopoverContent","menuItem","_ref4","_item$items4","visible","setVisible","useState","onClick","e","stopPropagation","SiteMapItem","menuGroup","_NavMenu","_A","WeakMap","_B","_C","NavMenu","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_menu","_init_extra_menu","_init_mainMenuTitleStyle","_init_extra_mainMenuTitleStyle","_init_showTooltip","_init_extra_showTooltip","menu","_classPrivateFieldGet","v","_classPrivateFieldSet","render","NavMenuComponent","this","history","getHistory","navMenuWrapperRef","useRef","location","setLocation","overflowIndex","setOverflowIndex","Number","MAX_SAFE_INTEGER","pathname","search","menuItems","useMemo","_menu$menuItems","filter","_items","type","selectedKeys","initMenuItemAndMatchCurrentPathKeys","useEffect","unListen","listen","current","resizeObserver","ResizeObserver","_navMenuWrapperRef$cu","getClientRects","childNodes","wrapperWidth","i","childWidth","height","childHeight","observe","disconnect","overflowMenu","slice","ref","_items2","isHidden","name","_NavMenu2","c","_initClass","_applyDecs","styleTexts","SiteMapStyleText","ItemTagStyleText","GroupItemStyleText","styleText","attribute","Boolean"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/eo-nav-menu.df20b5a9.js","mappings":"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","sources":["webpack:///./src/nav-menu/index.tsx"],"sourcesContent":["import React, {\n CSSProperties,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { getHistory } from \"@next-core/runtime\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport styleText from \"./nav-menu.shadow.css\";\nimport { UnregisterCallback } from \"history\";\nimport type { SidebarMenu } from \"@next-bricks/basic/menu\";\nimport type {\n MenuItem as MenuItemComponent,\n MenuComponentProps,\n} from \"@next-bricks/basic/menu-item\";\nimport { isSubMenu, isGroup, renderLinkCom, renderSpanCom } from \"./utils.js\";\nimport { initMenuItemAndMatchCurrentPathKeys } from \"@next-shared/general/menu\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport type {\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping,\n Placement,\n} from \"@next-bricks/basic/popover\";\nimport \"@next-core/theme\";\nimport classnames from \"classnames\";\nimport { ThreeLevelMenuPopoverContent } from \"./ThreeLevelMenuPopoverContent.js\";\nimport { SiteMapItem } from \"./site-map/SiteMapItem.js\";\nimport SiteMapStyleText from \"../nav-menu/site-map/SiteMapItem.shadow.css\";\nimport ItemTagStyleText from \"../nav-menu/site-map/ItemTag.shadow.css\";\nimport GroupItemStyleText from \"../nav-menu/site-map/GroupItem.shadow.css\";\nimport \"./host-context.css\";\n\nconst { defineElement, property } = createDecorators();\n\nconst WrappedMenuItem = wrapBrick<MenuItemComponent, MenuComponentProps>(\n \"eo-menu-item\"\n);\nconst WrappedPopover = wrapBrick<\n Popover,\n PopoverProps,\n PopoverEvents,\n PopoverEventsMapping\n>(\"eo-popover\", {\n onVisibleChange: \"visible.change\",\n onBeforeVisibleChange: \"before.visible.change\",\n});\n\nconst GAP_WIDTH = 8;\n\ninterface NavMenuProps {\n menu?: SidebarMenu;\n showTooltip?: boolean;\n mainMenuTitleStyle: CSSProperties | undefined;\n}\n\ninterface MenuItemComProps {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuItem;\n topData?: boolean;\n selectedKey?: string[];\n showTooltip?: boolean;\n overflow?: boolean;\n mainMenuTitleStyle?: CSSProperties;\n}\ninterface SimpleMenuItemComProps extends MenuItemComProps {\n item: SidebarMenuSimpleItem;\n}\ninterface MenuGroupComProps extends MenuItemComProps {\n item: SidebarMenuGroup;\n}\nfunction RenderMenuItemCom(props: MenuItemComProps) {\n const { item } = props;\n return isSubMenu(item as SidebarMenuGroup, props.topData) ? (\n <SubMenuItemCom {...props} item={item as SidebarMenuGroup}></SubMenuItemCom>\n ) : isGroup(item) ? (\n <GroupMenuItemCom {...props} item={item as SidebarMenuGroup} />\n ) : (\n <SimpleMenuItemCom\n {...props}\n item={item as SidebarMenuSimpleItem}\n ></SimpleMenuItemCom>\n );\n}\nfunction SimpleMenuItemCom(props: SimpleMenuItemComProps) {\n const { item, index, hidden, showTooltip, selectedKey = [] } = props;\n return (\n <WrappedMenuItem\n data-index={index}\n className={hidden ? \"overflow-menu-item\" : \"\"}\n key={item.key}\n title={showTooltip ? item.text : \"\"}\n active={item.key ? selectedKey.includes(item.key) : false}\n >\n {renderLinkCom(item, { width: \"100%\" }, props.mainMenuTitleStyle)}\n </WrappedMenuItem>\n );\n}\n\nlet scrollWidth: number;\n// istanbul ignore next;\nconst handlePopupVisibleChange = (event: CustomEvent<boolean>) => {\n // 当用户设置滚动条一直显示时,来回切换 overflow: hidden 会导致滚动条显示或隐藏\n // 造成页面宽度变化而导致的抖动的问题\n const paddingRight =\n scrollWidth ??\n (scrollWidth = window.innerWidth - document.body.clientWidth);\n\n document.body.style.paddingRight = event.detail ? paddingRight + \"px\" : \"\";\n document.body.style.overflow = event.detail ? \"hidden\" : \"\";\n document.body.style.touchAction = event.detail ? \"none\" : \"\";\n};\n\nfunction SubMenuItemCom({\n index,\n hidden,\n item,\n topData,\n showTooltip,\n selectedKey = [],\n overflow,\n mainMenuTitleStyle,\n}: MenuGroupComProps) {\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"popover\", {\n subprime: !topData,\n \"overflow-menu-item\": hidden,\n })}\n arrow={false}\n trigger=\"hover\"\n placement={topData ? \"bottom-start\" : \"right-start\"}\n distance={0}\n anchorDisplay=\"block\"\n strategy=\"fixed\"\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label 22\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item, !topData, { ...mainMenuTitleStyle })}\n </WrappedMenuItem>\n <div\n className={classnames(\"sub-menu-wrapper\", {\n \"overflow-menu-wrapper\": overflow,\n })}\n >\n {item.items.map((innerItem) => (\n <React.Fragment key={innerItem.key}>\n <RenderMenuItemCom\n item={innerItem}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n />\n </React.Fragment>\n ))}\n </div>\n </WrappedPopover>\n ) : null;\n}\n\nfunction GroupMenuItemCom({\n item,\n showTooltip,\n selectedKey = [],\n}: MenuGroupComProps) {\n return item.items?.length > 0 ? (\n item.childLayout === \"category\" ? (\n <ThreeLevelMenuCom\n item={item}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n placement=\"right-start\"\n anchorDisplay=\"block\"\n />\n ) : (item as SidebarMenuGroup).childLayout === \"siteMap\" ? (\n <SitMapMenCom\n item={item}\n selectedKey={selectedKey}\n showTooltip={showTooltip}\n placement=\"right-start\"\n anchorDisplay=\"block\"\n topData={false}\n />\n ) : (\n <>\n <div className=\"group-label\">{item.title}</div>\n <div className=\"group-wrapper\">\n {item.items.map((innerItem) => {\n return (\n <React.Fragment key={innerItem.key}>\n <RenderMenuItemCom\n item={innerItem}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n />\n </React.Fragment>\n );\n })}\n </div>\n </>\n )\n ) : null;\n}\n\nfunction ThreeLevelMenuCom({\n index,\n hidden,\n item,\n selectedKey = [],\n showTooltip,\n placement = \"bottom-start\",\n anchorDisplay,\n mainMenuTitleStyle,\n}: {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuGroup;\n selectedKey?: string[];\n showTooltip?: boolean;\n placement?: Placement;\n anchorDisplay?: CSSProperties[\"display\"];\n mainMenuTitleStyle?: CSSProperties;\n}) {\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"three-level-menu-popover\", \"popover\", {\n \"overflow-menu-item\": hidden,\n })}\n arrow={false}\n trigger={\"hover\"}\n placement={placement}\n distance={0}\n key={item.key}\n strategy=\"fixed\"\n anchorDisplay={anchorDisplay}\n onBeforeVisibleChange={handlePopupVisibleChange}\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item, false, mainMenuTitleStyle)}\n </WrappedMenuItem>\n <div className=\"sub-menu-wrapper\">\n <ThreeLevelMenuPopoverContent\n menuItem={item}\n selectedKey={selectedKey}\n ></ThreeLevelMenuPopoverContent>\n </div>\n </WrappedPopover>\n ) : null;\n}\n\nfunction SitMapMenCom({\n index,\n hidden,\n item,\n selectedKey = [],\n showTooltip,\n placement = \"bottom-start\",\n anchorDisplay,\n topData,\n mainMenuTitleStyle,\n}: {\n index?: number;\n hidden?: boolean;\n item: SidebarMenuGroup;\n selectedKey?: string[];\n showTooltip?: boolean;\n placement?: Placement;\n anchorDisplay?: CSSProperties[\"display\"];\n topData?: boolean;\n mainMenuTitleStyle?: CSSProperties;\n}) {\n const [visible, setVisible] = useState<boolean>();\n\n const handleVisibleChange = (event: CustomEvent<boolean>): void => {\n setVisible(event.detail);\n handlePopupVisibleChange(event);\n };\n\n return item.items?.length > 0 ? (\n <WrappedPopover\n data-index={index}\n className={classnames(\"popover\", {\n \"overflow-menu-item\": hidden,\n })}\n trigger={\"hover\"}\n placement={placement}\n distance={0}\n key={item.key}\n strategy=\"fixed\"\n arrow={false}\n anchorDisplay={anchorDisplay}\n onBeforeVisibleChange={handleVisibleChange}\n >\n <WrappedMenuItem\n className=\"sub-menu-item-label\"\n key={item.key}\n slot=\"anchor\"\n title={showTooltip ? item.title : \"\"}\n >\n {renderSpanCom(item, false, mainMenuTitleStyle)}\n </WrappedMenuItem>\n <div\n className={classnames(\"sub-menu-sit-map-wrapper\", {\n \"in-group-site-map\": !topData,\n })}\n onClick={(e) => e.stopPropagation()}\n >\n <SiteMapItem\n menuGroup={item}\n selectedKey={selectedKey}\n visible={visible}\n />\n </div>\n </WrappedPopover>\n ) : null;\n}\n\n/**\n * 菜单构件\n * @author sailor\n * @category navigation\n */\n@defineElement(\"eo-nav-menu\", {\n styleTexts: [\n SiteMapStyleText,\n ItemTagStyleText,\n GroupItemStyleText,\n styleText,\n ],\n})\nclass NavMenu extends ReactNextElement {\n /**\n * 菜单项\n */\n @property({\n attribute: false,\n })\n accessor menu: SidebarMenu | undefined;\n\n @property({\n attribute: false,\n })\n accessor mainMenuTitleStyle: CSSProperties | undefined;\n\n /**\n * 是否显示 tooltip\n */\n @property({\n type: Boolean,\n })\n accessor showTooltip: boolean | undefined;\n\n render() {\n return (\n <NavMenuComponent\n menu={this.menu}\n showTooltip={this.showTooltip}\n mainMenuTitleStyle={this.mainMenuTitleStyle}\n />\n );\n }\n}\n\nfunction NavMenuComponent(props: NavMenuProps) {\n const { menu, showTooltip } = props;\n\n const history = getHistory();\n const navMenuWrapperRef = useRef<HTMLDivElement>(null);\n const [location, setLocation] = useState(history.location);\n const [overflowIndex, setOverflowIndex] = useState<number>(\n Number.MAX_SAFE_INTEGER\n );\n const { pathname, search } = location;\n\n const menuItems = useMemo(() => {\n return (menu?.menuItems ?? []).filter(\n (item) =>\n // 默认\n item.type === \"default\" ||\n // 没有类型\n !item.type ||\n // 分组类型并且没有子项,过滤\n ([\"group\", \"subMenu\"].includes(item.type) &&\n (item as SidebarMenuGroup).items?.length)\n );\n }, [menu?.menuItems]);\n\n const selectedKey = useMemo(() => {\n const { selectedKeys } = initMenuItemAndMatchCurrentPathKeys(\n menuItems ?? [],\n pathname,\n search,\n \"\"\n );\n return selectedKeys;\n }, [menuItems, pathname, search]);\n\n useEffect(() => {\n const unListen: UnregisterCallback = history.listen((location) => {\n setLocation(location);\n });\n return unListen;\n }, []);\n\n useEffect(() => {\n if (navMenuWrapperRef.current) {\n const resizeObserver = new ResizeObserver(() => {\n if (navMenuWrapperRef.current) {\n const { width } = navMenuWrapperRef.current.getClientRects()[0] ?? {};\n const childNodes = navMenuWrapperRef.current.childNodes;\n\n if (childNodes.length && width) {\n let wrapperWidth = width;\n let overflowIndex = childNodes.length;\n\n for (let i = 0; i < childNodes.length; i++) {\n const { width: childWidth, height: childHeight } = (\n childNodes[i] as HTMLElement\n ).getClientRects()[0];\n\n if (!childHeight && wrapperWidth - 40 < 0) {\n overflowIndex = i - 1;\n break;\n }\n\n wrapperWidth =\n wrapperWidth - childWidth - (i > 0 ? GAP_WIDTH : 0);\n if (wrapperWidth < 0) {\n overflowIndex = i;\n break;\n }\n }\n\n setOverflowIndex(overflowIndex < 0 ? 0 : overflowIndex);\n }\n }\n });\n resizeObserver.observe(navMenuWrapperRef.current);\n\n return () => {\n resizeObserver.disconnect();\n };\n }\n }, []);\n\n // istanbul ignore next;\n const overflowMenu = useMemo(\n (): SidebarMenuItem => ({\n type: \"subMenu\",\n title: \"···\",\n items: menuItems.slice(overflowIndex, menuItems.length).map((i) => ({\n ...i,\n type: i.type === \"group\" && i.items.length ? \"subMenu\" : i.type,\n })) as SidebarMenuItem[],\n }),\n [menuItems, overflowIndex]\n );\n\n return (\n <div ref={navMenuWrapperRef} className=\"nav-menu-wrapper\">\n {menuItems.map((item, index) => {\n const isHidden = overflowIndex <= index;\n return (\n <React.Fragment key={item.key}>\n {isSubMenu(item as SidebarMenuGroup, true) &&\n (item as SidebarMenuGroup).childLayout === \"category\" &&\n (item as SidebarMenuGroup).items?.length ? (\n <ThreeLevelMenuCom\n index={index}\n hidden={isHidden}\n item={item as SidebarMenuGroup}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n mainMenuTitleStyle={props.mainMenuTitleStyle}\n />\n ) : (item as SidebarMenuGroup).type === \"group\" &&\n (item as SidebarMenuGroup).childLayout === \"siteMap\" ? (\n <SitMapMenCom\n index={index}\n hidden={isHidden}\n item={item as SidebarMenuGroup}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n topData={true}\n mainMenuTitleStyle={props.mainMenuTitleStyle}\n />\n ) : (\n <RenderMenuItemCom\n index={index}\n hidden={isHidden}\n item={item}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n topData={true}\n mainMenuTitleStyle={props.mainMenuTitleStyle}\n />\n )}\n </React.Fragment>\n );\n })}\n <RenderMenuItemCom\n hidden={overflowIndex > menuItems.length}\n item={overflowMenu}\n showTooltip={showTooltip}\n selectedKey={selectedKey}\n overflow={true}\n topData={true}\n mainMenuTitleStyle={props.mainMenuTitleStyle}\n />\n <slot name=\"afterMenu\" />\n </div>\n );\n}\n\nexport { NavMenu };\n"],"names":["defineElement","property","createDecorators","WrappedMenuItem","wrapBrick","WrappedPopover","onVisibleChange","onBeforeVisibleChange","RenderMenuItemCom","props","item","isSubMenu","topData","React","SubMenuItemCom","_extends","isGroup","GroupMenuItemCom","SimpleMenuItemCom","index","hidden","showTooltip","selectedKey","className","key","title","text","active","includes","renderLinkCom","width","mainMenuTitleStyle","scrollWidth","handlePopupVisibleChange","event","paddingRight","window","innerWidth","document","body","clientWidth","style","detail","overflow","touchAction","_ref","_item$items","items","length","classnames","subprime","arrow","trigger","placement","distance","anchorDisplay","strategy","slot","renderSpanCom","map","innerItem","_ref2","_item$items2","childLayout","ThreeLevelMenuCom","SitMapMenCom","_ref3","_item$items3","ThreeLevelMenuPopoverContent","menuItem","_ref4","_item$items4","visible","setVisible","useState","onClick","e","stopPropagation","SiteMapItem","menuGroup","_NavMenu","_A","WeakMap","_B","_C","NavMenu","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_menu","_init_extra_menu","_init_mainMenuTitleStyle","_init_extra_mainMenuTitleStyle","_init_showTooltip","_init_extra_showTooltip","menu","_classPrivateFieldGet","v","_classPrivateFieldSet","render","NavMenuComponent","this","history","getHistory","navMenuWrapperRef","useRef","location","setLocation","overflowIndex","setOverflowIndex","Number","MAX_SAFE_INTEGER","pathname","search","menuItems","useMemo","_menu$menuItems","filter","_items","type","selectedKeys","initMenuItemAndMatchCurrentPathKeys","useEffect","unListen","listen","current","resizeObserver","ResizeObserver","_navMenuWrapperRef$cu","getClientRects","childNodes","wrapperWidth","i","childWidth","height","childHeight","observe","disconnect","overflowMenu","slice","ref","_items2","isHidden","name","_NavMenu2","c","_initClass","_applyDecs","styleTexts","SiteMapStyleText","ItemTagStyleText","GroupItemStyleText","styleText","attribute","Boolean"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[131],{306:(e,n,t)=>{t.r(n),t.d(n,{EoSearchLaunchpad:()=>N,EoSearchLaunchpadComponent:()=>S,WrappedIcon:()=>k});var a,r=t(918),o=t(6121),l=t(829),i=t(2740),c=t(8769),s=t.n(c),m=t(7921),u=t(1280),d=(t(6477),t(3873)),p=t(3373),h=t.n(p),g=t(8356),x=t(2133),b=t(8839);let v,f,y;t(1837);const k=(0,u.wrapBrick)("eo-icon"),{defineElement:E,property:w}=(0,m.createDecorators)();let N;var C=new WeakMap;class A extends u.ReactNextElement{constructor(){super(...arguments),(0,r.A)(this,C,f(this)),y(this)}get readonly(){return(0,l.A)(C,this)}set readonly(e){(0,o.A)(C,this,e)}render(){return s().createElement(S,{readonly:this.readonly})}}function S(e){let{readonly:n}=e;const t=(0,c.useRef)(null),a=(0,c.useCallback)((()=>{var e;null===(e=t.current)||void 0===e||e.focus()}),[]),[r,o]=(0,c.useState)(!1),{loading:l,q:i,setQ:m,menuGroups:u,loadingFavorites:d,pushRecentVisit:p,toggleStar:v,isStarred:f}=(0,x.sZ)(r),y=!!i,E=(0,c.useCallback)((e=>{m(e.target.value)}),[m]),w=(0,c.useCallback)((()=>{m("")}),[m]);return s().createElement(g.z.Provider,{value:{searching:y,loadingFavorites:d,readonly:n,pushRecentVisit:p,toggleStar:v,isStarred:f}},s().createElement("div",{className:"container"},s().createElement("div",{className:"search-box",onClick:a},s().createElement(k,{lib:"fa",icon:"magnifying-glass",className:"search-icon"}),s().createElement("input",{ref:t,placeholder:"搜索产品/微应用",value:i,onChange:E,className:"search-input",onFocus:()=>o(!0),onBlur:()=>o(!1)}),s().createElement(k,{lib:"antd",theme:"filled",icon:"close-circle",className:h()("search-clear",{searching:y}),onClick:w,onMouseDown:e=>e.preventDefault()})),s().createElement("div",{className:h()("dropdown",{"dropdown-active":r}),onMouseDown:e=>e.preventDefault()},s().createElement("div",{className:h()("dropdown-content",{loading:l})},s().createElement(B,{loading:l}),s().createElement("ul",{className:"menu-groups"},u.map((e=>s().createElement(b.r,{key:e.name,name:e.name,items:e.items}))))))))}function B(e){let{loading:n}=e;return n&&s().createElement("div",{className:"spinner"},s().createElement(k,{lib:"fa",icon:"spinner",spinning:!0}))}a=A,({e:[f,y],c:[N,v]}=(0,i.A)(a,[E("eo-search-launchpad",{styleTexts:[d.A]})],[[w({type:Boolean}),1,"readonly"]],0,void 0,u.ReactNextElement)),v()},1837:(e,n,t)=>{var a=t(2591),r=t.n(a),o=t(1740),l=t.n(o),i=t(8128),c=t.n(i),s=t(855),m=t.n(s),u=t(3051),d=t.n(u),p=t(3656),h=t.n(p),g=t(7839),x={};x.styleTagTransform=h(),x.setAttributes=m(),x.insert=c().bind(null,"head"),x.domAPI=l(),x.insertStyleElement=d(),r()(g.A,x),g.A&&g.A.locals&&g.A.locals},3873:(e,n,t)=>{t.d(n,{A:()=>i});var a=t(6758),r=t.n(a),o=t(935),l=t.n(o)()(r());l.push([e.id,":host{display:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}}",""]);const i=l.toString()},7839:(e,n,t)=>{t.d(n,{A:()=>i});var a=t(6758),r=t.n(a),o=t(935),l=t.n(o)()(r());l.push([e.id,':root{--eo-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme="dark"],\nhtml[data-theme="dark-v2"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}',""]);const i=l},8356:(e,n,t)=>{t.d(n,{P:()=>l,z:()=>o});var a=t(8769),r=t.n(a);const o=r().createContext({}),l=()=>r().useContext(o)},8839:(e,n,t)=>{t.d(n,{F:()=>p,r:()=>u});var a=t(9575),r=t(8769),o=t.n(r),l=t(1030),i=t(3373),c=t.n(i),s=t(9393),m=t(8356);function u(e){let{name:n,items:t}=e;return o().createElement("li",{className:"menu-group"},o().createElement("div",{className:"menu-group-label"},n),o().createElement("ul",{className:"menu"},t.map((e=>"dir"===e.type?o().createElement(h,{key:`${e.type}-${e.id}`,name:e.name,items:e.items}):o().createElement(d,{key:`${e.type}-${e.id}`,item:e})))))}function d(e){var n;let{item:t}=e;const{loadingFavorites:i,readonly:u,pushRecentVisit:d,toggleStar:p,isStarred:h}=(0,m.P)(),g=(0,r.useMemo)((()=>h(t)),[h,t]),x=(0,r.useCallback)((()=>{p(t)}),[t,p]),b=(0,r.useCallback)((()=>{d(t)}),[t,d]);return o().createElement("li",{className:c()("menu-item",{starred:g,"can-star":!i})},o().createElement(s.EM,(0,a.A)({onClick:b},"app"===t.type?{url:t.url}:{href:t.url}),o().createElement(s.Bj,(0,a.A)({className:"menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(n=t.menuIcon)&&void 0!==n&&n.lib&&t.menuIcon.icon?(0,l.pick)(t.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},t.name)),!u&&o().createElement(s.Bj,{lib:"fa",prefix:g?"fas":"far",icon:"star",className:"menu-item-star",title:g?"取消收藏":"收藏",onClick:x}))}function p(e){var n;let{item:t,target:i}=e;const{readonly:c,pushRecentVisit:u,toggleStar:d}=(0,m.P)(),p=(0,r.useCallback)((()=>{"link"!==t.type&&u(t)}),[t,u]),h=(0,r.useCallback)((()=>{d(t)}),[t,d]);return o().createElement("li",{className:"sidebar-menu-item"},o().createElement(s.EM,(0,a.A)({onClick:p},"app"===t.type?{url:t.url}:{href:t.url},i?{target:i}:null),o().createElement(s.Bj,(0,a.A)({className:"sidebar-menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(n=t.menuIcon)&&void 0!==n&&n.lib&&t.menuIcon.icon?(0,l.pick)(t.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},t.name)),!c&&o().createElement(s.Bj,{lib:"fa",icon:"xmark",className:"menu-item-remove",onClick:h}))}function h(e){let{name:n,items:t}=e;const{searching:a}=(0,m.P)(),[l,i]=(0,r.useState)(!1),[u,p]=(0,r.useState)(!1),h=(0,r.useCallback)((()=>{a?p((e=>!e)):i((e=>!e))}),[a]);(0,r.useEffect)((()=>{p(!0)}),[a]);const g=a?u:l;return o().createElement("li",{className:"menu-item folder"},o().createElement(s.EM,{onClick:h},o().createElement(s.Bj,{lib:"fa",prefix:"far",icon:"folder-open",className:"menu-icon"}),o().createElement("span",{className:"menu-item-label"},n),o().createElement(s.Bj,{lib:"antd",icon:g?"up":"down",className:"menu-item-toggle"})),o().createElement("ul",{className:c()("sub-menu",{expanded:g})},t.map((e=>o().createElement(d,{key:`${e.type}-${e.id}`,item:e})))))}}}]);
2
- //# sourceMappingURL=eo-search-launchpad.4bdfc679.js.map
1
+ "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[131],{306:(e,n,t)=>{t.r(n),t.d(n,{EoSearchLaunchpad:()=>N,EoSearchLaunchpadComponent:()=>S,WrappedIcon:()=>k});var a,r=t(918),o=t(6121),l=t(829),i=t(2740),c=t(8769),s=t.n(c),m=t(7921),u=t(1280),d=(t(5168),t(3873)),p=t(3373),h=t.n(p),g=t(8356),x=t(2133),b=t(8839);let v,f,y;t(1837);const k=(0,u.wrapBrick)("eo-icon"),{defineElement:E,property:w}=(0,m.createDecorators)();let N;var C=new WeakMap;class A extends u.ReactNextElement{constructor(){super(...arguments),(0,r.A)(this,C,f(this)),y(this)}get readonly(){return(0,l.A)(C,this)}set readonly(e){(0,o.A)(C,this,e)}render(){return s().createElement(S,{readonly:this.readonly})}}function S(e){let{readonly:n}=e;const t=(0,c.useRef)(null),a=(0,c.useCallback)((()=>{var e;null===(e=t.current)||void 0===e||e.focus()}),[]),[r,o]=(0,c.useState)(!1),{loading:l,q:i,setQ:m,menuGroups:u,loadingFavorites:d,pushRecentVisit:p,toggleStar:v,isStarred:f}=(0,x.sZ)(r),y=!!i,E=(0,c.useCallback)((e=>{m(e.target.value)}),[m]),w=(0,c.useCallback)((()=>{m("")}),[m]);return s().createElement(g.z.Provider,{value:{searching:y,loadingFavorites:d,readonly:n,pushRecentVisit:p,toggleStar:v,isStarred:f}},s().createElement("div",{className:"container"},s().createElement("div",{className:"search-box",onClick:a},s().createElement(k,{lib:"fa",icon:"magnifying-glass",className:"search-icon"}),s().createElement("input",{ref:t,placeholder:"搜索产品/微应用",value:i,onChange:E,className:"search-input",onFocus:()=>o(!0),onBlur:()=>o(!1)}),s().createElement(k,{lib:"antd",theme:"filled",icon:"close-circle",className:h()("search-clear",{searching:y}),onClick:w,onMouseDown:e=>e.preventDefault()})),s().createElement("div",{className:h()("dropdown",{"dropdown-active":r}),onMouseDown:e=>e.preventDefault()},s().createElement("div",{className:h()("dropdown-content",{loading:l})},s().createElement(B,{loading:l}),s().createElement("ul",{className:"menu-groups"},u.map((e=>s().createElement(b.r,{key:e.name,name:e.name,items:e.items}))))))))}function B(e){let{loading:n}=e;return n&&s().createElement("div",{className:"spinner"},s().createElement(k,{lib:"fa",icon:"spinner",spinning:!0}))}a=A,({e:[f,y],c:[N,v]}=(0,i.A)(a,[E("eo-search-launchpad",{styleTexts:[d.A]})],[[w({type:Boolean}),1,"readonly"]],0,void 0,u.ReactNextElement)),v()},1837:(e,n,t)=>{var a=t(2591),r=t.n(a),o=t(1740),l=t.n(o),i=t(8128),c=t.n(i),s=t(855),m=t.n(s),u=t(3051),d=t.n(u),p=t(3656),h=t.n(p),g=t(7839),x={};x.styleTagTransform=h(),x.setAttributes=m(),x.insert=c().bind(null,"head"),x.domAPI=l(),x.insertStyleElement=d(),r()(g.A,x),g.A&&g.A.locals&&g.A.locals},3873:(e,n,t)=>{t.d(n,{A:()=>i});var a=t(6758),r=t.n(a),o=t(935),l=t.n(o)()(r());l.push([e.id,":host{display:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}}",""]);const i=l.toString()},7839:(e,n,t)=>{t.d(n,{A:()=>i});var a=t(6758),r=t.n(a),o=t(935),l=t.n(o)()(r());l.push([e.id,':root{--eo-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme="dark"],\nhtml[data-theme="dark-v2"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}',""]);const i=l},8356:(e,n,t)=>{t.d(n,{P:()=>l,z:()=>o});var a=t(8769),r=t.n(a);const o=r().createContext({}),l=()=>r().useContext(o)},8839:(e,n,t)=>{t.d(n,{F:()=>p,r:()=>u});var a=t(9575),r=t(8769),o=t.n(r),l=t(1030),i=t(3373),c=t.n(i),s=t(9393),m=t(8356);function u(e){let{name:n,items:t}=e;return o().createElement("li",{className:"menu-group"},o().createElement("div",{className:"menu-group-label"},n),o().createElement("ul",{className:"menu"},t.map((e=>"dir"===e.type?o().createElement(h,{key:`${e.type}-${e.id}`,name:e.name,items:e.items}):o().createElement(d,{key:`${e.type}-${e.id}`,item:e})))))}function d(e){var n;let{item:t}=e;const{loadingFavorites:i,readonly:u,pushRecentVisit:d,toggleStar:p,isStarred:h}=(0,m.P)(),g=(0,r.useMemo)((()=>h(t)),[h,t]),x=(0,r.useCallback)((()=>{p(t)}),[t,p]),b=(0,r.useCallback)((()=>{d(t)}),[t,d]);return o().createElement("li",{className:c()("menu-item",{starred:g,"can-star":!i})},o().createElement(s.EM,(0,a.A)({onClick:b},"app"===t.type?{url:t.url}:{href:t.url}),o().createElement(s.Bj,(0,a.A)({className:"menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(n=t.menuIcon)&&void 0!==n&&n.lib&&t.menuIcon.icon?(0,l.pick)(t.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},t.name)),!u&&o().createElement(s.Bj,{lib:"fa",prefix:g?"fas":"far",icon:"star",className:"menu-item-star",title:g?"取消收藏":"收藏",onClick:x}))}function p(e){var n;let{item:t,target:i}=e;const{readonly:c,pushRecentVisit:u,toggleStar:d}=(0,m.P)(),p=(0,r.useCallback)((()=>{"link"!==t.type&&u(t)}),[t,u]),h=(0,r.useCallback)((()=>{d(t)}),[t,d]);return o().createElement("li",{className:"sidebar-menu-item"},o().createElement(s.EM,(0,a.A)({onClick:p},"app"===t.type?{url:t.url}:{href:t.url},i?{target:i}:null),o().createElement(s.Bj,(0,a.A)({className:"sidebar-menu-icon",lib:"easyops",icon:"micro-app-center"},null!==(n=t.menuIcon)&&void 0!==n&&n.lib&&t.menuIcon.icon?(0,l.pick)(t.menuIcon,["lib","icon","theme","category","prefix"]):null)),o().createElement("span",{className:"menu-item-label"},t.name)),!c&&o().createElement(s.Bj,{lib:"fa",icon:"xmark",className:"menu-item-remove",onClick:h}))}function h(e){let{name:n,items:t}=e;const{searching:a}=(0,m.P)(),[l,i]=(0,r.useState)(!1),[u,p]=(0,r.useState)(!1),h=(0,r.useCallback)((()=>{a?p((e=>!e)):i((e=>!e))}),[a]);(0,r.useEffect)((()=>{p(!0)}),[a]);const g=a?u:l;return o().createElement("li",{className:"menu-item folder"},o().createElement(s.EM,{onClick:h},o().createElement(s.Bj,{lib:"fa",prefix:"far",icon:"folder-open",className:"menu-icon"}),o().createElement("span",{className:"menu-item-label"},n),o().createElement(s.Bj,{lib:"antd",icon:g?"up":"down",className:"menu-item-toggle"})),o().createElement("ul",{className:c()("sub-menu",{expanded:g})},t.map((e=>o().createElement(d,{key:`${e.type}-${e.id}`,item:e})))))}}}]);
2
+ //# sourceMappingURL=eo-search-launchpad.3c5eb6d6.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/eo-search-launchpad.4bdfc679.js","mappings":"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","sources":["webpack:///./src/search-launchpad/index.tsx","webpack:///./src/search-launchpad/host-context.css?4d0b","webpack:///./src/search-launchpad/styles.shadow.css","webpack:///./src/search-launchpad/host-context.css","webpack:///./src/launchpad-button-v2/LaunchpadContext.ts","webpack:///./src/launchpad-button-v2/MenuGroup.tsx"],"sourcesContent":["import React, { useCallback, useRef, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport classNames from \"classnames\";\nimport { LaunchpadsContext } from \"../launchpad-button-v2/LaunchpadContext\";\nimport { useLaunchpadInfo } from \"../launchpad-button-v2/useLaunchpadInfo\";\nimport { MenuGroup } from \"../launchpad-button-v2/MenuGroup\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport \"./host-context.css\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst { defineElement, property } = createDecorators();\n\n/**\n * launchpad 搜索\n * @insider\n */\nexport\n@defineElement(\"eo-search-launchpad\", {\n styleTexts: [styleText],\n})\nclass EoSearchLaunchpad extends ReactNextElement {\n /**\n * 简约模式\n */\n @property({\n type: Boolean,\n })\n accessor readonly: boolean | undefined;\n\n render() {\n return <EoSearchLaunchpadComponent readonly={this.readonly} />;\n }\n}\n\ninterface EoSearchLaunchpadComponentProps {\n readonly?: boolean;\n}\n\nexport function EoSearchLaunchpadComponent({\n readonly,\n}: EoSearchLaunchpadComponentProps) {\n const searchInputRef = useRef<HTMLInputElement>(null);\n const handleClickSearchBox = useCallback(() => {\n searchInputRef.current?.focus();\n }, []);\n\n const [active, setActive] = useState(false);\n\n const {\n loading,\n q,\n setQ,\n menuGroups,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n } = useLaunchpadInfo(active);\n const searching = !!q;\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setQ(e.target.value);\n },\n [setQ]\n );\n\n const clearSearch = useCallback(() => {\n setQ(\"\");\n }, [setQ]);\n\n return (\n <LaunchpadsContext.Provider\n value={{\n searching,\n loadingFavorites,\n readonly,\n pushRecentVisit,\n toggleStar,\n isStarred,\n }}\n >\n <div className=\"container\">\n <div className=\"search-box\" onClick={handleClickSearchBox}>\n <WrappedIcon\n lib=\"fa\"\n icon=\"magnifying-glass\"\n className=\"search-icon\"\n />\n <input\n ref={searchInputRef}\n placeholder=\"搜索产品/微应用\"\n value={q}\n onChange={handleSearch}\n className=\"search-input\"\n onFocus={() => setActive(true)}\n onBlur={() => setActive(false)}\n />\n <WrappedIcon\n lib=\"antd\"\n theme=\"filled\"\n icon=\"close-circle\"\n className={classNames(\"search-clear\", { searching })}\n onClick={clearSearch}\n onMouseDown={(e) => e.preventDefault()}\n />\n </div>\n <div\n className={classNames(\"dropdown\", { \"dropdown-active\": active })}\n onMouseDown={(e) => e.preventDefault()}\n >\n <div className={classNames(\"dropdown-content\", { loading })}>\n <Loading loading={loading} />\n <ul className=\"menu-groups\">\n {menuGroups.map((group) => (\n <MenuGroup\n key={group.name}\n name={group.name}\n items={group.items}\n />\n ))}\n </ul>\n </div>\n </div>\n </div>\n </LaunchpadsContext.Provider>\n );\n}\n\nfunction Loading({ loading }: { loading: boolean }) {\n return (\n loading && (\n <div className=\"spinner\">\n <WrappedIcon lib=\"fa\" icon=\"spinner\" spinning />\n </div>\n )\n );\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n export default content && content.locals ? content.locals : undefined;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root{--eo-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\nimport type { MenuItemDataLink, MenuItemDataNormal } from \"./interfaces\";\n\nexport interface LaunchpadContextData {\n searching: boolean;\n loadingFavorites: boolean;\n readonly?: boolean;\n pushRecentVisit(item: MenuItemDataNormal): void;\n toggleStar(item: MenuItemDataNormal | MenuItemDataLink): void;\n isStarred(item: MenuItemDataNormal): boolean;\n}\n\nexport const LaunchpadsContext = React.createContext<LaunchpadContextData>(\n {} as LaunchpadContextData\n);\n\nexport const useLaunchpadContext = (): LaunchpadContextData =>\n React.useContext(LaunchpadsContext);\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { pick } from \"lodash\";\nimport classNames from \"classnames\";\nimport { WrappedIcon, WrappedLink } from \"./wrapped-bricks\";\nimport { useLaunchpadContext } from \"./LaunchpadContext\";\nimport type {\n MenuItemData,\n MenuItemDataNormal,\n SidebarMenuItemData,\n} from \"./interfaces\";\nimport { Target } from \"@next-bricks/basic/link\";\n\nexport interface MenuGroupProps {\n name: string;\n items: MenuItemData[];\n}\n\nexport function MenuGroup({ name, items }: MenuGroupProps) {\n return (\n <li className=\"menu-group\">\n <div className=\"menu-group-label\">{name}</div>\n <ul className=\"menu\">\n {items.map((item) =>\n item.type === \"dir\" ? (\n <MenuItemFolder\n key={`${item.type}-${item.id}`}\n name={item.name}\n items={item.items}\n />\n ) : (\n <MenuItem key={`${item.type}-${item.id}`} item={item} />\n )\n )}\n </ul>\n </li>\n );\n}\n\nexport interface MenuItemProps {\n item: MenuItemDataNormal;\n}\n\nfunction MenuItem({ item }: MenuItemProps) {\n const { loadingFavorites, readonly, pushRecentVisit, toggleStar, isStarred } =\n useLaunchpadContext();\n\n const starred = useMemo(() => isStarred(item), [isStarred, item]);\n\n const handleStarClick = useCallback(() => {\n toggleStar(item);\n }, [item, toggleStar]);\n\n const handleClick = useCallback(() => {\n pushRecentVisit(item);\n }, [item, pushRecentVisit]);\n\n return (\n <li\n className={classNames(\"menu-item\", {\n starred,\n \"can-star\": !loadingFavorites,\n })}\n >\n <WrappedLink\n onClick={handleClick}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n })}\n >\n <WrappedIcon\n className=\"menu-icon\"\n lib=\"easyops\"\n icon=\"micro-app-center\"\n {...(item.menuIcon?.lib && item.menuIcon.icon\n ? (pick(item.menuIcon, [\n \"lib\",\n \"icon\",\n \"theme\",\n \"category\",\n \"prefix\",\n ]) as any)\n : null)}\n />\n <span className=\"menu-item-label\">{item.name}</span>\n </WrappedLink>\n {!readonly && (\n <WrappedIcon\n lib=\"fa\"\n prefix={starred ? \"fas\" : \"far\"}\n icon=\"star\"\n className=\"menu-item-star\"\n title={starred ? \"取消收藏\" : \"收藏\"}\n onClick={handleStarClick}\n />\n )}\n </li>\n );\n}\n\nexport interface SidebarMenuItemProps {\n item: SidebarMenuItemData;\n target?: Target;\n}\n\nexport function SidebarMenuItem({ item, target }: SidebarMenuItemProps) {\n const { readonly, pushRecentVisit, toggleStar } = useLaunchpadContext();\n\n const handleClick = useCallback(() => {\n if (item.type !== \"link\") {\n pushRecentVisit(item);\n }\n }, [item, pushRecentVisit]);\n\n const handleRemoveStar = useCallback(() => {\n toggleStar(item);\n }, [item, toggleStar]);\n\n return (\n <li className=\"sidebar-menu-item\">\n <WrappedLink\n onClick={handleClick}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n })}\n {...(target\n ? {\n target,\n }\n : null)}\n >\n <WrappedIcon\n className={`sidebar-menu-icon`}\n lib=\"easyops\"\n icon=\"micro-app-center\"\n {...(item.menuIcon?.lib && item.menuIcon.icon\n ? (pick(item.menuIcon, [\n \"lib\",\n \"icon\",\n \"theme\",\n \"category\",\n \"prefix\",\n ]) as any)\n : null)}\n />\n <span className=\"menu-item-label\">{item.name}</span>\n </WrappedLink>\n {!readonly && (\n <WrappedIcon\n lib=\"fa\"\n icon=\"xmark\"\n className=\"menu-item-remove\"\n onClick={handleRemoveStar}\n />\n )}\n </li>\n );\n}\n\nexport interface MenuItemFolderProps {\n name: string;\n items: MenuItemDataNormal[];\n}\n\nfunction MenuItemFolder({ name, items }: MenuItemFolderProps) {\n const { searching } = useLaunchpadContext();\n const [expanded, setExpanded] = useState(false);\n const [searchingExpanded, setSearchingExpanded] = useState(false);\n\n const toggle = useCallback(() => {\n // Use separated expanded states for searching and non-searching.\n if (searching) {\n setSearchingExpanded((previous) => !previous);\n } else {\n setExpanded((previous) => !previous);\n }\n }, [searching]);\n\n useEffect(() => {\n // Each time when start searching, set it as expanded.\n setSearchingExpanded(true);\n }, [searching]);\n\n const actualExpanded = searching ? searchingExpanded : expanded;\n\n return (\n <li className=\"menu-item folder\">\n <WrappedLink onClick={toggle}>\n <WrappedIcon\n lib=\"fa\"\n prefix=\"far\"\n icon=\"folder-open\"\n className=\"menu-icon\"\n />\n <span className=\"menu-item-label\">{name}</span>\n <WrappedIcon\n lib=\"antd\"\n icon={actualExpanded ? \"up\" : \"down\"}\n className=\"menu-item-toggle\"\n />\n </WrappedLink>\n <ul className={classNames(\"sub-menu\", { expanded: actualExpanded })}>\n {items.map((item) => (\n <MenuItem key={`${item.type}-${item.id}`} item={item} />\n ))}\n </ul>\n </li>\n );\n}\n"],"names":["WrappedIcon","wrapBrick","defineElement","property","createDecorators","_EoSearchLaunchpad","_A","WeakMap","EoSearchLaunchpad","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_readonly","_init_extra_readonly","readonly","_classPrivateFieldGet","v","_classPrivateFieldSet","render","React","EoSearchLaunchpadComponent","this","_ref","searchInputRef","useRef","handleClickSearchBox","useCallback","_searchInputRef$curre","current","focus","active","setActive","useState","loading","q","setQ","menuGroups","loadingFavorites","pushRecentVisit","toggleStar","isStarred","useLaunchpadInfo","searching","handleSearch","e","target","value","clearSearch","LaunchpadsContext","Provider","className","onClick","lib","icon","ref","placeholder","onChange","onFocus","onBlur","theme","classNames","onMouseDown","preventDefault","Loading","map","group","MenuGroup","key","name","items","_ref2","spinning","_EoSearchLaunchpad2","c","_initClass","_applyDecs","styleTexts","styleText","type","Boolean","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","___CSS_LOADER_EXPORT___","push","module","id","toString","useLaunchpadContext","item","MenuItemFolder","MenuItem","_item$menuIcon","starred","useMemo","handleStarClick","handleClick","WrappedLink","_extends","url","href","menuIcon","pick","prefix","title","SidebarMenuItem","_ref3","_item$menuIcon2","handleRemoveStar","_ref4","expanded","setExpanded","searchingExpanded","setSearchingExpanded","toggle","previous","useEffect","actualExpanded"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/eo-search-launchpad.3c5eb6d6.js","mappings":"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","sources":["webpack:///./src/search-launchpad/index.tsx","webpack:///./src/search-launchpad/host-context.css?4d0b","webpack:///./src/search-launchpad/styles.shadow.css","webpack:///./src/search-launchpad/host-context.css","webpack:///./src/launchpad-button-v2/LaunchpadContext.ts","webpack:///./src/launchpad-button-v2/MenuGroup.tsx"],"sourcesContent":["import React, { useCallback, useRef, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport classNames from \"classnames\";\nimport { LaunchpadsContext } from \"../launchpad-button-v2/LaunchpadContext\";\nimport { useLaunchpadInfo } from \"../launchpad-button-v2/useLaunchpadInfo\";\nimport { MenuGroup } from \"../launchpad-button-v2/MenuGroup\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport \"./host-context.css\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst { defineElement, property } = createDecorators();\n\n/**\n * launchpad 搜索\n * @insider\n */\nexport\n@defineElement(\"eo-search-launchpad\", {\n styleTexts: [styleText],\n})\nclass EoSearchLaunchpad extends ReactNextElement {\n /**\n * 简约模式\n */\n @property({\n type: Boolean,\n })\n accessor readonly: boolean | undefined;\n\n render() {\n return <EoSearchLaunchpadComponent readonly={this.readonly} />;\n }\n}\n\ninterface EoSearchLaunchpadComponentProps {\n readonly?: boolean;\n}\n\nexport function EoSearchLaunchpadComponent({\n readonly,\n}: EoSearchLaunchpadComponentProps) {\n const searchInputRef = useRef<HTMLInputElement>(null);\n const handleClickSearchBox = useCallback(() => {\n searchInputRef.current?.focus();\n }, []);\n\n const [active, setActive] = useState(false);\n\n const {\n loading,\n q,\n setQ,\n menuGroups,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n } = useLaunchpadInfo(active);\n const searching = !!q;\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setQ(e.target.value);\n },\n [setQ]\n );\n\n const clearSearch = useCallback(() => {\n setQ(\"\");\n }, [setQ]);\n\n return (\n <LaunchpadsContext.Provider\n value={{\n searching,\n loadingFavorites,\n readonly,\n pushRecentVisit,\n toggleStar,\n isStarred,\n }}\n >\n <div className=\"container\">\n <div className=\"search-box\" onClick={handleClickSearchBox}>\n <WrappedIcon\n lib=\"fa\"\n icon=\"magnifying-glass\"\n className=\"search-icon\"\n />\n <input\n ref={searchInputRef}\n placeholder=\"搜索产品/微应用\"\n value={q}\n onChange={handleSearch}\n className=\"search-input\"\n onFocus={() => setActive(true)}\n onBlur={() => setActive(false)}\n />\n <WrappedIcon\n lib=\"antd\"\n theme=\"filled\"\n icon=\"close-circle\"\n className={classNames(\"search-clear\", { searching })}\n onClick={clearSearch}\n onMouseDown={(e) => e.preventDefault()}\n />\n </div>\n <div\n className={classNames(\"dropdown\", { \"dropdown-active\": active })}\n onMouseDown={(e) => e.preventDefault()}\n >\n <div className={classNames(\"dropdown-content\", { loading })}>\n <Loading loading={loading} />\n <ul className=\"menu-groups\">\n {menuGroups.map((group) => (\n <MenuGroup\n key={group.name}\n name={group.name}\n items={group.items}\n />\n ))}\n </ul>\n </div>\n </div>\n </div>\n </LaunchpadsContext.Provider>\n );\n}\n\nfunction Loading({ loading }: { loading: boolean }) {\n return (\n loading && (\n <div className=\"spinner\">\n <WrappedIcon lib=\"fa\" icon=\"spinner\" spinning />\n </div>\n )\n );\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n export default content && content.locals ? content.locals : undefined;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root{--eo-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\nimport type { MenuItemDataLink, MenuItemDataNormal } from \"./interfaces\";\n\nexport interface LaunchpadContextData {\n searching: boolean;\n loadingFavorites: boolean;\n readonly?: boolean;\n pushRecentVisit(item: MenuItemDataNormal): void;\n toggleStar(item: MenuItemDataNormal | MenuItemDataLink): void;\n isStarred(item: MenuItemDataNormal): boolean;\n}\n\nexport const LaunchpadsContext = React.createContext<LaunchpadContextData>(\n {} as LaunchpadContextData\n);\n\nexport const useLaunchpadContext = (): LaunchpadContextData =>\n React.useContext(LaunchpadsContext);\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { pick } from \"lodash\";\nimport classNames from \"classnames\";\nimport { WrappedIcon, WrappedLink } from \"./wrapped-bricks\";\nimport { useLaunchpadContext } from \"./LaunchpadContext\";\nimport type {\n MenuItemData,\n MenuItemDataNormal,\n SidebarMenuItemData,\n} from \"./interfaces\";\nimport { Target } from \"@next-bricks/basic/link\";\n\nexport interface MenuGroupProps {\n name: string;\n items: MenuItemData[];\n}\n\nexport function MenuGroup({ name, items }: MenuGroupProps) {\n return (\n <li className=\"menu-group\">\n <div className=\"menu-group-label\">{name}</div>\n <ul className=\"menu\">\n {items.map((item) =>\n item.type === \"dir\" ? (\n <MenuItemFolder\n key={`${item.type}-${item.id}`}\n name={item.name}\n items={item.items}\n />\n ) : (\n <MenuItem key={`${item.type}-${item.id}`} item={item} />\n )\n )}\n </ul>\n </li>\n );\n}\n\nexport interface MenuItemProps {\n item: MenuItemDataNormal;\n}\n\nfunction MenuItem({ item }: MenuItemProps) {\n const { loadingFavorites, readonly, pushRecentVisit, toggleStar, isStarred } =\n useLaunchpadContext();\n\n const starred = useMemo(() => isStarred(item), [isStarred, item]);\n\n const handleStarClick = useCallback(() => {\n toggleStar(item);\n }, [item, toggleStar]);\n\n const handleClick = useCallback(() => {\n pushRecentVisit(item);\n }, [item, pushRecentVisit]);\n\n return (\n <li\n className={classNames(\"menu-item\", {\n starred,\n \"can-star\": !loadingFavorites,\n })}\n >\n <WrappedLink\n onClick={handleClick}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n })}\n >\n <WrappedIcon\n className=\"menu-icon\"\n lib=\"easyops\"\n icon=\"micro-app-center\"\n {...(item.menuIcon?.lib && item.menuIcon.icon\n ? (pick(item.menuIcon, [\n \"lib\",\n \"icon\",\n \"theme\",\n \"category\",\n \"prefix\",\n ]) as any)\n : null)}\n />\n <span className=\"menu-item-label\">{item.name}</span>\n </WrappedLink>\n {!readonly && (\n <WrappedIcon\n lib=\"fa\"\n prefix={starred ? \"fas\" : \"far\"}\n icon=\"star\"\n className=\"menu-item-star\"\n title={starred ? \"取消收藏\" : \"收藏\"}\n onClick={handleStarClick}\n />\n )}\n </li>\n );\n}\n\nexport interface SidebarMenuItemProps {\n item: SidebarMenuItemData;\n target?: Target;\n}\n\nexport function SidebarMenuItem({ item, target }: SidebarMenuItemProps) {\n const { readonly, pushRecentVisit, toggleStar } = useLaunchpadContext();\n\n const handleClick = useCallback(() => {\n if (item.type !== \"link\") {\n pushRecentVisit(item);\n }\n }, [item, pushRecentVisit]);\n\n const handleRemoveStar = useCallback(() => {\n toggleStar(item);\n }, [item, toggleStar]);\n\n return (\n <li className=\"sidebar-menu-item\">\n <WrappedLink\n onClick={handleClick}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n })}\n {...(target\n ? {\n target,\n }\n : null)}\n >\n <WrappedIcon\n className={`sidebar-menu-icon`}\n lib=\"easyops\"\n icon=\"micro-app-center\"\n {...(item.menuIcon?.lib && item.menuIcon.icon\n ? (pick(item.menuIcon, [\n \"lib\",\n \"icon\",\n \"theme\",\n \"category\",\n \"prefix\",\n ]) as any)\n : null)}\n />\n <span className=\"menu-item-label\">{item.name}</span>\n </WrappedLink>\n {!readonly && (\n <WrappedIcon\n lib=\"fa\"\n icon=\"xmark\"\n className=\"menu-item-remove\"\n onClick={handleRemoveStar}\n />\n )}\n </li>\n );\n}\n\nexport interface MenuItemFolderProps {\n name: string;\n items: MenuItemDataNormal[];\n}\n\nfunction MenuItemFolder({ name, items }: MenuItemFolderProps) {\n const { searching } = useLaunchpadContext();\n const [expanded, setExpanded] = useState(false);\n const [searchingExpanded, setSearchingExpanded] = useState(false);\n\n const toggle = useCallback(() => {\n // Use separated expanded states for searching and non-searching.\n if (searching) {\n setSearchingExpanded((previous) => !previous);\n } else {\n setExpanded((previous) => !previous);\n }\n }, [searching]);\n\n useEffect(() => {\n // Each time when start searching, set it as expanded.\n setSearchingExpanded(true);\n }, [searching]);\n\n const actualExpanded = searching ? searchingExpanded : expanded;\n\n return (\n <li className=\"menu-item folder\">\n <WrappedLink onClick={toggle}>\n <WrappedIcon\n lib=\"fa\"\n prefix=\"far\"\n icon=\"folder-open\"\n className=\"menu-icon\"\n />\n <span className=\"menu-item-label\">{name}</span>\n <WrappedIcon\n lib=\"antd\"\n icon={actualExpanded ? \"up\" : \"down\"}\n className=\"menu-item-toggle\"\n />\n </WrappedLink>\n <ul className={classNames(\"sub-menu\", { expanded: actualExpanded })}>\n {items.map((item) => (\n <MenuItem key={`${item.type}-${item.id}`} item={item} />\n ))}\n </ul>\n </li>\n );\n}\n"],"names":["WrappedIcon","wrapBrick","defineElement","property","createDecorators","_EoSearchLaunchpad","_A","WeakMap","EoSearchLaunchpad","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_readonly","_init_extra_readonly","readonly","_classPrivateFieldGet","v","_classPrivateFieldSet","render","React","EoSearchLaunchpadComponent","this","_ref","searchInputRef","useRef","handleClickSearchBox","useCallback","_searchInputRef$curre","current","focus","active","setActive","useState","loading","q","setQ","menuGroups","loadingFavorites","pushRecentVisit","toggleStar","isStarred","useLaunchpadInfo","searching","handleSearch","e","target","value","clearSearch","LaunchpadsContext","Provider","className","onClick","lib","icon","ref","placeholder","onChange","onFocus","onBlur","theme","classNames","onMouseDown","preventDefault","Loading","map","group","MenuGroup","key","name","items","_ref2","spinning","_EoSearchLaunchpad2","c","_initClass","_applyDecs","styleTexts","styleText","type","Boolean","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","___CSS_LOADER_EXPORT___","push","module","id","toString","useLaunchpadContext","item","MenuItemFolder","MenuItem","_item$menuIcon","starred","useMemo","handleStarClick","handleClick","WrappedLink","_extends","url","href","menuIcon","pick","prefix","title","SidebarMenuItem","_ref3","_item$menuIcon2","handleRemoveStar","_ref4","expanded","setExpanded","searchingExpanded","setSearchingExpanded","toggle","previous","useEffect","actualExpanded"],"sourceRoot":""}
@@ -1,3 +1,3 @@
1
- /*! For license information please see eo-sidebar-menu-group.9f248d04.js.LICENSE.txt */
2
- (globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[62,1369,2052],{829:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2559);function o(e,t){return e.get((0,r.A)(e,t))}},918:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2016);function o(e,t,n){(0,r.A)(e,t),t.set(e,n)}},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,i){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},1369:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(7545);function o(e){var t=function(e){if("object"!=(0,r.A)(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=(0,r.A)(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:t+""}},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})},2559:(e,t,n)=>{"use strict";function r(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>r})},2740:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(7545),o=n(6902);function i(e,t,n){"symbol"==(0,r.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}var a=n(1369);function s(e,t,n,s,l,c){var u,p,d,m,f,h,g,b=Symbol.metadata||Symbol.for("Symbol.metadata"),v=Object.defineProperty,y=Object.create,w=[y(null),y(null)],E=t.length;function x(t,n,r){return function(o,i){n&&(i=o,o=e);for(var a=0;a<t.length;a++)i=t[a].apply(o,r?[i]:[]);return r?i:o}}function A(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function k(e,t,n,o,a,s,l,c,d,m,f){function h(e){if(!f(e))throw new TypeError("Attempted to access private element on non-instance")}var g=[].concat(t[0]),b=t[3],y=!l,E=1===a,k=3===a,S=4===a,C=2===a;function j(t,n,r){return function(o,i){return n&&(i=o,o=e),r&&r(o),z[t].call(o,i)}}if(!y){var z={},O=[],K=k?"get":S||E?"set":"value";if(d?(m||E?z={get:i((function(){return b(this)}),o,"get"),set:function(e){t[4](this,e)}}:z[K]=b,m||i(z[K],o,C?"":K)):m||(z=Object.getOwnPropertyDescriptor(e,o)),!m&&!d){if((p=w[+c][o])&&7!=(p^a))throw Error("Decorating two elements with the same name ("+z[K].name+") is not supported yet");w[+c][o]=a<3?1:a}}for(var N=e,B=g.length-1;B>=0;B-=n?2:1){var M=A(g[B],"A decorator","be",!0),P=n?g[B-1]:void 0,T={},I={kind:["field","accessor","method","getter","setter","class"][a],name:o,metadata:u,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");A(t,"An initializer","be",!0),s.push(t)}.bind(null,T)};if(y)p=M.call(P,N,I),T.v=1,A(p,"class decorators","return")&&(N=p);else if(I.static=c,I.private=d,p=I.access={has:d?f.bind():function(e){return o in e}},S||(p.get=d?C?function(e){return h(e),z.value}:j("get",0,h):function(e){return e[o]}),C||k||(p.set=d?j("set",0,h):function(e,t){e[o]=t}),N=M.call(P,E?{get:z.get,set:z.set}:z[K],I),T.v=1,E){if("object"==(0,r.A)(N)&&N)(p=A(N.get,"accessor.get"))&&(z.get=p),(p=A(N.set,"accessor.set"))&&(z.set=p),(p=A(N.init,"accessor.init"))&&O.unshift(p);else if(void 0!==N)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else A(N,(m?"field":"method")+" decorators","return")&&(m?O.unshift(N):z[K]=N)}return a<2&&l.push(x(O,c,1),x(s,c,0)),m||y||(d?E?l.splice(-1,0,j("get",c),j("set",c)):l.push(C?z[K]:A.call.bind(z[K])):v(e,o,z)),N}function S(e){return v(e,b,{configurable:!0,enumerable:!0,value:u})}return void 0!==c&&(u=c[b]),u=y(null==u?null:u),f=[],h=function(e){e&&f.push(x(e))},g=function(t,r){for(var i=0;i<n.length;i++){var s=n[i],c=s[1],u=7&c;if((8&c)==t&&!u==r){var p=s[2],h=!!s[3],g=16&c;k(t?e:e.prototype,s,g,h?"#"+p:(0,a.A)(p),u,u<2?[]:t?m=m||[]:d=d||[],f,!!t,h,r,t&&h?function(t){return(0,o.A)(t)===e}:l)}}},g(8,0),g(0,0),g(8,1),g(0,1),h(d),h(m),p=f,E||S(e),{e:p,get c(){var n=[];return E&&[S(e=k(e,[t],s,e.name,5,n)),x(n,1)]}}}},3352:(e,t,n)=>{"use strict";n.d(t,{Bb:()=>d,VI:()=>h,Wb:()=>p,i2:()=>g,k_:()=>m,mK:()=>u,wZ:()=>C,zD:()=>f});var r=n(9575),o=n(8769),i=n.n(o),a=n(2202),s=n(1280);const l=new Set(["EO-SIDEBAR-MENU-ITEM","EO-SIDEBAR-MENU-GROUP","EO-SIDEBAR-MENU-SUBMENU"]),c=e=>l.has(e.tagName);function u(e){const t=(0,o.useRef)(null),n=(0,o.useCallback)((()=>{var n;null===(n=t.current)||void 0===n||n.assignedElements().forEach((t=>{c(t)&&(t.menuCollapsed=e)}))}),[e]);return(0,o.useEffect)((()=>{n()}),[e,n]),(0,o.useEffect)((()=>{const e=t.current,r=()=>{n()};return null==e||e.addEventListener("slotchange",r),()=>{null==e||e.removeEventListener("slotchange",r)}}),[n]),[t]}const p="side-bar-has-been-used",d="side-bar-expand-state",m="side-bar-resize-width";let f=function(e){return e.Collapsed="collapsed",e.Hovered="hovered",e.Expanded="expanded",e}({});const h=parseInt((0,a.getCssPropertyValue)("--side-bar-width",document.body),10)||220,g=parseInt((0,a.getCssPropertyValue)("--side-bar-collapsed-width",document.body),10)||60,b=(0,o.createContext)({selectedKeys:[],openedKeys:[],matchedKeys:[]}),v=(0,s.wrapBrick)("eo-sidebar-menu"),y=(0,s.wrapBrick)("eo-sidebar-menu-item"),w=(0,s.wrapBrick)("eo-sidebar-menu-group"),E=(0,s.wrapBrick)("eo-sidebar-menu-submenu");function x(e){const{to:t,href:n,target:r,icon:a,text:s,id:l,inSubmenu:c}=e,{selectedKeys:u}=(0,o.useContext)(b);return i().createElement(y,{url:t,href:n,target:r,icon:a,inSubmenu:c,selected:u.includes(l)},s)}function A(e){const{title:t,items:n,id:a,top:s,inSubmenu:l}=e,{matchedKeys:c}=(0,o.useContext)(b),u=a&&c.includes(a);return(null==n?void 0:n.length)>0?i().createElement(w,{selected:!!u,collapsable:!s},i().createElement("span",{slot:"title"},t),e.items.map((e=>i().createElement(S,(0,r.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:l}))))):null}function k(e){const{title:t,icon:n,items:a,id:s}=e,{openedKeys:l,matchedKeys:c}=(0,o.useContext)(b),u=s&&c.includes(s);return(null==a?void 0:a.length)>0?i().createElement(E,{icon:n,collapsed:!l.includes(s),selected:!!u},i().createElement("span",{slot:"title"},t),e.items.map((e=>i().createElement(S,(0,r.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:!0}))))):null}function S(e){return"subMenu"===e.type?i().createElement(k,e):"group"===e.type?i().createElement(A,e):i().createElement(x,e)}function C(e){var t;const{menu:n,expandedState:o,selectedKeys:a,openedKeys:s,matchedKeys:l}=e;return i().createElement(b.Provider,{value:{selectedKeys:a||[],openedKeys:s||[],matchedKeys:l||[]}},i().createElement(v,{menuCollapsed:o===f.Collapsed},null==n||null===(t=n.menuItems)||void 0===t?void 0:t.map((e=>i().createElement(S,(0,r.A)({key:e.key},e,{id:e.key,top:!0}))))))}},3373:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=a(e,i(n)))}return e}function i(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=a(t,n));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},6121:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2559);function o(e,t,n){return e.set((0,r.A)(e,t),n),n}},6758:e=>{"use strict";e.exports=function(e){return e[1]}},6902:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(7545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.A)(e):"null"));return e}},7144:(e,t,n)=>{"use strict";n.r(t),n.d(t,{EoSidebarMenuGroup:()=>j,EoSidebarMenuGroupComponent:()=>P});var r,o=n(918),i=n(6121),a=n(829),s=n(2740),l=n(8769),c=n.n(l),u=n(7921),p=n(1280),d=(n(6477),n(8619)),m=n(3352),f=n(3373),h=n.n(f);let g,b,v,y,w,E,x,A,k;const{defineElement:S,property:C}=(0,u.createDecorators)();let j;var z=new WeakMap,O=new WeakMap,K=new WeakMap,N=new WeakMap,B=new WeakMap;class M extends p.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,z,b(this)),(0,o.A)(this,O,(v(this),y(this))),(0,o.A)(this,K,(w(this),E(this))),(0,o.A)(this,N,(x(this),A(this))),(0,o.A)(this,B,(k(this),e=>{this.collapsed=e}))}get collapsable(){return(0,a.A)(z,this)}set collapsable(e){(0,i.A)(z,this,e)}get collapsed(){return(0,a.A)(O,this)}set collapsed(e){(0,i.A)(O,this,e)}get selected(){return(0,a.A)(K,this)}set selected(e){(0,i.A)(K,this,e)}get menuCollapsed(){return(0,a.A)(N,this)}set menuCollapsed(e){(0,i.A)(N,this,e)}render(){return c().createElement(P,{collapsable:this.collapsable,selected:this.selected,collapsed:this.collapsed,menuCollapsed:this.menuCollapsed,onCollapseChange:(0,a.A)(B,this)})}}function P(e){const{collapsable:t=!1,collapsed:n,menuCollapsed:r,onCollapseChange:o}=e,[i]=(0,m.mK)(r),a=(0,l.useRef)(null),s=(0,l.useCallback)((()=>{!r&&(null==o||o(!n))}),[r,o,n]);return(0,l.useEffect)((()=>{const e=a.current;return null==e||e.addEventListener("click",s),()=>{null==e||e.removeEventListener("click",s)}}),[s]),c().createElement("div",{className:h()("menu-group",{"menu-group-collapsed":!!r||n})},c().createElement("div",{className:"menu-group-title",ref:a},c().createElement("span",{className:"menu-group-title-icon-container"},c().createElement("span",{className:"menu-group-title-icon"})),c().createElement("div",{className:"menu-group-title-text"},c().createElement("slot",{name:"title"})),t&&c().createElement("span",{className:"menu-group-arrow"})),c().createElement("div",{className:"menu-group-list"},c().createElement("div",{className:"menu-group-list-inner"},c().createElement("slot",{ref:i}))))}r=M,({e:[b,v,y,w,E,x,A,k],c:[j,g]}=(0,s.A)(r,[S("eo-sidebar-menu-group",{styleTexts:[d.A]})],[[C({type:Boolean}),1,"collapsable"],[C({type:Boolean}),1,"collapsed"],[C({type:Boolean}),1,"selected"],[C({type:Boolean}),1,"menuCollapsed"]],0,void 0,p.ReactNextElement)),g()},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})},8619:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(6758),o=n.n(r),i=n(935),a=n.n(i)()(o());a.push([e.id,':host{display:block;--menu-item-icon-size:20px}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.menu-group-title{position:relative;display:flex;align-items:center;min-height:36px;padding:8px 12px;line-height:20px;color:var(--left-secondary-text-color);border-radius:var(--larger-border-radius);transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-title-icon-container{flex-shrink:0;margin-right:14px;display:flex;align-items:center;justify-content:center;width:var(--menu-item-icon-size);height:var(--menu-item-icon-size);color:var(--left-sidebar-item-collapsed-icon-color);font-size:var(--menu-item-icon-size);transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-title-icon{width:1em;height:1em;border-bottom:2px solid var(--left-sidebar-group-border-color)}.menu-group-title-text{flex:1;font-size:12px;overflow:hidden;white-space:nowrap;margin-right:12px}.menu-group-list slot::slotted(*){margin-top:2px}.menu-group-arrow{position:absolute;top:50%;right:12px;width:10px;transform:translateY(-2px);transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.menu-group-arrow::before,\n.menu-group-arrow::after{content:"";position:absolute;width:6px;height:1.5px;background-color:currentColor;border-radius:2px;transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.menu-group-arrow::before{transform:rotate(45deg) translateX(2.5px)}.menu-group-arrow::after{transform:rotate(-45deg) translateX(-2.5px)}.menu-group-collapsed .menu-group-arrow{transform:translateY(-50%)}.menu-group-collapsed .menu-group-arrow::before{transform:rotate(-45deg) translateX(2.5px)}.menu-group-collapsed .menu-group-arrow::after{transform:rotate(45deg) translateX(-2.5px)}.menu-group-list{display:grid;grid-template-rows:1fr;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-list-inner{overflow:hidden}:host([menu-collapsed]) .menu-group-title{padding:0px calc(50% - var(--menu-item-icon-size) / 2)}:host(:not([menu-collapsed])) .menu-group-title-icon-container{width:0;margin-right:0;opacity:0}:host([menu-collapsed]) .menu-group-title-text{opacity:0}:host([menu-collapsed]) .menu-group-arrow{opacity:0}:host(:not([menu-collapsed])) .menu-group-title-text{white-space:pre-wrap;display:-webkit-inline-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;text-overflow:ellipsis;color:#7f8ba6}:host([collapsable]) .menu-group-collapsed .menu-group-list{grid-template-rows:0fr;opacity:0}',""]);const s=a.toString()},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})}}]);
3
- //# sourceMappingURL=eo-sidebar-menu-group.9f248d04.js.map
1
+ /*! For license information please see eo-sidebar-menu-group.e459c1c4.js.LICENSE.txt */
2
+ (globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[62,1369,2052],{829:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2559);function o(e,t){return e.get((0,r.A)(e,t))}},918:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2016);function o(e,t,n){(0,r.A)(e,t),t.set(e,n)}},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,i){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},1369:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(7545);function o(e){var t=function(e){if("object"!=(0,r.A)(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=(0,r.A)(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:t+""}},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})},2559:(e,t,n)=>{"use strict";function r(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>r})},2740:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(7545),o=n(6902);function i(e,t,n){"symbol"==(0,r.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}var a=n(1369);function s(e,t,n,s,l,c){var u,p,d,m,f,h,g,b=Symbol.metadata||Symbol.for("Symbol.metadata"),v=Object.defineProperty,y=Object.create,w=[y(null),y(null)],E=t.length;function x(t,n,r){return function(o,i){n&&(i=o,o=e);for(var a=0;a<t.length;a++)i=t[a].apply(o,r?[i]:[]);return r?i:o}}function A(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function k(e,t,n,o,a,s,l,c,d,m,f){function h(e){if(!f(e))throw new TypeError("Attempted to access private element on non-instance")}var g=[].concat(t[0]),b=t[3],y=!l,E=1===a,k=3===a,S=4===a,C=2===a;function j(t,n,r){return function(o,i){return n&&(i=o,o=e),r&&r(o),z[t].call(o,i)}}if(!y){var z={},O=[],K=k?"get":S||E?"set":"value";if(d?(m||E?z={get:i((function(){return b(this)}),o,"get"),set:function(e){t[4](this,e)}}:z[K]=b,m||i(z[K],o,C?"":K)):m||(z=Object.getOwnPropertyDescriptor(e,o)),!m&&!d){if((p=w[+c][o])&&7!=(p^a))throw Error("Decorating two elements with the same name ("+z[K].name+") is not supported yet");w[+c][o]=a<3?1:a}}for(var N=e,B=g.length-1;B>=0;B-=n?2:1){var M=A(g[B],"A decorator","be",!0),P=n?g[B-1]:void 0,T={},I={kind:["field","accessor","method","getter","setter","class"][a],name:o,metadata:u,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");A(t,"An initializer","be",!0),s.push(t)}.bind(null,T)};if(y)p=M.call(P,N,I),T.v=1,A(p,"class decorators","return")&&(N=p);else if(I.static=c,I.private=d,p=I.access={has:d?f.bind():function(e){return o in e}},S||(p.get=d?C?function(e){return h(e),z.value}:j("get",0,h):function(e){return e[o]}),C||k||(p.set=d?j("set",0,h):function(e,t){e[o]=t}),N=M.call(P,E?{get:z.get,set:z.set}:z[K],I),T.v=1,E){if("object"==(0,r.A)(N)&&N)(p=A(N.get,"accessor.get"))&&(z.get=p),(p=A(N.set,"accessor.set"))&&(z.set=p),(p=A(N.init,"accessor.init"))&&O.unshift(p);else if(void 0!==N)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else A(N,(m?"field":"method")+" decorators","return")&&(m?O.unshift(N):z[K]=N)}return a<2&&l.push(x(O,c,1),x(s,c,0)),m||y||(d?E?l.splice(-1,0,j("get",c),j("set",c)):l.push(C?z[K]:A.call.bind(z[K])):v(e,o,z)),N}function S(e){return v(e,b,{configurable:!0,enumerable:!0,value:u})}return void 0!==c&&(u=c[b]),u=y(null==u?null:u),f=[],h=function(e){e&&f.push(x(e))},g=function(t,r){for(var i=0;i<n.length;i++){var s=n[i],c=s[1],u=7&c;if((8&c)==t&&!u==r){var p=s[2],h=!!s[3],g=16&c;k(t?e:e.prototype,s,g,h?"#"+p:(0,a.A)(p),u,u<2?[]:t?m=m||[]:d=d||[],f,!!t,h,r,t&&h?function(t){return(0,o.A)(t)===e}:l)}}},g(8,0),g(0,0),g(8,1),g(0,1),h(d),h(m),p=f,E||S(e),{e:p,get c(){var n=[];return E&&[S(e=k(e,[t],s,e.name,5,n)),x(n,1)]}}}},3352:(e,t,n)=>{"use strict";n.d(t,{Bb:()=>d,VI:()=>h,Wb:()=>p,i2:()=>g,k_:()=>m,mK:()=>u,wZ:()=>C,zD:()=>f});var r=n(9575),o=n(8769),i=n.n(o),a=n(3081),s=n(1280);const l=new Set(["EO-SIDEBAR-MENU-ITEM","EO-SIDEBAR-MENU-GROUP","EO-SIDEBAR-MENU-SUBMENU"]),c=e=>l.has(e.tagName);function u(e){const t=(0,o.useRef)(null),n=(0,o.useCallback)((()=>{var n;null===(n=t.current)||void 0===n||n.assignedElements().forEach((t=>{c(t)&&(t.menuCollapsed=e)}))}),[e]);return(0,o.useEffect)((()=>{n()}),[e,n]),(0,o.useEffect)((()=>{const e=t.current,r=()=>{n()};return null==e||e.addEventListener("slotchange",r),()=>{null==e||e.removeEventListener("slotchange",r)}}),[n]),[t]}const p="side-bar-has-been-used",d="side-bar-expand-state",m="side-bar-resize-width";let f=function(e){return e.Collapsed="collapsed",e.Hovered="hovered",e.Expanded="expanded",e}({});const h=parseInt((0,a.getCssPropertyValue)("--side-bar-width",document.body),10)||220,g=parseInt((0,a.getCssPropertyValue)("--side-bar-collapsed-width",document.body),10)||60,b=(0,o.createContext)({selectedKeys:[],openedKeys:[],matchedKeys:[]}),v=(0,s.wrapBrick)("eo-sidebar-menu"),y=(0,s.wrapBrick)("eo-sidebar-menu-item"),w=(0,s.wrapBrick)("eo-sidebar-menu-group"),E=(0,s.wrapBrick)("eo-sidebar-menu-submenu");function x(e){const{to:t,href:n,target:r,icon:a,text:s,id:l,inSubmenu:c}=e,{selectedKeys:u}=(0,o.useContext)(b);return i().createElement(y,{url:t,href:n,target:r,icon:a,inSubmenu:c,selected:u.includes(l)},s)}function A(e){const{title:t,items:n,id:a,top:s,inSubmenu:l}=e,{matchedKeys:c}=(0,o.useContext)(b),u=a&&c.includes(a);return(null==n?void 0:n.length)>0?i().createElement(w,{selected:!!u,collapsable:!s},i().createElement("span",{slot:"title"},t),e.items.map((e=>i().createElement(S,(0,r.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:l}))))):null}function k(e){const{title:t,icon:n,items:a,id:s}=e,{openedKeys:l,matchedKeys:c}=(0,o.useContext)(b),u=s&&c.includes(s);return(null==a?void 0:a.length)>0?i().createElement(E,{icon:n,collapsed:!l.includes(s),selected:!!u},i().createElement("span",{slot:"title"},t),e.items.map((e=>i().createElement(S,(0,r.A)({key:e.key},e,{id:e.key,top:!1,inSubmenu:!0}))))):null}function S(e){return"subMenu"===e.type?i().createElement(k,e):"group"===e.type?i().createElement(A,e):i().createElement(x,e)}function C(e){var t;const{menu:n,expandedState:o,selectedKeys:a,openedKeys:s,matchedKeys:l}=e;return i().createElement(b.Provider,{value:{selectedKeys:a||[],openedKeys:s||[],matchedKeys:l||[]}},i().createElement(v,{menuCollapsed:o===f.Collapsed},null==n||null===(t=n.menuItems)||void 0===t?void 0:t.map((e=>i().createElement(S,(0,r.A)({key:e.key},e,{id:e.key,top:!0}))))))}},3373:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=a(e,i(n)))}return e}function i(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=a(t,n));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},6121:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(2559);function o(e,t,n){return e.set((0,r.A)(e,t),n),n}},6758:e=>{"use strict";e.exports=function(e){return e[1]}},6902:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(7545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.A)(e):"null"));return e}},7144:(e,t,n)=>{"use strict";n.r(t),n.d(t,{EoSidebarMenuGroup:()=>j,EoSidebarMenuGroupComponent:()=>P});var r,o=n(918),i=n(6121),a=n(829),s=n(2740),l=n(8769),c=n.n(l),u=n(7921),p=n(1280),d=(n(5168),n(8619)),m=n(3352),f=n(3373),h=n.n(f);let g,b,v,y,w,E,x,A,k;const{defineElement:S,property:C}=(0,u.createDecorators)();let j;var z=new WeakMap,O=new WeakMap,K=new WeakMap,N=new WeakMap,B=new WeakMap;class M extends p.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,z,b(this)),(0,o.A)(this,O,(v(this),y(this))),(0,o.A)(this,K,(w(this),E(this))),(0,o.A)(this,N,(x(this),A(this))),(0,o.A)(this,B,(k(this),e=>{this.collapsed=e}))}get collapsable(){return(0,a.A)(z,this)}set collapsable(e){(0,i.A)(z,this,e)}get collapsed(){return(0,a.A)(O,this)}set collapsed(e){(0,i.A)(O,this,e)}get selected(){return(0,a.A)(K,this)}set selected(e){(0,i.A)(K,this,e)}get menuCollapsed(){return(0,a.A)(N,this)}set menuCollapsed(e){(0,i.A)(N,this,e)}render(){return c().createElement(P,{collapsable:this.collapsable,selected:this.selected,collapsed:this.collapsed,menuCollapsed:this.menuCollapsed,onCollapseChange:(0,a.A)(B,this)})}}function P(e){const{collapsable:t=!1,collapsed:n,menuCollapsed:r,onCollapseChange:o}=e,[i]=(0,m.mK)(r),a=(0,l.useRef)(null),s=(0,l.useCallback)((()=>{!r&&(null==o||o(!n))}),[r,o,n]);return(0,l.useEffect)((()=>{const e=a.current;return null==e||e.addEventListener("click",s),()=>{null==e||e.removeEventListener("click",s)}}),[s]),c().createElement("div",{className:h()("menu-group",{"menu-group-collapsed":!!r||n})},c().createElement("div",{className:"menu-group-title",ref:a},c().createElement("span",{className:"menu-group-title-icon-container"},c().createElement("span",{className:"menu-group-title-icon"})),c().createElement("div",{className:"menu-group-title-text"},c().createElement("slot",{name:"title"})),t&&c().createElement("span",{className:"menu-group-arrow"})),c().createElement("div",{className:"menu-group-list"},c().createElement("div",{className:"menu-group-list-inner"},c().createElement("slot",{ref:i}))))}r=M,({e:[b,v,y,w,E,x,A,k],c:[j,g]}=(0,s.A)(r,[S("eo-sidebar-menu-group",{styleTexts:[d.A]})],[[C({type:Boolean}),1,"collapsable"],[C({type:Boolean}),1,"collapsed"],[C({type:Boolean}),1,"selected"],[C({type:Boolean}),1,"menuCollapsed"]],0,void 0,p.ReactNextElement)),g()},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})},8619:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(6758),o=n.n(r),i=n(935),a=n.n(i)()(o());a.push([e.id,':host{display:block;--menu-item-icon-size:20px}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.menu-group-title{position:relative;display:flex;align-items:center;min-height:36px;padding:8px 12px;line-height:20px;color:var(--left-secondary-text-color);border-radius:var(--larger-border-radius);transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-title-icon-container{flex-shrink:0;margin-right:14px;display:flex;align-items:center;justify-content:center;width:var(--menu-item-icon-size);height:var(--menu-item-icon-size);color:var(--left-sidebar-item-collapsed-icon-color);font-size:var(--menu-item-icon-size);transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-title-icon{width:1em;height:1em;border-bottom:2px solid var(--left-sidebar-group-border-color)}.menu-group-title-text{flex:1;font-size:12px;overflow:hidden;white-space:nowrap;margin-right:12px}.menu-group-list slot::slotted(*){margin-top:2px}.menu-group-arrow{position:absolute;top:50%;right:12px;width:10px;transform:translateY(-2px);transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.menu-group-arrow::before,\n.menu-group-arrow::after{content:"";position:absolute;width:6px;height:1.5px;background-color:currentColor;border-radius:2px;transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.menu-group-arrow::before{transform:rotate(45deg) translateX(2.5px)}.menu-group-arrow::after{transform:rotate(-45deg) translateX(-2.5px)}.menu-group-collapsed .menu-group-arrow{transform:translateY(-50%)}.menu-group-collapsed .menu-group-arrow::before{transform:rotate(-45deg) translateX(2.5px)}.menu-group-collapsed .menu-group-arrow::after{transform:rotate(45deg) translateX(-2.5px)}.menu-group-list{display:grid;grid-template-rows:1fr;transition:all var(--side-bar-collapse-transition-duration) var(--side-bar-collapse-transition-timing-function)}.menu-group-list-inner{overflow:hidden}:host([menu-collapsed]) .menu-group-title{padding:0px calc(50% - var(--menu-item-icon-size) / 2)}:host(:not([menu-collapsed])) .menu-group-title-icon-container{width:0;margin-right:0;opacity:0}:host([menu-collapsed]) .menu-group-title-text{opacity:0}:host([menu-collapsed]) .menu-group-arrow{opacity:0}:host(:not([menu-collapsed])) .menu-group-title-text{white-space:pre-wrap;display:-webkit-inline-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;text-overflow:ellipsis;color:#7f8ba6}:host([collapsable]) .menu-group-collapsed .menu-group-list{grid-template-rows:0fr;opacity:0}',""]);const s=a.toString()},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})}}]);
3
+ //# sourceMappingURL=eo-sidebar-menu-group.e459c1c4.js.map