@next-bricks/nav 1.24.10 → 1.25.0

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 (129) hide show
  1. package/dist/bricks.json +12 -12
  2. package/dist/chunks/1685.437940d7.js +2 -0
  3. package/dist/chunks/1685.437940d7.js.map +1 -0
  4. package/dist/chunks/3944.a7f7cffe.js +2 -0
  5. package/dist/chunks/3944.a7f7cffe.js.map +1 -0
  6. package/dist/chunks/{4837.b5ed600d.js → 4837.d06f1908.js} +2 -2
  7. package/dist/chunks/{7218.6547d083.js.map → 4837.d06f1908.js.map} +1 -1
  8. package/dist/chunks/5655.a02d92d1.js +2 -0
  9. package/dist/chunks/5655.a02d92d1.js.map +1 -0
  10. package/dist/chunks/6128.3912671f.js +2 -0
  11. package/dist/chunks/6128.3912671f.js.map +1 -0
  12. package/dist/chunks/6502.9ac6b169.js +2 -0
  13. package/dist/chunks/6502.9ac6b169.js.map +1 -0
  14. package/dist/chunks/{7218.6547d083.js → 7218.623deb5b.js} +2 -2
  15. package/dist/chunks/{4837.b5ed600d.js.map → 7218.623deb5b.js.map} +1 -1
  16. package/dist/chunks/easyops-navbar-alerts.cc7090db.js +2 -0
  17. package/dist/chunks/easyops-navbar-alerts.cc7090db.js.map +1 -0
  18. package/dist/chunks/{eo-app-bar-wrapper.6fcc11f1.js → eo-app-bar-wrapper.743025bd.js} +3 -3
  19. package/dist/chunks/eo-app-bar-wrapper.743025bd.js.map +1 -0
  20. package/dist/chunks/eo-directory-tree-internal-node.e1fd8680.js +2 -0
  21. package/dist/chunks/eo-directory-tree-internal-node.e1fd8680.js.map +1 -0
  22. package/dist/chunks/eo-directory-tree-leaf.315a4f71.js +2 -0
  23. package/dist/chunks/eo-directory-tree-leaf.315a4f71.js.map +1 -0
  24. package/dist/chunks/eo-directory-tree.2ba780f8.js +3 -0
  25. package/dist/chunks/eo-directory-tree.2ba780f8.js.map +1 -0
  26. package/dist/chunks/eo-directory.a0e99853.js +3 -0
  27. package/dist/chunks/eo-directory.a0e99853.js.map +1 -0
  28. package/dist/chunks/{eo-frame-breadcrumb.88ef9279.js → eo-frame-breadcrumb.a2d98877.js} +2 -2
  29. package/dist/chunks/{eo-frame-breadcrumb.88ef9279.js.map → eo-frame-breadcrumb.a2d98877.js.map} +1 -1
  30. package/dist/chunks/eo-launchpad-button-v2.aa05077e.js +3 -0
  31. package/dist/chunks/eo-launchpad-button-v2.aa05077e.js.map +1 -0
  32. package/dist/chunks/eo-launchpad-button.b8b7bcff.js +3 -0
  33. package/dist/chunks/eo-launchpad-button.b8b7bcff.js.map +1 -0
  34. package/dist/chunks/eo-launchpad-quick-access.b0a48525.js +3 -0
  35. package/dist/chunks/eo-launchpad-quick-access.b0a48525.js.map +1 -0
  36. package/dist/chunks/{eo-launchpad-recent-visits.dad50d61.js → eo-launchpad-recent-visits.1a7c6e2c.js} +3 -3
  37. package/dist/chunks/eo-launchpad-recent-visits.1a7c6e2c.js.map +1 -0
  38. package/dist/chunks/{eo-nav-menu.640648bb.js → eo-nav-menu.64183ee8.js} +2 -2
  39. package/dist/chunks/{eo-nav-menu.640648bb.js.map → eo-nav-menu.64183ee8.js.map} +1 -1
  40. package/dist/chunks/eo-search-launchpad.8d4e293c.js +2 -0
  41. package/dist/chunks/eo-search-launchpad.8d4e293c.js.map +1 -0
  42. package/dist/chunks/{eo-sidebar-menu-group.66decf41.js → eo-sidebar-menu-group.01ac76d3.js} +3 -3
  43. package/dist/chunks/{eo-sidebar-menu-group.66decf41.js.map → eo-sidebar-menu-group.01ac76d3.js.map} +1 -1
  44. package/dist/chunks/eo-sidebar-menu-item.cc8a849b.js +2 -0
  45. package/dist/chunks/eo-sidebar-menu-item.cc8a849b.js.map +1 -0
  46. package/dist/chunks/eo-sidebar-menu-submenu.5cb414f6.js +3 -0
  47. package/dist/chunks/eo-sidebar-menu-submenu.5cb414f6.js.map +1 -0
  48. package/dist/chunks/{eo-sidebar-menu.39722013.js → eo-sidebar-menu.48f4f3a7.js} +2 -2
  49. package/dist/chunks/{eo-sidebar-menu.39722013.js.map → eo-sidebar-menu.48f4f3a7.js.map} +1 -1
  50. package/dist/chunks/{eo-sidebar-sub-menu.d8255f31.js → eo-sidebar-sub-menu.70c71ea9.js} +3 -3
  51. package/dist/chunks/eo-sidebar-sub-menu.70c71ea9.js.map +1 -0
  52. package/dist/chunks/eo-sidebar.ad2491ee.js +3 -0
  53. package/dist/chunks/eo-sidebar.ad2491ee.js.map +1 -0
  54. package/dist/chunks/{get-menu-config-options.77e554ca.js → get-menu-config-options.5803223a.js} +2 -2
  55. package/dist/chunks/{get-menu-config-options.77e554ca.js.map → get-menu-config-options.5803223a.js.map} +1 -1
  56. package/dist/chunks/{get-menu-config-tree.d422a3a5.js → get-menu-config-tree.d139c301.js} +2 -2
  57. package/dist/chunks/{get-menu-config-tree.d422a3a5.js.map → get-menu-config-tree.d139c301.js.map} +1 -1
  58. package/dist/chunks/launchpad-config.bd938fce.js +3 -0
  59. package/dist/chunks/launchpad-config.bd938fce.js.map +1 -0
  60. package/dist/chunks/{main.0a22c3de.js → main.7c9a2c63.js} +2 -2
  61. package/dist/chunks/{main.0a22c3de.js.map → main.7c9a2c63.js.map} +1 -1
  62. package/dist/chunks/{nav-logo.8d4c94b9.js → nav-logo.96de5e52.js} +2 -2
  63. package/dist/chunks/{nav-logo.8d4c94b9.js.map → nav-logo.96de5e52.js.map} +1 -1
  64. package/dist/chunks/{poll-announce.e1c07541.js → poll-announce.bb9bd6d1.js} +3 -3
  65. package/dist/chunks/{poll-announce.e1c07541.js.map → poll-announce.bb9bd6d1.js.map} +1 -1
  66. package/dist/chunks/{query-search.1f1900d6.js → query-search.0c3c3518.js} +3 -3
  67. package/dist/chunks/query-search.0c3c3518.js.map +1 -0
  68. package/dist/examples.json +3 -3
  69. package/dist/index.715d54c7.js +2 -0
  70. package/dist/{index.4abc895c.js.map → index.715d54c7.js.map} +1 -1
  71. package/dist/manifest.json +39 -39
  72. package/dist/types.json +66 -66
  73. package/dist-types/search-launchpad/i18n.d.ts +14 -0
  74. package/package.json +3 -3
  75. package/dist/chunks/2133.7a40ebb2.js +0 -2
  76. package/dist/chunks/2133.7a40ebb2.js.map +0 -1
  77. package/dist/chunks/4433.a908e194.js +0 -2
  78. package/dist/chunks/4433.a908e194.js.map +0 -1
  79. package/dist/chunks/4727.d9082275.js +0 -2
  80. package/dist/chunks/4727.d9082275.js.map +0 -1
  81. package/dist/chunks/6595.eae95c18.js +0 -2
  82. package/dist/chunks/6595.eae95c18.js.map +0 -1
  83. package/dist/chunks/9149.6aa0810a.js +0 -2
  84. package/dist/chunks/9149.6aa0810a.js.map +0 -1
  85. package/dist/chunks/easyops-navbar-alerts.2aa70f37.js +0 -2
  86. package/dist/chunks/easyops-navbar-alerts.2aa70f37.js.map +0 -1
  87. package/dist/chunks/eo-app-bar-wrapper.6fcc11f1.js.map +0 -1
  88. package/dist/chunks/eo-directory-tree-internal-node.73444da5.js +0 -2
  89. package/dist/chunks/eo-directory-tree-internal-node.73444da5.js.map +0 -1
  90. package/dist/chunks/eo-directory-tree-leaf.18f2d847.js +0 -2
  91. package/dist/chunks/eo-directory-tree-leaf.18f2d847.js.map +0 -1
  92. package/dist/chunks/eo-directory-tree.73e83674.js +0 -3
  93. package/dist/chunks/eo-directory-tree.73e83674.js.map +0 -1
  94. package/dist/chunks/eo-directory.a271465b.js +0 -3
  95. package/dist/chunks/eo-directory.a271465b.js.map +0 -1
  96. package/dist/chunks/eo-launchpad-button-v2.e035fd94.js +0 -3
  97. package/dist/chunks/eo-launchpad-button-v2.e035fd94.js.map +0 -1
  98. package/dist/chunks/eo-launchpad-button.ee733f67.js +0 -3
  99. package/dist/chunks/eo-launchpad-button.ee733f67.js.map +0 -1
  100. package/dist/chunks/eo-launchpad-quick-access.b7dc8eea.js +0 -3
  101. package/dist/chunks/eo-launchpad-quick-access.b7dc8eea.js.map +0 -1
  102. package/dist/chunks/eo-launchpad-recent-visits.dad50d61.js.map +0 -1
  103. package/dist/chunks/eo-search-launchpad.877d14b1.js +0 -2
  104. package/dist/chunks/eo-search-launchpad.877d14b1.js.map +0 -1
  105. package/dist/chunks/eo-sidebar-menu-item.aa1f6f66.js +0 -2
  106. package/dist/chunks/eo-sidebar-menu-item.aa1f6f66.js.map +0 -1
  107. package/dist/chunks/eo-sidebar-menu-submenu.5308ee43.js +0 -3
  108. package/dist/chunks/eo-sidebar-menu-submenu.5308ee43.js.map +0 -1
  109. package/dist/chunks/eo-sidebar-sub-menu.d8255f31.js.map +0 -1
  110. package/dist/chunks/eo-sidebar.ed2833ef.js +0 -3
  111. package/dist/chunks/eo-sidebar.ed2833ef.js.map +0 -1
  112. package/dist/chunks/launchpad-config.1c537f55.js +0 -3
  113. package/dist/chunks/launchpad-config.1c537f55.js.map +0 -1
  114. package/dist/chunks/query-search.1f1900d6.js.map +0 -1
  115. package/dist/index.4abc895c.js +0 -2
  116. /package/dist/chunks/{eo-app-bar-wrapper.6fcc11f1.js.LICENSE.txt → eo-app-bar-wrapper.743025bd.js.LICENSE.txt} +0 -0
  117. /package/dist/chunks/{eo-directory-tree.73e83674.js.LICENSE.txt → eo-directory-tree.2ba780f8.js.LICENSE.txt} +0 -0
  118. /package/dist/chunks/{eo-directory.a271465b.js.LICENSE.txt → eo-directory.a0e99853.js.LICENSE.txt} +0 -0
  119. /package/dist/chunks/{eo-launchpad-button-v2.e035fd94.js.LICENSE.txt → eo-launchpad-button-v2.aa05077e.js.LICENSE.txt} +0 -0
  120. /package/dist/chunks/{eo-launchpad-button.ee733f67.js.LICENSE.txt → eo-launchpad-button.b8b7bcff.js.LICENSE.txt} +0 -0
  121. /package/dist/chunks/{eo-launchpad-quick-access.b7dc8eea.js.LICENSE.txt → eo-launchpad-quick-access.b0a48525.js.LICENSE.txt} +0 -0
  122. /package/dist/chunks/{eo-launchpad-recent-visits.dad50d61.js.LICENSE.txt → eo-launchpad-recent-visits.1a7c6e2c.js.LICENSE.txt} +0 -0
  123. /package/dist/chunks/{eo-sidebar-menu-group.66decf41.js.LICENSE.txt → eo-sidebar-menu-group.01ac76d3.js.LICENSE.txt} +0 -0
  124. /package/dist/chunks/{eo-sidebar-menu-submenu.5308ee43.js.LICENSE.txt → eo-sidebar-menu-submenu.5cb414f6.js.LICENSE.txt} +0 -0
  125. /package/dist/chunks/{eo-sidebar-sub-menu.d8255f31.js.LICENSE.txt → eo-sidebar-sub-menu.70c71ea9.js.LICENSE.txt} +0 -0
  126. /package/dist/chunks/{eo-sidebar.ed2833ef.js.LICENSE.txt → eo-sidebar.ad2491ee.js.LICENSE.txt} +0 -0
  127. /package/dist/chunks/{launchpad-config.1c537f55.js.LICENSE.txt → launchpad-config.bd938fce.js.LICENSE.txt} +0 -0
  128. /package/dist/chunks/{poll-announce.e1c07541.js.LICENSE.txt → poll-announce.bb9bd6d1.js.LICENSE.txt} +0 -0
  129. /package/dist/chunks/{query-search.1f1900d6.js.LICENSE.txt → query-search.0c3c3518.js.LICENSE.txt} +0 -0
package/dist/bricks.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "id": "bricks/nav",
3
3
  "bricks": [
4
- "nav.launchpad-config",
5
4
  "nav.easyops-navbar-alerts",
5
+ "nav.launchpad-config",
6
6
  "nav.app-bar-wrapper",
7
7
  "nav.nav-logo",
8
8
  "nav.poll-announce",
@@ -12,13 +12,13 @@
12
12
  ],
13
13
  "elements": [
14
14
  "eo-nav-menu",
15
- "eo-launchpad-button",
16
15
  "eo-launchpad-button-v2",
16
+ "eo-launchpad-button",
17
17
  "eo-launchpad-quick-access",
18
18
  "eo-search-launchpad",
19
19
  "eo-launchpad-recent-visits",
20
- "eo-frame-breadcrumb",
21
20
  "eo-app-bar-wrapper",
21
+ "eo-frame-breadcrumb",
22
22
  "eo-sidebar-menu-item",
23
23
  "eo-sidebar-menu-group",
24
24
  "eo-sidebar-menu-submenu",
@@ -42,10 +42,6 @@
42
42
  "eo-input",
43
43
  "eo-tooltip"
44
44
  ],
45
- "eo-launchpad-button": [
46
- "eo-icon",
47
- "eo-link"
48
- ],
49
45
  "eo-launchpad-button-v2": [
50
46
  "basic.lock-body-scroll",
51
47
  "eo-icon",
@@ -53,16 +49,20 @@
53
49
  "basic.show-dialog",
54
50
  "basic.show-notification"
55
51
  ],
56
- "nav.launchpad-config": [
52
+ "eo-launchpad-button": [
57
53
  "eo-icon",
58
- "eo-link",
59
- "eo-dropdown-actions",
60
- "basic.show-dialog"
54
+ "eo-link"
61
55
  ],
62
56
  "nav.easyops-navbar-alerts": [
63
57
  "eo-icon",
64
58
  "eo-link"
65
59
  ],
60
+ "nav.launchpad-config": [
61
+ "eo-icon",
62
+ "eo-link",
63
+ "eo-dropdown-actions",
64
+ "basic.show-dialog"
65
+ ],
66
66
  "eo-launchpad-quick-access": [
67
67
  "eo-icon",
68
68
  "eo-link",
@@ -152,5 +152,5 @@
152
152
  "eo-tooltip"
153
153
  ]
154
154
  },
155
- "filePath": "bricks/nav/dist/index.4abc895c.js"
155
+ "filePath": "bricks/nav/dist/index.715d54c7.js"
156
156
  }
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[1685],{100:(e,t,r)=>{r.d(t,{Gn:()=>m,IZ:()=>c,Wf:()=>s,q5:()=>p});var a=r(8769),o=r.n(a),n=r(981);const i=(0,n.wrapBrick)("eo-icon"),l=(0,n.wrapBrick)("eo-link");function c(e){return"group"===e.type}function s(e,t){return Boolean("subMenu"===e.type||t&&"group"===e.type)}const p=(e,t,r)=>o().createElement(l,{type:"plain",key:e.key,url:e.to,href:e.href,target:e.target,style:t},o().createElement("span",{className:"menu-item-label",style:{...r}},e.text)),m=(e,t,r)=>o().createElement("span",{key:e.key,className:"menu-item-label",style:{...r}},e.title,t&&o().createElement(i,{lib:"fa",icon:"angle-right"}))},839:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,".tag-container::part(link){display:flex;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-moz-user-select:none;justify-content:space-between;background-color:var(--color-fill-bg-base-1);border-radius:2px;padding:1px 6px}.tag-container .tag-text{color:var(--color-normal-text);font-weight:400}.tag-container:hover .tag-text{color:var(--color-brand-hover)}.tag-container .tag-suffix{display:inline-flex;font-size:12px;gap:4px;align-items:center;color:var(--color-secondary-text)}.tag-container.is-drag{opacity:0.4}.indicate-wrapper{border:1px dashed var(--color-brand-hover);border-radius:4px;height:20px;margin:2px 0}.close{display:inline-flex;margin-top:2px;padding:0 2px}.close:hover{color:var(--color-error)}.drag-wrapper{cursor:move}.drag-wrapper:hover{color:var(--color-brand-hover)}.star-icon{display:flex;alignitems:center;color:var(--color-secondary-text)}.star-icon:hover{color:var(--color-brand-hover)}.star-icon .active{color:var(--palette-yellow-6)}.recommend-container:hover .star{display:inline-flex}.recommend-container .star{font-size:13px;display:none}.visit-container:hover .operation{display:inline-flex;align-items:center}.visit-container .operation{display:none}",""]);const l=i.toString()},1013:(e,t,r)=>{r.d(t,{I:()=>n,K:()=>a,NS:()=>o});let a=function(e){return e.SEARCH_BY_MENU_NAME="SEARCH_BY_MENU_NAME",e.SEARCH_HISTORY="SEARCH_HISTORY",e.NO_DATA="NO_DATA",e.QUICK_ACCESS="QUICK_ACCESS",e.REMOVE_ITEM_FROM_QUICK_ACCESS="REMOVE_ITEM_FROM_QUICK_ACCESS",e.ADD_ITEM_TO_QUICK_ACCESS="ADD_ITEM_TO_QUICK_ACCESS",e.NO_DATA_TIPS_IN_QUICK_ACCESS="NO_DATA_TIPS_IN_QUICK_ACCESS",e.SITE_MAP_SEARCH_RECOMMEND="SITE_MAP_SEARCH_RECOMMEND",e.MAX_COLLECT_COUNT_TIPS="MAX_COLLECT_COUNT_TIPS",e.NO_DATA_SEARCH_INFO="NO_DATA_SEARCH_INFO",e.SEARCH_ITEM_PLACEHOLDER="SEARCH_ITEM_PLACEHOLDER",e}({});const o="bricks/nav/nav-menu",n={en:{SEARCH_BY_MENU_NAME:"Search by menu name",SEARCH_HISTORY:"Search history",NO_DATA:"No data",QUICK_ACCESS:"Quick Access",REMOVE_ITEM_FROM_QUICK_ACCESS:"Remove from Quick Access",ADD_ITEM_TO_QUICK_ACCESS:"Add to Quick Access",NO_DATA_TIPS_IN_QUICK_ACCESS:"No quick access resources have been added yet. Please add from the list below or after searching",SITE_MAP_SEARCH_RECOMMEND:"Search recommend",MAX_COLLECT_COUNT_TIPS:"Need to delete some favorites in order to add",NO_DATA_SEARCH_INFO:"The search result is empty, please enter again",SEARCH_ITEM_PLACEHOLDER:"Please enter keywords to search"},zh:{SEARCH_BY_MENU_NAME:"通过菜单名称搜索",SEARCH_HISTORY:"历史搜索",NO_DATA:"暂无数据",QUICK_ACCESS:"快捷访问",REMOVE_ITEM_FROM_QUICK_ACCESS:"从快捷访问移除",ADD_ITEM_TO_QUICK_ACCESS:"添加至快捷访问",NO_DATA_TIPS_IN_QUICK_ACCESS:"暂未添加快捷访问资源,从下方列表或搜索后添加",SITE_MAP_SEARCH_RECOMMEND:"搜索推荐",MAX_COLLECT_COUNT_TIPS:"需删除部分收藏,才能添加",NO_DATA_SEARCH_INFO:"搜索结果为空,请重新输入",SEARCH_ITEM_PLACEHOLDER:"请输入关键词搜索"}}},1122:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,'.group .item-link,.custom-group .item-link{font-weight:400}.group .item-link:hover,.custom-group .item-link:hover{background-color:var(--color-fill-bg-base-1)}.group .item-link:hover::part(link){color:var(--color-brand-hover)}.custom-group .item-link:hover::part(link){color:var(--color-brand-hover)}.group .item-link:hover::part(icon){color:var(--color-brand-hover)}.custom-group .item-link:hover::part(icon){color:var(--color-brand-hover)}.group .item-link.active::part(link){color:var(--palette-blue-8)}.custom-group .item-link.active::part(link){color:var(--palette-blue-8)}.group .item-link.active::part(icon){color:var(--palette-blue-8)}.custom-group .item-link.active::part(icon){color:var(--palette-blue-8)}.group .item-link::part(link){padding:8px 12px 8px 24px;display:flex;gap:4px;color:var(--color-header-text)}.custom-group .item-link::part(link){padding:8px 12px 8px 24px;display:flex;gap:4px;color:var(--color-header-text)}.group .item-link::part(icon){color:var(--color-normal-text)}.custom-group .item-link::part(icon){color:var(--color-normal-text)}.group .title,.custom-group .title{padding:8px 16px 8px 24px;font-size:16px;font-weight:500;position:relative}.group .title::before{content:"";position:absolute;width:6px;height:6px;top:17px;left:9px;transform:rotate(45deg);background:var(--color-secondary-text)}.custom-group .title::before{content:"";position:absolute;width:6px;height:6px;top:17px;left:9px;transform:rotate(45deg);background:var(--color-secondary-text)}.group .content .icon-wrapper,.custom-group .content .icon-wrapper,.group .custom-content .icon-wrapper,.custom-group .custom-content .icon-wrapper{color:var(--color-secondary-text);font-size:16px;display:none;margin-left:auto}.group .content .item-link:hover .icon-wrapper,.custom-group .content .item-link:hover .icon-wrapper,.group .custom-content .item-link:hover .icon-wrapper,.custom-group .custom-content .item-link:hover .icon-wrapper{display:block}.group .content .item-link:hover .icon-wrapper:hover,.custom-group .content .item-link:hover .icon-wrapper:hover,.group .custom-content .item-link:hover .icon-wrapper:hover,.custom-group .custom-content .item-link:hover .icon-wrapper:hover{color:var(--color-brand-hover)}.group .content,.custom-group .content{display:flex;flex-direction:column}.group .group-item,.custom-group .group-item{page-break-inside:avoid;break-inside:avoid}.group-view{min-height:300px}.group-view .divider{height:2px;background:var(--color-text-divider-line);margin:16px 0}',""]);const l=i.toString()},1418:(e,t,r)=>{r.d(t,{s:()=>E});var a=r(8769),o=r.n(a),n=r(3373),i=r.n(n),l=r(100),c=r(1030),s=r(981),p=r(7137),m=r(1013),u=r(8002);(0,u.initializeReactI18n)(m.NS,m.I);const d=(0,s.wrapBrick)("eo-popover"),g=(0,s.wrapBrick)("eo-search",{onChange:"change",onSearch:"search"}),v=(0,s.wrapBrick)("eo-icon"),h="threeLevelCategoryMenu",x=6;function E(e){const{t}=(0,u.useTranslation)(m.NS),{menuItem:r,selectedKey:n}=e,s=r.items,[E,f]=(0,a.useState)([]),[b,_]=(0,a.useState)(""),C=(0,a.useRef)(null),k=`${h}_${r.title}`,y=(0,a.useMemo)((()=>new p.G(localStorage)),[]),w=y.getItem(k)||[],A=()=>{var e;null===(e=C.current)||void 0===e||e.click()};return o().createElement("div",{className:"three-level-menu-container"},o().createElement("div",{className:"three-level-menu-search-container",onClick:e=>{e.stopPropagation()}},o().createElement(g,{placeholder:t(m.K.SEARCH_BY_MENU_NAME),onSearch:e=>{if(_(e.detail),e.detail){const t=(0,c.uniq)([e.detail,...w]);t.length>x&&t.pop(),y.setItem(k,t),f(s.flatMap((e=>e.items||[])).filter((t=>t.text.toLowerCase().includes(e.detail.trim().toLowerCase()))))}else f([])},onFocus:A,onBlur:A}),o().createElement(d,{trigger:"click",placement:"bottom-start",anchorDisplay:"block",distance:0},o().createElement("div",{slot:"anchor",ref:C}),o().createElement("div",{className:"three-level-menu-search-result"},!!E.length&&E.map((e=>(0,l.q5)(e,{width:"100%"}))),b&&!E.length&&o().createElement("div",{style:{height:"100px",textAlign:"center",lineHeight:"100px"}},t(m.K.NO_DATA))))),!!w.length&&o().createElement("div",{className:"three-level-menu-search-history-container"},o().createElement("div",{className:"three-level-menu-search-history-title"},t(m.K.SEARCH_HISTORY),o().createElement(v,{lib:"antd",theme:"outlined",icon:"delete",className:"three-level-menu-search-history-icon"})),o().createElement("div",null,w.map((e=>o().createElement("span",{key:e,className:"three-level-menu-search-history-text"},e))))),o().createElement("div",{className:"three-level-menu-item-container",style:{gridTemplateColumns:`repeat(${s.length>4?4:s.length},1fr)`}},s.map(((e,t)=>{var r;return o().createElement("div",{key:t},o().createElement("div",{className:"three-level-menu-item-title-container"},o().createElement("span",{className:"three-level-menu-item-title-icon"}),o().createElement("span",{className:"three-level-menu-item-title"},e.title)),null===(r=e.items)||void 0===r?void 0:r.map((e=>o().createElement("span",{key:e.key,className:i()({active:!!e.key&&n.includes(e.key)})},(0,l.q5)(e,{width:"100%"})))))}))))}},2605:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,':root{--eo-three-level-menu-search-input-background:linear-gradient(90deg,#e8eef6 0%,rgba(233,234,243,0) 100%);--eo-three-level-menu-hover-color:#6bb3ff;--eo-three-level-menu-title-color:#0b5ad9;--eo-three-level-menu-active-color:#1a7aff;--eo-three-level-menu-search-tag-color:rgb(89,89,89);--eo-three-level-menu-search-tag-background:rgb(245,245,245)}html[data-theme="dark"],\nhtml[data-theme="dark-v2"]{--eo-three-level-menu-search-input-background:linear-gradient(124deg,rgba(255,255,255,0.36) 0%,rgba(255,255,255,0) 100%);--eo-three-level-menu-hover-color:rgba(54,95,175,0.85);--eo-three-level-menu-title-color:#6597e8;--eo-three-level-menu-active-color:#3f75dd;--eo-three-level-menu-search-tag-color:rgb(140,140,140);--eo-three-level-menu-search-tag-background:rgb(107,107,107)}',""]);const l=i},4211:(e,t,r)=>{var a=r(2591),o=r.n(a),n=r(1740),i=r.n(n),l=r(8128),c=r.n(l),s=r(855),p=r.n(s),m=r(3051),u=r.n(m),d=r(3656),g=r.n(d),v=r(2605),h={};h.styleTagTransform=g(),h.setAttributes=p(),h.insert=c().bind(null,"head"),h.domAPI=i(),h.insertStyleElement=u(),o()(v.A,h),v.A&&v.A.locals&&v.A.locals},6370:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,":host{display:inline-block;background:none}:host::part(menu-item),\neo-link{display:block}eo-menu-item{margin:4px 0}.sub-menu-wrapper eo-menu-item:first-child,\n.group-wrapper eo-menu-item:first-child{margin-top:0}.sub-menu-wrapper eo-menu-item:last-child{margin-bottom:0}.nav-menu-wrapper{display:flex;align-items:center;gap:8px;white-space:nowrap}.popover .sub-menu-item-label{padding:2px 0px;color:var(--color-normal-text)}.popover.subprime{display:block;width:100%}.sub-menu-wrapper{min-width:160px;max-height:calc(100vh - 100px);background-color:var(--antd-dropdown-menu-bg);padding:12px 0;border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-wrapper{display:flex;flex-direction:column}.sub-menu-wrapper > eo-menu-item{display:block;width:100%}.sub-menu-wrapper > eo-menu-item .menu-item-label,\n.sub-menu-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-menu-item .menu-item-label{display:block;width:100%;padding:7px 24px;box-sizing:border-box;line-height:22px;color:var(--color-normal-text)}.sub-menu-wrapper > eo-popover.subprime .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover.subprime .menu-item-label{display:flex;justify-content:space-between;align-items:center}.sub-menu-wrapper .menu-item-label{border-radius:0}.menu-item-label{display:inline-block;cursor:pointer;border-radius:4px;padding:1px 8px;line-height:22px;color:var(--nav-menu-item-label-color)}.menu-item-label:hover{background-color:var(--top-menu-item-hover-bg)}.group-label{padding-left:16px;font-size:12px;color:var(--palette-gray-7);padding:8px 16px;line-height:20px;margin-top:4px}.sub-menu-wrapper .group-label:first-child{margin-top:0px}.sub-menu-wrapper eo-menu-item[active] .menu-item-label{background:var(--top-menu-item-selected-bg);color:var(--color-brand);font-weight:500}.three-level-menu-container{max-width:980px;max-height:510px;overflow:auto;min-width:160px}.three-level-menu-item-container{display:grid;gap:20px;margin-top:13px;padding:5px 10px}.three-level-menu-item-title-container{display:flex;align-items:center}.three-level-menu-item-title-icon{width:4px;height:4px;background-color:var(--eo-three-level-menu-title-color);margin-right:4px;transform:rotate(45deg)}.three-level-menu-item-title{font-size:14px;font-family:PingFang-SC-Medium,PingFang-SC;font-weight:500;color:var(--eo-three-level-menu-title-color)}.three-level-menu-container .menu-item-label{margin-top:4px;margin-left:4px;padding:4px;width:100%}.three-level-menu-container .active .menu-item-label{color:var(--eo-three-level-menu-active-color)}.three-level-menu-search-result .menu-item-label{margin:0px}.three-level-menu-container .menu-item-label:hover{color:var(--eo-three-level-menu-hover-color)}.three-level-menu-popover .sub-menu-wrapper{padding-top:0px}.three-level-menu-search-container{background:var(--eo-three-level-menu-search-input-background);padding:5px 10px}.three-level-menu-search-result{min-width:187px;max-width:328px;max-height:324px;background-color:var(--antd-dropdown-menu-bg);box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow:scroll}.three-level-menu-search-history-container{padding:5px 10px}.three-level-menu-search-history-text{background:var(--eo-three-level-menu-search-tag-background);border-radius:2px;font-size:7px;line-height:11px;display:inline-block;height:11px;padding:4px;color:var(--eo-three-level-menu-search-tag-color);margin-right:8px}.three-level-menu-search-history-title{color:#8c8c8c;margin:10px 0;display:flex;align-items:center}.three-level-menu-search-history-icon{margin-left:5px}.sub-menu-sit-map-wrapper{box-sizing:border-box;width:calc(100vw);padding:0 60px 24px;max-height:520px;background-color:var(--antd-dropdown-menu-bg);border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-item{position:absolute;opacity:0;height:0;pointer-events:none}.in-group-site-map{width:auto;padding:0 20px}",""]);const l=i.toString()},9863:(e,t,r)=>{r.d(t,{bw:()=>L});var a=r(8769),o=r.n(a),n=r(981),i=r(9575),l=r(3373),c=r.n(l),s=r(1013),p=r(4586),m=r(5343),u=r(4156);let d=function(e){return e.Left="left",e.Right="right",e}({});const g="sidebarMenuCollect",v=o().createContext({});var h=r(1030),x=r(1921);const E=new class{constructor(e){(0,p.A)(this,"maxCollectLength",void 0),(0,p.A)(this,"collectMap",new Map),(0,p.A)(this,"collectPromise",new Map),this.maxCollectLength=null!=e?e:10}getFavoritesById(e){var t;return null!==(t=(0,h.cloneDeep)(this.collectMap.get(e)))&&void 0!==t?t:[]}async fetchFavorites(e){const t=this.collectPromise.get(e);if(t){return this.collectMap.get(e)||t}const r=(0,m.Q)({module:g,collectionName:e}).then((t=>{var r;const a=null===(r=t.payloads)||void 0===r?void 0:r.map((e=>e.extInfo)).filter(Boolean);return this.collectMap.set(e,a),a}));return this.collectPromise.set(e,r),r}setItemAsFavorite(e,t){const r=this.getFavoritesById(e);r.length>=this.maxCollectLength&&r.pop(),r.unshift(t),this.updateFavoriteItems(e,r)}updateFavoriteItems(e,t){try{this.collectMap.set(e,t),(0,u.B)({module:g,collectionName:e,payloads:null==t?void 0:t.map((e=>({name:e.text,url:e.to,extInfo:e})))})}catch(e){(0,x.handleHttpError)(e)}}equalItem(e,t){return e.text===t.text&&e.to===t.to}removeItemFromFavorite(e,t){const r=this.getFavoritesById(e),a=r.findIndex((e=>this.equalItem(e,t)));-1!==a&&(r.splice(a,1),this.updateFavoriteItems(e,r))}isCollected(e,t){return this.getFavoritesById(e).some((e=>this.equalItem(e,t)))}toggleFavorite(e,t){if(this.isCollected(e,t))this.removeItemFromFavorite(e,t);else{if(this.checkMaxCapacity(e))return;this.setItemAsFavorite(e,t)}}moveFavoriteTo(e,t){const{from:r,to:a,direction:o}=t,n=this.getFavoritesById(e);if(this.equalItem(r,a))return n;const i=n.findIndex((e=>this.equalItem(e,r)));if(-1!==i){n.splice(i,1);const t=n.findIndex((e=>this.equalItem(e,a)));-1!==t&&(o===d.Left?n.splice(t,0,r):n.splice(t+1,0,r),this.updateFavoriteItems(e,n))}return n}checkMaxCapacity(e){return this.getFavoritesById(e).length>=this.maxCollectLength}};var f=r(8002);(0,f.initializeReactI18n)(s.NS,s.I);const b=(0,n.wrapBrick)("eo-link"),_=(0,n.wrapBrick)("eo-icon"),C=(0,n.wrapBrick)("eo-tooltip");function k(e){let{data:t,onDragOver:r,direction:n}=e;const{groupId:i,onFavoriteUpdate:l}=(0,a.useContext)(v);return o().createElement("div",{className:"indicate-wrapper","data-direction":n,"data-to":t.to,onDragEnter:e=>e.target.style.background="var(--palette-blue-1)",onDragLeave:e=>e.target.style.background="transparent","data-text":t.text,onDragOver:r,onDrop:e=>{const r=JSON.parse(e.dataTransfer.getData("application/json")),a=E.moveFavoriteTo(i,{from:r,to:t,direction:n});null==l||l(a)}})}function y(e){const{data:t,suffix:r,className:n}=e,{allowDrag:i,onDragStart:l,overElement:s,direction:p,onDragEnd:m,onDragOver:u}=(0,a.useContext)(v),g=(0,a.useRef)(null),[h,x]=(0,a.useState)(!1),E=(0,a.useMemo)((()=>s&&s.dataset.to==t.to&&s.dataset.text==s.dataset.text),[s,t]);return o().createElement(o().Fragment,null,E&&p===d.Left&&o().createElement(k,{data:t,onDragOver:u,direction:d.Left}),o().createElement(b,{"data-to":t.to,"data-text":t.text,ref:g,draggable:!0,onDragStart:e=>{var r;i?(x(!0),null===(r=e.dataTransfer)||void 0===r||r.setData("application/json",JSON.stringify(t)),null==l||l(e)):e.preventDefault()},onDragEnd:e=>{x(!1),null==m||m(e)},onDragOver:e=>{e.dataTransfer.dropEffect="none",null==u||u(e)},className:c()("tag-container",n,{"is-drag":h}),url:t.to,href:t.href,target:t.target},o().createElement("span",{className:"tag-text ellipsis",title:t.text},t.text),o().createElement("span",{className:"tag-suffix",onClick:e=>e.preventDefault()},r)),E&&p===d.Right&&o().createElement(k,{data:t,onDragOver:u,direction:d.Right}))}function w(e){const{t}=(0,f.useTranslation)(s.NS),{onAllowDrag:r}=(0,a.useContext)(v),{data:n,onFavorite:i,groupId:l}=e,c=(0,a.useRef)(),p=(0,a.useRef)(),m=(0,a.useCallback)((()=>{E.removeItemFromFavorite(l,n),null==i||i(E.getFavoritesById(l))}),[l,n,i]),u=()=>{null==r||r(!0)};(0,a.useEffect)((()=>{const e=p.current;return e.addEventListener("click",m),()=>{e.removeEventListener("click",m)}}),[m]),(0,a.useEffect)((()=>{const e=c.current,t=e=>{e.preventDefault()};return e.addEventListener("click",t),()=>{e.removeEventListener("click",t)}}),[]);const d=(0,a.useMemo)((()=>o().createElement("div",{className:"operation",ref:c},o().createElement(C,{content:t(s.K.REMOVE_ITEM_FROM_QUICK_ACCESS),hoist:!0,placement:"bottom",className:"close"},o().createElement(_,{lib:"antd",icon:"close",ref:p})),o().createElement("span",{className:"drag-wrapper",onMouseDown:u},":::"))),[t,m]);return o().createElement(y,{className:"visit-container",suffix:d,data:n})}function A(e){let{onFavorite:t,className:r,groupId:n,data:l,active:p}=e;const{t:m}=(0,f.useTranslation)(s.NS),u=(0,a.useRef)(),d=e=>{e.preventDefault(),E.toggleFavorite(n,l),null==t||t(E.getFavoritesById(n))};return(0,a.useEffect)((()=>{const e=u.current;return e.addEventListener("click",d),()=>{e.removeEventListener("click",d)}}),[]),o().createElement(C,{content:p?m(s.K.REMOVE_ITEM_FROM_QUICK_ACCESS):E.checkMaxCapacity(n)?m(s.K.MAX_COLLECT_COUNT_TIPS):m(s.K.ADD_ITEM_TO_QUICK_ACCESS),className:c()("star-icon",r)},o().createElement(_,(0,i.A)({ref:u,className:c()({active:p}),lib:"antd",icon:"star"},p?{theme:"filled"}:{})))}function S(e){const{data:t,className:r,groupId:n,onFavorite:i,active:l}=e,s=(0,a.useMemo)((()=>o().createElement(A,{groupId:n,active:l,className:"star",data:t,onFavorite:i})),[t,n,i,l]);return o().createElement(y,{className:c()("recommend-container",r),suffix:s,data:t})}function I(e,t){"group"===e.type&&Array.isArray(e.items)?function(e,t){for(const r of e)I(r,t)}(e.items,t):t.push(e)}const N=(0,n.wrapBrick)("eo-link"),M=240;function T(e){const{groupId:t,selectedKey:r,onFavorite:a}=e,n=function(e){const t=new Map,r=new Set;return null==e||e.forEach((e=>{var a;const o=null!==(a=e.groupFrom)&&void 0!==a?a:"default";r.add(o);const n=t.get(o);n?n.push(e):t.set(o,[e])})),Array.from(r).map((e=>({groupFrom:e,groups:t.get(e)})))}(e.groups);return o().createElement("div",{className:"group-view"},n.map(((e,n)=>o().createElement("div",{key:n},0!==n&&o().createElement("div",{className:"divider"}),"default"===e.groupFrom?o().createElement(O,{groupId:t,selectedKey:r,groups:e.groups,onFavorite:a}):o().createElement(R,{groupId:t,selectedKey:r,groups:e.groups,onFavorite:a})))))}function O(e){const{groupId:t,onFavorite:r,selectedKey:n,groups:i}=e,l=o().useRef(null),[c,s]=(0,a.useState)();return(0,a.useEffect)((()=>{const e=new ResizeObserver((e=>{for(const t of e)if(t.target===l.current){const e=t.contentRect.width;e&&s(Math.floor(e/M))}}));return e.observe(l.current),()=>e.disconnect()}),[]),o().createElement("div",{className:"group",ref:l,style:c<(null==i?void 0:i.length)?{columnCount:c,columnWidth:M}:{display:"grid",gridTemplateColumns:`repeat(auto-fit, ${M}px)`}},i.map((e=>o().createElement("div",{key:e.key,className:"group-item"},o().createElement("div",{className:"title"},e.title),o().createElement("div",{className:"content"},e.items.map((e=>o().createElement(D,{key:e.key,groupId:t,selectedKey:n,data:e,onFavorite:r}))))))))}function R(e){const{groupId:t,onFavorite:r,selectedKey:a,groups:n}=e;return o().createElement("div",{className:"custom-group"},n.map((e=>o().createElement("div",{key:e.key},o().createElement("div",{className:"title"},e.title),o().createElement("div",{className:"custom-content",style:{display:"grid",gridTemplateColumns:`repeat(auto-fit, ${M}px)`}},e.items.map((e=>o().createElement(D,{key:e.key,selectedKey:a,groupId:t,data:e,onFavorite:r}))))))))}function D(e){const{data:t,groupId:r,onFavorite:a,selectedKey:n}=e;return o().createElement(N,{key:t.key,icon:t.icon,url:t.to,href:t.href,target:t.target,className:c()("item-link",{active:null==n?void 0:n.includes(t.key)})},o().createElement("span",{className:"ellipsis",title:t.text},t.text),o().createElement("span",{className:"icon-wrapper"},o().createElement(A,{active:E.isCollected(r,t),groupId:r,data:t,onFavorite:a})))}const F=(0,n.wrapBrick)("eo-icon"),K=(0,n.wrapBrick)("eo-input",{onValueChange:"change"});function L(e){const{t}=(0,f.useTranslation)(s.NS),{menuGroup:r,selectedKey:n,visible:i}=e,l=r.groupId,[p,m]=(0,a.useState)([]),u=(0,a.useMemo)((()=>function(e){const t=[];return I(e,t),t}(r)),[r]),[g,x]=(0,a.useState)(),[b,_]=(0,a.useState)([]),[C,k]=(0,a.useState)(),[y,A]=(0,a.useState)(),[N,M]=(0,a.useState)(),[O,R]=(0,a.useState)(),[D,L]=(0,a.useState)(!1);(0,a.useEffect)((()=>{i&&!D&&L(!0)}),[i,D]);const H=e=>{m(e)},U=(0,a.useCallback)((e=>{const t=e.detail;x(e.detail),_(t?u.filter((t=>t.text.toLowerCase().includes(e.detail.toLowerCase()))):u)}),[u]),B=(0,a.useMemo)((()=>(0,h.debounce)(U,200)),[U]),P=(0,a.useMemo)((()=>(0,h.throttle)((e=>{e.preventDefault();const t=function(e){let t=e;for(;t;){if(t.draggable||"indicate-wrapper"===t.className)return t;t=t.parentElement}}(e.target);if(A(t),t&&function(e,t){return e&&t&&!(e.dataset.to===t.dataset.to&&e.dataset.text===t.dataset.text)}(t,C))if("indicate-wrapper"===t.className)R(t.dataset.direction);else{const{width:r,left:a}=t.getBoundingClientRect(),o=e.clientX>a+r/2;R(o?d.Right:d.Left)}else R(void 0)}))),[C]);return(0,a.useEffect)((()=>{(async()=>{if(i){const e=await E.fetchFavorites(l);m(e)}})()}),[l,i]),D&&o().createElement("div",{className:"site-map"},o().createElement("div",{className:"search-wrapper"},o().createElement(K,{className:"search-input",style:{width:"100%"},onValueChange:B,placeholder:t(s.K.SEARCH_ITEM_PLACEHOLDER)},o().createElement(F,{slot:"prefix",lib:"antd",icon:"search"}))),!g&&o().createElement("div",null,0!==p.length&&o().createElement("div",{className:c()("visit-access",{hasData:p.length})},o().createElement("span",{className:"title"},t(s.K.QUICK_ACCESS)),o().createElement(v.Provider,{value:{groupId:l,overElement:y,direction:O,allowDrag:N,onDragStart:e=>{k(e.target)},onDragOver:P,onDragEnd:()=>{k(void 0),R(void 0),M(!1)},onAllowDrag:e=>{M(e)},onFavoriteUpdate:H}},o().createElement("div",{className:"tag-wrapper"},p.map((e=>o().createElement(w,{onFavorite:H,groupId:l,key:e.key,data:e})))))),o().createElement(T,{groupId:l,selectedKey:n,groups:r.items,onFavorite:H})),g&&o().createElement("div",{className:"search-panel"},o().createElement("span",{className:"title"},t(s.K.SITE_MAP_SEARCH_RECOMMEND)),b.length?o().createElement("div",{className:"recommend-wrapper"},b.map((e=>o().createElement(S,{key:e.key,groupId:l,data:e,onFavorite:H,active:E.isCollected(l,e)})))):o().createElement("div",{className:"no-data-tips"},t(s.K.NO_DATA_SEARCH_INFO))))}},9998:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(6758),o=r.n(a),n=r(935),i=r.n(n)()(o());i.push([e.id,'.site-map .search-wrapper{position:sticky;top:0;z-index:9999;padding-top:24px;padding-bottom:16px;background:var(--antd-dropdown-menu-bg)}.site-map .search-input::part(affix-wrapper){border:none;border-bottom:1px solid var(--antd-input-border-color);border-radius:0px;background:transparent}.site-map .visit-access .title,.site-map .search-panel .title{display:inline-block;padding:2px 16px 2px 24px;font-weight:500;line-height:24px;position:relative}.site-map .visit-access .title::before{content:"";position:absolute;width:6px;height:6px;top:10px;left:9px;border-radius:50%;background:var(--color-secondary-text)}.site-map .search-panel .title::before{content:"";position:absolute;width:6px;height:6px;top:10px;left:9px;border-radius:50%;background:var(--color-secondary-text)}.site-map .visit-access .no-data-tips,.site-map .search-panel .no-data-tips{display:flex;margin:16px 0 32px;align-items:center;justify-content:center;color:var(--color-secondary-text)}.site-map .visit-access.hasData{display:flex}.site-map .visit-access{margin-bottom:8px}.site-map .visit-access .tag-wrapper{flex:1;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}.site-map .ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-map .search-panel .recommend-wrapper{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}',""]);const l=i.toString()}}]);
2
+ //# sourceMappingURL=1685.437940d7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/1685.437940d7.js","mappings":"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","sources":["webpack:///./src/nav-menu/utils.tsx","webpack:///./src/nav-menu/site-map/ItemTag.shadow.css","webpack:///./src/nav-menu/i18n.ts","webpack:///./src/nav-menu/site-map/GroupItem.shadow.css","webpack:///./src/nav-menu/ThreeLevelMenuPopoverContent.tsx","webpack:///./src/nav-menu/host-context.css","webpack:///./src/nav-menu/host-context.css?ac7e","webpack:///./src/nav-menu/nav-menu.shadow.css","webpack:///./src/nav-menu/site-map/constants.ts","webpack:///./src/nav-menu/site-map/CollectService.ts","webpack:///./src/nav-menu/site-map/ItemTag.tsx","webpack:///./src/nav-menu/site-map/processor.ts","webpack:///./src/nav-menu/site-map/GroupItem.tsx","webpack:///./src/nav-menu/site-map/SiteMapItem.tsx","webpack:///./src/nav-menu/site-map/SiteMapItem.shadow.css"],"sourcesContent":["import React from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst WrappedLinkItem = wrapBrick<Link, LinkProps>(\"eo-link\");\n\nexport function isGroup(item: SidebarMenuItem): item is SidebarMenuGroup {\n return item.type === \"group\";\n}\n\nexport function isSubMenu(\n item: SidebarMenuGroup,\n groupAsSubMenu?: boolean\n): item is SidebarMenuGroup {\n return Boolean(\n item.type === \"subMenu\" || (groupAsSubMenu && item.type === \"group\")\n );\n}\n\nexport function isSimple(item: SidebarMenuItem): item is SidebarMenuSimpleItem {\n return item.type === \"default\" || !item.type;\n}\n\nexport const renderLinkCom = (\n item: SidebarMenuSimpleItem,\n linkStyle?: React.CSSProperties,\n labelStyle?: React.CSSProperties\n): React.ReactElement => {\n return (\n <WrappedLinkItem\n type=\"plain\"\n key={item.key}\n url={item.to as string}\n href={item.href}\n target={item.target as LinkProps[\"target\"]}\n style={linkStyle}\n >\n <span className=\"menu-item-label\" style={{ ...labelStyle }}>\n {item.text}\n </span>\n </WrappedLinkItem>\n );\n};\n\nexport const renderSpanCom = (\n item: SidebarMenuGroup,\n subMenu?: boolean,\n style?: React.CSSProperties\n): React.ReactElement => {\n return (\n <span key={item.key} className=\"menu-item-label\" style={{ ...style }}>\n {item.title}\n {subMenu && <WrappedIcon lib=\"fa\" icon=\"angle-right\" />}\n </span>\n );\n};\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.tag-container::part(link){display:flex;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-moz-user-select:none;justify-content:space-between;background-color:var(--color-fill-bg-base-1);border-radius:2px;padding:1px 6px}.tag-container .tag-text{color:var(--color-normal-text);font-weight:400}.tag-container:hover .tag-text{color:var(--color-brand-hover)}.tag-container .tag-suffix{display:inline-flex;font-size:12px;gap:4px;align-items:center;color:var(--color-secondary-text)}.tag-container.is-drag{opacity:0.4}.indicate-wrapper{border:1px dashed var(--color-brand-hover);border-radius:4px;height:20px;margin:2px 0}.close{display:inline-flex;margin-top:2px;padding:0 2px}.close:hover{color:var(--color-error)}.drag-wrapper{cursor:move}.drag-wrapper:hover{color:var(--color-brand-hover)}.star-icon{display:flex;alignitems:center;color:var(--color-secondary-text)}.star-icon:hover{color:var(--color-brand-hover)}.star-icon .active{color:var(--palette-yellow-6)}.recommend-container:hover .star{display:inline-flex}.recommend-container .star{font-size:13px;display:none}.visit-container:hover .operation{display:inline-flex;align-items:center}.visit-container .operation{display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","export enum K {\n SEARCH_BY_MENU_NAME = \"SEARCH_BY_MENU_NAME\",\n SEARCH_HISTORY = \"SEARCH_HISTORY\",\n NO_DATA = \"NO_DATA\",\n QUICK_ACCESS = \"QUICK_ACCESS\",\n REMOVE_ITEM_FROM_QUICK_ACCESS = \"REMOVE_ITEM_FROM_QUICK_ACCESS\",\n ADD_ITEM_TO_QUICK_ACCESS = \"ADD_ITEM_TO_QUICK_ACCESS\",\n NO_DATA_TIPS_IN_QUICK_ACCESS = \"NO_DATA_TIPS_IN_QUICK_ACCESS\",\n SITE_MAP_SEARCH_RECOMMEND = \"SITE_MAP_SEARCH_RECOMMEND\",\n MAX_COLLECT_COUNT_TIPS = \"MAX_COLLECT_COUNT_TIPS\",\n NO_DATA_SEARCH_INFO = \"NO_DATA_SEARCH_INFO\",\n SEARCH_ITEM_PLACEHOLDER = \"SEARCH_ITEM_PLACEHOLDER\",\n}\n\nconst en: Locale = {\n SEARCH_BY_MENU_NAME: \"Search by menu name\",\n SEARCH_HISTORY: \"Search history\",\n NO_DATA: \"No data\",\n QUICK_ACCESS: \"Quick Access\",\n REMOVE_ITEM_FROM_QUICK_ACCESS: \"Remove from Quick Access\",\n ADD_ITEM_TO_QUICK_ACCESS: \"Add to Quick Access\",\n NO_DATA_TIPS_IN_QUICK_ACCESS:\n \"No quick access resources have been added yet. Please add from the list below or after searching\",\n SITE_MAP_SEARCH_RECOMMEND: \"Search recommend\",\n MAX_COLLECT_COUNT_TIPS: \"Need to delete some favorites in order to add\",\n NO_DATA_SEARCH_INFO: \"The search result is empty, please enter again\",\n SEARCH_ITEM_PLACEHOLDER: \"Please enter keywords to search\",\n};\n\nconst zh: Locale = {\n SEARCH_BY_MENU_NAME: \"通过菜单名称搜索\",\n SEARCH_HISTORY: \"历史搜索\",\n NO_DATA: \"暂无数据\",\n QUICK_ACCESS: \"快捷访问\",\n REMOVE_ITEM_FROM_QUICK_ACCESS: \"从快捷访问移除\",\n ADD_ITEM_TO_QUICK_ACCESS: \"添加至快捷访问\",\n NO_DATA_TIPS_IN_QUICK_ACCESS: \"暂未添加快捷访问资源,从下方列表或搜索后添加\",\n SITE_MAP_SEARCH_RECOMMEND: \"搜索推荐\",\n MAX_COLLECT_COUNT_TIPS: \"需删除部分收藏,才能添加\",\n NO_DATA_SEARCH_INFO: \"搜索结果为空,请重新输入\",\n SEARCH_ITEM_PLACEHOLDER: \"请输入关键词搜索\",\n};\n\nexport const NS = \"bricks/nav/nav-menu\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [key in K]: string };\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.group .item-link,.custom-group .item-link{font-weight:400}.group .item-link:hover,.custom-group .item-link:hover{background-color:var(--color-fill-bg-base-1)}.group .item-link:hover::part(link){color:var(--color-brand-hover)}.custom-group .item-link:hover::part(link){color:var(--color-brand-hover)}.group .item-link:hover::part(icon){color:var(--color-brand-hover)}.custom-group .item-link:hover::part(icon){color:var(--color-brand-hover)}.group .item-link.active::part(link){color:var(--palette-blue-8)}.custom-group .item-link.active::part(link){color:var(--palette-blue-8)}.group .item-link.active::part(icon){color:var(--palette-blue-8)}.custom-group .item-link.active::part(icon){color:var(--palette-blue-8)}.group .item-link::part(link){padding:8px 12px 8px 24px;display:flex;gap:4px;color:var(--color-header-text)}.custom-group .item-link::part(link){padding:8px 12px 8px 24px;display:flex;gap:4px;color:var(--color-header-text)}.group .item-link::part(icon){color:var(--color-normal-text)}.custom-group .item-link::part(icon){color:var(--color-normal-text)}.group .title,.custom-group .title{padding:8px 16px 8px 24px;font-size:16px;font-weight:500;position:relative}.group .title::before{content:\"\";position:absolute;width:6px;height:6px;top:17px;left:9px;transform:rotate(45deg);background:var(--color-secondary-text)}.custom-group .title::before{content:\"\";position:absolute;width:6px;height:6px;top:17px;left:9px;transform:rotate(45deg);background:var(--color-secondary-text)}.group .content .icon-wrapper,.custom-group .content .icon-wrapper,.group .custom-content .icon-wrapper,.custom-group .custom-content .icon-wrapper{color:var(--color-secondary-text);font-size:16px;display:none;margin-left:auto}.group .content .item-link:hover .icon-wrapper,.custom-group .content .item-link:hover .icon-wrapper,.group .custom-content .item-link:hover .icon-wrapper,.custom-group .custom-content .item-link:hover .icon-wrapper{display:block}.group .content .item-link:hover .icon-wrapper:hover,.custom-group .content .item-link:hover .icon-wrapper:hover,.group .custom-content .item-link:hover .icon-wrapper:hover,.custom-group .custom-content .item-link:hover .icon-wrapper:hover{color:var(--color-brand-hover)}.group .content,.custom-group .content{display:flex;flex-direction:column}.group .group-item,.custom-group .group-item{page-break-inside:avoid;break-inside:avoid}.group-view{min-height:300px}.group-view .divider{height:2px;background:var(--color-text-divider-line);margin:16px 0}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import React, { useMemo, useState, useRef } from \"react\";\nimport classnames from \"classnames\";\nimport { renderLinkCom } from \"./utils.js\";\nimport { uniq } from \"lodash\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuItem,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { ReactNextElement } from \"@next-core/react-element\";\nimport type { Popover, PopoverProps } from \"@next-bricks/basic/popover\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { JsonStorage } from \"@next-shared/general/JsonStorage\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\n\ninitializeReactI18n(NS, locales);\nconst WrappedPopover = wrapBrick<Popover, PopoverProps>(\"eo-popover\");\ninterface SearchProps {\n value?: string;\n placeholder?: string;\n autoFocus?: boolean;\n clearable?: boolean;\n trim?: boolean;\n debounceTime?: number;\n}\n\ninterface SearchEvents {\n change: CustomEvent<string>;\n search: CustomEvent<string>;\n}\n\ninterface SearchEventsMap {\n onChange: \"change\";\n onSearch: \"search\";\n}\nconst WrappedSearch = wrapBrick<\n ReactNextElement,\n SearchProps,\n SearchEvents,\n SearchEventsMap\n>(\"eo-search\", {\n onChange: \"change\",\n onSearch: \"search\",\n});\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\ninterface ThreeLevelMenuPopoverContentProps {\n menuItem: SidebarMenuGroup;\n selectedKey: string[];\n}\nconst LOCAL_STORAGE_PREFIX = \"threeLevelCategoryMenu\";\nconst maxVisitorLength = 6;\nexport function ThreeLevelMenuPopoverContent(\n props: ThreeLevelMenuPopoverContentProps\n): React.ReactElement {\n const { t } = useTranslation(NS);\n const { menuItem, selectedKey } = props;\n const items = menuItem.items as SidebarMenuGroup[];\n const [searchResult, setSearchResult] = useState<SidebarMenuSimpleItem[]>([]);\n const [searchKey, setSearchKey] = useState(\"\");\n const triggerRef = useRef<HTMLDivElement>(null);\n const nameSpace = `${LOCAL_STORAGE_PREFIX}_${menuItem.title}`;\n const storage = useMemo(() => new JsonStorage(localStorage), []);\n const searchHistory = (storage.getItem(nameSpace) as string[]) || [];\n\n const handleSearch = (e: CustomEvent<string>) => {\n setSearchKey(e.detail);\n if (e.detail) {\n const list = uniq([e.detail, ...searchHistory]);\n if (list.length > maxVisitorLength) {\n list.pop();\n }\n storage.setItem(nameSpace, list);\n setSearchResult(\n items\n .flatMap((i) => (i.items as SidebarMenuSimpleItem[]) || [])\n .filter((i) =>\n (i.text as string)\n .toLowerCase()\n .includes((e.detail as string).trim().toLowerCase())\n )\n );\n } else {\n setSearchResult([]);\n }\n };\n\n const popoverTriggerClick = () => {\n triggerRef.current?.click();\n };\n\n return (\n <div className={\"three-level-menu-container\"}>\n <div\n className=\"three-level-menu-search-container\"\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <WrappedSearch\n placeholder={t(K.SEARCH_BY_MENU_NAME) as string}\n onSearch={handleSearch}\n onFocus={popoverTriggerClick}\n onBlur={popoverTriggerClick}\n />\n <WrappedPopover\n trigger=\"click\"\n placement={\"bottom-start\"}\n anchorDisplay=\"block\"\n distance={0}\n >\n <div slot=\"anchor\" ref={triggerRef}></div>\n {\n <div className=\"three-level-menu-search-result\">\n {!!searchResult.length &&\n searchResult.map((i) => renderLinkCom(i, { width: \"100%\" }))}\n {searchKey && !searchResult.length && (\n <div\n style={{\n height: \"100px\",\n textAlign: \"center\",\n lineHeight: \"100px\",\n }}\n >\n {t(K.NO_DATA)}\n </div>\n )}\n </div>\n }\n </WrappedPopover>\n </div>\n {!!searchHistory.length && (\n <div className=\"three-level-menu-search-history-container\">\n <div className=\"three-level-menu-search-history-title\">\n {t(K.SEARCH_HISTORY)}\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"delete\"\n className=\"three-level-menu-search-history-icon\"\n />\n </div>\n <div>\n {searchHistory.map((h) => (\n <span key={h} className=\"three-level-menu-search-history-text\">\n {h}\n </span>\n ))}\n </div>\n </div>\n )}\n <div\n className={\"three-level-menu-item-container\"}\n style={{\n gridTemplateColumns: `repeat(${\n items.length > 4 ? 4 : items.length\n },1fr)`,\n }}\n >\n {items.map((item: SidebarMenuGroup, index: number) => (\n <div key={index}>\n <div className=\"three-level-menu-item-title-container\">\n <span className=\"three-level-menu-item-title-icon\"></span>\n <span className=\"three-level-menu-item-title\">{item.title}</span>\n </div>\n {item.items?.map((i) => (\n <span\n key={i.key}\n className={classnames({\n active: i.key ? selectedKey.includes(i.key) : false,\n })}\n >\n {renderLinkCom(i as SidebarMenuSimpleItem, { width: \"100%\" })}\n </span>\n ))}\n </div>\n ))}\n </div>\n </div>\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root{--eo-three-level-menu-search-input-background:linear-gradient(90deg,#e8eef6 0%,rgba(233,234,243,0) 100%);--eo-three-level-menu-hover-color:#6bb3ff;--eo-three-level-menu-title-color:#0b5ad9;--eo-three-level-menu-active-color:#1a7aff;--eo-three-level-menu-search-tag-color:rgb(89,89,89);--eo-three-level-menu-search-tag-background:rgb(245,245,245)}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-three-level-menu-search-input-background:linear-gradient(124deg,rgba(255,255,255,0.36) 0%,rgba(255,255,255,0) 100%);--eo-three-level-menu-hover-color:rgba(54,95,175,0.85);--eo-three-level-menu-title-color:#6597e8;--eo-three-level-menu-active-color:#3f75dd;--eo-three-level-menu-search-tag-color:rgb(140,140,140);--eo-three-level-menu-search-tag-background:rgb(107,107,107)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\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:inline-block;background:none}:host::part(menu-item),\neo-link{display:block}eo-menu-item{margin:4px 0}.sub-menu-wrapper eo-menu-item:first-child,\n.group-wrapper eo-menu-item:first-child{margin-top:0}.sub-menu-wrapper eo-menu-item:last-child{margin-bottom:0}.nav-menu-wrapper{display:flex;align-items:center;gap:8px;white-space:nowrap}.popover .sub-menu-item-label{padding:2px 0px;color:var(--color-normal-text)}.popover.subprime{display:block;width:100%}.sub-menu-wrapper{min-width:160px;max-height:calc(100vh - 100px);background-color:var(--antd-dropdown-menu-bg);padding:12px 0;border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-wrapper{display:flex;flex-direction:column}.sub-menu-wrapper > eo-menu-item{display:block;width:100%}.sub-menu-wrapper > eo-menu-item .menu-item-label,\n.sub-menu-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-menu-item .menu-item-label{display:block;width:100%;padding:7px 24px;box-sizing:border-box;line-height:22px;color:var(--color-normal-text)}.sub-menu-wrapper > eo-popover.subprime .menu-item-label,\n.sub-menu-wrapper > .group-wrapper > eo-popover.subprime .menu-item-label{display:flex;justify-content:space-between;align-items:center}.sub-menu-wrapper .menu-item-label{border-radius:0}.menu-item-label{display:inline-block;cursor:pointer;border-radius:4px;padding:1px 8px;line-height:22px;color:var(--nav-menu-item-label-color)}.menu-item-label:hover{background-color:var(--top-menu-item-hover-bg)}.group-label{padding-left:16px;font-size:12px;color:var(--palette-gray-7);padding:8px 16px;line-height:20px;margin-top:4px}.sub-menu-wrapper .group-label:first-child{margin-top:0px}.sub-menu-wrapper eo-menu-item[active] .menu-item-label{background:var(--top-menu-item-selected-bg);color:var(--color-brand);font-weight:500}.three-level-menu-container{max-width:980px;max-height:510px;overflow:auto;min-width:160px}.three-level-menu-item-container{display:grid;gap:20px;margin-top:13px;padding:5px 10px}.three-level-menu-item-title-container{display:flex;align-items:center}.three-level-menu-item-title-icon{width:4px;height:4px;background-color:var(--eo-three-level-menu-title-color);margin-right:4px;transform:rotate(45deg)}.three-level-menu-item-title{font-size:14px;font-family:PingFang-SC-Medium,PingFang-SC;font-weight:500;color:var(--eo-three-level-menu-title-color)}.three-level-menu-container .menu-item-label{margin-top:4px;margin-left:4px;padding:4px;width:100%}.three-level-menu-container .active .menu-item-label{color:var(--eo-three-level-menu-active-color)}.three-level-menu-search-result .menu-item-label{margin:0px}.three-level-menu-container .menu-item-label:hover{color:var(--eo-three-level-menu-hover-color)}.three-level-menu-popover .sub-menu-wrapper{padding-top:0px}.three-level-menu-search-container{background:var(--eo-three-level-menu-search-input-background);padding:5px 10px}.three-level-menu-search-result{min-width:187px;max-width:328px;max-height:324px;background-color:var(--antd-dropdown-menu-bg);box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow:scroll}.three-level-menu-search-history-container{padding:5px 10px}.three-level-menu-search-history-text{background:var(--eo-three-level-menu-search-tag-background);border-radius:2px;font-size:7px;line-height:11px;display:inline-block;height:11px;padding:4px;color:var(--eo-three-level-menu-search-tag-color);margin-right:8px}.three-level-menu-search-history-title{color:#8c8c8c;margin:10px 0;display:flex;align-items:center}.three-level-menu-search-history-icon{margin-left:5px}.sub-menu-sit-map-wrapper{box-sizing:border-box;width:calc(100vw);padding:0 60px 24px;max-height:520px;background-color:var(--antd-dropdown-menu-bg);border-radius:6px;box-shadow:0px 4px 12px 0px rgba(17,37,64,0.08);overflow-x:hidden;overflow-y:auto}.overflow-menu-item{position:absolute;opacity:0;height:0;pointer-events:none}.in-group-site-map{width:auto;padding:0 20px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import React from \"react\";\n\nexport enum DRAG_DIRECTION {\n Left = \"left\",\n Right = \"right\",\n}\n\nexport interface ContextOfDragProps {\n groupId: string;\n direction?: DRAG_DIRECTION;\n overElement?: HTMLElement;\n allowDrag?: boolean;\n onAllowDrag?: (enable: boolean) => void;\n onDragStart?: (e: React.DragEvent) => void;\n onDragOver?: (e: React.DragEvent) => void;\n onDragEnd?: (e: React.DragEvent) => void;\n onFavoriteUpdate?: (list: any[]) => void;\n}\n\nexport const collectModule = \"sidebarMenuCollect\";\n\nexport const DragContext = React.createContext<ContextOfDragProps>(\n {} as ContextOfDragProps\n);\n","import type { SidebarMenuSimpleItem } from \"@next-shared/general/types\";\nimport {\n MyCollectionApi_listMyCollection,\n MyCollectionApi_ListMyCollectionResponseBody,\n MyCollectionApi_upsertMyCollection,\n} from \"@next-api-sdk/user-service-sdk\";\nimport { DRAG_DIRECTION, collectModule } from \"./constants.js\";\nimport { cloneDeep } from \"lodash\";\nimport { handleHttpError } from \"@next-core/runtime\";\n\nexport class CollectService {\n private maxCollectLength: number;\n private collectMap: Map<string, SidebarMenuSimpleItem[]> = new Map();\n private collectPromise: Map<string, Promise<SidebarMenuSimpleItem[]>> =\n new Map();\n\n constructor(maxCollectLength?: number) {\n this.maxCollectLength = maxCollectLength ?? 10;\n }\n\n public getFavoritesById(id: string): SidebarMenuSimpleItem[] {\n return cloneDeep(this.collectMap.get(id)) ?? [];\n }\n\n public async fetchFavorites(id: string): Promise<SidebarMenuSimpleItem[]> {\n const cachedPromise = this.collectPromise.get(id);\n if (cachedPromise) {\n const collectList = this.collectMap.get(id);\n\n return collectList ? collectList : cachedPromise;\n }\n\n const favoritesPromise = MyCollectionApi_listMyCollection({\n module: collectModule,\n collectionName: id,\n }).then((result) => {\n const list = result.payloads\n ?.map((item) => item.extInfo)\n .filter(Boolean) as SidebarMenuSimpleItem[];\n this.collectMap.set(id, list);\n\n return list;\n }) as Promise<SidebarMenuSimpleItem[]>;\n\n this.collectPromise.set(id, favoritesPromise);\n\n return favoritesPromise;\n }\n\n public setItemAsFavorite(id: string, item: SidebarMenuSimpleItem): void {\n const list = this.getFavoritesById(id);\n\n if (list.length >= this.maxCollectLength) {\n list.pop();\n }\n\n list.unshift(item);\n this.updateFavoriteItems(id, list);\n }\n\n public updateFavoriteItems(id: string, list: SidebarMenuSimpleItem[]): void {\n try {\n this.collectMap.set(id, list);\n MyCollectionApi_upsertMyCollection({\n module: collectModule,\n collectionName: id,\n payloads: list?.map((item) => ({\n name: item.text,\n url: item.to,\n extInfo: item,\n })) as MyCollectionApi_ListMyCollectionResponseBody[\"payloads\"],\n });\n } catch (error) {\n // istanbul ignore next\n handleHttpError(error);\n }\n }\n\n private equalItem(\n prevItem: SidebarMenuSimpleItem,\n item: SidebarMenuSimpleItem\n ): boolean {\n return prevItem.text === item.text && prevItem.to === item.to;\n }\n\n public removeItemFromFavorite(id: string, item: SidebarMenuSimpleItem): void {\n const list = this.getFavoritesById(id);\n const index = list.findIndex((row) => this.equalItem(row, item));\n // istanbul ignore else\n if (index !== -1) {\n list.splice(index, 1);\n this.updateFavoriteItems(id, list);\n }\n }\n\n public isCollected(id: string, item: SidebarMenuSimpleItem): boolean {\n const list = this.getFavoritesById(id);\n return list.some((row) => this.equalItem(row, item));\n }\n\n public toggleFavorite(id: string, item: SidebarMenuSimpleItem): void {\n if (this.isCollected(id, item)) {\n this.removeItemFromFavorite(id, item);\n } else {\n if (this.checkMaxCapacity(id)) return;\n this.setItemAsFavorite(id, item);\n }\n }\n\n public moveFavoriteTo(\n id: string,\n option: {\n from: SidebarMenuSimpleItem;\n to: SidebarMenuSimpleItem;\n direction: DRAG_DIRECTION;\n }\n ): SidebarMenuSimpleItem[] {\n const { from, to, direction } = option;\n\n const list = this.getFavoritesById(id);\n if (this.equalItem(from, to)) return list;\n\n const fromIndex = list.findIndex((row) => this.equalItem(row, from));\n\n // istanbul ignore else\n if (fromIndex !== -1) {\n list.splice(fromIndex, 1);\n\n const toIndex = list.findIndex((row) => this.equalItem(row, to));\n\n // istanbul ignore else\n if (toIndex !== -1) {\n if (direction === DRAG_DIRECTION.Left) {\n list.splice(toIndex, 0, from);\n } else {\n list.splice(toIndex + 1, 0, from);\n }\n\n this.updateFavoriteItems(id, list);\n }\n }\n\n return list;\n }\n\n checkMaxCapacity(groupId: string): boolean {\n return this.getFavoritesById(groupId).length >= this.maxCollectLength;\n }\n}\n\nexport const collectService = new CollectService();\n","import React, {\n useMemo,\n useCallback,\n useRef,\n useState,\n useEffect,\n useContext,\n DragEvent,\n} from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { Link, LinkProps } from \"@next-bricks/basic/link\";\n\nimport { EoTooltip, ToolTipProps } from \"@next-bricks/basic/tooltip\";\nimport classNames from \"classnames\";\nimport { SidebarMenuSimpleItem } from \"@next-shared/general/types\";\nimport { K, NS, locales } from \"../i18n.js\";\nimport { collectService } from \"./CollectService.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport { DRAG_DIRECTION, DragContext } from \"./constants.js\";\n\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\ninitializeReactI18n(NS, locales);\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedTooltip = wrapBrick<EoTooltip, ToolTipProps>(\"eo-tooltip\");\n\ninterface CellItemProps {\n data: SidebarMenuSimpleItem;\n suffix?: React.ReactNode;\n className?: string;\n}\n\nexport type OnFavoriteCallback = (collectList: SidebarMenuSimpleItem[]) => void;\n\ninterface PlaceholderCompProps {\n data: SidebarMenuSimpleItem;\n direction: DRAG_DIRECTION;\n onDragOver?: (e: DragEvent) => void;\n}\nexport function PlaceholderDropComp({\n data,\n onDragOver,\n direction,\n}: PlaceholderCompProps) {\n const { groupId, onFavoriteUpdate } = useContext(DragContext);\n const handleDrop = (e: DragEvent) => {\n const formData = JSON.parse(e.dataTransfer.getData(\"application/json\"));\n\n const newDataList = collectService.moveFavoriteTo(groupId, {\n from: formData,\n to: data,\n direction,\n });\n\n onFavoriteUpdate?.(newDataList);\n };\n\n return (\n <div\n className=\"indicate-wrapper\"\n data-direction={direction}\n data-to={data.to}\n onDragEnter={(e) =>\n ((e.target as HTMLElement).style.background = \"var(--palette-blue-1)\")\n }\n onDragLeave={(e) =>\n ((e.target as HTMLElement).style.background = \"transparent\")\n }\n data-text={data.text}\n onDragOver={onDragOver}\n onDrop={handleDrop}\n />\n );\n}\n\nexport function ItemTag(props: CellItemProps): React.ReactElement {\n const { data, suffix, className } = props;\n\n const {\n allowDrag,\n onDragStart,\n overElement,\n direction,\n onDragEnd,\n onDragOver,\n } = useContext(DragContext);\n const containerRef = useRef<any>(null);\n\n const [isDragIng, setIsDragIng] = useState(false);\n\n const isActive = useMemo(\n () =>\n overElement &&\n overElement.dataset.to == data.to &&\n overElement.dataset.text === overElement.dataset.text,\n [overElement, data]\n );\n\n const handleDragStart = (e: React.DragEvent) => {\n if (!allowDrag) {\n e.preventDefault();\n } else {\n setIsDragIng(true);\n e.dataTransfer?.setData(\"application/json\", JSON.stringify(data));\n onDragStart?.(e);\n }\n };\n\n const handleDragEnd = (e: React.DragEvent) => {\n setIsDragIng(false);\n onDragEnd?.(e);\n };\n\n const handleOver = (e: React.DragEvent) => {\n e.dataTransfer.dropEffect = \"none\";\n onDragOver?.(e);\n };\n\n return (\n <>\n {isActive && direction === DRAG_DIRECTION.Left && (\n <PlaceholderDropComp\n data={data}\n onDragOver={onDragOver}\n direction={DRAG_DIRECTION.Left}\n />\n )}\n <WrappedLink\n data-to={data.to}\n data-text={data.text}\n ref={containerRef}\n draggable\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n onDragOver={handleOver}\n className={classNames(\"tag-container\", className, {\n \"is-drag\": isDragIng,\n })}\n url={data.to as string}\n href={data.href}\n target={data.target as LinkProps[\"target\"]}\n >\n <span className=\"tag-text ellipsis\" title={data.text}>\n {data.text}\n </span>\n <span className=\"tag-suffix\" onClick={(e) => e.preventDefault()}>\n {suffix}\n </span>\n </WrappedLink>\n\n {isActive && direction === DRAG_DIRECTION.Right && (\n <PlaceholderDropComp\n data={data}\n onDragOver={onDragOver}\n direction={DRAG_DIRECTION.Right}\n />\n )}\n </>\n );\n}\n\ninterface QuickVisitTagProps extends CellItemProps {\n groupId: string;\n onFavorite?: OnFavoriteCallback;\n}\n\nexport function QuickVisitItem(props: QuickVisitTagProps): React.ReactElement {\n const { t } = useTranslation(NS);\n const { onAllowDrag } = useContext(DragContext);\n const { data, onFavorite, groupId } = props;\n const suffixRef = useRef<any>();\n const iconRef = useRef<any>();\n\n const handleRemove = useCallback(() => {\n collectService.removeItemFromFavorite(groupId, data);\n onFavorite?.(collectService.getFavoritesById(groupId));\n }, [groupId, data, onFavorite]);\n\n const handleMouseDown = () => {\n onAllowDrag?.(true);\n };\n\n useEffect(() => {\n const icon = iconRef.current;\n icon.addEventListener(\"click\", handleRemove);\n\n return () => {\n icon.removeEventListener(\"click\", handleRemove);\n };\n }, [handleRemove]);\n\n useEffect(() => {\n const suffix = suffixRef.current;\n const handleClick = (e: MouseEvent) => {\n e.preventDefault();\n };\n suffix.addEventListener(\"click\", handleClick);\n\n return () => {\n suffix.removeEventListener(\"click\", handleClick);\n };\n }, []);\n\n const suffixGroups = useMemo(\n () => (\n <div className=\"operation\" ref={suffixRef}>\n <WrappedTooltip\n content={t(K.REMOVE_ITEM_FROM_QUICK_ACCESS)!}\n hoist\n placement=\"bottom\"\n className=\"close\"\n >\n <WrappedIcon lib=\"antd\" icon=\"close\" ref={iconRef} />\n </WrappedTooltip>\n <span className=\"drag-wrapper\" onMouseDown={handleMouseDown}>\n :::\n </span>\n </div>\n ),\n [t, handleRemove]\n );\n\n return (\n <ItemTag className=\"visit-container\" suffix={suffixGroups} data={data} />\n );\n}\n\ninterface StarIconProps {\n onFavorite?: OnFavoriteCallback;\n className?: string;\n groupId: string;\n data: SidebarMenuSimpleItem;\n active?: boolean;\n}\n\nexport function StarIcon({\n onFavorite,\n className,\n groupId,\n data,\n active,\n}: StarIconProps): React.ReactElement {\n const { t } = useTranslation(NS);\n const iconRef = useRef<any>();\n\n const handleClick = (e: React.MouseEvent) => {\n e.preventDefault();\n collectService.toggleFavorite(groupId, data);\n onFavorite?.(collectService.getFavoritesById(groupId));\n };\n\n useEffect(() => {\n // workaround for prevent Link jump when click.\n const icon = iconRef.current;\n icon.addEventListener(\"click\", handleClick);\n\n return () => {\n icon.removeEventListener(\"click\", handleClick);\n };\n }, []);\n\n return (\n <WrappedTooltip\n content={\n active\n ? t(K.REMOVE_ITEM_FROM_QUICK_ACCESS)!\n : collectService.checkMaxCapacity(groupId)\n ? t(K.MAX_COLLECT_COUNT_TIPS)!\n : t(K.ADD_ITEM_TO_QUICK_ACCESS)!\n }\n className={classNames(\"star-icon\", className)}\n >\n <WrappedIcon\n ref={iconRef}\n className={classNames({ active })}\n lib=\"antd\"\n icon=\"star\"\n {...(active ? { theme: \"filled\" } : {})}\n />\n </WrappedTooltip>\n );\n}\n\ninterface RecommendItemProps extends CellItemProps {\n active?: boolean;\n groupId: string;\n onFavorite?: OnFavoriteCallback;\n}\n\nexport function RecommendItem(props: RecommendItemProps): React.ReactElement {\n const { data, className, groupId, onFavorite, active } = props;\n\n const suffixGroups = useMemo(\n () => (\n <StarIcon\n groupId={groupId}\n active={active}\n className=\"star\"\n data={data}\n onFavorite={onFavorite}\n />\n ),\n [data, groupId, onFavorite, active]\n );\n\n return (\n <ItemTag\n className={classNames(\"recommend-container\", className)}\n suffix={suffixGroups}\n data={data}\n />\n );\n}\n","import {\n SidebarMenuItem,\n SidebarMenuGroup,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\n\nfunction walkMenuItem(item: SidebarMenuItem, list: SidebarMenuSimpleItem[]) {\n if (\n (item as SidebarMenuGroup).type === \"group\" &&\n Array.isArray((item as SidebarMenuGroup).items)\n ) {\n walkMenuItems((item as SidebarMenuGroup).items, list);\n } else {\n list.push(item as SidebarMenuSimpleItem);\n }\n}\n\nfunction walkMenuItems(\n items: SidebarMenuItem[],\n list: SidebarMenuSimpleItem[]\n): void {\n for (const item of items) {\n walkMenuItem(item, list);\n }\n}\n\nexport function flatMenuItems(item: SidebarMenuItem): SidebarMenuSimpleItem[] {\n const list: SidebarMenuSimpleItem[] = [];\n\n walkMenuItem(item, list);\n\n return list;\n}\n\nexport function processGroupItems(groups: SidebarMenuGroup[]): Array<{\n groupFrom: string;\n groups: SidebarMenuGroup[];\n}> {\n const groupCategoryMap = new Map<string, SidebarMenuGroup[]>();\n const categoryOrder = new Set<string>();\n\n groups?.forEach((item) => {\n const from = item.groupFrom ?? \"default\";\n categoryOrder.add(from);\n\n const value = groupCategoryMap.get(from);\n\n if (!value) {\n groupCategoryMap.set(from, [item]);\n } else {\n value!.push(item);\n }\n });\n\n return Array.from(categoryOrder).map((key) => ({\n groupFrom: key,\n groups: groupCategoryMap!.get(key)!,\n }));\n}\n","import React, { useEffect, useState } from \"react\";\nimport type {\n SidebarMenuSimpleItem,\n SidebarMenuGroup,\n} from \"@next-shared/general/types\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { StarIcon, OnFavoriteCallback } from \"./ItemTag.js\";\nimport { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport { collectService } from \"./CollectService.js\";\nimport { processGroupItems } from \"./processor.js\";\nimport classNames from \"classnames\";\n\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\n\ninterface GroupViewProps {\n groups: SidebarMenuGroup[];\n groupId: string;\n selectedKey?: string[];\n onFavorite: OnFavoriteCallback;\n}\n\nexport const itemColumnWidth = 240;\n\nexport function GroupView(props: GroupViewProps): React.ReactElement {\n const { groupId, selectedKey, onFavorite } = props;\n const groupMenus = processGroupItems(props.groups);\n\n return (\n <div className=\"group-view\">\n {groupMenus.map((item, index) => {\n return (\n <div key={index}>\n {index !== 0 && <div className=\"divider\" />}\n {item.groupFrom === \"default\" ? (\n <DefaultGroup\n groupId={groupId}\n selectedKey={selectedKey}\n groups={item.groups}\n onFavorite={onFavorite}\n />\n ) : (\n <CustomGroup\n groupId={groupId}\n selectedKey={selectedKey}\n groups={item.groups}\n onFavorite={onFavorite}\n />\n )}\n </div>\n );\n })}\n </div>\n );\n}\n\ninterface BaseGroupProps {\n groupId: string;\n selectedKey?: string[];\n onFavorite: OnFavoriteCallback;\n groups: SidebarMenuGroup[];\n}\nexport function DefaultGroup(props: BaseGroupProps): React.ReactElement {\n const { groupId, onFavorite, selectedKey, groups } = props;\n\n const groupRef = React.useRef<HTMLDivElement>(null);\n const [columnCount, setColumnCount] = useState<number>();\n\n useEffect(() => {\n // istanbul ignore next\n const resizeObserver = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === groupRef.current) {\n const width = entry.contentRect.width;\n\n if (width) {\n setColumnCount(Math.floor(width / itemColumnWidth));\n }\n }\n }\n });\n\n resizeObserver.observe(groupRef.current as HTMLDivElement);\n\n return () => resizeObserver.disconnect();\n }, []);\n\n return (\n <div\n className=\"group\"\n ref={groupRef}\n style={\n (columnCount as number) < groups?.length\n ? { columnCount, columnWidth: itemColumnWidth }\n : {\n display: \"grid\",\n gridTemplateColumns: `repeat(auto-fit, ${itemColumnWidth}px)`,\n }\n }\n >\n {groups.map((group) => (\n <div key={group.key} className=\"group-item\">\n <div className=\"title\">{group.title}</div>\n <div className=\"content\">\n {group.items.map((item) => (\n <GroupItem\n key={item.key}\n groupId={groupId}\n selectedKey={selectedKey}\n data={item as SidebarMenuSimpleItem}\n onFavorite={onFavorite}\n />\n ))}\n </div>\n </div>\n ))}\n </div>\n );\n}\n\nexport function CustomGroup(props: BaseGroupProps): React.ReactElement {\n const { groupId, onFavorite, selectedKey, groups } = props;\n\n return (\n <div className=\"custom-group\">\n {groups.map((group) => (\n <div key={group.key}>\n <div className=\"title\">{group.title}</div>\n <div\n className=\"custom-content\"\n style={{\n display: \"grid\",\n gridTemplateColumns: `repeat(auto-fit, ${itemColumnWidth}px)`,\n }}\n >\n {group.items.map((item) => (\n <GroupItem\n key={item.key}\n selectedKey={selectedKey}\n groupId={groupId}\n data={item as SidebarMenuSimpleItem}\n onFavorite={onFavorite}\n />\n ))}\n </div>\n </div>\n ))}\n </div>\n );\n}\n\ninterface GroupItemProps {\n data: SidebarMenuSimpleItem;\n selectedKey?: string[];\n groupId: string;\n onFavorite: OnFavoriteCallback;\n}\nexport function GroupItem(props: GroupItemProps): React.ReactElement {\n const { data, groupId, onFavorite, selectedKey } = props;\n\n return (\n <WrappedLink\n key={data.key}\n icon={data.icon}\n url={data.to as string}\n href={data.href}\n target={data.target as LinkProps[\"target\"]}\n className={classNames(\"item-link\", {\n active: selectedKey?.includes(data.key as string),\n })}\n >\n <span className=\"ellipsis\" title={data.text}>\n {data.text}\n </span>\n <span className=\"icon-wrapper\">\n <StarIcon\n active={collectService.isCollected(groupId, data)}\n groupId={groupId}\n data={data}\n onFavorite={onFavorite}\n />\n </span>\n </WrappedLink>\n );\n}\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport type {\n SidebarMenuGroup,\n SidebarMenuSimpleItem,\n} from \"@next-shared/general/types\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { QuickVisitItem, RecommendItem } from \"./ItemTag.js\";\nimport { GroupView } from \"./GroupItem.js\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { K, NS } from \"../i18n.js\";\nimport { DragContext } from \"./constants.js\";\nimport { useTranslation } from \"@next-core/i18n/react\";\nimport { collectService } from \"./CollectService.js\";\nimport { flatMenuItems } from \"./processor.js\";\nimport { DRAG_DIRECTION } from \"./constants.js\";\nimport classNames from \"classnames\";\nimport { throttle, debounce } from \"lodash\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface InputEvents {\n change: CustomEvent<string>;\n}\n\nexport interface InputEventsMap {\n onValueChange: \"change\";\n}\n\nconst WrappedInput = wrapBrick<any, any, InputEvents, InputEventsMap>(\n \"eo-input\",\n {\n onValueChange: \"change\",\n }\n);\n\ninterface SiteMapItemProps {\n menuGroup: SidebarMenuGroup;\n selectedKey?: string[];\n visible?: boolean;\n}\n\nexport function findDropElement(element: HTMLElement): HTMLElement | undefined {\n let node = element;\n\n while (node) {\n if (node.draggable || node.className === \"indicate-wrapper\") {\n return node;\n }\n\n node = node.parentElement as HTMLElement;\n }\n}\n\nexport function isValidDragAction(\n dragElement: HTMLElement,\n dropElement: HTMLElement\n): boolean {\n return (\n dragElement &&\n dropElement &&\n !(\n dragElement.dataset.to === dropElement.dataset.to &&\n dragElement.dataset.text === dropElement.dataset.text\n )\n );\n}\n\nexport function SiteMapItem(props: SiteMapItemProps) {\n const { t } = useTranslation(NS);\n const { menuGroup, selectedKey, visible } = props;\n const groupId = menuGroup.groupId as string;\n\n const [favoriteList, setFavoriteList] = useState<SidebarMenuSimpleItem[]>([]);\n const flatItems = useMemo(() => flatMenuItems(menuGroup), [menuGroup]);\n const [q, setQ] = useState<string>();\n const [filter, setFilters] = useState<SidebarMenuSimpleItem[]>([]);\n const [dragElement, setDragElement] = useState<HTMLElement>();\n const [overElement, setOverElement] = useState<HTMLElement>();\n const [allowDrag, setAllowDrag] = useState<boolean>();\n const [direction, setDirection] = useState<DRAG_DIRECTION>();\n const [initialized, setInitialized] = useState(false);\n\n useEffect(() => {\n if (visible && !initialized) {\n setInitialized(true);\n }\n }, [visible, initialized]);\n\n const handleFavorite = (collectList: SidebarMenuSimpleItem[]) => {\n setFavoriteList(collectList);\n };\n\n const handleSearch = useCallback(\n (e: CustomEvent<string>): void => {\n const v = e.detail;\n setQ(e.detail);\n\n setFilters(\n !v\n ? flatItems\n : flatItems.filter((item) =>\n item.text.toLowerCase().includes(e.detail.toLowerCase())\n )\n );\n },\n [flatItems]\n );\n\n const debouncedHandleSearch = useMemo(\n () => debounce(handleSearch, 200),\n [handleSearch]\n );\n\n const handleDragStart = (e: React.DragEvent): void => {\n setDragElement(e.target as HTMLElement);\n };\n\n const handleDragOver = useMemo(\n () =>\n throttle((e: React.DragEvent): void => {\n e.preventDefault();\n\n const dropElement = findDropElement(e.target as HTMLElement);\n setOverElement(dropElement);\n\n if (\n dropElement &&\n isValidDragAction(dropElement, dragElement as HTMLElement)\n ) {\n if (dropElement.className === \"indicate-wrapper\") {\n setDirection(dropElement.dataset.direction as DRAG_DIRECTION);\n } else {\n const { width, left } = dropElement.getBoundingClientRect();\n\n const right = e.clientX > left + width / 2;\n setDirection(right ? DRAG_DIRECTION.Right : DRAG_DIRECTION.Left);\n }\n } else {\n setDirection(undefined);\n }\n }),\n [dragElement]\n );\n\n const handleDragEnd = (): void => {\n setDragElement(undefined);\n setDirection(undefined);\n setAllowDrag(false);\n };\n\n const handleAllowDrag = (enable: boolean): void => {\n setAllowDrag(enable);\n };\n\n useEffect(() => {\n (async () => {\n if (visible) {\n const list = await collectService.fetchFavorites(groupId);\n setFavoriteList(list);\n }\n })();\n }, [groupId, visible]);\n\n return (\n initialized && (\n <div className=\"site-map\">\n <div className=\"search-wrapper\">\n <WrappedInput\n className=\"search-input\"\n style={{ width: \"100%\" }}\n onValueChange={debouncedHandleSearch}\n placeholder={t(K.SEARCH_ITEM_PLACEHOLDER)}\n >\n <WrappedIcon slot=\"prefix\" lib=\"antd\" icon=\"search\" />\n </WrappedInput>\n </div>\n\n {!q && (\n <div>\n {favoriteList.length !== 0 && (\n <div\n className={classNames(\"visit-access\", {\n hasData: favoriteList.length,\n })}\n >\n <span className=\"title\">{t(K.QUICK_ACCESS)}</span>\n <DragContext.Provider\n value={{\n groupId,\n overElement,\n direction,\n allowDrag,\n onDragStart: handleDragStart,\n onDragOver: handleDragOver,\n onDragEnd: handleDragEnd,\n onAllowDrag: handleAllowDrag,\n onFavoriteUpdate: handleFavorite,\n }}\n >\n <div className=\"tag-wrapper\">\n {favoriteList.map((item) => (\n <QuickVisitItem\n onFavorite={handleFavorite}\n groupId={groupId}\n key={item.key}\n data={item}\n />\n ))}\n </div>\n </DragContext.Provider>\n </div>\n )}\n\n <GroupView\n groupId={groupId}\n selectedKey={selectedKey}\n groups={menuGroup.items as SidebarMenuGroup[]}\n onFavorite={handleFavorite}\n />\n </div>\n )}\n\n {q && (\n <div className=\"search-panel\">\n <span className=\"title\">{t(K.SITE_MAP_SEARCH_RECOMMEND)}</span>\n {filter.length ? (\n <div className=\"recommend-wrapper\">\n {filter.map((item) => (\n <RecommendItem\n key={item.key}\n groupId={groupId}\n data={item}\n onFavorite={handleFavorite}\n active={collectService.isCollected(groupId, item)}\n />\n ))}\n </div>\n ) : (\n <div className=\"no-data-tips\">{t(K.NO_DATA_SEARCH_INFO)}</div>\n )}\n </div>\n )}\n </div>\n )\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.site-map .search-wrapper{position:sticky;top:0;z-index:9999;padding-top:24px;padding-bottom:16px;background:var(--antd-dropdown-menu-bg)}.site-map .search-input::part(affix-wrapper){border:none;border-bottom:1px solid var(--antd-input-border-color);border-radius:0px;background:transparent}.site-map .visit-access .title,.site-map .search-panel .title{display:inline-block;padding:2px 16px 2px 24px;font-weight:500;line-height:24px;position:relative}.site-map .visit-access .title::before{content:\"\";position:absolute;width:6px;height:6px;top:10px;left:9px;border-radius:50%;background:var(--color-secondary-text)}.site-map .search-panel .title::before{content:\"\";position:absolute;width:6px;height:6px;top:10px;left:9px;border-radius:50%;background:var(--color-secondary-text)}.site-map .visit-access .no-data-tips,.site-map .search-panel .no-data-tips{display:flex;margin:16px 0 32px;align-items:center;justify-content:center;color:var(--color-secondary-text)}.site-map .visit-access.hasData{display:flex}.site-map .visit-access{margin-bottom:8px}.site-map .visit-access .tag-wrapper{flex:1;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}.site-map .ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-map .search-panel .recommend-wrapper{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,200px);gap:8px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["WrappedIcon","wrapBrick","WrappedLinkItem","isGroup","item","type","isSubMenu","groupAsSubMenu","Boolean","renderLinkCom","linkStyle","labelStyle","React","key","url","to","href","target","style","className","text","renderSpanCom","subMenu","title","lib","icon","___CSS_LOADER_EXPORT___","push","module","id","toString","K","NS","locales","en","SEARCH_BY_MENU_NAME","SEARCH_HISTORY","NO_DATA","QUICK_ACCESS","REMOVE_ITEM_FROM_QUICK_ACCESS","ADD_ITEM_TO_QUICK_ACCESS","NO_DATA_TIPS_IN_QUICK_ACCESS","SITE_MAP_SEARCH_RECOMMEND","MAX_COLLECT_COUNT_TIPS","NO_DATA_SEARCH_INFO","SEARCH_ITEM_PLACEHOLDER","zh","initializeReactI18n","WrappedPopover","WrappedSearch","onChange","onSearch","LOCAL_STORAGE_PREFIX","maxVisitorLength","ThreeLevelMenuPopoverContent","props","useTranslation","menuItem","selectedKey","items","searchResult","setSearchResult","useState","searchKey","setSearchKey","triggerRef","useRef","nameSpace","storage","useMemo","JsonStorage","localStorage","searchHistory","getItem","popoverTriggerClick","_triggerRef$current","current","click","onClick","e","stopPropagation","placeholder","t","detail","list","uniq","length","pop","setItem","flatMap","i","filter","toLowerCase","includes","trim","onFocus","onBlur","trigger","placement","anchorDisplay","distance","slot","ref","map","width","height","textAlign","lineHeight","theme","h","gridTemplateColumns","index","_item$items","classnames","active","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","DRAG_DIRECTION","collectModule","DragContext","collectService","constructor","maxCollectLength","_defineProperty","Map","this","getFavoritesById","_cloneDeep","cloneDeep","collectMap","get","fetchFavorites","cachedPromise","collectPromise","favoritesPromise","MyCollectionApi_listMyCollection","collectionName","then","result","_result$payloads","payloads","extInfo","set","setItemAsFavorite","unshift","updateFavoriteItems","MyCollectionApi_upsertMyCollection","name","error","handleHttpError","equalItem","prevItem","removeItemFromFavorite","findIndex","row","splice","isCollected","some","toggleFavorite","checkMaxCapacity","moveFavoriteTo","option","from","direction","fromIndex","toIndex","Left","groupId","WrappedLink","WrappedTooltip","PlaceholderDropComp","_ref","data","onDragOver","onFavoriteUpdate","useContext","onDragEnter","background","onDragLeave","onDrop","formData","JSON","parse","dataTransfer","getData","newDataList","ItemTag","suffix","allowDrag","onDragStart","overElement","onDragEnd","containerRef","isDragIng","setIsDragIng","isActive","dataset","draggable","_e$dataTransfer","setData","stringify","preventDefault","dropEffect","classNames","Right","QuickVisitItem","onAllowDrag","onFavorite","suffixRef","iconRef","handleRemove","useCallback","handleMouseDown","useEffect","addEventListener","removeEventListener","handleClick","suffixGroups","content","hoist","onMouseDown","StarIcon","_ref2","_extends","RecommendItem","walkMenuItem","Array","isArray","walkMenuItems","itemColumnWidth","GroupView","groupMenus","groups","groupCategoryMap","categoryOrder","Set","forEach","_item$groupFrom","groupFrom","add","value","processGroupItems","DefaultGroup","CustomGroup","groupRef","columnCount","setColumnCount","resizeObserver","ResizeObserver","entries","entry","contentRect","Math","floor","observe","disconnect","columnWidth","display","group","GroupItem","WrappedInput","onValueChange","SiteMapItem","menuGroup","visible","favoriteList","setFavoriteList","flatItems","flatMenuItems","q","setQ","setFilters","dragElement","setDragElement","setOverElement","setAllowDrag","setDirection","initialized","setInitialized","handleFavorite","collectList","handleSearch","v","debouncedHandleSearch","debounce","handleDragOver","throttle","dropElement","element","node","parentElement","findDropElement","isValidDragAction","left","getBoundingClientRect","right","clientX","undefined","hasData","Provider","handleDragEnd","enable"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[3944],{1:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".launchpadLink{width:24px;height:24px;display:flex;justify-content:center;align-items:center}.launchpadLink svg{vertical-align:top;filter:grayscale(100%);opacity:0.6;width:16px;height:16px;cursor:pointer}.launchpadLink:hover svg{color:var(--color-brand-hover)!important;filter:none;opacity:1}",""]);const s=r.toString()},70:(e,t,i)=>{i.d(t,{D:()=>nt});var a=i(8769),n=i.n(a),o=i(1921),r=i(2240),s=i(9435),l=i(2865),p=i(9575),c=i(981),d=i(3373),m=i.n(d),h=i(2591),u=i.n(h),f=i(1740),g=i.n(f),x=i(8128),v=i.n(x),k=i(855),y=i.n(k),w=i(3051),b=i.n(w),A=i(3656),E=i.n(A),C=i(6087),L={};L.styleTagTransform=E(),L.setAttributes=y(),L.insert=v().bind(null,"head"),L.domAPI=g(),L.insertStyleElement=b(),u()(C.A,L);const I=C.A&&C.A.locals?C.A.locals:void 0,N=(0,c.wrapBrick)("eo-link"),S=(0,c.wrapBrick)("eo-icon");var W=i(1692),z=i(8002);function _(e){const{t}=(0,z.useTranslation)(W.NS),[i,a]=n().useState(!1),o=n().useCallback((e=>{e&&Promise.resolve().then((()=>{try{e.focus()}catch(e){}}))}),[]);return n().createElement("div",{className:m()(I.searchBar,{[I.focus]:i})},n().createElement("div",{className:I.inputContainer,role:"inputContainer",onClick:e=>{e.stopPropagation()}},n().createElement("span",{className:m()(I.inputAffixWrapper,{[I.inputAffixWrapperFocused]:i})},n().createElement("span",{className:I.antInputPrefix},n().createElement(S,{icon:"search",lib:"antd",theme:"outlined"})),n().createElement("input",{role:"input",className:I.input,placeholder:t(W.K.SEARCH_BY_NAME_KEYWORD),onChange:t=>{e.onChange(t.target.value)},onKeyDown:e=>{const t=e.key||e.keyCode||e.which;["Tab","Enter","ArrowLeft","ArrowUp","ArrowRight","ArrowDown",9,13,37,38,39,40].includes(t)&&e.preventDefault()},onFocus:()=>{a(!0)},onBlur:()=>{a(!1)},ref:o}))))}var B=i(1030),P=i(2535),D={};D.styleTagTransform=E(),D.setAttributes=y(),D.insert=v().bind(null,"head"),D.domAPI=g(),D.insertStyleElement=b(),u()(P.A,D);const M=P.A&&P.A.locals?P.A.locals:void 0;var F=i(2867),H={};H.styleTagTransform=E(),H.setAttributes=y(),H.insert=v().bind(null,"head"),H.domAPI=g(),H.insertStyleElement=b(),u()(F.A,H);const T=F.A&&F.A.locals?F.A.locals:void 0,j=i.p+"images/cc952ed5.png";function q(e,t){var i;return e.icons&&e.icons.large?/^(?:https?|data):|^\//.test(e.icons.large)?e.icons.large:window.STANDALONE_MICRO_APPS?e.standaloneMode?`${null===(i=window.PUBLIC_ROOT)||void 0===i?void 0:i.replace(/-\/$/,"")}${e.id}/versions/${e.currentVersion}/webroot/-/micro-apps/${e.id}/${e.icons.large}`:`${window.PUBLIC_CDN||""}micro-apps/${e.id}/${e.icons.large}`:`${window.PUBLIC_ROOT||""}micro-apps/${e.id}/${e.icons.large}`:t}const R=(0,c.wrapBrick)("eo-link"),J=(0,c.wrapBrick)("eo-icon");function K(e){let{app:t,onAddClick:i,onClick:a,isFavorite:o,showAddIcon:r,size:s}=e;const l="running"===t.installStatus;return n().createElement(n().Fragment,null,n().createElement(R,{className:m()(T.appLink,T[s],"circle"===t.iconBackground?T.circle:T.square,{[T.installing]:l}),url:t.homepage,onClick:e=>{e.stopPropagation(),l&&e.preventDefault(),null==a||a()}},n().createElement("img",{className:T.appIcon,src:q(t,j)}),r&&o&&n().createElement(J,{className:m()(T.addIcon,"circle"===t.iconBackground?T.circleIcon:T.squareIcon),icon:"plus",lib:"antd",theme:"outlined",onClick:e=>{e.stopPropagation(),e.preventDefault(),null==i||i()}})),n().createElement("span",{className:T.appName},l&&n().createElement(J,{style:{paddingRight:5},icon:"loading-3-quarters",lib:"antd",theme:"outlined"}),t.localeName))}const Z=n().createContext({}),V=()=>n().useContext(Z);var U=i(2575),Y={};Y.styleTagTransform=E(),Y.setAttributes=y(),Y.insert=v().bind(null,"head"),Y.domAPI=g(),Y.insertStyleElement=b(),u()(U.A,Y);const O=U.A&&U.A.locals?U.A.locals:void 0;function X(e){const{setDesktopDir:t}=V();return n().createElement(n().Fragment,null,n().createElement("a",{className:m()(O.dirLink,{[O[e.size]]:!!e.size}),onClick:i=>{i.stopPropagation(),null==t||t({dir:{name:e.name,items:e.items},coordinates:{x:i.clientX,y:i.clientY},activeIndex:-1})},role:"button"},e.items.slice(0,4).map((e=>"app"===e.type?n().createElement("img",{className:O.appIcon,key:e.id,src:q(e.app,j)}):n().createElement("img",{className:O.appIcon,key:e.id,src:j})))),n().createElement("span",{className:O.dirName},e.name))}var G=i(1651),Q={};Q.styleTagTransform=E(),Q.setAttributes=y(),Q.insert=v().bind(null,"head"),Q.domAPI=g(),Q.insertStyleElement=b(),u()(G.A,Q);const $=G.A&&G.A.locals?G.A.locals:void 0,ee=(0,c.wrapBrick)("eo-link"),te=(0,c.wrapBrick)("eo-icon");function ie(e){let{name:t,url:i,showAddIcon:a,isFavorite:o,onClick:r,onAddClick:s,size:l,responsive:p=!0}=e;return n().createElement(n().Fragment,null,n().createElement(ee,{className:m()($.appLink,$.circle,$[l],{[$.responsive]:p}),href:i,target:"_blank",onClick:e=>{e.stopPropagation(),null==r||r()}},n().createElement("img",{className:$.appIcon,src:j}),a&&o&&n().createElement(te,{className:m()($.addIcon,$.circleIcon),icon:"plus-circle-filled",lib:"antd",theme:"outlined",onClick:e=>{e.stopPropagation(),e.preventDefault(),null==s||s()}})),n().createElement("span",{className:$.appName},t))}var ae=i(4586),ne=i(7137),oe=i(9684),re=i(1644),se=i(3887),le=i(3346),pe=i(5507),ce=i(8443),de=i(341);const me=new class{constructor(){var e;(0,ae.A)(this,"storageKey",`launchpad-recently-visited:${null===(e=pe.auth.getAuth())||void 0===e?void 0:e.org}`),(0,ae.A)(this,"storage",void 0),(0,ae.A)(this,"favoriteList",[]),(0,ae.A)(this,"filteredFavoriteList",[]),(0,ae.A)(this,"microApps",[]),(0,ae.A)(this,"customList",[]),(0,ae.A)(this,"maxVisitorLength",7),(0,ae.A)(this,"baseInfo",{settings:{columns:7,rows:4},microApps:[],desktops:[],siteSort:[]}),(0,ae.A)(this,"loaded",!1),(0,ae.A)(this,"favoritesLoaded",!1),(0,ae.A)(this,"deferredLaunchpadInfo",void 0),(0,ae.A)(this,"deferredFavorites",void 0),(0,ae.A)(this,"doFetchFavorites",(async()=>{const e=(await(0,oe.o)({page:1,pageSize:25},{interceptorParams:{ignoreLoadingBar:!0},noAbortOnRouteChange:!0})).list;this.setFavorites(e),this.favoritesLoaded=!0})),(0,ae.A)(this,"doFetchLaunchpadInfo",(async()=>{const e=await(0,le.i)({},{interceptorParams:{ignoreLoadingBar:!0},noAbortOnRouteChange:!0});for(const t of e.storyboards){const e=t.app;if(e)if(e.locales){const t=`$tmp-${e.id}`;Object.entries(e.locales).forEach((e=>{let[i,a]=e;ce.i18n.addResourceBundle(i,t,a)})),e.localeName=ce.i18n.getFixedT(null,t)("name",e.name),Object.keys(e.locales).forEach((e=>{ce.i18n.removeResourceBundle(e,t)}))}else e.localeName=e.name}this.baseInfo={...e,settings:e.settings.launchpad,microApps:e.storyboards.map((e=>e.app)).filter(Boolean)},this.initValue(),this.loaded=!0})),this.storage=new ne.G(localStorage),this.deferredLaunchpadInfo=new de.x(this.doFetchLaunchpadInfo),this.deferredFavorites=new de.x(this.doFetchFavorites),this.init()}init(){const e=(0,o.getRuntime)();this.baseInfo={desktops:e.getDesktops(),microApps:[e.getCurrentApp()],settings:e.getLaunchpadSettings(),siteSort:e.getLaunchpadSiteMap()},this.initValue()}initValue(){this.customList=this.baseInfo.desktops.map((e=>e.items.filter((e=>"custom"===e.type)))).flat();const e=this.baseInfo.microApps.filter((e=>e&&(!e.status||"enabled"===e.status||"developing"===e.status)));this.setMicroApps(e)}setMaxVisitorLength(e){this.maxVisitorLength=e}preFetchFavorites(){this.deferredFavorites.schedulePrefetch()}async fetchFavoriteList(e){return await this.deferredFavorites.fetch(e),this.favoriteList}preFetchLaunchpadInfo(){window.STANDALONE_MICRO_APPS&&this.deferredLaunchpadInfo.schedulePrefetch()}fetchLaunchpadInfo(){return this.deferredLaunchpadInfo.fetch()}getBaseInfo(){return this.baseInfo}getFavoritesLength(){return this.favoriteList.length}typeAdaptor(e){return"customItem"===e?"custom":"microApp"===e?"app":e}setFavorites(e){var t;this.filteredFavoriteList=null!==(t=null==e?void 0:e.filter((e=>{var t;return"microApp"===(null===(t=e.launchpadCollection)||void 0===t?void 0:t.type)||"customItem"===e.launchpadCollection.type})))&&void 0!==t?t:[],this.favoriteList=e}setMicroApps(e){this.microApps=e,this.syncValidRecentlyVisitor()}syncValidRecentlyVisitor(){if(window.STANDALONE_MICRO_APPS)return;const e=this.getAllVisitors().filter((e=>"app"===e.type?this.microApps.some((t=>t.id===e.id)):this.customList.some((t=>t.type===e.type&&t.id===e.id))));this.setAllVisitors(e)}async setAsFavorite(e){await(0,re.a)(e,{interceptorParams:{ignoreLoadingBar:!0}})}async deleteFavorite(e){await(0,se.j)(e,{interceptorParams:{ignoreLoadingBar:!0}})}isFavorite(e){return"app"===e.type?this.filteredFavoriteList.some((t=>"app"===this.typeAdaptor(t.launchpadCollection.type)&&t.microAppId===e.id)):this.filteredFavoriteList.some((t=>"custom"===this.typeAdaptor(t.launchpadCollection.type)&&t.customItemId===e.id))}getItem(e,t){return(this.storage.getItem(this.storageKey)||[]).find((i=>i.id===t&&i.type===e))}getItemIndex(e,t){return(this.storage.getItem(this.storageKey)||[]).findIndex((i=>i.id===t&&i.type===e))}hasItem(e,t){return(this.storage.getItem(this.storageKey)||[]).some((i=>i.id===t&&i.type===e))}getAllVisitors(){return this.storage.getItem(this.storageKey)||[]}setItem(e,t){const i=this.getAllVisitors();if(this.hasItem(e,t.id)){const a=this.getItemIndex(e,t.id);i.splice(a,1),i.unshift(t)}else i.unshift(t);i.length>this.maxVisitorLength&&i.pop(),this.setAllVisitors(i)}setAllVisitors(e){this.storage.setItem(this.storageKey,e)}pushVisitor(e,t){if("app"===e){const e=t;t={id:e.id,app:{name:e.name,icons:e.icons,localeName:e.localeName,id:e.id,homepage:e.homepage,currentVersion:e.currentVersion,standaloneMode:e.standaloneMode},type:"app"}}this.setItem(e,t)}getVisitor(e,t){return this.getItem(e,t)}getRealDesktopItem(e){var t;return"microApp"===(null===(t=e.launchpadCollection)||void 0===t?void 0:t.type)?this.microApps.find((t=>t.id===e.microAppId)):this.customList.find((t=>t.id===e.customItemId))}setFavoriteAsVisitor(e){var t;const i=this.typeAdaptor(null===(t=e.launchpadCollection)||void 0===t?void 0:t.type);if("link"===i)return;const a=this.getRealDesktopItem(e);a&&this.pushVisitor(i,a)}getSitemapList(){const e=this.baseInfo.microApps.filter((e=>!e.internal)),t=this.baseInfo.siteSort;return null==t?void 0:t.map((t=>({...t,apps:(t.apps||[]).map((t=>{const i=e.find((e=>e.id===t.id))||{};return{...t,...(0,B.pick)(i,["name","icons","localeName","homepage","currentVersion","standaloneMode"])}}))})))}};function he(e){const t=async()=>{if(!(me.getFavoritesLength()>=25&&(o.Dialog.show({title:"收藏数量已达上限",content:"当前收藏链接数量已达上限(25个),请删除部分链接后再添加。",contentStyle:{zIndex:5001}}),1))){let i;if("app"===e.item.type){const t=e.item;i={microAppId:t.id,launchpadCollection:{type:"microApp",name:t.app.name}}}else{const t=e.item;i={customItemId:t.id,launchpadCollection:{type:"customItem",name:t.name}}}try{var t;await me.setAsFavorite(i),null==e||null===(t=e.onSetAsFavorite)||void 0===t||t.call(e)}catch(e){}}};return n().createElement("div",{className:m()(M.cellWrapper,{[M.positionLeft]:"left"===(null==e?void 0:e.position)})},n().createElement("div",{className:m()(M.cellItem,M[e.size],{[M.active]:e.active})},"app"===e.item.type?n().createElement(K,{showAddIcon:e.showAddIcon,isFavorite:e.isFavorite,app:e.item.app,onClick:()=>{const t=e.item.app;me.pushVisitor("app",t)},onAddClick:t,size:e.size}):"custom"===e.item.type?n().createElement(ie,{showAddIcon:e.showAddIcon,isFavorite:e.isFavorite,name:e.item.name,url:e.item.url,onClick:()=>{const t=e.item;me.pushVisitor("custom",t)},onAddClick:t,size:e.size}):n().createElement(X,{name:e.item.name,items:e.item.items,size:e.size})))}const ue=n().createContext({columns:7,rows:4}),fe=()=>n().useContext(ue);var ge=i(8479),xe={};xe.styleTagTransform=E(),xe.setAttributes=y(),xe.insert=v().bind(null,"head"),xe.domAPI=g(),xe.insertStyleElement=b(),u()(ge.A,xe);const ve=ge.A&&ge.A.locals?ge.A.locals:void 0;function ke(e){const{columns:t,rows:i}=fe();return n().createElement("div",{className:ve.desktop,style:{padding:`0 ${e.arrowWidthPercent/e.desktopCount}%`,gridTemplateColumns:`repeat(${t},1fr)`,gridTemplateRows:`repeat(${i},1fr)`}},e.desktop.items.map(((t,i)=>n().createElement(he,{key:i,item:t,active:i===e.activeIndex}))))}var ye=i(1135),we={};we.styleTagTransform=E(),we.setAttributes=y(),we.insert=v().bind(null,"head"),we.domAPI=g(),we.insertStyleElement=b(),u()(ye.A,we);const be=ye.A&&ye.A.locals?ye.A.locals:void 0;var Ae=i(8095),Ee={};Ee.styleTagTransform=E(),Ee.setAttributes=y(),Ee.insert=v().bind(null,"head"),Ee.domAPI=g(),Ee.insertStyleElement=b(),u()(Ae.A,Ee);const Ce=Ae.A&&Ae.A.locals?Ae.A.locals:void 0;var Le=i(219),Ie={};Ie.styleTagTransform=E(),Ie.setAttributes=y(),Ie.insert=v().bind(null,"head"),Ie.domAPI=g(),Ie.insertStyleElement=b(),u()(Le.A,Ie);const Ne=Le.A&&Le.A.locals?Le.A.locals:void 0;function Se(e){var t,i,o;let{item:r}=e;const s=(0,a.useMemo)((()=>{var e,t;return"microApp"===(null===(e=r.launchpadCollection)||void 0===e?void 0:e.type)?!r.microAppId:"customItem"===(null===(t=r.launchpadCollection)||void 0===t?void 0:t.type)&&!(null!=r&&r.customItemId)}),[r]),l=(0,a.useMemo)((()=>{var e,t,i;const a=null===(e=r.launchpadCollection)||void 0===e?void 0:e.link;if("microApp"===(null===(t=r.launchpadCollection)||void 0===t?void 0:t.type))return a;const n=document.baseURI;return null!=a&&a.startsWith(n)?null==a?void 0:a.replace(n,"/"):null===(i=r.launchpadCollection)||void 0===i?void 0:i.link}),[r]);return n().createElement("div",null,n().createElement("div",{className:m()(Ne.cellWrapper,{[Ne.disabled]:s})},n().createElement(N,{className:Ne.link,url:l,onClick:e=>{var t,i,a,n;s?e.preventDefault():("link"!==(null===(n=r.launchpadCollection)||void 0===n?void 0:n.type)&&me.setFavoriteAsVisitor(r),!(null!==(t=r.launchpadCollection)&&void 0!==t&&null!==(t=t.link)&&void 0!==t&&t.startsWith("https://")||null!==(i=r.launchpadCollection)&&void 0!==i&&null!==(i=i.link)&&void 0!==i&&i.startsWith("http://"))||null!==(a=r.launchpadCollection)&&void 0!==a&&null!==(a=a.link)&&void 0!==a&&a.startsWith(document.baseURI)||(e.preventDefault(),window.open(r.launchpadCollection.link,"_blank")))}},n().createElement(n().Fragment,null,n().createElement("span",{className:m()(Ne.appLink,Ne.square)},n().createElement(S,(0,p.A)({},null!==(t=(0,B.omit)(null==r||null===(i=r.launchpadCollection)||void 0===i?void 0:i.icon,["prefix","type"]))&&void 0!==t?t:{},{style:{fontSize:18}}))),n().createElement("span",{className:Ne.name},null==r||null===(o=r.launchpadCollection)||void 0===o?void 0:o.name)))))}var We=i(8430),ze={};ze.styleTagTransform=E(),ze.setAttributes=y(),ze.insert=v().bind(null,"head"),ze.domAPI=g(),ze.insertStyleElement=b(),u()(We.A,ze);const _e=We.A&&We.A.locals?We.A.locals:void 0,Be=(0,c.wrapBrick)("eo-link");function Pe(e,t){var i;return(0,a.useEffect)((()=>{var t;null===(t=e.onLoad)||void 0===t||t.call(e)}),[]),n().createElement("div",{className:_e.scrollContainer,style:e.containerStyle,ref:t,onWheel:e=>{e.stopPropagation()}},n().createElement("div",{className:_e.siteMapContainer},null===(i=e.categoryList)||void 0===i?void 0:i.map((e=>{var t;return n().createElement("div",{className:_e.groupWrapper,key:e.name},n().createElement("div",null,e.name),n().createElement("ul",{className:_e.group},null===(t=e.apps)||void 0===t?void 0:t.map(((e,t)=>n().createElement("li",{className:_e.item,key:t},n().createElement(Be,{type:"plain",url:e.homepage,onClick:()=>{return t=e,void me.pushVisitor("app",t);var t}},e.name))))))}))))}const De=(0,a.forwardRef)(Pe),Me=(0,c.wrapBrick)("eo-link"),Fe=(0,c.wrapBrick)("eo-icon");var He=function(e){return e.Favorities="favorities",e.Sitemap="sitemap",e}(He||{});let Te=He.Sitemap;function je(e,t){const[i]=(0,a.useState)(me.getAllVisitors()),[o,r]=(0,a.useState)([]),[s,l]=(0,a.useState)(!me.favoritesLoaded),[p,c]=(0,a.useState)(Te),d=(0,a.createRef)(),h=(0,a.useRef)(null),[u,f]=(0,a.useState)(),g=async e=>{const t=await me.fetchFavoriteList(e);l(!1),r(t)},x=(e,t)=>{e.stopPropagation(),Te=t,c(t)};(0,a.useEffect)((()=>{(async()=>{g()})()}),[]);const v=()=>{g(!0)},k=()=>{const e=d.current,t=h.current;e&&t&&Promise.resolve().then((()=>{const i=e.getBoundingClientRect(),a=t.getBoundingClientRect().bottom-i.top;f(a)}))},y=(0,a.useMemo)((()=>n().createElement("div",{className:Ce.visited},n().createElement("div",{className:Ce.title},"最近访问"),n().createElement("div",{className:Ce.desktop},null==i?void 0:i.map(((e,t)=>n().createElement(he,{size:"small",key:t,item:e,showAddIcon:!0,isFavorite:!me.isFavorite(e),onSetAsFavorite:v})))))),[i,s]),w=(0,a.useMemo)((()=>n().createElement("div",{className:m()([Ce.section,Ce.favorites])},s&&n().createElement("div",{className:Ce.spin},n().createElement(Fe,{lib:"antd",icon:"loading",theme:"outlined",style:{fontSize:"2.5rem"},spinning:!0})),(0,B.isEmpty)(o)?!s&&n().createElement("div",{className:Ce.emptyTips},"把常用的页面链接加入收藏夹,方便快速访问 ~"," ",n().createElement(Me,{url:"/launchpad-collection",style:{marginLeft:30}},"管理我的收藏")):n().createElement("div",{className:Ce.favoriteContainer},null==o?void 0:o.map(((e,t)=>n().createElement(Se,{key:t,item:e})))))),[o,s]),b=(0,a.useMemo)((()=>{var e;const t=null===(e=me.getSitemapList())||void 0===e?void 0:e.filter((e=>{var t;return(null===(t=e.apps)||void 0===t?void 0:t.length)>0}));return n().createElement(De,{ref:d,categoryList:t,containerStyle:{height:u,overflow:"auto"},onLoad:k})}),[u]);return n().createElement("div",{ref:h,style:{flex:1,padding:`0 ${e.desktopCount?e.arrowWidthPercent/e.desktopCount:10}%`}},!(null==i||!i.length)&&y,n().createElement("div",{className:Ce.modeWrapper},n().createElement("div",{className:Ce.header},p===He.Favorities?n().createElement("div",{className:Ce.title}," ","我的收藏",n().createElement(Fe,{className:Ce.modeIcon,icon:"launchpad-sitmap",lib:"easyops",category:"app",onClick:e=>x(e,He.Sitemap)})):n().createElement("div",{className:Ce.title},"系统地图",n().createElement(Fe,{className:Ce.modeIcon,icon:"launchpad-collection",lib:"easyops",category:"app",onClick:e=>x(e,He.Favorities)})),p===He.Favorities&&n().createElement("div",{className:Ce.settingsContainer},n().createElement(Me,{url:"/launchpad-collection"},n().createElement(Fe,{className:Ce.settings,icon:"launchpad-setting",lib:"easyops",category:"app"}),"管理收藏"))),p===He.Favorities?w:b))}let qe=0;function Re(e){const[t,i]=n().useState(qe),[r,s]=n().useState(-1),{columns:l,rows:p}=fe(),{setDesktopDir:c}=V();(0,a.useEffect)((()=>{me.setMaxVisitorLength(8)}),[l,!0]);const d=e=>({name:"-",items:e.map((e=>"custom"===e.type?{id:e.id,name:e.name,url:e.homepage,type:"custom",app:e}:{type:"app",id:e.id,app:e}))}),h=e=>({localeName:e.name,homepage:e.url,...e,type:"custom"});let u=[],f=e.microApps;if("object"==typeof(null==e?void 0:e.desktops)&&e.desktops.length>0){f=[];const t=e.microApps.reduce(((e,t)=>(e.set(t.id,t),e)),new Map);u=e.desktops.map((e=>({name:e.name,items:e.items.map((e=>{if("app"===e.type){if(t.has(e.id)){const i=t.get(e.id);return f.push(i),t.delete(e.id),{type:e.type,id:e.id,app:i}}}else if("dir"===e.type){const i=e.items.map((e=>{if("app"===e.type){if(t.has(e.id)){const i=t.get(e.id);return f.push(i),t.delete(e.id),{type:e.type,id:e.id,app:i}}}else if("custom"===e.type)return f.push(h(e)),e})).filter(Boolean);if(i.length>0)return{type:e.type,id:e.id,name:e.name,items:i}}else if("custom"===e.type)return f.push(h(e)),e})).filter(Boolean).slice(0,l*p)}))).filter((e=>e.items.length>0))}else e.desktops||(u=(0,B.chunk)(e.microApps,l*p).map(d));let g={};if(e.q){const t=e.q.toLowerCase();g=d(f.filter((e=>e.localeName.toLowerCase().includes(t)||e.name.toLowerCase().includes(t)||e.id.toLowerCase().includes(t))).slice(0,l*p))}n().useEffect((()=>{s(-1)}),[t]),n().useEffect((()=>{s(e.q&&g&&g.items.length>0?0:-1)}),[e.q]);const x=n().useRef(!1),v=e=>{x.current||(qe=e,i(e),x.current=!0,setTimeout((()=>{x.current=!1}),400))},k=n().useCallback((()=>{t>0&&v(t-1)}),[t]),y=n().useCallback((()=>{const e=u.length;t<e&&v(t+1)}),[t,u.length]);n().useEffect((()=>{const i=i=>{if(0===t&&!e.q)return;const a=i.key||i.keyCode||i.which,n=e.q?g:u[t-1];if("Enter"===a||13===a){if(i.preventDefault(),r>=0&&r<n.items.length){const e=n.items[r];if("app"===e.type)me.pushVisitor("app",e.app),(0,o.getHistory)().push(e.app.homepage);else if("custom"===e.type)me.pushVisitor("custom",e),window.open(e.url);else if("dir"===e.type){const t=r%l,i=Math.floor(r/l);null==c||c({activeIndex:0,dir:{name:e.name,items:e.items},coordinates:{x:window.innerWidth*(t+1)/(l+1),y:window.innerHeight*(i+1)/(p+1)}})}}}else{let e=0;if("ArrowRight"===a||39===a?e=1:"ArrowLeft"===a||37===a?e=-1===r?n.items.length:-1:"ArrowDown"===a||40===a?e=-1===r?1:l:"ArrowUp"!==a&&38!==a||(e=-1===r?n.items.length:-l),0!==e){i.preventDefault();const t=r+e;t>=0&&t<n.items.length&&s(t)}}};return window.addEventListener("keydown",i),()=>{window.removeEventListener("keydown",i)}}),[t,r,e.q,l,c]);const w=n().useRef(0),b=n().useRef(0),A=n().useRef(!0),E=n().useRef(),C=u.length+1;return n().createElement("div",{onWheel:e=>{w.current+=e.deltaX,b.current+=e.deltaY,(()=>{if(!A.current)return;const e=Math.abs(b.current)>Math.abs(w.current)?b:w,t=e===b?4:40;if(e.current>=t)y();else{if(!(e.current<=-t))return;k()}w.current=0,b.current=0,A.current=!1})(),E.current&&clearTimeout(E.current),E.current=setTimeout((()=>{w.current=0,b.current=0,A.current=!0}),50)},className:m()(be.desktopSlider,{[be.filtered]:e.q})},n().createElement("div",{className:be.desktopSelector},[{name:n().createElement(S,{lib:"antd",theme:"filled",icon:"home"})},...u].map(((e,i)=>n().createElement(n().Fragment,{key:i},0!==i&&n().createElement("span",{className:be.selectorSeparator}),n().createElement("a",{className:m()(be.desktopName,{[be.active]:t===i}),onClick:e=>((e,i)=>{e.stopPropagation(),t!==i&&v(i)})(e,i),role:"button"},e.name))))),n().createElement("div",{className:be.scrollContainer},n().createElement("div",{className:be.desktopList,style:{width:100*C+"%",marginLeft:-100*t+"%",transition:"margin-left 400ms ease-out"}},n().createElement(je,{desktopCount:u.length,arrowWidthPercent:e.arrowWidthPercent}),u.map(((i,a)=>n().createElement(ke,{key:a,desktop:i,desktopCount:u.length,arrowWidthPercent:e.arrowWidthPercent,activeIndex:t-1===a?r:-1})))),e.q&&n().createElement("div",{className:be.filteredList},n().createElement(ke,{desktop:g,desktopCount:1,arrowWidthPercent:e.arrowWidthPercent,activeIndex:r}))),n().createElement("a",{className:m()(be.arrowLeft,{[be.available]:t>0}),style:{width:`${e.arrowWidthPercent}%`},onClick:e=>{e.stopPropagation(),k()},role:"button"},n().createElement("span",{className:be.arrowButton},n().createElement(S,{lib:"antd",theme:"outlined",icon:"left"}))),n().createElement("a",{className:m()(be.arrowRight,{[be.available]:t<C-1}),style:{width:`${e.arrowWidthPercent}%`},onClick:e=>{e.stopPropagation(),y()},role:"button"},n().createElement("span",{className:be.arrowButton},n().createElement(S,{lib:"antd",theme:"outlined",icon:"right"}))))}var Je=i(1759),Ke={};Ke.styleTagTransform=E(),Ke.setAttributes=y(),Ke.insert=v().bind(null,"head"),Ke.domAPI=g(),Ke.insertStyleElement=b(),u()(Je.A,Ke);const Ze=Je.A&&Je.A.locals?Je.A.locals:void 0;function Ve(e){const{columns:t,rows:i}=fe(),{setDesktopDir:a}=V(),[r,s]=n().useState(!1),[p,c]=n().useState(e.activeIndex),d=e.dir.items.slice(0,t*i),m=e.coordinates.x-document.documentElement.clientWidth/2,h=e.coordinates.y-document.documentElement.clientHeight/2;n().useEffect((()=>{const e=e=>{e.stopPropagation(),e.preventDefault();const i=e.key||e.keyCode||e.which;if("Escape"===i||27===i)null==a||a(void 0);else if("Enter"===i||13===i){if(p>=0&&p<d.length){const e=d[p];"app"===e.type?(0,o.getHistory)().push(e.app.homepage):window.open(e.url)}}else{let e=0;if("ArrowRight"===i||39===i?e=1:"ArrowLeft"===i||37===i?e=-1===p?d.length:-1:"ArrowDown"===i||40===i?e=-1===p?1:t:"ArrowUp"!==i&&38!==i||(e=-1===p?d.length:-t),0!==e){const t=p+e;t>=0&&t<d.length&&c(t)}}};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}}),[e.dir,p,t,i,a]);const u=Math.ceil(d.length/t);return n().createElement(l.A,{in:!0,timeout:150,appear:!0,classNames:"no-rules-class-name",onEntering:()=>{s(!0)}},n().createElement("div",{className:Ze.dirContainer,onClick:e=>{e.stopPropagation(),null==a||a(void 0)},style:{padding:`0 ${e.arrowWidthPercent}% 36px`,transform:r?"none":`translate(${m}px,${h}px) scale(0.01)`}},n().createElement("div",{className:Ze.dirName},e.dir.name),n().createElement("div",{className:Ze.dirContent,style:{height:100*(u+.2)/(i+1)+"%",gridTemplateColumns:`repeat(${t},1fr)`,gridTemplateRows:`repeat(${u},1fr)`}},d.map(((e,t)=>n().createElement(he,{key:e.id,item:e,active:p===t}))))))}var Ue=i(3031),Ye={};Ye.styleTagTransform=E(),Ye.setAttributes=y(),Ye.insert=v().bind(null,"head"),Ye.domAPI=g(),Ye.insertStyleElement=b(),u()(Ue.A,Ye);const Oe=Ue.A&&Ue.A.locals?Ue.A.locals:void 0,Xe=(0,c.wrapBrick)("eo-icon");function Ge(e){const{settings:t,desktops:i}=me.getBaseInfo(),a=()=>me.getBaseInfo().microApps.filter((e=>e&&(!e.status||"enabled"===e.status||"developing"===e.status))),[r,s]=n().useState(""),[c,d]=n().useState(a()),[m,h]=n().useState(),[u,f]=n().useState(!!window.STANDALONE_MICRO_APPS&&!me.loaded);return n().useEffect((()=>{window.STANDALONE_MICRO_APPS?(async()=>{try{await me.fetchLaunchpadInfo(),f(!1),d(a())}catch(i){var t;null===(t=e.onWillClose)||void 0===t||t.call(e),(0,o.handleHttpError)(i)}})():me.init()}),[]),n().useEffect((()=>{const t=t=>{const i=t.key||t.keyCode||t.which;var a;"Escape"!==i&&27!==i||null===(a=e.onWillClose)||void 0===a||a.call(e)};return window.addEventListener("keydown",t),()=>{window.removeEventListener("keydown",t)}}),[e.onWillClose]),n().createElement(ue.Provider,{value:t},n().createElement(Z.Provider,{value:{desktopDir:m,setDesktopDir:h}},n().createElement("div",{className:Oe.launchpad,onClick:e.onWillClose},u?n().createElement("div",{className:Oe.loadingWrapper},n().createElement(Xe,{icon:"loading",lib:"antd",theme:"outlined",spinning:!0})):n().createElement(n().Fragment,null,n().createElement(l.A,{in:!m,timeout:100,classNames:{enter:Oe.fadeEnter,enterActive:Oe.fadeEnterActive,exit:Oe.fadeExit,exitActive:Oe.fadeExitActive,exitDone:Oe.fadeExitDone}},n().createElement("div",{className:Oe.launchpadContainer},n().createElement(_,{onChange:e=>{s(e)}}),n().createElement(Re,{q:r,microApps:c,desktops:i,arrowWidthPercent:9}))),m&&n().createElement(Ve,(0,p.A)({},m,{arrowWidthPercent:9}))))))}var Qe=i(4739),$e={};$e.styleTagTransform=E(),$e.setAttributes=y(),$e.insert=v().bind(null,"head"),$e.domAPI=g(),$e.insertStyleElement=b(),u()(Qe.A,$e);const et=Qe.A&&Qe.A.locals?Qe.A.locals:void 0;function tt(e){const[t,i]=n().useState(!0);return n().createElement(l.A,{in:t,timeout:100,appear:!0,classNames:{...et},onExited:()=>{var t;null===(t=e.onClose)||void 0===t||t.call(e)}},n().createElement(Ge,{onWillClose:()=>{var t;i(!1),null===(t=e.onWillClose)||void 0===t||t.call(e)}}))}function it(e){const t=document.createElement("div");return n().useEffect((()=>(document.body.appendChild(t),()=>{document.body.removeChild(t)}))),e.visible?(0,s.createPortal)(n().createElement(tt,{onWillClose:e.onWillClose,onClose:e.onClose}),t):null}var at=i(6674);function nt(){const[e,t]=(0,a.useState)(!1),i=(0,a.useCallback)((()=>{(0,o.getRuntime)().toggleLaunchpadEffect(!1)}),[]);return(0,a.useEffect)((()=>(0,o.getHistory)().listen((()=>{i(),t(!1)}))),[i]),(0,a.useEffect)((()=>(at.A.filter=function(){return!0},(0,at.A)("alt+l",(e=>{e.preventDefault(),t((e=>{const t=!e;return t||i(),t}))})),()=>{at.A.unbind("alt+l")})),[i]),(0,a.useEffect)((()=>{(0,o.getRuntime)().toggleLaunchpadEffect(e)}),[e]),(0,a.useEffect)((()=>{me.preFetchLaunchpadInfo(),me.preFetchFavorites()}),[]),n().createElement(n().Fragment,null,n().createElement("a",{role:"button",className:"launchpadLink",onClick:()=>{t(!0)}},n().createElement(r.A,null)),n().createElement(it,{visible:e,onWillClose:i,onClose:()=>{t(!1)}}))}},219:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".cellWrapper--celYo8CM{display:flex;align-items:center;position:relative;transform-origin:0 0}.cellWrapper--celYo8CM:hover{background-color:rgba(255,255,255,0.1);border-radius:10px;cursor:pointer}.cellWrapper--celYo8CM:hover .closeIcon--kqBgSmBL{display:block}.cellWrapper--celYo8CM.disabled--SXwx9i_9{color:#d8d8d8;opacity:0.5;cursor:no-drop}.cellWrapper--celYo8CM.disabled--SXwx9i_9 .appLink--xxDzS__h,.cellWrapper--celYo8CM.disabled--SXwx9i_9 .name--gT42Hr47{cursor:no-drop}.cellWrapper--celYo8CM.disabled--SXwx9i_9:hover{background:none;border-radius:0}.cellWrapper--celYo8CM.disabled--SXwx9i_9:hover .closeIcon--kqBgSmBL{display:none}.cellItem--JZfNDEVv{height:144px;padding:10px;min-width:120px;display:flex;justify-content:space-between;align-items:center;flex-direction:column}.appLink--xxDzS__h{display:flex;width:46px;height:46px;color:#fff;justify-content:center;align-items:center;position:relative}.appLink--xxDzS__h.circle--wjMEocD_,.appLink--xxDzS__h.square--lOfLBD3x{background-color:rgba(255,255,255,0.1)}.appLink--xxDzS__h.circle--wjMEocD_{border-radius:40px}.appLink--xxDzS__h.square--lOfLBD3x{border-radius:10px}.appLink--xxDzS__h.installing--drkxXY1n{opacity:0.5}.addIcon--ruhiXc4_{position:absolute;font-size:25px;color:white}.circleIcon--nexpPxUz{right:-6px;bottom:5px}.squareIcon--BkpShWWs{right:-6px;bottom:5px}.appLink--xxDzS__h:hover{color:#fff}.appIcon--w9kHpYGc{width:95%}.appName--CLwLdUBP{display:block;font-size:16px;line-height:1.5;height:24px;text-align:center}.link--bllF9zn6{display:flex;justify-content:center;align-items:center}.name--gT42Hr47{flex:1;padding-left:20px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;color:white}.closeIcon--kqBgSmBL{font-size:12px;position:absolute;top:-5px;right:-3px;color:rgba(255,255,255,0.7);display:none}@media (max-height: 860px), (max-width: 1280px){.cellWrapper--celYo8CM{transform:scale(0.8)}}@media (max-height: 700px), (max-width: 1024px){.cellWrapper--celYo8CM{transform:scale(0.7)}}",""]),r.locals={cellWrapper:"cellWrapper--celYo8CM",closeIcon:"closeIcon--kqBgSmBL",disabled:"disabled--SXwx9i_9",appLink:"appLink--xxDzS__h",name:"name--gT42Hr47",cellItem:"cellItem--JZfNDEVv",circle:"circle--wjMEocD_",square:"square--lOfLBD3x",installing:"installing--drkxXY1n",addIcon:"addIcon--ruhiXc4_",circleIcon:"circleIcon--nexpPxUz",squareIcon:"squareIcon--BkpShWWs",appIcon:"appIcon--w9kHpYGc",appName:"appName--CLwLdUBP",link:"link--bllF9zn6"};const s=r},1135:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".desktopSlider--AScHB1Kd{flex:1;position:relative;padding-top:110px;padding-bottom:50px}.filtered--OQSTba5B .desktopList--nOFGKtg0,.filtered--OQSTba5B .arrowLeft--xkZ60z9A,.filtered--OQSTba5B .arrowRight--SFdZw31z,.filtered--OQSTba5B .desktopSelector--rYqx7sAu{display:none}.scrollContainer--PyCfQg85{width:100%;height:100%;overflow:hidden}.desktopList--nOFGKtg0{display:flex;height:100%}.filteredList--qgFcXHyE{display:flex;height:100%}.arrowLeft--xkZ60z9A,\n.arrowRight--SFdZw31z{position:absolute;top:110px;bottom:50px;justify-content:center;align-items:center;display:none}.available--yspNdU90.arrowLeft--xkZ60z9A,.available--yspNdU90.arrowRight--SFdZw31z{display:flex}.arrowLeft--xkZ60z9A{left:0}.arrowRight--SFdZw31z{right:0}.arrowButton--MHbxtjNQ{width:70px;height:70px;font-size:36px;display:flex;justify-content:center;align-items:center;color:#e6e6e6;background-color:rgba(255,255,255,0.1);border-radius:6px;visibility:hidden}.arrowLeft--xkZ60z9A:hover .arrowButton--MHbxtjNQ,\n.arrowRight--SFdZw31z:hover .arrowButton--MHbxtjNQ{visibility:visible}.desktopSelector--rYqx7sAu{position:absolute;top:0;left:0;right:0;height:110px;padding:36px 0;display:flex;justify-content:center;align-items:center;flex-wrap:wrap}.desktopName--M1GlY6Xe{display:block;color:rgba(255,255,255,0.65);border-radius:6px;font-size:12px;line-height:38px;padding:0 16px}.desktopName--M1GlY6Xe:hover{color:#fff}.desktopName--M1GlY6Xe.active--gh6q8Xsv{color:#fff;background-color:rgba(18,21,26,0.3)}.selectorSeparator--tLrL2o9J{display:block;margin:0 8px;width:1px;height:16px;border-left:1px dashed rgba(255,255,255,0.15)}@media (max-height: 860px), (max-width: 1280px){.arrowButton--MHbxtjNQ{width:60px;height:60px;font-size:30px}.desktopSlider--AScHB1Kd{padding-top:98px}.desktopSelector--rYqx7sAu{padding:30px 0;height:98px}}@media (max-height: 700px), (max-width: 1024px){.arrowButton--MHbxtjNQ{width:50px;height:50px;font-size:25px}.desktopSlider--AScHB1Kd{padding-top:86px}.desktopSelector--rYqx7sAu{padding:24px 0;height:86px}}@media (max-height: 640px), (max-width: 900px){.arrowButton--MHbxtjNQ{width:40px;height:40px;font-size:20px}.desktopSlider--AScHB1Kd{padding-top:74px}.desktopSelector--rYqx7sAu{padding:18px 0;height:74px}}",""]),r.locals={desktopSlider:"desktopSlider--AScHB1Kd",filtered:"filtered--OQSTba5B",desktopList:"desktopList--nOFGKtg0",arrowLeft:"arrowLeft--xkZ60z9A",arrowRight:"arrowRight--SFdZw31z",desktopSelector:"desktopSelector--rYqx7sAu",scrollContainer:"scrollContainer--PyCfQg85",filteredList:"filteredList--qgFcXHyE",available:"available--yspNdU90",arrowButton:"arrowButton--MHbxtjNQ",desktopName:"desktopName--M1GlY6Xe",active:"active--gh6q8Xsv",selectorSeparator:"selectorSeparator--tLrL2o9J"};const s=r},1651:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".appLink--XvctrW4d{display:flex;width:80px;height:80px;color:#fff;justify-content:center;align-items:center;position:relative}.appLink--XvctrW4d.circle--ZQ_SHyEN,.appLink--XvctrW4d.square--C8X1afGq{background-color:rgba(255,255,255,0.1)}.appLink--XvctrW4d.small--Mux_F8QK{width:56px;height:56px}@media (max-height: 860px), (max-width: 1280px){.appLink--XvctrW4d.small--Mux_F8QK.appLink--XvctrW4d{transform:scale(0.8)}.appLink--XvctrW4d.small--Mux_F8QK + .appName--wsBI2CZC{font-size:14px;height:21px}}@media (max-height: 700px), (max-width: 1024px){.appLink--XvctrW4d.small--Mux_F8QK.appLink--XvctrW4d{transform:scale(0.7)}.appLink--XvctrW4d.small--Mux_F8QK + .appName--wsBI2CZC{font-size:12px;height:18px}}.appLink--XvctrW4d.circle--ZQ_SHyEN{border-radius:40px}.appLink--XvctrW4d.square--C8X1afGq{border-radius:10px}.addIcon--DHJxfx2l{position:absolute;display:none;font-size:20px;color:white}.circleIcon--NoKu04zb{right:-7px;bottom:5px}.squareIcon--JeHz5VMI{right:-3px;bottom:5px}.appLink--XvctrW4d:hover{color:#fff}.appIcon--K35YGQTl{width:100%}.appName--wsBI2CZC{display:block;font-size:16px;line-height:1.5;height:24px;text-align:center}@media (max-height: 860px), (max-width: 1280px){.appLink--XvctrW4d{transform:scale(0.75)}.appName--wsBI2CZC{font-size:14px;height:21px}}@media (max-height: 700px), (max-width: 1024px){.appLink--XvctrW4d{transform:scale(0.6)}.appName--wsBI2CZC{font-size:12px;height:18px}}@media (max-height: 640px), (max-width: 900px){.appLink--XvctrW4d{transform:scale(0.5)}}",""]),r.locals={appLink:"appLink--XvctrW4d",circle:"circle--ZQ_SHyEN",square:"square--C8X1afGq",small:"small--Mux_F8QK",appName:"appName--wsBI2CZC",addIcon:"addIcon--DHJxfx2l",circleIcon:"circleIcon--NoKu04zb",squareIcon:"squareIcon--JeHz5VMI",appIcon:"appIcon--K35YGQTl"};const s=r},1692:(e,t,i)=>{i.d(t,{I:()=>o,K:()=>a,NS:()=>n});let a=function(e){return e.SEARCH_BY_NAME_KEYWORD="SEARCH_BY_NAME_KEYWORD",e}({});const n="bricks/basic/launchpad",o={en:{SEARCH_BY_NAME_KEYWORD:"Search by name/keyword"},zh:{SEARCH_BY_NAME_KEYWORD:"通过名称/关键字搜索"}}},1759:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".dirContainer--yobNkKHJ{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;position:absolute;left:0;top:0;transition:transform 150ms ease-out}.dirName--S6uKBACL{margin-bottom:40px;font-size:24px;line-height:32px;text-align:center}.dirContent--zQ9gweDn{display:grid;background-color:rgba(18,21,26,0.4);border-radius:20px;width:100%}",""]),r.locals={dirContainer:"dirContainer--yobNkKHJ",dirName:"dirName--S6uKBACL",dirContent:"dirContent--zQ9gweDn"};const s=r},2240:(e,t,i)=>{i.d(t,{A:()=>o});var a=i(9575),n=i(8769);const o=e=>n.createElement("svg",(0,a.A)({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,viewBox:"0 0 16 16"},e),n.createElement("g",{fill:"currentColor",fillRule:"nonzero"},n.createElement("path",{d:"M0 0h4v4H0zM0 6h4v4H0zM6 0h4v4H6zM6 6h4v4H6zM12 0h4v4h-4zM12 6h4v4h-4zM0 12h4v4H0zM6 12h4v4H6zM12 12h4v4h-4z"})))},2535:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".cellWrapper--NydKY8Uu{display:flex;justify-content:center;align-items:center;overflow:hidden}.cellWrapper--NydKY8Uu.positionLeft--VreE62uh{justify-content:flex-start}.cellItem--Se6r55Ne{height:144px;padding:10px;min-width:120px;display:flex;justify-content:space-between;align-items:center;flex-direction:column}.cellItem--Se6r55Ne.small--QJ2gld44{height:110px}.cellItem--Se6r55Ne.active--KANJZK5a{background-color:rgba(0,0,0,0.3);border-radius:6px}@media (max-height: 860px), (max-width: 1280px){.cellItem--Se6r55Ne{height:134px;min-width:100px;justify-content:normal}.cellItem--Se6r55Ne.small--QJ2gld44{height:110px;min-width:76px;justify-content:normal}}@media (max-height: 700px), (max-width: 1024px){.cellItem--Se6r55Ne{height:129px;min-width:80px;justify-content:normal}.cellItem--Se6r55Ne.small--QJ2gld44{height:100px;min-width:60px;justify-content:normal}}",""]),r.locals={cellWrapper:"cellWrapper--NydKY8Uu",positionLeft:"positionLeft--VreE62uh",cellItem:"cellItem--Se6r55Ne",small:"small--QJ2gld44",active:"active--KANJZK5a"};const s=r},2575:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".dirLink--Ezp7L944{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);width:80px;height:80px;color:#fff;justify-content:center;align-items:center;background-color:rgba(0,0,0,0.15);border-radius:10px;font-size:21px;padding:7px}.dirLink--Ezp7L944.small--S5JXqzG8{width:56px;height:56px}.dirLink--Ezp7L944 .appIcon--TdWlSNU2,.dirLink--Ezp7L944 .anticon{width:33px;height:33px}.dirLink--Ezp7L944 .anticon{display:flex;justify-content:center;align-items:center;overflow:hidden}.dirLink--Ezp7L944:hover{color:#fff}.dirName--zvy885aK{display:block;font-size:16px;line-height:1.5;height:24px;text-align:center}@media (max-height: 860px), (max-width: 1280px){.dirLink--Ezp7L944{transform:scale(0.75)}.dirName--zvy885aK{font-size:14px;height:21px}}@media (max-height: 700px), (max-width: 1024px){.dirLink--Ezp7L944{transform:scale(0.6)}.dirName--zvy885aK{font-size:12px;height:18px}}@media (max-height: 640px), (max-width: 900px){.dirLink--Ezp7L944{transform:scale(0.5)}}",""]),r.locals={dirLink:"dirLink--Ezp7L944",small:"small--S5JXqzG8",appIcon:"appIcon--TdWlSNU2",dirName:"dirName--zvy885aK"};const s=r},2867:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".appLink--lI6ZH8_J{display:flex;width:80px;height:80px;color:#fff;justify-content:center;align-items:center;position:relative}.appLink--lI6ZH8_J.circle--CqDDCO2g,.appLink--lI6ZH8_J.square--KkzxvIhL{background-color:rgba(255,255,255,0.1)}.appLink--lI6ZH8_J.small--oHLIwdUo{width:56px;height:56px}@media (max-height: 860px), (max-width: 1280px){.appLink--lI6ZH8_J.small--oHLIwdUo.appLink--lI6ZH8_J{transform:scale(0.8)}.appLink--lI6ZH8_J.small--oHLIwdUo + .appName--YMtvoP3g{font-size:14px;height:21px}}@media (max-height: 700px), (max-width: 1024px){.appLink--lI6ZH8_J.small--oHLIwdUo.appLink--lI6ZH8_J{transform:scale(0.7)}.appLink--lI6ZH8_J.small--oHLIwdUo + .appName--YMtvoP3g{font-size:12px;height:18px}}.appLink--lI6ZH8_J.circle--CqDDCO2g{border-radius:40px}.appLink--lI6ZH8_J.square--KkzxvIhL{border-radius:10px}.appLink--lI6ZH8_J.installing--wQF5JcJn{opacity:0.5}.appLink--lI6ZH8_J:hover .addIcon--EM1rukmN{display:block}.addIcon--EM1rukmN{position:absolute;font-size:20px;color:white;display:none}.circleIcon--C6tDgTcK{right:-7px;bottom:5px}.squareIcon--Vl9EHU0t{right:-3px;bottom:5px}.appLink--lI6ZH8_J:hover{color:#fff;opacity:0.6}.appIcon--CfrDjC_d{width:100%}.appName--YMtvoP3g{display:block;font-size:16px;line-height:1.5;height:24px;text-align:center}@media (max-height: 860px), (max-width: 1280px){.appLink--lI6ZH8_J{transform:scale(0.75)}.appName--YMtvoP3g{font-size:14px;height:21px}}@media (max-height: 700px), (max-width: 1024px){.appLink--lI6ZH8_J{transform:scale(0.6)}.appName--YMtvoP3g{font-size:12px;height:18px}}@media (max-height: 640px), (max-width: 900px){.appLink--lI6ZH8_J{transform:scale(0.5)}}",""]),r.locals={appLink:"appLink--lI6ZH8_J",circle:"circle--CqDDCO2g",square:"square--KkzxvIhL",small:"small--oHLIwdUo",appName:"appName--YMtvoP3g",installing:"installing--wQF5JcJn",addIcon:"addIcon--EM1rukmN",circleIcon:"circleIcon--C6tDgTcK",squareIcon:"squareIcon--Vl9EHU0t",appIcon:"appIcon--CfrDjC_d"};const s=r},3031:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".launchpad--jiWBelji{background:rgba(36,41,51,0.93);position:fixed;top:0;bottom:0;left:0;right:0;z-index:5000;overflow:hidden;overflow-y:auto;color:#fff;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.launchpadContainer--_vrKLUwW{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden}.fadeEnter--lOmmReOY{opacity:0;transform:scale(0.95)}.fadeEnterActive--PRkux5Hj{opacity:1;transform:translateX(0);transition:opacity 100ms ease-out,transform 100ms ease-out}.fadeExit--egWs3z_Z{opacity:1}.fadeExitActive--Emt0ZO0f{opacity:0;transform:scale(0.95);transition:opacity 100ms ease-out,transform 100ms ease-out}.fadeExitDone--KS8Y8j_i{display:none}.loadingWrapper--a0uhMogW{display:flex;justify-content:center;align-items:center;height:100%;font-size:58px;color:var(--theme-cyan-color)}",""]),r.locals={launchpad:"launchpad--jiWBelji",launchpadContainer:"launchpadContainer--_vrKLUwW",fadeEnter:"fadeEnter--lOmmReOY",fadeEnterActive:"fadeEnterActive--PRkux5Hj",fadeExit:"fadeExit--egWs3z_Z",fadeExitActive:"fadeExitActive--Emt0ZO0f",fadeExitDone:"fadeExitDone--KS8Y8j_i",loadingWrapper:"loadingWrapper--a0uhMogW"};const s=r},4739:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".appear--fTt52aoG{opacity:0;transform:scale(1.05)}.appearActive--VTTHohOa{opacity:1;transform:translateX(0);transition:opacity 100ms ease-out,transform 100ms ease-out}.exit--xJVirpkU{opacity:1}.exitActive--JBRp0ETG{opacity:0;transform:scale(1.05);transition:opacity 100ms ease-out,transform 100ms ease-out}",""]),r.locals={appear:"appear--fTt52aoG",appearActive:"appearActive--VTTHohOa",exit:"exit--xJVirpkU",exitActive:"exitActive--JBRp0ETG"};const s=r},6087:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,'.searchBar--k7ys_9bU{display:flex;justify-content:center;align-items:flex-end;height:10%}.searchBar--k7ys_9bU .inputAffixWrapper--r90ghnJb{position:relative;width:100%;min-width:0;padding:4px 11px;color:var(--antd-input-color);font-size:14px;line-height:1.5715;background-image:none;display:inline-flex;height:42px;border-radius:21px;padding-left:54px;padding-right:4px;border:2px solid rgba(255,255,255,0.1);background-color:rgba(0,0,0,0.06);transition:padding-left 150ms ease-out;box-sizing:border-box}.searchBar--k7ys_9bU .inputAffixWrapper--r90ghnJb:hover{border-color:#0071eb;border-right-width:2px!important}.searchBar--k7ys_9bU .inputAffixWrapper--r90ghnJb .antInputPrefix--vr3ceVIR{width:30px;margin-left:0;margin-right:6px;display:flex;justify-content:center;color:rgba(255,255,255,0.65);flex:none;align-items:center;box-sizing:border-box}.searchBar--k7ys_9bU .inputAffixWrapper--r90ghnJb::before{width:0;visibility:hidden;content:"\\a0"}.searchBar--k7ys_9bU.focus--rcoZCXD5 .inputAffixWrapper--r90ghnJb,.searchBar--k7ys_9bU .inputAffixWrapperFocused--ym85u9fT{padding-left:4px;border-color:#2893f7;border-right-width:2px!important}.inputContainer--spZyJlDc{width:300px}.input--LvcE67vF{padding:0;border:none;outline:none;color:#fff;background-color:transparent;text-overflow:ellipsis;border-radius:3px}.input--LvcE67vF::placeholder{color:rgba(255,255,255,0.25)}',""]),r.locals={searchBar:"searchBar--k7ys_9bU",inputAffixWrapper:"inputAffixWrapper--r90ghnJb",antInputPrefix:"antInputPrefix--vr3ceVIR",focus:"focus--rcoZCXD5",inputAffixWrapperFocused:"inputAffixWrapperFocused--ym85u9fT",inputContainer:"inputContainer--spZyJlDc",input:"input--LvcE67vF"};const s=r},8095:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".desktop--ou0P6iGf{display:grid;grid-template-columns:repeat(8,1fr)}.desktop--ou0P6iGf .cellWrapper{justify-content:flex-start}.title--waO4P2iB{color:#fff;font-size:16px;padding-bottom:6px}.visited--tdY4xwnJ{padding-bottom:24px;margin-bottom:20px;border-bottom:1px rgba(255,255,255,0.25) solid}.favorites--lfUhBPuB .ant-spin-blur{opacity:1}.favorites--lfUhBPuB .ant-spin-blur::after{opacity:0}.modeWrapper--L03hs70G{height:0}.modeWrapper--L03hs70G .header--sdla4qan{display:flex;justify-content:space-between}.modeWrapper--L03hs70G .section--zyFAea1p{padding:10px 30px 20px}.modeWrapper--L03hs70G .modeIcon--CE2TFixF{margin-left:15px;padding:3px;border-radius:50%;opacity:0.8;background:rgba(255,255,255,0.1)}.modeWrapper--L03hs70G .modeIcon--CE2TFixF:hover{opacity:1}.modeWrapper--L03hs70G .emptyTips--IvkqCJZN{font-size:16px;line-height:24px}.modeWrapper--L03hs70G .emptyTips--IvkqCJZN a{color:#52a6f9}.modeWrapper--L03hs70G .emptyTips--IvkqCJZN a:hover{color:var(--antd-link-hover-color)}.spin--wMvBU9Kg{color:#8c8c8c;width:100%;height:200px;line-height:200px;display:flex;align-items:center;justify-content:center}.settingsContainer--Z_f8juq_ a{color:#fff}.settingsContainer--Z_f8juq_ .settings--nnLSnU29{cursor:pointer;margin-right:10px;color:rgba(255,255,255,0.7);font-size:13px;transition-duration:0.8s;transition-property:transform}.settingsContainer--Z_f8juq_:hover .settings--nnLSnU29{transform:rotate(180deg)}.favoriteContainer--CjB0c4Dt{display:grid;grid-template-columns:repeat(5,1fr);gap:2.5rem 7%}@media (max-height: 860px), (max-width: 1280px){.favoriteContainer--CjB0c4Dt{gap:1.7rem 4%}}@media (max-height: 720px), (max-width: 1024px){.favoriteContainer--CjB0c4Dt{gap:1rem 3%}.visited--tdY4xwnJ{padding-bottom:18px;margin-bottom:15px}}@media (max-height: 640px), (max-width: 900px){.favoriteContainer--CjB0c4Dt{gap:0.8rem 2%}}",""]),r.locals={desktop:"desktop--ou0P6iGf",title:"title--waO4P2iB",visited:"visited--tdY4xwnJ",favorites:"favorites--lfUhBPuB",modeWrapper:"modeWrapper--L03hs70G",header:"header--sdla4qan",section:"section--zyFAea1p",modeIcon:"modeIcon--CE2TFixF",emptyTips:"emptyTips--IvkqCJZN",spin:"spin--wMvBU9Kg",settingsContainer:"settingsContainer--Z_f8juq_",settings:"settings--nnLSnU29",favoriteContainer:"favoriteContainer--CjB0c4Dt"};const s=r},8430:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".scrollContainer--dNX8Cn8d::-webkit-scrollbar{width:6px}.scrollContainer--dNX8Cn8d::-webkit-scrollbar-thumb{visibility:hidden;border-radius:3px;background-color:rgba(69,69,73,0.45)}.scrollContainer--dNX8Cn8d::-webkit-scrollbar-track{visibility:hidden;width:12px;background-color:rgb(140,140,140,0.2)}.scrollContainer--dNX8Cn8d:hover{background:rgba(18,21,26,0.4);box-shadow:0px 5px 10px 4px rgba(0,0,0,0.1);border-radius:6px}.scrollContainer--dNX8Cn8d:hover::-webkit-scrollbar-thumb,.scrollContainer--dNX8Cn8d:hover::-webkit-scrollbar-track{visibility:visible}.siteMapContainer--oPV4617W{padding-top:10px;column-count:5}.siteMapContainer--oPV4617W .groupWrapper--vg8DzjpO{margin:0 30px;page-break-inside:avoid;break-inside:avoid}.siteMapContainer--oPV4617W .groupWrapper--vg8DzjpO .group--ojLUh6U2{margin:0;padding:9px 0 58px}.siteMapContainer--oPV4617W .groupWrapper--vg8DzjpO .item--UDV8jW76{list-style-type:none;font-size:12px;padding:5px 0px}.siteMapContainer--oPV4617W .groupWrapper--vg8DzjpO .item--UDV8jW76 > eo-link{cursor:pointer;color:rgba(255,255,255,0.65)}.siteMapContainer--oPV4617W .groupWrapper--vg8DzjpO .item--UDV8jW76 > eo-link:hover{color:var(--antd-link-hover-color)}",""]),r.locals={scrollContainer:"scrollContainer--dNX8Cn8d",siteMapContainer:"siteMapContainer--oPV4617W",groupWrapper:"groupWrapper--vg8DzjpO",group:"group--ojLUh6U2",item:"item--UDV8jW76"};const s=r},8479:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(6758),n=i.n(a),o=i(935),r=i.n(o)()(n());r.push([e.id,".desktop--LCHJxkdK{flex:1;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(4,1fr)}",""]),r.locals={desktop:"desktop--LCHJxkdK"};const s=r}}]);
2
+ //# sourceMappingURL=3944.a7f7cffe.js.map