ele-admin-plus 1.2.0-beta.1 → 1.2.0-beta.3

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 (856) hide show
  1. package/README.md +1 -1
  2. package/es/components.d.ts +6 -6
  3. package/es/core-components.d.ts +47 -45
  4. package/es/core-components.js +102 -98
  5. package/es/core-export.d.ts +4 -3
  6. package/es/core-export.js +5 -5
  7. package/es/ele-admin-layout/components/layout-skeleton.d.ts +10 -0
  8. package/es/ele-admin-layout/components/layout-skeleton.js +47 -0
  9. package/{lib/ele-pro-layout/components/pro-tabs.d.ts → es/ele-admin-layout/components/layout-tabs.d.ts} +21 -33
  10. package/es/{ele-pro-layout/components/pro-tabs.js → ele-admin-layout/components/layout-tabs.js} +47 -80
  11. package/es/{ele-pro-layout/components/header-tool.js → ele-admin-layout/components/layout-tool.js} +3 -3
  12. package/es/ele-admin-layout/index.d.ts +265 -0
  13. package/es/ele-admin-layout/index.js +667 -0
  14. package/es/ele-admin-layout/props.d.ts +159 -0
  15. package/es/ele-admin-layout/props.js +147 -0
  16. package/es/ele-admin-layout/style/css-var.scss +14 -0
  17. package/es/ele-admin-layout/style/header.scss +192 -0
  18. package/es/ele-admin-layout/style/index.d.ts +1 -0
  19. package/es/ele-admin-layout/style/index.js +9 -0
  20. package/es/ele-admin-layout/style/index.scss +302 -0
  21. package/es/ele-admin-layout/style/sidebar.scss +185 -0
  22. package/{lib/ele-pro-layout → es/ele-admin-layout}/style/tabs.scss +15 -10
  23. package/es/ele-admin-layout/types.d.ts +52 -0
  24. package/es/ele-alert/index.d.ts +1 -1
  25. package/es/ele-alert/props.d.ts +1 -1
  26. package/es/ele-alert/style/index.d.ts +1 -0
  27. package/es/ele-alert/style/index.js +1 -1
  28. package/es/ele-alert/style/index.scss +1 -1
  29. package/es/ele-app/components/message-body.d.ts +1 -1
  30. package/es/ele-app/el.d.ts +208 -98
  31. package/es/ele-app/plus.d.ts +105 -33
  32. package/es/ele-app/style/common/index.d.ts +1 -0
  33. package/es/ele-app/style/common/index.js +1 -1
  34. package/es/ele-app/style/index.d.ts +1 -0
  35. package/es/ele-app/style/index.js +4 -4
  36. package/es/ele-app/style/message/index.d.ts +1 -0
  37. package/es/ele-app/style/message/index.js +2 -2
  38. package/es/ele-app/style/message/index.scss +1 -1
  39. package/es/ele-app/style/overwrite/autocomplete/index.d.ts +1 -0
  40. package/es/ele-app/style/overwrite/autocomplete/index.js +1 -1
  41. package/es/ele-app/style/overwrite/autocomplete/index.scss +1 -1
  42. package/es/ele-app/style/overwrite/backtop/index.d.ts +1 -0
  43. package/es/ele-app/style/overwrite/backtop/index.js +1 -1
  44. package/es/ele-app/style/overwrite/backtop/index.scss +1 -1
  45. package/es/ele-app/style/overwrite/cascader/index.d.ts +1 -0
  46. package/es/ele-app/style/overwrite/cascader/index.js +1 -1
  47. package/es/ele-app/style/overwrite/cascader/index.scss +1 -1
  48. package/es/ele-app/style/overwrite/checkbox/index.d.ts +1 -0
  49. package/es/ele-app/style/overwrite/checkbox/index.js +1 -1
  50. package/es/ele-app/style/overwrite/checkbox/index.scss +5 -3
  51. package/es/ele-app/style/overwrite/color-picker/index.d.ts +1 -0
  52. package/es/ele-app/style/overwrite/color-picker/index.js +1 -1
  53. package/es/ele-app/style/overwrite/css-var.scss +0 -2
  54. package/es/ele-app/style/overwrite/date-picker/index.d.ts +1 -0
  55. package/es/ele-app/style/overwrite/date-picker/index.js +1 -1
  56. package/es/ele-app/style/overwrite/date-picker/index.scss +17 -17
  57. package/es/ele-app/style/overwrite/descriptions/index.d.ts +1 -0
  58. package/es/ele-app/style/overwrite/descriptions/index.js +1 -1
  59. package/es/ele-app/style/overwrite/descriptions/index.scss +4 -0
  60. package/es/ele-app/style/overwrite/image-viewer/index.d.ts +1 -0
  61. package/es/ele-app/style/overwrite/image-viewer/index.js +1 -1
  62. package/es/ele-app/style/overwrite/index.d.ts +1 -0
  63. package/es/ele-app/style/overwrite/index.js +18 -18
  64. package/es/ele-app/style/overwrite/index.scss +0 -1
  65. package/es/ele-app/style/overwrite/input/index.d.ts +1 -0
  66. package/es/ele-app/style/overwrite/input/index.js +1 -1
  67. package/es/ele-app/style/overwrite/input/index.scss +7 -9
  68. package/es/ele-app/style/overwrite/message-box/index.d.ts +1 -0
  69. package/es/ele-app/style/overwrite/message-box/index.js +2 -2
  70. package/es/ele-app/style/overwrite/message-box/index.scss +1 -1
  71. package/es/ele-app/style/overwrite/notification/index.d.ts +1 -0
  72. package/es/ele-app/style/overwrite/notification/index.js +2 -2
  73. package/es/ele-app/style/overwrite/notification/index.scss +1 -1
  74. package/es/ele-app/style/overwrite/popper/index.d.ts +1 -0
  75. package/es/ele-app/style/overwrite/popper/index.js +1 -1
  76. package/es/ele-app/style/overwrite/radio/index.d.ts +1 -0
  77. package/es/ele-app/style/overwrite/radio/index.js +1 -1
  78. package/es/ele-app/style/overwrite/radio/index.scss +4 -2
  79. package/es/ele-app/style/overwrite/select/index.d.ts +1 -0
  80. package/es/ele-app/style/overwrite/select/index.js +1 -1
  81. package/es/ele-app/style/overwrite/select/index.scss +1 -1
  82. package/es/ele-app/style/overwrite/tag/index.d.ts +1 -0
  83. package/es/ele-app/style/overwrite/tag/index.js +1 -1
  84. package/es/ele-app/style/overwrite/tag/index.scss +1 -1
  85. package/es/ele-app/style/overwrite/tree/index.d.ts +1 -0
  86. package/es/ele-app/style/overwrite/tree/index.js +1 -1
  87. package/es/ele-app/style/overwrite/tree/index.scss +3 -3
  88. package/es/ele-app/style/overwrite/tree-select/index.d.ts +1 -0
  89. package/es/ele-app/style/overwrite/tree-select/index.js +1 -1
  90. package/es/ele-app/style/overwrite/tree-select/index.scss +1 -1
  91. package/es/ele-app/style/scrollbar/index.d.ts +1 -0
  92. package/es/ele-app/style/scrollbar/index.js +1 -1
  93. package/es/ele-avatar-group/index.d.ts +2 -2
  94. package/es/ele-avatar-group/props.d.ts +1 -1
  95. package/es/ele-avatar-group/style/index.d.ts +1 -0
  96. package/es/ele-avatar-group/style/index.js +3 -3
  97. package/es/ele-backtop/index.d.ts +50 -0
  98. package/es/ele-backtop/index.js +104 -0
  99. package/es/ele-backtop/props.d.ts +36 -0
  100. package/es/ele-backtop/props.js +31 -0
  101. package/es/ele-backtop/style/css-var.scss +8 -0
  102. package/es/ele-backtop/style/index.d.ts +1 -0
  103. package/es/ele-backtop/style/index.js +1 -0
  104. package/es/ele-backtop/style/index.scss +34 -0
  105. package/es/ele-bar-code/index.d.ts +2 -2
  106. package/es/ele-bar-code/props.d.ts +2 -2
  107. package/es/ele-bar-code/style/index.d.ts +0 -0
  108. package/es/ele-bar-code/style/index.js +1 -1
  109. package/es/ele-basic-select/index.d.ts +7 -7
  110. package/es/ele-basic-select/props.d.ts +1 -1
  111. package/es/ele-basic-select/style/index.d.ts +1 -0
  112. package/es/ele-basic-select/style/index.js +5 -5
  113. package/es/ele-basic-select/style/index.scss +3 -3
  114. package/es/ele-bottom-bar/style/index.d.ts +1 -0
  115. package/es/ele-bottom-bar/style/index.js +1 -1
  116. package/es/ele-breadcrumb/index.d.ts +11 -3
  117. package/es/ele-breadcrumb/index.js +30 -6
  118. package/es/ele-breadcrumb/props.d.ts +5 -2
  119. package/es/ele-breadcrumb/props.js +4 -0
  120. package/es/ele-breadcrumb/style/index.d.ts +1 -0
  121. package/es/ele-breadcrumb/style/index.js +3 -3
  122. package/es/ele-breadcrumb/types.d.ts +13 -2
  123. package/es/ele-card/index.d.ts +27 -6
  124. package/es/ele-card/index.js +89 -11
  125. package/es/ele-card/props.d.ts +14 -1
  126. package/es/ele-card/props.js +11 -0
  127. package/es/ele-card/style/index.d.ts +1 -0
  128. package/es/ele-card/style/index.js +2 -1
  129. package/es/ele-card/style/index.scss +43 -3
  130. package/es/ele-check-card/components/card-item.d.ts +1 -1
  131. package/es/ele-check-card/index.d.ts +1 -1
  132. package/es/ele-check-card/index.js +5 -4
  133. package/es/ele-check-card/props.d.ts +2 -2
  134. package/es/ele-check-card/style/index.d.ts +1 -0
  135. package/es/ele-check-card/style/index.js +3 -3
  136. package/es/ele-check-card/style/index.scss +4 -4
  137. package/es/ele-config-provider/index.d.ts +4 -4
  138. package/es/ele-config-provider/props.d.ts +4 -8
  139. package/es/ele-config-provider/props.js +0 -2
  140. package/es/ele-config-provider/receiver.d.ts +1 -11
  141. package/es/ele-config-provider/receiver.js +2 -15
  142. package/es/ele-config-provider/style/index.d.ts +0 -0
  143. package/es/ele-config-provider/style/index.js +1 -1
  144. package/es/ele-config-provider/types.d.ts +0 -19
  145. package/es/ele-copyable/index.d.ts +5 -5
  146. package/es/ele-copyable/index.js +1 -25
  147. package/es/ele-copyable/props.d.ts +2 -2
  148. package/es/ele-copyable/style/index.d.ts +1 -0
  149. package/es/ele-copyable/style/index.js +3 -3
  150. package/es/ele-count-up/props.d.ts +1 -1
  151. package/es/ele-count-up/style/index.d.ts +0 -0
  152. package/es/ele-count-up/style/index.js +1 -1
  153. package/es/ele-cropper/components/cropper-tools.d.ts +1 -1
  154. package/es/ele-cropper/index.d.ts +6 -6
  155. package/es/ele-cropper/index.js +1 -1
  156. package/es/ele-cropper/props.d.ts +1 -1
  157. package/es/ele-cropper/style/index.d.ts +1 -0
  158. package/es/ele-cropper/style/index.js +6 -6
  159. package/es/ele-cropper-modal/index.d.ts +1 -1
  160. package/es/ele-cropper-modal/props.d.ts +1 -1
  161. package/es/ele-cropper-modal/style/index.d.ts +1 -0
  162. package/es/ele-cropper-modal/style/index.js +2 -2
  163. package/es/ele-dashboard/props.d.ts +1 -1
  164. package/es/ele-dashboard/style/index.d.ts +1 -0
  165. package/es/ele-dashboard/style/index.js +1 -1
  166. package/es/ele-data-table/index.d.ts +31 -31
  167. package/es/ele-data-table/index.js +7 -2
  168. package/es/ele-data-table/props.d.ts +21 -21
  169. package/es/ele-data-table/style/css-var.scss +58 -0
  170. package/es/ele-data-table/style/index.d.ts +1 -0
  171. package/es/ele-data-table/style/index.js +4 -4
  172. package/es/ele-data-table/style/index.scss +132 -24
  173. package/es/ele-data-table/util.d.ts +21 -10
  174. package/es/ele-data-table/util.js +54 -27
  175. package/es/ele-dot/props.d.ts +1 -1
  176. package/es/ele-dot/style/index.d.ts +1 -0
  177. package/es/ele-dot/style/index.js +1 -1
  178. package/es/ele-drawer/index.d.ts +4 -4
  179. package/es/ele-drawer/index.js +3 -3
  180. package/es/ele-drawer/style/index.d.ts +1 -0
  181. package/es/ele-drawer/style/index.js +3 -3
  182. package/es/ele-drawer/style/index.scss +2 -2
  183. package/es/ele-dropdown/index.d.ts +15 -15
  184. package/es/ele-dropdown/index.js +7 -3
  185. package/es/ele-dropdown/props.d.ts +5 -5
  186. package/es/ele-dropdown/style/index.d.ts +1 -0
  187. package/es/ele-dropdown/style/index.js +6 -6
  188. package/es/ele-dropdown/style/index.scss +1 -1
  189. package/es/ele-edit-tag/index.d.ts +17 -17
  190. package/es/ele-edit-tag/index.js +27 -21
  191. package/es/ele-edit-tag/props.d.ts +2 -2
  192. package/es/ele-edit-tag/style/index.d.ts +1 -0
  193. package/es/ele-edit-tag/style/index.js +5 -5
  194. package/es/ele-ellipsis/index.d.ts +3 -3
  195. package/es/ele-ellipsis/props.d.ts +1 -1
  196. package/es/ele-ellipsis/style/index.d.ts +1 -0
  197. package/es/ele-ellipsis/style/index.js +3 -3
  198. package/es/ele-file-list/components/file-grid-item.d.ts +3 -3
  199. package/es/ele-file-list/components/file-grid.d.ts +3 -3
  200. package/es/ele-file-list/components/file-grid.js +2 -2
  201. package/es/ele-file-list/components/file-table-item.d.ts +3 -3
  202. package/es/ele-file-list/components/file-table.d.ts +4 -4
  203. package/es/ele-file-list/components/file-table.js +2 -2
  204. package/es/ele-file-list/index.d.ts +2 -2
  205. package/es/ele-file-list/props.d.ts +4 -4
  206. package/es/ele-file-list/style/index.d.ts +1 -0
  207. package/es/ele-file-list/style/index.js +2 -2
  208. package/es/ele-file-list/style/index.scss +7 -7
  209. package/es/ele-file-list-tool/style/index.d.ts +0 -0
  210. package/es/ele-file-list-tool/style/index.js +1 -1
  211. package/es/ele-icon-select/components/icon-grid.d.ts +2 -2
  212. package/es/ele-icon-select/index.d.ts +22 -20
  213. package/es/ele-icon-select/index.js +1 -1
  214. package/es/ele-icon-select/props.d.ts +2 -2
  215. package/es/ele-icon-select/style/index.d.ts +1 -0
  216. package/es/ele-icon-select/style/index.js +6 -6
  217. package/es/ele-icon-select/style/index.scss +5 -5
  218. package/es/ele-loading/index.d.ts +1 -1
  219. package/es/ele-loading/props.d.ts +1 -1
  220. package/es/ele-loading/style/index.d.ts +1 -0
  221. package/es/ele-loading/style/index.js +2 -2
  222. package/es/ele-map-picker/components/map-view.d.ts +60 -48
  223. package/es/ele-map-picker/components/map-view.js +327 -253
  224. package/es/ele-map-picker/index.d.ts +25 -21
  225. package/es/ele-map-picker/index.js +19 -10
  226. package/es/ele-map-picker/props.d.ts +12 -4
  227. package/es/ele-map-picker/props.js +5 -1
  228. package/es/ele-map-picker/style/index.d.ts +1 -0
  229. package/es/ele-map-picker/style/index.js +8 -8
  230. package/es/ele-map-picker/style/index.scss +21 -7
  231. package/es/ele-map-picker/types.d.ts +20 -46
  232. package/es/ele-menus/index.d.ts +9 -10
  233. package/es/ele-menus/index.js +36 -16
  234. package/es/ele-menus/props.d.ts +4 -4
  235. package/es/ele-menus/props.js +1 -0
  236. package/es/ele-menus/style/css-var.scss +2 -6
  237. package/es/ele-menus/style/index.d.ts +1 -0
  238. package/es/ele-menus/style/index.js +8 -8
  239. package/es/ele-menus/style/index.scss +122 -18
  240. package/es/ele-menus/types.d.ts +11 -0
  241. package/es/ele-menus/util.d.ts +3 -2
  242. package/es/ele-menus/util.js +4 -3
  243. package/es/ele-modal/index.d.ts +9 -11
  244. package/es/ele-modal/index.js +6 -5
  245. package/es/ele-modal/props.d.ts +2 -2
  246. package/es/ele-modal/style/index.d.ts +1 -0
  247. package/es/ele-modal/style/index.js +3 -3
  248. package/es/ele-modal/style/index.scss +1 -1
  249. package/es/ele-modal/util.d.ts +1 -1
  250. package/es/ele-page/style/index.d.ts +1 -0
  251. package/es/ele-page/style/index.js +1 -1
  252. package/es/ele-page/style/index.scss +8 -7
  253. package/es/ele-pagination/index.d.ts +10 -0
  254. package/es/ele-pagination/index.js +18 -2
  255. package/es/ele-pagination/props.d.ts +6 -1
  256. package/es/ele-pagination/props.js +5 -0
  257. package/es/ele-pagination/style/index.d.ts +1 -0
  258. package/es/ele-pagination/style/index.js +2 -2
  259. package/es/ele-pagination/style/index.scss +8 -1
  260. package/es/ele-popconfirm/index.d.ts +72 -72
  261. package/es/ele-popconfirm/props.d.ts +29 -29
  262. package/es/ele-popconfirm/style/index.d.ts +1 -0
  263. package/es/ele-popconfirm/style/index.js +4 -4
  264. package/es/ele-popover/index.d.ts +63 -63
  265. package/es/ele-popover/props.d.ts +2 -2
  266. package/es/ele-popover/style/index.d.ts +1 -0
  267. package/es/ele-popover/style/index.js +1 -1
  268. package/es/ele-printer/props.d.ts +1 -1
  269. package/es/ele-printer/style/index.d.ts +1 -0
  270. package/es/ele-printer/style/index.js +1 -1
  271. package/es/ele-printer/style/index.scss +5 -0
  272. package/es/ele-pro-layout/components/pro-iframe.d.ts +2 -2
  273. package/es/ele-pro-layout/components/pro-iframe.js +10 -20
  274. package/es/ele-pro-layout/index.d.ts +219 -228
  275. package/es/ele-pro-layout/index.js +778 -782
  276. package/es/ele-pro-layout/props.d.ts +118 -107
  277. package/es/ele-pro-layout/props.js +109 -104
  278. package/es/ele-pro-layout/style/index.d.ts +1 -0
  279. package/es/ele-pro-layout/style/index.js +2 -10
  280. package/es/ele-pro-layout/style/index.scss +40 -11
  281. package/es/ele-pro-layout/types.d.ts +48 -110
  282. package/es/ele-pro-layout/util.d.ts +33 -49
  283. package/es/ele-pro-layout/util.js +65 -187
  284. package/es/ele-pro-table/components/table-tools.d.ts +6 -6
  285. package/es/ele-pro-table/components/table-tools.js +8 -8
  286. package/es/ele-pro-table/components/tool-column-list.d.ts +1 -1
  287. package/es/ele-pro-table/components/tool-column.d.ts +2 -2
  288. package/es/ele-pro-table/components/tool-column.js +1 -0
  289. package/es/ele-pro-table/components/tool-export.d.ts +10 -10
  290. package/es/ele-pro-table/components/tool-export.js +10 -9
  291. package/es/ele-pro-table/components/tool-print-body-cell.d.ts +3 -3
  292. package/es/ele-pro-table/components/tool-print-header-cell.d.ts +3 -3
  293. package/es/ele-pro-table/components/tool-print.d.ts +9 -9
  294. package/es/ele-pro-table/components/tool-print.js +19 -15
  295. package/es/ele-pro-table/index.d.ts +46 -46
  296. package/es/ele-pro-table/index.js +54 -57
  297. package/es/ele-pro-table/props.d.ts +22 -22
  298. package/es/ele-pro-table/style/index.d.ts +1 -0
  299. package/es/ele-pro-table/style/index.js +20 -20
  300. package/es/ele-pro-table/style/index.scss +17 -3
  301. package/es/ele-pro-table/types.d.ts +6 -2
  302. package/es/ele-pro-table/util.d.ts +2 -2
  303. package/es/ele-pro-table/util.js +8 -5
  304. package/es/ele-qr-code/props.d.ts +1 -1
  305. package/es/ele-qr-code/style/index.d.ts +0 -0
  306. package/es/ele-qr-code/style/index.js +1 -1
  307. package/es/ele-qr-code/util.d.ts +1 -1
  308. package/es/ele-qr-code-svg/style/index.d.ts +0 -0
  309. package/es/ele-qr-code-svg/style/index.js +1 -1
  310. package/es/ele-segmented/index.js +4 -1
  311. package/es/ele-segmented/props.d.ts +1 -1
  312. package/es/ele-segmented/style/index.d.ts +1 -0
  313. package/es/ele-segmented/style/index.js +4 -4
  314. package/es/ele-split-panel/index.d.ts +3 -3
  315. package/es/ele-split-panel/index.js +1 -1
  316. package/es/ele-split-panel/style/index.d.ts +1 -0
  317. package/es/ele-split-panel/style/index.js +2 -2
  318. package/es/ele-steps/index.js +4 -1
  319. package/es/ele-steps/props.d.ts +1 -1
  320. package/es/ele-steps/style/index.d.ts +1 -0
  321. package/es/ele-steps/style/index.js +3 -3
  322. package/es/ele-steps/style/index.scss +4 -4
  323. package/es/ele-tab-tool/style/index.d.ts +0 -0
  324. package/es/ele-tab-tool/style/index.js +1 -1
  325. package/es/ele-tab-wrap/index.d.ts +1 -1
  326. package/es/ele-tab-wrap/index.js +24 -2
  327. package/es/ele-tab-wrap/props.d.ts +1 -1
  328. package/es/ele-tab-wrap/style/index.d.ts +0 -0
  329. package/es/ele-tab-wrap/style/index.js +1 -1
  330. package/es/ele-table/index.d.ts +2 -2
  331. package/es/ele-table/props.d.ts +1 -1
  332. package/es/ele-table/style/index.d.ts +1 -0
  333. package/es/ele-table/style/index.js +1 -1
  334. package/es/ele-table/style/index.scss +1 -1
  335. package/es/ele-table-select/index.d.ts +20 -20
  336. package/es/ele-table-select/index.js +1 -1
  337. package/es/ele-table-select/props.d.ts +3 -3
  338. package/es/ele-table-select/style/index.d.ts +1 -0
  339. package/es/ele-table-select/style/index.js +3 -3
  340. package/es/ele-tabs/components/tab-title.d.ts +5 -5
  341. package/es/ele-tabs/components/tab-title.js +15 -9
  342. package/es/ele-tabs/index.d.ts +31 -30
  343. package/es/ele-tabs/index.js +96 -88
  344. package/es/ele-tabs/props.d.ts +11 -7
  345. package/es/ele-tabs/props.js +2 -0
  346. package/es/ele-tabs/style/css-var.scss +1 -2
  347. package/es/ele-tabs/style/index.d.ts +1 -0
  348. package/es/ele-tabs/style/index.js +5 -4
  349. package/es/ele-tabs/style/index.scss +8 -8
  350. package/es/ele-tabs/types.d.ts +10 -0
  351. package/es/ele-text/props.d.ts +2 -2
  352. package/es/ele-text/style/index.d.ts +1 -0
  353. package/es/ele-text/style/index.js +2 -2
  354. package/es/ele-tool/style/index.d.ts +1 -0
  355. package/es/ele-tool/style/index.js +2 -2
  356. package/es/ele-tool/style/index.scss +1 -1
  357. package/es/ele-toolbar/props.d.ts +2 -2
  358. package/es/ele-toolbar/style/index.d.ts +1 -0
  359. package/es/ele-toolbar/style/index.js +2 -2
  360. package/es/ele-tooltip/index.d.ts +53 -53
  361. package/es/ele-tooltip/props.d.ts +1 -1
  362. package/es/ele-tooltip/style/index.d.ts +1 -0
  363. package/es/ele-tooltip/style/index.js +2 -2
  364. package/es/ele-tour/index.d.ts +2 -2
  365. package/es/ele-tour/props.d.ts +1 -1
  366. package/es/ele-tour/style/index.d.ts +1 -0
  367. package/es/ele-tour/style/index.js +3 -3
  368. package/es/ele-tour/style/index.scss +4 -4
  369. package/es/ele-tour/util.d.ts +1 -1
  370. package/es/ele-tree-select/index.d.ts +11 -11
  371. package/es/ele-tree-select/props.d.ts +3 -3
  372. package/es/ele-tree-select/style/index.d.ts +1 -0
  373. package/es/ele-tree-select/style/index.js +3 -3
  374. package/es/ele-tree-select/util.d.ts +1 -1
  375. package/es/ele-upload-list/components/list-item.d.ts +2 -2
  376. package/es/ele-upload-list/index.d.ts +2 -2
  377. package/es/ele-upload-list/props.d.ts +2 -2
  378. package/es/ele-upload-list/style/index.d.ts +1 -0
  379. package/es/ele-upload-list/style/index.js +6 -6
  380. package/es/ele-virtual-table/components/body-cell.d.ts +10 -10
  381. package/es/ele-virtual-table/components/body-cell.js +1 -1
  382. package/es/ele-virtual-table/components/body-row.d.ts +6 -6
  383. package/es/ele-virtual-table/components/body-row.js +2 -2
  384. package/es/ele-virtual-table/components/cell-filter.d.ts +2 -2
  385. package/es/ele-virtual-table/components/cell-filter.js +1 -0
  386. package/es/ele-virtual-table/components/expand-row.d.ts +1 -1
  387. package/es/ele-virtual-table/components/footer-row.d.ts +2 -2
  388. package/es/ele-virtual-table/components/header-cell.d.ts +4 -4
  389. package/es/ele-virtual-table/components/header-row.d.ts +2 -2
  390. package/es/ele-virtual-table/components/header-row.js +2 -2
  391. package/es/ele-virtual-table/index.d.ts +36 -34
  392. package/es/ele-virtual-table/index.js +13 -16
  393. package/es/ele-virtual-table/props.d.ts +16 -16
  394. package/es/ele-virtual-table/style/css-var.scss +0 -48
  395. package/es/ele-virtual-table/style/index.d.ts +1 -0
  396. package/es/ele-virtual-table/style/index.js +9 -9
  397. package/es/ele-virtual-table/style/index.scss +20 -23
  398. package/es/ele-virtual-table/util.d.ts +3 -3
  399. package/es/ele-virtual-table/util.js +8 -8
  400. package/es/ele-watermark/props.d.ts +1 -1
  401. package/es/ele-watermark/style/index.d.ts +0 -0
  402. package/es/ele-watermark/style/index.js +1 -1
  403. package/es/ele-watermark/util.d.ts +1 -1
  404. package/es/ele-xg-player/index.d.ts +1 -1
  405. package/es/ele-xg-player/style/index.d.ts +1 -0
  406. package/es/ele-xg-player/style/index.js +1 -1
  407. package/es/icons/index.d.ts +108 -108
  408. package/es/style/plus.scss +2 -1
  409. package/es/style/themes/dark.scss +4 -3
  410. package/es/style/themes/default.scss +58 -26
  411. package/es/style/themes/rounded.scss +5 -4
  412. package/es/style/themes/theme-util.scss +4 -2
  413. package/es/style/util.scss +4 -4
  414. package/es/utils/core.d.ts +53 -44
  415. package/es/utils/core.js +113 -72
  416. package/es/utils/hook.d.ts +40 -0
  417. package/es/utils/hook.js +111 -0
  418. package/es/utils/menu-util.d.ts +1 -1
  419. package/es/utils/menu-util.js +5 -12
  420. package/es/utils/message-box.d.ts +1 -1
  421. package/es/utils/message-box.js +3 -6
  422. package/es/utils/message.d.ts +1 -1
  423. package/es/utils/message.js +2 -1
  424. package/lib/components.d.ts +6 -6
  425. package/lib/core-components.cjs +102 -98
  426. package/lib/core-components.d.ts +47 -45
  427. package/lib/core-export.cjs +5 -5
  428. package/lib/core-export.d.ts +4 -3
  429. package/lib/ele-admin-layout/components/layout-skeleton.cjs +46 -0
  430. package/lib/ele-admin-layout/components/layout-skeleton.d.ts +10 -0
  431. package/lib/{ele-pro-layout/components/pro-tabs.cjs → ele-admin-layout/components/layout-tabs.cjs} +46 -79
  432. package/{es/ele-pro-layout/components/pro-tabs.d.ts → lib/ele-admin-layout/components/layout-tabs.d.ts} +21 -33
  433. package/lib/{ele-pro-layout/components/header-tool.cjs → ele-admin-layout/components/layout-tool.cjs} +3 -3
  434. package/lib/ele-admin-layout/index.cjs +666 -0
  435. package/lib/ele-admin-layout/index.d.ts +265 -0
  436. package/lib/ele-admin-layout/props.cjs +147 -0
  437. package/lib/ele-admin-layout/props.d.ts +159 -0
  438. package/lib/ele-admin-layout/style/css-var.scss +14 -0
  439. package/lib/ele-admin-layout/style/header.scss +192 -0
  440. package/lib/ele-admin-layout/style/index.cjs +10 -0
  441. package/lib/ele-admin-layout/style/index.d.ts +1 -0
  442. package/lib/ele-admin-layout/style/index.scss +302 -0
  443. package/lib/ele-admin-layout/style/sidebar.scss +185 -0
  444. package/{es/ele-pro-layout → lib/ele-admin-layout}/style/tabs.scss +15 -10
  445. package/lib/ele-admin-layout/types.d.ts +52 -0
  446. package/lib/ele-alert/index.d.ts +1 -1
  447. package/lib/ele-alert/props.d.ts +1 -1
  448. package/lib/ele-alert/style/index.d.ts +1 -0
  449. package/lib/ele-alert/style/index.scss +1 -1
  450. package/lib/ele-app/components/message-body.d.ts +1 -1
  451. package/lib/ele-app/el.d.ts +208 -98
  452. package/lib/ele-app/plus.d.ts +105 -33
  453. package/lib/ele-app/style/common/index.d.ts +1 -0
  454. package/lib/ele-app/style/index.d.ts +1 -0
  455. package/lib/ele-app/style/message/index.cjs +1 -1
  456. package/lib/ele-app/style/message/index.d.ts +1 -0
  457. package/lib/ele-app/style/message/index.scss +1 -1
  458. package/lib/ele-app/style/overwrite/autocomplete/index.d.ts +1 -0
  459. package/lib/ele-app/style/overwrite/autocomplete/index.scss +1 -1
  460. package/lib/ele-app/style/overwrite/backtop/index.d.ts +1 -0
  461. package/lib/ele-app/style/overwrite/backtop/index.scss +1 -1
  462. package/lib/ele-app/style/overwrite/cascader/index.d.ts +1 -0
  463. package/lib/ele-app/style/overwrite/cascader/index.scss +1 -1
  464. package/lib/ele-app/style/overwrite/checkbox/index.d.ts +1 -0
  465. package/lib/ele-app/style/overwrite/checkbox/index.scss +5 -3
  466. package/lib/ele-app/style/overwrite/color-picker/index.d.ts +1 -0
  467. package/lib/ele-app/style/overwrite/css-var.scss +0 -2
  468. package/lib/ele-app/style/overwrite/date-picker/index.d.ts +1 -0
  469. package/lib/ele-app/style/overwrite/date-picker/index.scss +17 -17
  470. package/lib/ele-app/style/overwrite/descriptions/index.d.ts +1 -0
  471. package/lib/ele-app/style/overwrite/descriptions/index.scss +4 -0
  472. package/lib/ele-app/style/overwrite/image-viewer/index.d.ts +1 -0
  473. package/lib/ele-app/style/overwrite/index.d.ts +1 -0
  474. package/lib/ele-app/style/overwrite/index.scss +0 -1
  475. package/lib/ele-app/style/overwrite/input/index.d.ts +1 -0
  476. package/lib/ele-app/style/overwrite/input/index.scss +7 -9
  477. package/lib/ele-app/style/overwrite/message-box/index.cjs +1 -1
  478. package/lib/ele-app/style/overwrite/message-box/index.d.ts +1 -0
  479. package/lib/ele-app/style/overwrite/message-box/index.scss +1 -1
  480. package/lib/ele-app/style/overwrite/notification/index.cjs +1 -1
  481. package/lib/ele-app/style/overwrite/notification/index.d.ts +1 -0
  482. package/lib/ele-app/style/overwrite/notification/index.scss +1 -1
  483. package/lib/ele-app/style/overwrite/popper/index.d.ts +1 -0
  484. package/lib/ele-app/style/overwrite/radio/index.d.ts +1 -0
  485. package/lib/ele-app/style/overwrite/radio/index.scss +4 -2
  486. package/lib/ele-app/style/overwrite/select/index.d.ts +1 -0
  487. package/lib/ele-app/style/overwrite/select/index.scss +1 -1
  488. package/lib/ele-app/style/overwrite/tag/index.d.ts +1 -0
  489. package/lib/ele-app/style/overwrite/tag/index.scss +1 -1
  490. package/lib/ele-app/style/overwrite/tree/index.d.ts +1 -0
  491. package/lib/ele-app/style/overwrite/tree/index.scss +3 -3
  492. package/lib/ele-app/style/overwrite/tree-select/index.d.ts +1 -0
  493. package/lib/ele-app/style/overwrite/tree-select/index.scss +1 -1
  494. package/lib/ele-app/style/scrollbar/index.d.ts +1 -0
  495. package/lib/ele-avatar-group/index.d.ts +2 -2
  496. package/lib/ele-avatar-group/props.d.ts +1 -1
  497. package/lib/ele-avatar-group/style/index.cjs +1 -1
  498. package/lib/ele-avatar-group/style/index.d.ts +1 -0
  499. package/lib/ele-backtop/index.cjs +103 -0
  500. package/lib/ele-backtop/index.d.ts +50 -0
  501. package/lib/ele-backtop/props.cjs +31 -0
  502. package/lib/ele-backtop/props.d.ts +36 -0
  503. package/lib/ele-backtop/style/css-var.scss +8 -0
  504. package/lib/ele-backtop/style/index.d.ts +1 -0
  505. package/lib/ele-backtop/style/index.scss +34 -0
  506. package/lib/ele-bar-code/index.d.ts +2 -2
  507. package/lib/ele-bar-code/props.d.ts +2 -2
  508. package/lib/ele-bar-code/style/index.cjs +0 -1
  509. package/lib/ele-bar-code/style/index.d.ts +0 -0
  510. package/lib/ele-basic-select/index.d.ts +7 -7
  511. package/lib/ele-basic-select/props.d.ts +1 -1
  512. package/lib/ele-basic-select/style/index.cjs +3 -3
  513. package/lib/ele-basic-select/style/index.d.ts +1 -0
  514. package/lib/ele-basic-select/style/index.scss +3 -3
  515. package/lib/ele-bottom-bar/style/index.d.ts +1 -0
  516. package/lib/ele-breadcrumb/index.cjs +29 -5
  517. package/lib/ele-breadcrumb/index.d.ts +11 -3
  518. package/lib/ele-breadcrumb/props.cjs +4 -0
  519. package/lib/ele-breadcrumb/props.d.ts +5 -2
  520. package/lib/ele-breadcrumb/style/index.cjs +2 -2
  521. package/lib/ele-breadcrumb/style/index.d.ts +1 -0
  522. package/lib/ele-breadcrumb/types.d.ts +13 -2
  523. package/lib/ele-card/index.cjs +87 -9
  524. package/lib/ele-card/index.d.ts +27 -6
  525. package/lib/ele-card/props.cjs +11 -0
  526. package/lib/ele-card/props.d.ts +14 -1
  527. package/lib/ele-card/style/index.cjs +1 -0
  528. package/lib/ele-card/style/index.d.ts +1 -0
  529. package/lib/ele-card/style/index.scss +43 -3
  530. package/lib/ele-check-card/components/card-item.d.ts +1 -1
  531. package/lib/ele-check-card/index.cjs +4 -3
  532. package/lib/ele-check-card/index.d.ts +1 -1
  533. package/lib/ele-check-card/props.d.ts +2 -2
  534. package/lib/ele-check-card/style/index.cjs +2 -2
  535. package/lib/ele-check-card/style/index.d.ts +1 -0
  536. package/lib/ele-check-card/style/index.scss +4 -4
  537. package/lib/ele-config-provider/index.d.ts +4 -4
  538. package/lib/ele-config-provider/props.cjs +0 -2
  539. package/lib/ele-config-provider/props.d.ts +4 -8
  540. package/lib/ele-config-provider/receiver.cjs +0 -15
  541. package/lib/ele-config-provider/receiver.d.ts +1 -11
  542. package/lib/ele-config-provider/style/index.cjs +0 -1
  543. package/lib/ele-config-provider/style/index.d.ts +0 -0
  544. package/lib/ele-config-provider/types.d.ts +0 -19
  545. package/lib/ele-copyable/index.cjs +2 -26
  546. package/lib/ele-copyable/index.d.ts +5 -5
  547. package/lib/ele-copyable/props.d.ts +2 -2
  548. package/lib/ele-copyable/style/index.cjs +1 -1
  549. package/lib/ele-copyable/style/index.d.ts +1 -0
  550. package/lib/ele-count-up/props.d.ts +1 -1
  551. package/lib/ele-count-up/style/index.cjs +0 -1
  552. package/lib/ele-count-up/style/index.d.ts +0 -0
  553. package/lib/ele-cropper/components/cropper-tools.d.ts +1 -1
  554. package/lib/ele-cropper/index.cjs +2 -2
  555. package/lib/ele-cropper/index.d.ts +6 -6
  556. package/lib/ele-cropper/props.d.ts +1 -1
  557. package/lib/ele-cropper/style/index.cjs +3 -3
  558. package/lib/ele-cropper/style/index.d.ts +1 -0
  559. package/lib/ele-cropper-modal/index.d.ts +1 -1
  560. package/lib/ele-cropper-modal/props.d.ts +1 -1
  561. package/lib/ele-cropper-modal/style/index.d.ts +1 -0
  562. package/lib/ele-dashboard/props.d.ts +1 -1
  563. package/lib/ele-dashboard/style/index.d.ts +1 -0
  564. package/lib/ele-data-table/index.cjs +10 -5
  565. package/lib/ele-data-table/index.d.ts +31 -31
  566. package/lib/ele-data-table/props.d.ts +21 -21
  567. package/lib/ele-data-table/style/css-var.scss +58 -0
  568. package/lib/ele-data-table/style/index.cjs +3 -3
  569. package/lib/ele-data-table/style/index.d.ts +1 -0
  570. package/lib/ele-data-table/style/index.scss +132 -24
  571. package/lib/ele-data-table/util.cjs +55 -28
  572. package/lib/ele-data-table/util.d.ts +21 -10
  573. package/lib/ele-dot/props.d.ts +1 -1
  574. package/lib/ele-dot/style/index.d.ts +1 -0
  575. package/lib/ele-drawer/index.cjs +5 -5
  576. package/lib/ele-drawer/index.d.ts +4 -4
  577. package/lib/ele-drawer/style/index.cjs +2 -2
  578. package/lib/ele-drawer/style/index.d.ts +1 -0
  579. package/lib/ele-drawer/style/index.scss +2 -2
  580. package/lib/ele-dropdown/index.cjs +6 -2
  581. package/lib/ele-dropdown/index.d.ts +15 -15
  582. package/lib/ele-dropdown/props.d.ts +5 -5
  583. package/lib/ele-dropdown/style/index.cjs +4 -4
  584. package/lib/ele-dropdown/style/index.d.ts +1 -0
  585. package/lib/ele-dropdown/style/index.scss +1 -1
  586. package/lib/ele-edit-tag/index.cjs +27 -21
  587. package/lib/ele-edit-tag/index.d.ts +17 -17
  588. package/lib/ele-edit-tag/props.d.ts +2 -2
  589. package/lib/ele-edit-tag/style/index.cjs +3 -3
  590. package/lib/ele-edit-tag/style/index.d.ts +1 -0
  591. package/lib/ele-ellipsis/index.d.ts +3 -3
  592. package/lib/ele-ellipsis/props.d.ts +1 -1
  593. package/lib/ele-ellipsis/style/index.d.ts +1 -0
  594. package/lib/ele-file-list/components/file-grid-item.d.ts +3 -3
  595. package/lib/ele-file-list/components/file-grid.cjs +1 -1
  596. package/lib/ele-file-list/components/file-grid.d.ts +3 -3
  597. package/lib/ele-file-list/components/file-table-item.d.ts +3 -3
  598. package/lib/ele-file-list/components/file-table.cjs +1 -1
  599. package/lib/ele-file-list/components/file-table.d.ts +4 -4
  600. package/lib/ele-file-list/index.d.ts +2 -2
  601. package/lib/ele-file-list/props.d.ts +4 -4
  602. package/lib/ele-file-list/style/index.d.ts +1 -0
  603. package/lib/ele-file-list/style/index.scss +7 -7
  604. package/lib/ele-file-list-tool/style/index.cjs +0 -1
  605. package/lib/ele-file-list-tool/style/index.d.ts +0 -0
  606. package/lib/ele-icon-select/components/icon-grid.d.ts +2 -2
  607. package/lib/ele-icon-select/index.cjs +4 -4
  608. package/lib/ele-icon-select/index.d.ts +22 -20
  609. package/lib/ele-icon-select/props.d.ts +2 -2
  610. package/lib/ele-icon-select/style/index.cjs +3 -3
  611. package/lib/ele-icon-select/style/index.d.ts +1 -0
  612. package/lib/ele-icon-select/style/index.scss +5 -5
  613. package/lib/ele-loading/index.d.ts +1 -1
  614. package/lib/ele-loading/props.d.ts +1 -1
  615. package/lib/ele-loading/style/index.cjs +1 -1
  616. package/lib/ele-loading/style/index.d.ts +1 -0
  617. package/lib/ele-map-picker/components/map-view.cjs +326 -252
  618. package/lib/ele-map-picker/components/map-view.d.ts +60 -48
  619. package/lib/ele-map-picker/index.cjs +18 -9
  620. package/lib/ele-map-picker/index.d.ts +25 -21
  621. package/lib/ele-map-picker/props.cjs +5 -1
  622. package/lib/ele-map-picker/props.d.ts +12 -4
  623. package/lib/ele-map-picker/style/index.cjs +5 -5
  624. package/lib/ele-map-picker/style/index.d.ts +1 -0
  625. package/lib/ele-map-picker/style/index.scss +21 -7
  626. package/lib/ele-map-picker/types.d.ts +20 -46
  627. package/lib/ele-menus/index.cjs +36 -16
  628. package/lib/ele-menus/index.d.ts +9 -10
  629. package/lib/ele-menus/props.cjs +1 -0
  630. package/lib/ele-menus/props.d.ts +4 -4
  631. package/lib/ele-menus/style/css-var.scss +2 -6
  632. package/lib/ele-menus/style/index.cjs +6 -6
  633. package/lib/ele-menus/style/index.d.ts +1 -0
  634. package/lib/ele-menus/style/index.scss +122 -18
  635. package/lib/ele-menus/types.d.ts +11 -0
  636. package/lib/ele-menus/util.cjs +4 -3
  637. package/lib/ele-menus/util.d.ts +3 -2
  638. package/lib/ele-modal/index.cjs +17 -16
  639. package/lib/ele-modal/index.d.ts +9 -11
  640. package/lib/ele-modal/props.d.ts +2 -2
  641. package/lib/ele-modal/style/index.cjs +2 -2
  642. package/lib/ele-modal/style/index.d.ts +1 -0
  643. package/lib/ele-modal/style/index.scss +1 -1
  644. package/lib/ele-modal/util.d.ts +1 -1
  645. package/lib/ele-page/style/index.d.ts +1 -0
  646. package/lib/ele-page/style/index.scss +8 -7
  647. package/lib/ele-pagination/index.cjs +18 -2
  648. package/lib/ele-pagination/index.d.ts +10 -0
  649. package/lib/ele-pagination/props.cjs +5 -0
  650. package/lib/ele-pagination/props.d.ts +6 -1
  651. package/lib/ele-pagination/style/index.cjs +1 -1
  652. package/lib/ele-pagination/style/index.d.ts +1 -0
  653. package/lib/ele-pagination/style/index.scss +8 -1
  654. package/lib/ele-popconfirm/index.d.ts +72 -72
  655. package/lib/ele-popconfirm/props.d.ts +29 -29
  656. package/lib/ele-popconfirm/style/index.cjs +2 -2
  657. package/lib/ele-popconfirm/style/index.d.ts +1 -0
  658. package/lib/ele-popover/index.d.ts +63 -63
  659. package/lib/ele-popover/props.d.ts +2 -2
  660. package/lib/ele-popover/style/index.d.ts +1 -0
  661. package/lib/ele-printer/props.d.ts +1 -1
  662. package/lib/ele-printer/style/index.d.ts +1 -0
  663. package/lib/ele-printer/style/index.scss +5 -0
  664. package/lib/ele-pro-layout/components/pro-iframe.cjs +9 -19
  665. package/lib/ele-pro-layout/components/pro-iframe.d.ts +2 -2
  666. package/lib/ele-pro-layout/index.cjs +797 -801
  667. package/lib/ele-pro-layout/index.d.ts +219 -228
  668. package/lib/ele-pro-layout/props.cjs +109 -104
  669. package/lib/ele-pro-layout/props.d.ts +118 -107
  670. package/lib/ele-pro-layout/style/index.cjs +1 -9
  671. package/lib/ele-pro-layout/style/index.d.ts +1 -0
  672. package/lib/ele-pro-layout/style/index.scss +40 -11
  673. package/lib/ele-pro-layout/types.d.ts +48 -110
  674. package/lib/ele-pro-layout/util.cjs +65 -187
  675. package/lib/ele-pro-layout/util.d.ts +33 -49
  676. package/lib/ele-pro-table/components/table-tools.cjs +7 -7
  677. package/lib/ele-pro-table/components/table-tools.d.ts +6 -6
  678. package/lib/ele-pro-table/components/tool-column-list.d.ts +1 -1
  679. package/lib/ele-pro-table/components/tool-column.cjs +1 -0
  680. package/lib/ele-pro-table/components/tool-column.d.ts +2 -2
  681. package/lib/ele-pro-table/components/tool-export.cjs +10 -9
  682. package/lib/ele-pro-table/components/tool-export.d.ts +10 -10
  683. package/lib/ele-pro-table/components/tool-print-body-cell.d.ts +3 -3
  684. package/lib/ele-pro-table/components/tool-print-header-cell.d.ts +3 -3
  685. package/lib/ele-pro-table/components/tool-print.cjs +18 -14
  686. package/lib/ele-pro-table/components/tool-print.d.ts +9 -9
  687. package/lib/ele-pro-table/index.cjs +55 -58
  688. package/lib/ele-pro-table/index.d.ts +46 -46
  689. package/lib/ele-pro-table/props.d.ts +22 -22
  690. package/lib/ele-pro-table/style/index.cjs +8 -8
  691. package/lib/ele-pro-table/style/index.d.ts +1 -0
  692. package/lib/ele-pro-table/style/index.scss +17 -3
  693. package/lib/ele-pro-table/types.d.ts +6 -2
  694. package/lib/ele-pro-table/util.cjs +9 -6
  695. package/lib/ele-pro-table/util.d.ts +2 -2
  696. package/lib/ele-qr-code/props.d.ts +1 -1
  697. package/lib/ele-qr-code/style/index.cjs +0 -1
  698. package/lib/ele-qr-code/style/index.d.ts +0 -0
  699. package/lib/ele-qr-code/util.d.ts +1 -1
  700. package/lib/ele-qr-code-svg/style/index.cjs +0 -1
  701. package/lib/ele-qr-code-svg/style/index.d.ts +0 -0
  702. package/lib/ele-segmented/index.cjs +4 -1
  703. package/lib/ele-segmented/props.d.ts +1 -1
  704. package/lib/ele-segmented/style/index.cjs +3 -3
  705. package/lib/ele-segmented/style/index.d.ts +1 -0
  706. package/lib/ele-split-panel/index.cjs +2 -2
  707. package/lib/ele-split-panel/index.d.ts +3 -3
  708. package/lib/ele-split-panel/style/index.cjs +1 -1
  709. package/lib/ele-split-panel/style/index.d.ts +1 -0
  710. package/lib/ele-steps/index.cjs +4 -1
  711. package/lib/ele-steps/props.d.ts +1 -1
  712. package/lib/ele-steps/style/index.cjs +2 -2
  713. package/lib/ele-steps/style/index.d.ts +1 -0
  714. package/lib/ele-steps/style/index.scss +4 -4
  715. package/lib/ele-tab-tool/style/index.cjs +0 -1
  716. package/lib/ele-tab-tool/style/index.d.ts +0 -0
  717. package/lib/ele-tab-wrap/index.cjs +23 -1
  718. package/lib/ele-tab-wrap/index.d.ts +1 -1
  719. package/lib/ele-tab-wrap/props.d.ts +1 -1
  720. package/lib/ele-tab-wrap/style/index.cjs +0 -1
  721. package/lib/ele-tab-wrap/style/index.d.ts +0 -0
  722. package/lib/ele-table/index.d.ts +2 -2
  723. package/lib/ele-table/props.d.ts +1 -1
  724. package/lib/ele-table/style/index.d.ts +1 -0
  725. package/lib/ele-table/style/index.scss +1 -1
  726. package/lib/ele-table-select/index.cjs +16 -16
  727. package/lib/ele-table-select/index.d.ts +20 -20
  728. package/lib/ele-table-select/props.d.ts +3 -3
  729. package/lib/ele-table-select/style/index.d.ts +1 -0
  730. package/lib/ele-tabs/components/tab-title.cjs +15 -9
  731. package/lib/ele-tabs/components/tab-title.d.ts +5 -5
  732. package/lib/ele-tabs/index.cjs +94 -86
  733. package/lib/ele-tabs/index.d.ts +31 -30
  734. package/lib/ele-tabs/props.cjs +2 -0
  735. package/lib/ele-tabs/props.d.ts +11 -7
  736. package/lib/ele-tabs/style/css-var.scss +1 -2
  737. package/lib/ele-tabs/style/index.cjs +3 -2
  738. package/lib/ele-tabs/style/index.d.ts +1 -0
  739. package/lib/ele-tabs/style/index.scss +8 -8
  740. package/lib/ele-tabs/types.d.ts +10 -0
  741. package/lib/ele-text/props.d.ts +2 -2
  742. package/lib/ele-text/style/index.cjs +1 -1
  743. package/lib/ele-text/style/index.d.ts +1 -0
  744. package/lib/ele-tool/style/index.d.ts +1 -0
  745. package/lib/ele-tool/style/index.scss +1 -1
  746. package/lib/ele-toolbar/props.d.ts +2 -2
  747. package/lib/ele-toolbar/style/index.d.ts +1 -0
  748. package/lib/ele-tooltip/index.d.ts +53 -53
  749. package/lib/ele-tooltip/props.d.ts +1 -1
  750. package/lib/ele-tooltip/style/index.cjs +1 -1
  751. package/lib/ele-tooltip/style/index.d.ts +1 -0
  752. package/lib/ele-tour/index.d.ts +2 -2
  753. package/lib/ele-tour/props.d.ts +1 -1
  754. package/lib/ele-tour/style/index.cjs +1 -1
  755. package/lib/ele-tour/style/index.d.ts +1 -0
  756. package/lib/ele-tour/style/index.scss +4 -4
  757. package/lib/ele-tour/util.d.ts +1 -1
  758. package/lib/ele-tree-select/index.d.ts +11 -11
  759. package/lib/ele-tree-select/props.d.ts +3 -3
  760. package/lib/ele-tree-select/style/index.cjs +1 -1
  761. package/lib/ele-tree-select/style/index.d.ts +1 -0
  762. package/lib/ele-tree-select/util.d.ts +1 -1
  763. package/lib/ele-upload-list/components/list-item.d.ts +2 -2
  764. package/lib/ele-upload-list/index.d.ts +2 -2
  765. package/lib/ele-upload-list/props.d.ts +2 -2
  766. package/lib/ele-upload-list/style/index.cjs +4 -4
  767. package/lib/ele-upload-list/style/index.d.ts +1 -0
  768. package/lib/ele-virtual-table/components/body-cell.cjs +2 -2
  769. package/lib/ele-virtual-table/components/body-cell.d.ts +10 -10
  770. package/lib/ele-virtual-table/components/body-row.cjs +1 -1
  771. package/lib/ele-virtual-table/components/body-row.d.ts +6 -6
  772. package/lib/ele-virtual-table/components/cell-filter.cjs +1 -0
  773. package/lib/ele-virtual-table/components/cell-filter.d.ts +2 -2
  774. package/lib/ele-virtual-table/components/expand-row.d.ts +1 -1
  775. package/lib/ele-virtual-table/components/footer-row.d.ts +2 -2
  776. package/lib/ele-virtual-table/components/header-cell.d.ts +4 -4
  777. package/lib/ele-virtual-table/components/header-row.cjs +1 -1
  778. package/lib/ele-virtual-table/components/header-row.d.ts +2 -2
  779. package/lib/ele-virtual-table/index.cjs +14 -17
  780. package/lib/ele-virtual-table/index.d.ts +36 -34
  781. package/lib/ele-virtual-table/props.d.ts +16 -16
  782. package/lib/ele-virtual-table/style/css-var.scss +0 -48
  783. package/lib/ele-virtual-table/style/index.cjs +7 -7
  784. package/lib/ele-virtual-table/style/index.d.ts +1 -0
  785. package/lib/ele-virtual-table/style/index.scss +20 -23
  786. package/lib/ele-virtual-table/util.cjs +10 -10
  787. package/lib/ele-virtual-table/util.d.ts +3 -3
  788. package/lib/ele-watermark/props.d.ts +1 -1
  789. package/lib/ele-watermark/style/index.cjs +0 -1
  790. package/lib/ele-watermark/style/index.d.ts +0 -0
  791. package/lib/ele-watermark/util.d.ts +1 -1
  792. package/lib/ele-xg-player/index.d.ts +1 -1
  793. package/lib/ele-xg-player/style/index.d.ts +1 -0
  794. package/lib/icons/index.d.ts +108 -108
  795. package/lib/style/plus.scss +2 -1
  796. package/lib/style/themes/dark.scss +4 -3
  797. package/lib/style/themes/default.scss +58 -26
  798. package/lib/style/themes/rounded.scss +5 -4
  799. package/lib/style/themes/theme-util.scss +4 -2
  800. package/lib/style/util.scss +4 -4
  801. package/lib/utils/core.cjs +113 -72
  802. package/lib/utils/core.d.ts +53 -44
  803. package/lib/utils/hook.cjs +111 -0
  804. package/lib/utils/hook.d.ts +40 -0
  805. package/lib/utils/menu-util.cjs +4 -11
  806. package/lib/utils/menu-util.d.ts +1 -1
  807. package/lib/utils/message-box.cjs +2 -5
  808. package/lib/utils/message-box.d.ts +1 -1
  809. package/lib/utils/message.cjs +2 -1
  810. package/lib/utils/message.d.ts +1 -1
  811. package/package.json +31 -29
  812. package/typings/global.d.ts +2 -0
  813. package/es/ele-app/style/overwrite/table-filter/css-var.scss +0 -8
  814. package/es/ele-app/style/overwrite/table-filter/index.js +0 -1
  815. package/es/ele-app/style/overwrite/table-filter/index.scss +0 -98
  816. package/es/ele-pro-layout/components/pro-header.d.ts +0 -187
  817. package/es/ele-pro-layout/components/pro-header.js +0 -362
  818. package/es/ele-pro-layout/components/pro-sidebar.d.ts +0 -86
  819. package/es/ele-pro-layout/components/pro-sidebar.js +0 -148
  820. package/es/ele-pro-layout/components/pro-sidebox.d.ts +0 -82
  821. package/es/ele-pro-layout/components/pro-sidebox.js +0 -149
  822. package/es/ele-pro-layout/components/sidebar-tool.js +0 -21
  823. package/es/ele-pro-layout/style/collapse.scss +0 -83
  824. package/es/ele-pro-layout/style/css-var.scss +0 -34
  825. package/es/ele-pro-layout/style/header.scss +0 -161
  826. package/es/ele-pro-layout/style/layout-mobile.scss +0 -62
  827. package/es/ele-pro-layout/style/layout-style.scss +0 -150
  828. package/es/ele-pro-layout/style/layout-theme.scss +0 -113
  829. package/es/ele-pro-layout/style/layout.scss +0 -104
  830. package/es/ele-pro-layout/style/sidebar.scss +0 -219
  831. package/lib/ele-app/style/overwrite/table-filter/css-var.scss +0 -8
  832. package/lib/ele-app/style/overwrite/table-filter/index.scss +0 -98
  833. package/lib/ele-pro-layout/components/header-tool.d.ts +0 -2
  834. package/lib/ele-pro-layout/components/pro-header.cjs +0 -361
  835. package/lib/ele-pro-layout/components/pro-header.d.ts +0 -187
  836. package/lib/ele-pro-layout/components/pro-sidebar.cjs +0 -147
  837. package/lib/ele-pro-layout/components/pro-sidebar.d.ts +0 -86
  838. package/lib/ele-pro-layout/components/pro-sidebox.cjs +0 -148
  839. package/lib/ele-pro-layout/components/pro-sidebox.d.ts +0 -82
  840. package/lib/ele-pro-layout/components/sidebar-tool.cjs +0 -20
  841. package/lib/ele-pro-layout/components/sidebar-tool.d.ts +0 -2
  842. package/lib/ele-pro-layout/style/collapse.scss +0 -83
  843. package/lib/ele-pro-layout/style/css-var.scss +0 -34
  844. package/lib/ele-pro-layout/style/header.scss +0 -161
  845. package/lib/ele-pro-layout/style/layout-mobile.scss +0 -62
  846. package/lib/ele-pro-layout/style/layout-style.scss +0 -150
  847. package/lib/ele-pro-layout/style/layout-theme.scss +0 -113
  848. package/lib/ele-pro-layout/style/layout.scss +0 -104
  849. package/lib/ele-pro-layout/style/sidebar.scss +0 -219
  850. package/es/{ele-pro-layout/components/header-tool.d.ts → ele-admin-layout/components/layout-tool.d.ts} +0 -0
  851. package/es/{ele-pro-layout → ele-tab-wrap}/components/tab-dropdown.d.ts +1 -1
  852. package/es/{ele-pro-layout → ele-tab-wrap}/components/tab-dropdown.js +0 -0
  853. package/{es/ele-pro-layout/components/sidebar-tool.d.ts → lib/ele-admin-layout/components/layout-tool.d.ts} +0 -0
  854. package/lib/{ele-app/style/overwrite/table-filter → ele-backtop/style}/index.cjs +0 -0
  855. package/lib/{ele-pro-layout → ele-tab-wrap}/components/tab-dropdown.cjs +0 -0
  856. package/lib/{ele-pro-layout → ele-tab-wrap}/components/tab-dropdown.d.ts +1 -1
@@ -1,369 +1,301 @@
1
1
  "use strict";
2
2
  const vue = require("vue");
3
3
  const vueRouter = require("vue-router");
4
- const elementPlus = require("element-plus");
4
+ const icons = require("../icons");
5
+ const hook = require("../utils/hook");
5
6
  const core = require("../utils/core");
6
- const receiver = require("../ele-config-provider/receiver");
7
- const ReceiverView = require("../ele-config-provider/components/receiver-view");
8
- const ProHeader = require("./components/pro-header");
9
- const ProSidebar = require("./components/pro-sidebar");
10
- const ProSidebox = require("./components/pro-sidebox");
11
- const ProTabs = require("./components/pro-tabs");
12
7
  const ProIframe = require("./components/pro-iframe");
13
8
  const util = require("./util");
14
9
  const props = require("./props");
10
+ const EleAdminLayout = require("../ele-admin-layout/index");
15
11
  const _sfc_main = vue.defineComponent({
16
12
  name: "EleProLayout",
17
- components: {
18
- ElBacktop: elementPlus.ElBacktop,
19
- ReceiverView,
20
- ProHeader,
21
- ProSidebar,
22
- ProSidebox,
23
- ProTabs,
24
- ProIframe
25
- },
13
+ components: { EleAdminLayout, ProIframe },
26
14
  props: props.proLayoutProps,
27
15
  emits: props.proLayoutEmits,
28
- setup(props2, { emit }) {
16
+ setup(props$1, { emit }) {
29
17
  const { currentRoute, push } = vueRouter.useRouter();
30
- const { disableTransition } = util.useDisableTransition();
31
- const state = {
32
- headerData: [],
33
- sideboxData: [],
34
- sidebarData: [],
35
- menuTimer: null,
36
- isHover: false
37
- };
38
- const contentRef = vue.ref(null);
39
- const modalsRef = vue.ref(null);
40
- const levelData = vue.shallowRef([]);
41
- const tabData = vue.shallowRef([]);
42
- const tabActive = vue.ref(util.getHomePath(props2.homePath));
18
+ const [startTimer, stopTimer] = hook.useTimer(() => props$1.menuHoverTimeout);
19
+ const state = { navData: [], sideData: [], boxData: [] };
20
+ const mobileQuery = "(max-width: 768px)";
21
+ const layoutRef = vue.ref(null);
43
22
  const menuData = vue.shallowRef([]);
44
- const headerData = vue.shallowRef([]);
45
- const headerActive = vue.ref();
46
- const sidebarData = vue.shallowRef([]);
47
- const sidebarActive = vue.ref();
48
- const sideboxData = vue.shallowRef([]);
49
- const sideboxActive = vue.ref();
23
+ const navData = vue.shallowRef([]);
24
+ const navActive = vue.ref();
25
+ const sideData = vue.shallowRef([]);
26
+ const sideActive = vue.ref();
27
+ const boxData = vue.shallowRef([]);
28
+ const boxActive = vue.ref();
29
+ const tabData = vue.shallowRef([]);
30
+ const tabActive = vue.ref();
31
+ const levelData = vue.shallowRef([]);
32
+ const mobile = vue.ref(false);
33
+ const homeMenuPath = vue.ref();
34
+ const isHome = vue.ref(false);
35
+ const hideHeader = vue.ref(false);
50
36
  const hideSidebar = vue.ref(false);
51
37
  const hideSidebox = vue.ref(false);
38
+ const hideTabs = vue.ref(false);
52
39
  const hideFooter = vue.ref(false);
53
- const homeMenuPath = vue.ref(util.getHomePath(props2.homePath));
54
- const isHome = vue.ref(false);
55
- const mobile = vue.ref(false);
56
- const topLayout = vue.computed(() => props2.layout === "top");
57
- const mixLayout = vue.computed(() => props2.layout === "mix");
58
- const mixSidebar = vue.computed(() => props2.sidebarLayout === "mix");
59
- const sidebox = vue.computed(() => {
60
- return !hideSidebox.value && sideboxData.value.some((d) => {
61
- var _a;
62
- return !((_a = d.meta) == null ? void 0 : _a.hide);
40
+ const computedNavigation = () => {
41
+ let nav = "default";
42
+ if (hideHeader.value) {
43
+ nav = "side";
44
+ } else if (hideSidebar.value && hideSidebox.value) {
45
+ nav = "top";
46
+ } else if (props$1.layout === "top" || props$1.layout === "mix") {
47
+ nav = props$1.layout;
48
+ }
49
+ if (mobile.value && (nav === "top" || nav === "mix")) {
50
+ nav = "default";
51
+ }
52
+ return nav;
53
+ };
54
+ const computedSideNavigation = () => {
55
+ if (!hideSidebox.value && hideSidebar.value) {
56
+ return "box";
57
+ }
58
+ return props$1.sidebarLayout === "mix" ? "mix" : "default";
59
+ };
60
+ const navigation = vue.ref(computedNavigation());
61
+ const sideNavigation = vue.ref(computedSideNavigation());
62
+ const layoutHeaders = vue.computed(() => {
63
+ const navRoute = props$1.navTrigger !== "click" && props$1.navTrigger !== "hover";
64
+ return util.getMenuItems(navData.value, navRoute);
65
+ });
66
+ const layoutSidebars = vue.computed(() => {
67
+ const menuRoute = props$1.itemTrigger !== "click" && props$1.itemTrigger !== "hover";
68
+ return util.getMenuItems(sideData.value, menuRoute);
69
+ });
70
+ const layoutSideboxs = vue.computed(() => {
71
+ const boxRoute = props$1.boxTrigger !== "click" && props$1.boxTrigger !== "hover";
72
+ return util.getMenuItems(boxData.value, boxRoute);
73
+ });
74
+ const layoutTabs = vue.computed(() => {
75
+ const data = props$1.fixedHome ? tabData.value.filter((t) => !t.home) : tabData.value;
76
+ const onlyOne = !props$1.fixedHome && data.length === 1;
77
+ return data.map((d) => {
78
+ return {
79
+ name: d.key,
80
+ label: d.title,
81
+ closable: onlyOne && d.home ? false : d.closable,
82
+ meta: d.meta
83
+ };
63
84
  });
64
85
  });
65
- const sidebar = vue.computed(() => {
66
- return !hideSidebox.value && !hideSidebar.value && sidebarData.value.some((d) => {
67
- var _a;
68
- return !((_a = d.meta) == null ? void 0 : _a.hide);
86
+ const layoutLevels = vue.computed(() => {
87
+ const data = [];
88
+ if (!isHome.value) {
89
+ const to = homeMenuPath.value;
90
+ const is = { transform: "scale(1.13)", transformOrigin: "8px -2px" };
91
+ data.push({ key: to, to, icon: icons.HomeOutlined, iconStyle: is });
92
+ }
93
+ levelData.value.forEach((d) => {
94
+ data.push({ key: d.path, title: d.title });
69
95
  });
96
+ return data;
70
97
  });
71
- const layoutClass = vue.computed(() => {
72
- const hasSide = sidebox.value || sidebar.value;
73
- const fixedSide = props2.fixedSidebar && !props2.fixedBody && hasSide;
74
- const logoAuto = props2.logoInHeader || topLayout.value || !hasSide;
75
- const hasMix = mixSidebar.value && sidebox.value;
76
- return [
77
- "ele-admin-layout",
78
- // 折叠侧栏
79
- { "ele-admin-collapse": props2.collapse },
80
- // 双侧栏折叠一级
81
- { "ele-admin-compact": props2.compact && sidebox.value },
82
- // 双侧栏
83
- { "ele-admin-mix-sidebar": hasMix },
84
- // 双侧栏时侧栏空数据
85
- { "ele-admin-none-sidebar": hasMix && !sidebar.value },
86
- // 固定顶栏
87
- { "ele-admin-fixed-header": props2.fixedHeader && !props2.fixedBody },
88
- // 固定侧栏
89
- { "ele-admin-fixed-sidebar": fixedSide },
90
- // 固定主体
91
- { "ele-admin-fixed-body": props2.fixedBody },
92
- // 暗色侧栏
93
- { "ele-admin-dark-sidebar": props2.sidebarStyle === "dark" },
94
- // 图标置于顶栏
95
- { "ele-admin-logo-auto": logoAuto && !mobile.value },
96
- // 开启页签栏
97
- { "ele-admin-open-tab": props2.tabBar && props2.tabBar !== "header" },
98
- // 卡片风格页签
99
- { "ele-admin-tab-card": props2.tabStyle === "button" },
100
- // 主体定宽
101
- { "ele-admin-limited": !props2.fluid },
102
- // 内容区域全屏
103
- { "ele-admin-maximized": props2.maximized },
104
- // 内容区域全屏不显示页签栏
105
- { "ele-admin-expanded": props2.maximized && props2.expanded },
106
- // 开启响应式
107
- { "ele-admin-mobile": mobile.value }
108
- ];
98
+ const routeLayout = vue.computed(() => {
99
+ if (navigation.value !== "top" && navigation.value !== "side" && !layoutSidebars.value.length && !layoutSideboxs.value.length) {
100
+ return "top";
101
+ }
102
+ return navigation.value;
109
103
  });
110
- const backTopSelector = vue.computed(() => {
111
- if (props2.backTopTarget) {
112
- return props2.backTopTarget;
104
+ const routeSideType = vue.computed(() => {
105
+ if (sideNavigation.value === "mix" && !layoutSidebars.value.length) {
106
+ return "box";
113
107
  }
114
- if (props2.fixedBody) {
115
- return ".ele-admin-layout.ele-admin-fixed-body>.ele-admin-main>.ele-admin-body>.ele-admin-wrapper>.ele-admin-content";
108
+ return sideNavigation.value;
109
+ });
110
+ const isBoxSide = vue.computed(() => routeSideType.value === "box");
111
+ const routeTabBar = vue.computed(() => {
112
+ return hideTabs.value ? false : props$1.tabBar;
113
+ });
114
+ const routeMaximized = vue.computed(() => {
115
+ const max = props$1.maximized;
116
+ if (hideHeader.value && hideSidebar.value && hideSidebox.value && !max) {
117
+ return true;
116
118
  }
117
- return "body";
119
+ return max === true && props$1.expanded ? "expanded" : max;
118
120
  });
119
- const sidebarCollapse = vue.computed(() => {
120
- return mobile.value || mixSidebar.value ? false : props2.collapse;
121
+ const sidebar = vue.computed(() => {
122
+ return routeLayout.value !== "top" && !isBoxSide.value || mobile.value;
121
123
  });
122
- const sidebarTheme = vue.computed(() => {
123
- const side = !(mixSidebar.value && !mobile.value);
124
- return side && props2.sidebarStyle === "dark" ? "dark" : "light";
124
+ const breadcrumbProps = vue.computed(() => {
125
+ if (!props$1.breadcrumb || props$1.breadcrumbSeparator == null) {
126
+ return props$1.breadcrumb;
127
+ }
128
+ if (props$1.breadcrumb === true) {
129
+ return { separator: props$1.breadcrumbSeparator };
130
+ }
131
+ return { separator: props$1.breadcrumbSeparator, ...props$1.breadcrumb };
125
132
  });
126
- const updateCollapse = (val) => {
127
- const collapse = typeof val === "boolean" ? val : !props2.collapse;
128
- if (val !== props2.collapse) {
129
- emit("update:collapse", collapse);
133
+ const backTopProps = vue.computed(() => {
134
+ const backTop = props$1.backTop;
135
+ const r = props$1.backTopRight;
136
+ const b = props$1.backTopBottom;
137
+ const vh = props$1.backTopVisibilityHeight;
138
+ const t = props$1.backTopTarget;
139
+ if (!backTop || vh == null && r == null && b == null && t == null) {
140
+ return backTop;
130
141
  }
131
- };
132
- const updateMaximized = (value) => {
133
- const maximize = value;
134
- emit("update:maximized", maximize);
135
- };
136
- const tabAdd = (data) => {
137
- emit("tabAdd", data);
138
- };
139
- const onTabClick = (option) => {
140
- emit("tabClick", option);
141
- };
142
- const onTabRemove = (option) => {
143
- emit("tabRemove", option);
144
- };
145
- const onTabContextMenu = (option) => {
146
- emit("tabContextMenu", option);
147
- };
148
- const onTabSortChange = (data) => {
149
- emit("tabSortChange", data);
150
- };
151
- const onLogoClick = () => {
152
- emit("logoClick", isHome.value);
153
- };
154
- const onSideMenuOpen = (index2, indexPath) => {
155
- emit("sideMenuOpen", index2, indexPath);
156
- };
157
- const onSideMenuClose = (index2, indexPath) => {
158
- emit("sideMenuClose", index2, indexPath);
159
- };
160
- const onHeadMenuOpen = (index2, indexPath) => {
161
- emit("headMenuOpen", index2, indexPath);
162
- };
163
- const onHeadMenuClose = (index2, indexPath) => {
164
- emit("headMenuClose", index2, indexPath);
165
- };
166
- const getContentElem = () => {
167
- return contentRef.value;
168
- };
169
- const onRouteChange = (current) => {
170
- const { path, fullPath, meta } = current;
171
- hideFooter.value = !!meta.hideFooter;
172
- const contentEl = getContentElem();
173
- if (props2.autoScrollTop && contentEl) {
174
- contentEl.scrollTop = 0;
142
+ const prop = backTop === true ? {} : { ...backTop };
143
+ if (vh != null && prop.visibilityHeight == null) {
144
+ prop.visibilityHeight = vh;
175
145
  }
176
- if (props2.redirectPath && path.startsWith(props2.redirectPath)) {
177
- return;
146
+ if (r != null && prop.right == null) {
147
+ prop.right = r;
178
148
  }
179
- hideSidebar.value = !!meta.hideSidebar;
180
- hideSidebox.value = !!meta.hideSidebox;
181
- const { active, title, matched, activeOther } = util.getRouteMatched(
182
- path,
183
- fullPath,
184
- meta,
185
- menuData.value
186
- );
187
- levelData.value = util.getMatchedLevels(
188
- matched,
189
- activeOther,
190
- current,
191
- menuData.value,
192
- tabData.value
193
- );
194
- const t = util.getRouteTab(
195
- current,
196
- tabData.value,
197
- homeMenuPath.value,
198
- title
199
- );
200
- isHome.value = t.home;
201
- tabActive.value = t.key;
202
- tabAdd(t);
203
- updateMenuActive(active, matched);
204
- if (mixLayout.value || mixSidebar.value) {
205
- splitMenuData();
149
+ if (b != null && prop.bottom == null) {
150
+ prop.bottom = b;
206
151
  }
207
- if (props2.responsive && mobile.value) {
208
- updateCollapse(true);
152
+ if (t != null && prop.target == null) {
153
+ prop.target = t;
209
154
  }
210
- };
211
- const updateMenuActive = (active, matched) => {
212
- const { active1, active2 } = util.getMixActive(matched);
213
- if (topLayout.value) {
214
- headerActive.value = active;
215
- sideboxActive.value = void 0;
216
- } else if (mixLayout.value) {
217
- headerActive.value = active1;
218
- sideboxActive.value = active2;
219
- } else {
220
- headerActive.value = void 0;
221
- sideboxActive.value = active1;
155
+ return prop;
156
+ });
157
+ const navMenuProps = vue.computed(() => {
158
+ const mProps = props$1.headerMenuProps;
159
+ const e = props$1.ellipsis;
160
+ const ep = props$1.ellipsisProps;
161
+ const mt = props$1.menuTrigger;
162
+ const mtet = props$1.menuTextEllipsisTooltip;
163
+ if (e == null && ep == null && mt == null && mtet == null) {
164
+ return mProps;
222
165
  }
223
- sidebarActive.value = active;
224
- state.headerActive = headerActive.value;
225
- state.sideboxActive = sideboxActive.value;
226
- state.sidebarActive = sidebarActive.value;
227
- };
228
- const splitMenuData = () => {
229
- var _a;
230
- if (!((_a = menuData.value) == null ? void 0 : _a.length)) {
231
- headerData.value = [];
232
- sideboxData.value = [];
233
- sidebarData.value = [];
234
- } else if (mobile.value) {
235
- headerData.value = [];
236
- sideboxData.value = [];
237
- sidebarData.value = menuData.value;
238
- } else if (topLayout.value) {
239
- headerData.value = menuData.value;
240
- sideboxData.value = [];
241
- sidebarData.value = [];
242
- } else if (mixLayout.value) {
243
- headerData.value = menuData.value.map((d) => {
244
- return {
245
- name: d.name,
246
- path: d.path,
247
- component: d.component,
248
- redirect: d.redirect,
249
- meta: d.meta,
250
- tempChildren: d.children
251
- };
252
- });
253
- const childMenus = util.getActiveChilds(
254
- menuData.value,
255
- headerActive.value
256
- );
257
- if (!childMenus.length) {
258
- sideboxData.value = [];
259
- sidebarData.value = [];
260
- } else if (mixSidebar.value) {
261
- sideboxData.value = childMenus.map((d) => {
262
- return {
263
- name: d.name,
264
- path: d.path,
265
- component: d.component,
266
- redirect: d.redirect,
267
- meta: d.meta,
268
- children: props2.collapse ? d.children : void 0,
269
- tempChildren: d.children
270
- };
271
- });
272
- sidebarData.value = util.getActiveChilds(
273
- childMenus,
274
- sideboxActive.value
275
- );
276
- } else {
277
- sideboxData.value = [];
278
- sidebarData.value = childMenus;
279
- }
280
- } else {
281
- headerData.value = [];
282
- if (mixSidebar.value) {
283
- sideboxData.value = menuData.value.map((d) => {
284
- return {
285
- name: d.name,
286
- path: d.path,
287
- component: d.component,
288
- redirect: d.redirect,
289
- meta: d.meta,
290
- children: props2.collapse ? d.children : void 0,
291
- tempChildren: d.children
292
- };
293
- });
294
- sidebarData.value = util.getActiveChilds(
295
- menuData.value,
296
- sideboxActive.value
297
- );
298
- } else {
299
- sideboxData.value = [];
300
- sidebarData.value = menuData.value;
301
- }
166
+ const prop = mProps == null ? {} : { ...mProps };
167
+ if (e != null && prop.ellipsis == null) {
168
+ prop.ellipsis = e;
169
+ }
170
+ if (ep != null && prop.ellipsisProps == null) {
171
+ prop.ellipsisProps = ep;
172
+ }
173
+ if (mt != null && prop.menuTrigger == null) {
174
+ prop.menuTrigger = mt;
175
+ }
176
+ if (mtet != null && prop.textEllipsisTooltip == null) {
177
+ prop.textEllipsisTooltip = mtet;
178
+ }
179
+ return prop;
180
+ });
181
+ const sideMenuProps = vue.computed(() => {
182
+ const mProps = props$1.sidebarMenuProps;
183
+ const s = props$1.sidebarOpeneds;
184
+ const u = props$1.uniqueOpened;
185
+ const c = props$1.colorfulIcon;
186
+ const t = props$1.tooltipEffect;
187
+ const mtet = props$1.menuTextEllipsisTooltip;
188
+ if (s == null && u == null && c == null && t == null && mtet == null) {
189
+ return mProps;
190
+ }
191
+ const prop = mProps == null ? {} : { ...mProps };
192
+ if (s != null && prop.defaultOpeneds == null) {
193
+ prop.defaultOpeneds = s;
194
+ }
195
+ if (u != null && prop.uniqueOpened == null) {
196
+ prop.uniqueOpened = u;
197
+ }
198
+ if (c != null && prop.colorful == null) {
199
+ prop.colorful = c;
200
+ }
201
+ if (t != null && prop.popperEffect == null) {
202
+ prop.popperEffect = t;
203
+ }
204
+ if (mtet != null && prop.textEllipsisTooltip == null) {
205
+ prop.textEllipsisTooltip = mtet;
206
+ }
207
+ return prop;
208
+ });
209
+ const boxMenuProps = vue.computed(() => {
210
+ const mProps = props$1.sideboxMenuProps;
211
+ const ci = props$1.colorfulIcon;
212
+ const te = props$1.tooltipEffect;
213
+ const mtet = props$1.menuTextEllipsisTooltip;
214
+ if (ci == null && te == null && mtet == null) {
215
+ return mProps;
216
+ }
217
+ const prop = mProps == null ? {} : { ...mProps };
218
+ if (ci != null && prop.popupColorful == null) {
219
+ prop.popupColorful = ci;
220
+ }
221
+ if (te != null && prop.popperEffect == null) {
222
+ prop.popperEffect = te;
223
+ }
224
+ if (mtet != null && prop.textEllipsisTooltip == null) {
225
+ prop.textEllipsisTooltip = mtet;
226
+ }
227
+ return prop;
228
+ });
229
+ const updateNavigation = () => {
230
+ const value = computedNavigation();
231
+ if (navigation.value !== value) {
232
+ navigation.value = value;
233
+ return true;
302
234
  }
303
- state.headerData = headerData.value;
304
- state.sideboxData = sideboxData.value;
305
- state.sidebarData = sidebarData.value;
306
235
  };
307
- const updateMenuData = () => {
308
- let temp;
309
- menuData.value = core.mapTree(props2.menus, (item) => {
310
- var _a, _b;
311
- if (!temp && !((_a = item.children) == null ? void 0 : _a.length)) {
312
- temp = item;
313
- }
314
- return {
315
- ...item,
316
- meta: {
317
- ...item.meta,
318
- title: routeI18n(item.path, item) || ((_b = item.meta) == null ? void 0 : _b.title)
319
- }
320
- };
321
- });
322
- splitMenuData();
323
- homeMenuPath.value = util.getHomePath(props2.homePath ?? (temp == null ? void 0 : temp.path));
236
+ const updateSideNavigation = () => {
237
+ const value = computedSideNavigation();
238
+ if (sideNavigation.value !== value) {
239
+ sideNavigation.value = value;
240
+ return true;
241
+ }
324
242
  };
325
- const updateTabData = () => {
326
- if (!props2.tabs) {
327
- tabData.value = [];
243
+ const resetMenuState = () => {
244
+ if (!state.isHover) {
328
245
  return;
329
246
  }
330
- tabData.value = props2.tabs.map((item) => {
331
- const title = routeI18n(item.path) || item.title;
332
- return { ...item, title };
247
+ startTimer(() => {
248
+ state.isHover = false;
249
+ const isMixSide = sideNavigation.value === "mix" || sideNavigation.value === "box";
250
+ if (navActive.value !== state.navActive) {
251
+ navActive.value = state.navActive;
252
+ if (isMixSide) {
253
+ boxData.value = state.boxData;
254
+ } else {
255
+ sideData.value = state.sideData;
256
+ }
257
+ }
258
+ if (isMixSide && boxActive.value !== state.boxActive) {
259
+ boxActive.value = state.boxActive;
260
+ sideData.value = state.sideData;
261
+ }
333
262
  });
334
263
  };
335
- const updateLevelData = () => {
336
- levelData.value = levelData.value.map((item) => {
337
- const t = util.findTabByPath(item.path, tabData.value);
338
- const title = (t == null ? void 0 : t.title) || routeI18n(item.path) || item.title;
339
- return { ...item, title };
340
- });
264
+ const updateCollapse = (collapse) => {
265
+ if (collapse !== props$1.collapse) {
266
+ emit("update:collapse", collapse);
267
+ }
341
268
  };
342
- const routeI18n = (path, menu) => {
343
- if (props2.i18n && path) {
344
- return props2.i18n({
345
- path,
346
- menu: menu ?? util.findMenuByPath(path, menuData.value),
347
- locale: props2.locale
348
- });
269
+ const updateMaximized = (maximized) => {
270
+ if (maximized !== props$1.maximized) {
271
+ emit("update:maximized", maximized);
349
272
  }
350
273
  };
351
- const onNavItemClick = (item, e) => {
274
+ const handleLogoClick = (e) => {
275
+ emit("logoClick", isHome.value, e);
276
+ };
277
+ const handleHeadMenuOpen = (index2, indexPath) => {
278
+ emit("headMenuOpen", index2, indexPath);
279
+ };
280
+ const handleHeadMenuClose = (index2, indexPath) => {
281
+ emit("headMenuClose", index2, indexPath);
282
+ };
283
+ const handleHeadMenuItemClick = (item, e) => {
352
284
  const path = item.index;
353
- const trigger = props2.navTrigger;
285
+ const trigger = props$1.navTrigger;
354
286
  if (!path || trigger !== "click" && trigger !== "hover") {
355
287
  return;
356
288
  }
357
- if (core.isExternalLink(item.index)) {
289
+ if (core.isExternalLink(path)) {
358
290
  e.stopPropagation();
359
- if (props2.beforeClick && props2.beforeClick(item, e) === false) {
291
+ if (props$1.beforeClick && props$1.beforeClick(item, e) === false) {
360
292
  return;
361
293
  }
362
294
  window.open(path);
363
295
  return;
364
296
  }
365
- const temp = util.getActiveChilds(headerData.value, path, "tempChildren");
366
- const isChild = !temp.some((d) => {
297
+ const childMenus = util.getActiveChilds(navData.value, path, "tempChildren");
298
+ const isChild = !childMenus.some((d) => {
367
299
  var _a;
368
300
  return !((_a = d.meta) == null ? void 0 : _a.hide);
369
301
  });
@@ -371,115 +303,87 @@ const _sfc_main = vue.defineComponent({
371
303
  e.stopPropagation();
372
304
  return;
373
305
  }
374
- if (props2.beforeClick && props2.beforeClick(item, e) === false) {
306
+ if (props$1.beforeClick && props$1.beforeClick(item, e) === false) {
375
307
  return;
376
308
  }
377
- if (isChild) {
378
- if (path !== vue.unref(currentRoute).fullPath) {
379
- push(path);
380
- }
309
+ if (isChild && path !== vue.unref(currentRoute).fullPath) {
310
+ push(path);
381
311
  return;
382
312
  }
383
- if (headerActive.value !== path) {
384
- headerActive.value = path;
385
- if (!mixSidebar.value) {
386
- sidebarData.value = temp;
313
+ e.stopPropagation();
314
+ if (navActive.value !== path) {
315
+ navActive.value = path;
316
+ const isMixSide = sideNavigation.value === "mix" || sideNavigation.value === "box";
317
+ const isCollapse = sideNavigation.value === "box" || props$1.collapse && !mobile.value;
318
+ if (!isMixSide) {
319
+ sideData.value = childMenus;
387
320
  return;
388
321
  }
389
- sideboxData.value = temp.map((d) => {
322
+ boxData.value = childMenus.map((d) => {
390
323
  return {
391
324
  ...d,
392
- children: props2.collapse ? d.children : void 0,
325
+ children: isCollapse ? d.children : void 0,
393
326
  tempChildren: d.children
394
327
  };
395
328
  });
396
329
  }
397
330
  };
398
- const onNavItemMouseenter = (item, e) => {
399
- if (!mixLayout.value) {
331
+ const handleHeadMenuItemMouseenter = (item, e) => {
332
+ if (navigation.value !== "mix") {
400
333
  return;
401
334
  }
402
- if (state.menuTimer != null) {
403
- clearTimeout(state.menuTimer);
404
- state.menuTimer = null;
405
- }
335
+ stopTimer();
406
336
  const path = item.index;
407
- const trigger = props2.navTrigger;
408
- if (trigger !== "hover" || !path || core.isExternalLink(path)) {
337
+ const trigger = props$1.navTrigger;
338
+ if (trigger !== "hover" || !path) {
409
339
  return;
410
340
  }
411
- const temp = util.getActiveChilds(headerData.value, path, "tempChildren");
412
- if (!temp.some((d) => {
413
- var _a;
414
- return !((_a = d.meta) == null ? void 0 : _a.hide);
415
- })) {
341
+ if (!core.isExternalLink(path) && props$1.beforeClick && props$1.beforeClick(item, e) === false) {
416
342
  return;
417
343
  }
418
- if (props2.beforeClick && props2.beforeClick(item, e) === false) {
419
- return;
420
- }
421
- if (headerActive.value !== path) {
344
+ const temp = util.getActiveChilds(navData.value, path, "tempChildren");
345
+ if (navActive.value !== path) {
422
346
  state.isHover = true;
423
- headerActive.value = path;
424
- if (!mixSidebar.value) {
425
- sidebarData.value = temp;
347
+ navActive.value = temp.some((d) => {
348
+ var _a;
349
+ return !((_a = d.meta) == null ? void 0 : _a.hide);
350
+ }) ? path : void 0;
351
+ const isMixSide = sideNavigation.value === "mix" || sideNavigation.value === "box";
352
+ if (!isMixSide) {
353
+ sideData.value = temp;
426
354
  return;
427
355
  }
428
- sideboxData.value = temp.map((d) => {
356
+ boxData.value = temp.map((d) => {
429
357
  return {
430
358
  ...d,
431
- children: props2.collapse ? d.children : void 0,
359
+ children: props$1.collapse ? d.children : void 0,
432
360
  tempChildren: d.children
433
361
  };
434
362
  });
435
363
  }
436
364
  };
437
- const onNavMouseEnter = () => {
438
- if (state.menuTimer != null) {
439
- clearTimeout(state.menuTimer);
440
- state.menuTimer = null;
441
- }
365
+ const handleHeadMouseenter = () => {
366
+ stopTimer();
442
367
  };
443
- const onNavMouseLeave = () => {
444
- if (!state.isHover) {
445
- return;
446
- }
447
- if (state.menuTimer != null) {
448
- clearTimeout(state.menuTimer);
449
- state.menuTimer = null;
450
- }
451
- state.menuTimer = setTimeout(() => {
452
- state.isHover = false;
453
- if (headerActive.value !== state.headerActive) {
454
- headerActive.value = state.headerActive;
455
- if (mixSidebar.value) {
456
- sideboxData.value = state.sideboxData;
457
- } else {
458
- sidebarData.value = state.sidebarData;
459
- }
460
- }
461
- if (mixSidebar.value && sideboxActive.value !== state.sideboxActive) {
462
- sideboxActive.value = state.sideboxActive;
463
- sidebarData.value = state.sidebarData;
464
- }
465
- }, props2.menuHoverTimeout);
368
+ const handleHeadMouseleave = () => {
369
+ resetMenuState();
466
370
  };
467
- const onBoxItemClick = (item, e) => {
371
+ const handleBoxMenuItemClick = (item, e) => {
468
372
  const path = item.index;
469
- const trigger = props2.boxTrigger;
373
+ const trigger = props$1.boxTrigger;
470
374
  if (!path || trigger !== "click" && trigger !== "hover") {
471
375
  return;
472
376
  }
473
377
  if (core.isExternalLink(path)) {
474
378
  e.stopPropagation();
475
- if (props2.beforeClick && props2.beforeClick(item, e) === false) {
379
+ if (props$1.beforeClick && props$1.beforeClick(item, e) === false) {
476
380
  return;
477
381
  }
478
382
  window.open(path);
479
383
  return;
480
384
  }
481
- if (props2.collapse) {
482
- if (props2.beforeClick && props2.beforeClick(item, e) === false) {
385
+ if (props$1.collapse) {
386
+ if (props$1.beforeClick && props$1.beforeClick(item, e) === false) {
483
387
  return;
484
388
  }
485
389
  if (path !== vue.unref(currentRoute).fullPath) {
@@ -487,8 +391,8 @@ const _sfc_main = vue.defineComponent({
487
391
  }
488
392
  return;
489
393
  }
490
- const temp = util.getActiveChilds(sideboxData.value, path, "tempChildren");
491
- const isChild = !temp.some((d) => {
394
+ const childMenus = util.getActiveChilds(boxData.value, path, "tempChildren");
395
+ const isChild = !childMenus.some((d) => {
492
396
  var _a;
493
397
  return !((_a = d.meta) == null ? void 0 : _a.hide);
494
398
  });
@@ -496,86 +400,61 @@ const _sfc_main = vue.defineComponent({
496
400
  e.stopPropagation();
497
401
  return;
498
402
  }
499
- if (props2.beforeClick && props2.beforeClick(item, e) === false) {
403
+ if (props$1.beforeClick && props$1.beforeClick(item, e) === false) {
500
404
  return;
501
405
  }
502
- if (isChild) {
503
- if (path !== vue.unref(currentRoute).fullPath) {
504
- push(path);
505
- }
406
+ if (isChild && path !== vue.unref(currentRoute).fullPath) {
407
+ push(path);
506
408
  return;
507
409
  }
508
- if (sideboxActive.value !== path) {
509
- sideboxActive.value = path;
510
- sidebarData.value = temp;
410
+ e.stopPropagation();
411
+ if (boxActive.value !== path) {
412
+ boxActive.value = path;
413
+ sideData.value = childMenus;
511
414
  }
512
415
  };
513
- const onBoxItemMouseenter = (item, e) => {
514
- if (props2.collapse) {
416
+ const handleBoxMenuItemMouseenter = (item, e) => {
417
+ if (props$1.collapse) {
515
418
  return;
516
419
  }
517
- if (state.menuTimer != null) {
518
- clearTimeout(state.menuTimer);
519
- state.menuTimer = null;
520
- }
420
+ stopTimer();
521
421
  const path = item.index;
522
- const trigger = props2.boxTrigger;
523
- if (trigger !== "hover" || !path || core.isExternalLink(path)) {
422
+ const trigger = props$1.boxTrigger;
423
+ if (trigger !== "hover" || !path) {
524
424
  return;
525
425
  }
526
- const temp = util.getActiveChilds(sideboxData.value, path, "tempChildren");
527
- if (!temp.some((d) => {
528
- var _a;
529
- return !((_a = d.meta) == null ? void 0 : _a.hide);
530
- })) {
426
+ if (!core.isExternalLink(path) && props$1.beforeClick && props$1.beforeClick(item, e) === false) {
531
427
  return;
532
428
  }
533
- if (props2.beforeClick && props2.beforeClick(item, e) === false) {
534
- return;
535
- }
536
- if (sideboxActive.value !== path) {
429
+ const temp = util.getActiveChilds(boxData.value, path, "tempChildren");
430
+ if (boxActive.value !== path) {
537
431
  state.isHover = true;
538
- sideboxActive.value = path;
539
- sidebarData.value = temp;
432
+ boxActive.value = temp.some((d) => {
433
+ var _a;
434
+ return !((_a = d.meta) == null ? void 0 : _a.hide);
435
+ }) ? path : void 0;
436
+ sideData.value = temp;
540
437
  }
541
438
  };
542
- const onBoxMouseEnter = () => {
543
- if (state.menuTimer != null) {
544
- clearTimeout(state.menuTimer);
545
- state.menuTimer = null;
546
- }
439
+ const handleBoxMouseEnter = () => {
440
+ stopTimer();
547
441
  };
548
- const onBoxMouseLeave = () => {
549
- if (!state.isHover) {
550
- return;
551
- }
552
- if (state.menuTimer != null) {
553
- clearTimeout(state.menuTimer);
554
- state.menuTimer = null;
555
- }
556
- state.menuTimer = setTimeout(() => {
557
- state.isHover = false;
558
- if (headerActive.value !== state.headerActive) {
559
- headerActive.value = state.headerActive;
560
- if (mixSidebar.value) {
561
- sideboxData.value = state.sideboxData;
562
- } else {
563
- sidebarData.value = state.sidebarData;
564
- }
565
- }
566
- if (mixSidebar.value && sideboxActive.value !== state.sideboxActive) {
567
- sideboxActive.value = state.sideboxActive;
568
- sidebarData.value = state.sidebarData;
569
- }
570
- }, props2.menuHoverTimeout);
442
+ const handleBoxMouseLeave = () => {
443
+ resetMenuState();
444
+ };
445
+ const handleSideMenuOpen = (index2, indexPath) => {
446
+ emit("sideMenuOpen", index2, indexPath);
447
+ };
448
+ const handleSideMenuClose = (index2, indexPath) => {
449
+ emit("sideMenuClose", index2, indexPath);
571
450
  };
572
- const onMenuItemClick = (item, e) => {
451
+ const handleSideMenuItemClick = (item, e) => {
573
452
  const path = item.index;
574
- const trigger = props2.itemTrigger;
453
+ const trigger = props$1.itemTrigger;
575
454
  if (!path || trigger !== "click" && trigger !== "hover") {
576
455
  return;
577
456
  }
578
- if (props2.beforeClick && props2.beforeClick(item, e) === false) {
457
+ if (props$1.beforeClick && props$1.beforeClick(item, e) === false) {
579
458
  return;
580
459
  }
581
460
  if (core.isExternalLink(path)) {
@@ -583,94 +462,259 @@ const _sfc_main = vue.defineComponent({
583
462
  window.open(path);
584
463
  return;
585
464
  }
586
- sidebarActive.value = path;
465
+ sideActive.value = path;
587
466
  if (path !== vue.unref(currentRoute).fullPath) {
588
467
  push(path);
589
468
  }
590
469
  };
591
- const onSideMouseEnter = () => {
592
- if (state.menuTimer != null) {
593
- clearTimeout(state.menuTimer);
594
- state.menuTimer = null;
470
+ const handleSideMouseEnter = () => {
471
+ stopTimer();
472
+ };
473
+ const handleSideMouseLeave = () => {
474
+ resetMenuState();
475
+ };
476
+ const handleTabClick = (option) => {
477
+ const key = option.name;
478
+ const item = util.findTabByKey(key, props$1.tabs);
479
+ const opt = { key, item, active: tabActive.value };
480
+ emit("tabClick", opt);
481
+ };
482
+ const handleTabRemove = (key) => {
483
+ const item = util.findTabByKey(key, props$1.tabs);
484
+ const opt = { key, item, active: tabActive.value };
485
+ emit("tabRemove", opt);
486
+ };
487
+ const handleTabContextMenu = (option) => {
488
+ const opt = {
489
+ key: option.name,
490
+ item: util.findTabByKey(option.name, props$1.tabs),
491
+ active: tabActive.value,
492
+ command: option.command
493
+ };
494
+ emit("tabContextMenu", opt);
495
+ };
496
+ const handleTabSortChange = (data) => {
497
+ const result = data.map((d) => {
498
+ return util.findTabByKey(d.name, props$1.tabs);
499
+ });
500
+ if (props$1.fixedHome && props$1.tabs != null) {
501
+ const homeTab = props$1.tabs.find((t) => t.home);
502
+ if (homeTab) {
503
+ result.unshift(homeTab);
504
+ }
595
505
  }
506
+ emit("tabSortChange", result);
596
507
  };
597
- const onSideMouseLeave = () => {
598
- if (!state.isHover) {
508
+ const handleTabAdd = (data) => {
509
+ emit("tabAdd", data);
510
+ };
511
+ const getContentElem = () => {
512
+ if (!layoutRef.value) {
513
+ return null;
514
+ }
515
+ return layoutRef.value.getContentEl();
516
+ };
517
+ const onRouteChange = (route) => {
518
+ const { path, meta } = route;
519
+ hideFooter.value = !!meta.hideFooter;
520
+ const contentEl = getContentElem();
521
+ if (props$1.autoScrollTop && contentEl) {
522
+ contentEl.scrollTop = 0;
523
+ }
524
+ if (props$1.redirectPath && path.startsWith(props$1.redirectPath)) {
599
525
  return;
600
526
  }
601
- if (state.menuTimer != null) {
602
- clearTimeout(state.menuTimer);
603
- state.menuTimer = null;
527
+ hideSidebar.value = !!meta.hideSidebar;
528
+ hideSidebox.value = props$1.sidebarLayout === "mix" ? !!meta.hideSidebox : true;
529
+ hideHeader.value = !!meta.hideHeader;
530
+ hideTabs.value = !!meta.hideTabs;
531
+ const navigationIsChanged = updateNavigation();
532
+ const sideNavigationIsChanged = updateSideNavigation();
533
+ const { active, title, matched, activeOther } = util.getRouteMatched(
534
+ route,
535
+ menuData.value
536
+ );
537
+ levelData.value = util.getMatchedLevels(
538
+ matched,
539
+ activeOther,
540
+ route,
541
+ menuData.value,
542
+ tabData.value
543
+ );
544
+ const t = util.getRouteTab(route, tabData.value, homeMenuPath.value, title);
545
+ isHome.value = t.home;
546
+ tabActive.value = t.key;
547
+ handleTabAdd(t);
548
+ if (!navigationIsChanged && !sideNavigationIsChanged) {
549
+ updateMenuActive(active, matched);
550
+ if (navigation.value === "mix" || sideNavigation.value === "mix" || sideNavigation.value === "box") {
551
+ splitMenuData();
552
+ }
553
+ }
554
+ if (mobile.value) {
555
+ updateCollapse(true);
604
556
  }
605
- state.menuTimer = setTimeout(() => {
606
- state.isHover = false;
607
- if (headerActive.value !== state.headerActive) {
608
- headerActive.value = state.headerActive;
609
- if (mixSidebar.value) {
610
- sideboxData.value = state.sideboxData;
611
- } else {
612
- sidebarData.value = state.sidebarData;
613
- }
557
+ };
558
+ const updateMenuActive = (active, matched) => {
559
+ const [active1, active2] = (matched == null ? void 0 : matched.length) ? [matched[0].path, (matched[1] ?? matched[0]).path] : [];
560
+ if (navigation.value === "top") {
561
+ navActive.value = active;
562
+ boxActive.value = void 0;
563
+ } else if (navigation.value === "mix") {
564
+ navActive.value = active1;
565
+ boxActive.value = active2;
566
+ } else {
567
+ navActive.value = void 0;
568
+ boxActive.value = active1;
569
+ }
570
+ sideActive.value = active;
571
+ state.navActive = navActive.value;
572
+ state.boxActive = boxActive.value;
573
+ state.sideActive = sideActive.value;
574
+ };
575
+ const splitMenuData = () => {
576
+ var _a;
577
+ const isTopNav = navigation.value === "top";
578
+ const isMixNav = navigation.value === "mix";
579
+ const isMixSide = sideNavigation.value === "mix" || sideNavigation.value === "box";
580
+ const isCollapse = sideNavigation.value === "box" || props$1.collapse && !mobile.value;
581
+ if (!((_a = menuData.value) == null ? void 0 : _a.length)) {
582
+ navData.value = [];
583
+ boxData.value = [];
584
+ sideData.value = [];
585
+ } else if (isTopNav) {
586
+ navData.value = menuData.value;
587
+ boxData.value = [];
588
+ sideData.value = [];
589
+ } else if (isMixNav) {
590
+ navData.value = menuData.value.map((d) => {
591
+ return { ...d, children: void 0, tempChildren: d.children };
592
+ });
593
+ const childMenus = util.getActiveChilds(menuData.value, navActive.value);
594
+ if (!childMenus.length) {
595
+ boxData.value = [];
596
+ sideData.value = [];
597
+ } else if (isMixSide) {
598
+ boxData.value = childMenus.map((d) => {
599
+ return {
600
+ ...d,
601
+ children: isCollapse ? d.children : void 0,
602
+ tempChildren: d.children
603
+ };
604
+ });
605
+ sideData.value = util.getActiveChilds(childMenus, boxActive.value);
606
+ } else {
607
+ boxData.value = [];
608
+ sideData.value = childMenus;
614
609
  }
615
- if (mixSidebar.value && sideboxActive.value !== state.sideboxActive) {
616
- sideboxActive.value = state.sideboxActive;
617
- sidebarData.value = state.sidebarData;
610
+ } else {
611
+ navData.value = [];
612
+ if (isMixSide) {
613
+ boxData.value = menuData.value.map((d) => {
614
+ return {
615
+ ...d,
616
+ children: isCollapse ? d.children : void 0,
617
+ tempChildren: d.children
618
+ };
619
+ });
620
+ sideData.value = util.getActiveChilds(menuData.value, boxActive.value);
621
+ } else {
622
+ boxData.value = [];
623
+ sideData.value = menuData.value;
624
+ }
625
+ }
626
+ state.navData = navData.value;
627
+ state.boxData = boxData.value;
628
+ state.sideData = sideData.value;
629
+ };
630
+ const updateMenuData = () => {
631
+ let home;
632
+ menuData.value = core.mapTree(props$1.menus, (item) => {
633
+ var _a, _b;
634
+ if (!home && !((_a = item.children) == null ? void 0 : _a.length)) {
635
+ home = item;
618
636
  }
619
- }, props2.menuHoverTimeout);
637
+ const title = routeI18n(item.path, item) || ((_b = item.meta) == null ? void 0 : _b.title);
638
+ return { ...item, meta: { ...item.meta, title } };
639
+ });
640
+ splitMenuData();
641
+ homeMenuPath.value = props$1.homePath || (home == null ? void 0 : home.path) || "/";
642
+ };
643
+ const updateTabData = () => {
644
+ if (!props$1.tabs) {
645
+ tabData.value = [];
646
+ return;
647
+ }
648
+ tabData.value = props$1.tabs.map((item) => {
649
+ var _a;
650
+ const m = util.findMenuByPath(item.path, menuData.value);
651
+ const title = ((_a = m == null ? void 0 : m.meta) == null ? void 0 : _a.title) || routeI18n(item.path) || item.title;
652
+ return { ...item, title };
653
+ });
654
+ };
655
+ const updateLevelData = () => {
656
+ levelData.value = levelData.value.map((item) => {
657
+ var _a;
658
+ const t = util.findTabByPath(item.path, tabData.value);
659
+ const m = util.findMenuByPath(item.path, menuData.value);
660
+ const title = (t == null ? void 0 : t.title) || ((_a = m == null ? void 0 : m.meta) == null ? void 0 : _a.title) || routeI18n(item.path);
661
+ return { ...item, title: title || item.title };
662
+ });
663
+ };
664
+ const routeI18n = (path, menu) => {
665
+ if (props$1.i18n && path) {
666
+ return props$1.i18n({ path, menu, locale: props$1.locale });
667
+ }
620
668
  };
621
669
  vue.watch(
622
- () => props2.menus,
670
+ () => props$1.menus,
623
671
  () => {
624
672
  updateMenuData();
625
673
  },
626
674
  { deep: true }
627
675
  );
628
676
  vue.watch(
629
- () => props2.tabs,
677
+ () => props$1.tabs,
630
678
  () => {
631
679
  updateTabData();
632
680
  updateLevelData();
633
681
  },
634
682
  { deep: true }
635
683
  );
684
+ vue.watch([() => props$1.layout, mobile], () => {
685
+ updateNavigation();
686
+ });
636
687
  vue.watch(
637
- () => props2.layout,
688
+ () => props$1.sidebarLayout,
638
689
  () => {
639
- const { path, fullPath, meta } = vue.unref(currentRoute);
640
- const { active, matched } = util.getRouteMatched(
641
- path,
642
- fullPath,
643
- meta,
644
- menuData.value
645
- );
646
- updateMenuActive(active, matched);
647
- splitMenuData();
690
+ updateSideNavigation();
648
691
  }
649
692
  );
650
- vue.watch([() => props2.sidebarLayout, mobile], () => {
693
+ vue.watch([navigation, sideNavigation], () => {
694
+ const route = vue.unref(currentRoute);
695
+ const { active, matched } = util.getRouteMatched(route, menuData.value);
696
+ updateMenuActive(active, matched);
651
697
  splitMenuData();
652
698
  });
653
699
  vue.watch(
654
- () => props2.collapse,
700
+ () => props$1.collapse,
655
701
  () => {
656
- if (!mixSidebar.value) {
657
- return;
658
- }
659
- if (props2.collapse) {
660
- sideboxData.value = sideboxData.value.map((d) => {
661
- return { ...d, children: d.tempChildren };
662
- });
663
- state.sideboxData = sideboxData.value;
664
- return;
702
+ if (sideNavigation.value === "mix" && !mobile.value) {
703
+ if (props$1.collapse) {
704
+ boxData.value = boxData.value.map((d) => {
705
+ return { ...d, children: d.tempChildren };
706
+ });
707
+ } else {
708
+ boxData.value = boxData.value.map((d) => {
709
+ return { ...d, children: void 0 };
710
+ });
711
+ }
712
+ state.boxData = boxData.value;
665
713
  }
666
- sideboxData.value = sideboxData.value.map((d) => {
667
- return { ...d, children: void 0 };
668
- });
669
- state.sideboxData = sideboxData.value;
670
714
  }
671
715
  );
672
716
  vue.watch(
673
- () => props2.locale,
717
+ () => props$1.locale,
674
718
  () => {
675
719
  updateMenuData();
676
720
  updateTabData();
@@ -678,23 +722,6 @@ const _sfc_main = vue.defineComponent({
678
722
  },
679
723
  { immediate: true }
680
724
  );
681
- vue.watch(
682
- [
683
- () => props2.layout,
684
- () => props2.sidebarLayout,
685
- () => props2.fixedHeader,
686
- () => props2.fixedSidebar,
687
- () => props2.fixedBody,
688
- () => props2.maximized,
689
- () => props2.logoInHeader,
690
- sidebar,
691
- sidebox,
692
- mobile
693
- ],
694
- () => {
695
- disableTransition();
696
- }
697
- );
698
725
  vue.watch(
699
726
  currentRoute,
700
727
  (route) => {
@@ -702,90 +729,124 @@ const _sfc_main = vue.defineComponent({
702
729
  },
703
730
  { immediate: true }
704
731
  );
705
- vue.watch([() => props2.tabBar, () => props2.keepAlive], () => {
706
- layoutProvide.keepAlive = props2.tabBar && props2.keepAlive;
732
+ const layoutProvide = vue.shallowReactive({
733
+ keepAlive: props$1.tabBar && props$1.keepAlive,
734
+ responsive: props$1.responsive
735
+ });
736
+ vue.provide(props.PRO_LAYOUT_KEY, layoutProvide);
737
+ vue.watch([() => props$1.tabBar, () => props$1.keepAlive], () => {
738
+ layoutProvide.keepAlive = props$1.tabBar && props$1.keepAlive;
739
+ });
740
+ const [media, startMedia, stopMedia] = hook.useMediaQuery(mobileQuery, () => {
741
+ const isMobile = props$1.responsive ? media.matches : false;
742
+ if (mobile.value !== isMobile) {
743
+ mobile.value = isMobile;
744
+ updateCollapse(mobile.value);
745
+ }
707
746
  });
708
747
  vue.watch(
709
- () => props2.responsive,
748
+ () => props$1.responsive,
710
749
  () => {
711
- layoutProvide.responsive = props2.responsive;
712
- }
750
+ layoutProvide.responsive = props$1.responsive;
751
+ if (props$1.responsive) {
752
+ startMedia();
753
+ } else {
754
+ stopMedia();
755
+ }
756
+ },
757
+ { immediate: true }
713
758
  );
714
- vue.watch(modalsRef, () => {
715
- layoutProvide.modalsEl = modalsRef.value;
716
- });
717
- const layoutProvide = vue.shallowReactive({
718
- keepAlive: props2.tabBar && props2.keepAlive,
719
- responsive: props2.responsive,
720
- modalsEl: modalsRef.value
759
+ hook.useWindowListener("keydown", (e) => {
760
+ if (e.keyCode === 27 && props$1.compressOnEsc && props$1.maximized) {
761
+ e.stopPropagation();
762
+ updateMaximized(false);
763
+ }
721
764
  });
722
- vue.provide(receiver.LAYOUT_KEY, layoutProvide);
723
- util.useWindowListener(
724
- {
725
- onEscKeydown: (e) => {
726
- if (props2.compressOnEsc && props2.maximized) {
727
- e.stopPropagation();
728
- updateMaximized(false);
729
- }
730
- },
731
- onMobileChange: (isMobile) => {
732
- if (mobile.value !== isMobile) {
733
- mobile.value = isMobile;
734
- updateCollapse(mobile.value);
735
- }
736
- },
737
- onBodySizeChange: () => {
738
- var _a;
739
- emit("bodySizeChange", {
740
- mobile: mobile.value,
741
- width: (_a = getContentElem()) == null ? void 0 : _a.clientWidth
742
- });
765
+ const handleResize = () => {
766
+ const el = getContentElem();
767
+ if (el) {
768
+ const width = el.clientWidth;
769
+ const height = el.clientHeight;
770
+ if (width !== state.contentWidth || height !== state.contentHeight) {
771
+ state.contentWidth = width;
772
+ state.contentHeight = height;
773
+ emit("bodySizeChange", { width, height, mobile: mobile.value });
743
774
  }
744
- },
745
- props2
775
+ }
776
+ };
777
+ hook.useWindowListener(core.debounce(() => handleResize(), 500));
778
+ const [startBodyResizeTimer] = hook.useTimer(600);
779
+ vue.watch([() => props$1.collapse, () => props$1.compact], () => {
780
+ startBodyResizeTimer(() => {
781
+ handleResize();
782
+ });
783
+ });
784
+ vue.watch(
785
+ [
786
+ routeLayout,
787
+ routeSideType,
788
+ routeTabBar,
789
+ routeMaximized,
790
+ () => props$1.fluid
791
+ ],
792
+ () => {
793
+ vue.nextTick(() => {
794
+ handleResize();
795
+ });
796
+ }
746
797
  );
798
+ vue.onMounted(() => {
799
+ handleResize();
800
+ });
747
801
  return {
748
- contentRef,
749
- modalsRef,
750
- levelData,
802
+ layoutRef,
803
+ navActive,
804
+ sideActive,
805
+ boxActive,
751
806
  tabData,
752
807
  tabActive,
753
- headerData,
754
- headerActive,
755
- sidebarData,
756
- sidebarActive,
757
- sideboxData,
758
- sideboxActive,
759
- hideFooter,
808
+ levelData,
809
+ mobile,
760
810
  homeMenuPath,
761
811
  isHome,
762
- sidebox,
812
+ hideFooter,
813
+ layoutHeaders,
814
+ layoutSidebars,
815
+ layoutSideboxs,
816
+ layoutTabs,
817
+ layoutLevels,
818
+ routeLayout,
819
+ routeSideType,
820
+ isBoxSide,
821
+ routeTabBar,
822
+ routeMaximized,
763
823
  sidebar,
764
- layoutClass,
765
- backTopSelector,
766
- sidebarCollapse,
767
- sidebarTheme,
824
+ breadcrumbProps,
825
+ backTopProps,
826
+ navMenuProps,
827
+ sideMenuProps,
828
+ boxMenuProps,
768
829
  updateCollapse,
769
- onTabClick,
770
- onTabRemove,
771
- onTabContextMenu,
772
- onTabSortChange,
773
- onLogoClick,
774
- onSideMenuOpen,
775
- onSideMenuClose,
776
- onHeadMenuOpen,
777
- onHeadMenuClose,
778
- onNavItemClick,
779
- onNavItemMouseenter,
780
- onNavMouseEnter,
781
- onNavMouseLeave,
782
- onBoxItemClick,
783
- onBoxItemMouseenter,
784
- onBoxMouseEnter,
785
- onBoxMouseLeave,
786
- onMenuItemClick,
787
- onSideMouseEnter,
788
- onSideMouseLeave
830
+ handleLogoClick,
831
+ handleHeadMenuOpen,
832
+ handleHeadMenuClose,
833
+ handleHeadMenuItemClick,
834
+ handleHeadMenuItemMouseenter,
835
+ handleHeadMouseenter,
836
+ handleHeadMouseleave,
837
+ handleBoxMenuItemClick,
838
+ handleBoxMenuItemMouseenter,
839
+ handleBoxMouseEnter,
840
+ handleBoxMouseLeave,
841
+ handleSideMenuOpen,
842
+ handleSideMenuClose,
843
+ handleSideMenuItemClick,
844
+ handleSideMouseEnter,
845
+ handleSideMouseLeave,
846
+ handleTabClick,
847
+ handleTabRemove,
848
+ handleTabContextMenu,
849
+ handleTabSortChange
789
850
  };
790
851
  }
791
852
  });
@@ -796,235 +857,170 @@ const _export_sfc = (sfc, props2) => {
796
857
  }
797
858
  return target;
798
859
  };
799
- const _hoisted_1 = { class: "ele-admin-body" };
800
- const _hoisted_2 = { class: "ele-admin-wrapper" };
801
- const _hoisted_3 = {
802
- ref: "contentRef",
803
- class: "ele-admin-content"
804
- };
805
- const _hoisted_4 = {
806
- ref: "modalsRef",
807
- class: "ele-admin-modals"
808
- };
809
860
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
810
- const _component_ProHeader = vue.resolveComponent("ProHeader");
811
- const _component_ProSidebox = vue.resolveComponent("ProSidebox");
812
- const _component_ProSidebar = vue.resolveComponent("ProSidebar");
813
- const _component_ProTabs = vue.resolveComponent("ProTabs");
814
861
  const _component_ProIframe = vue.resolveComponent("ProIframe");
815
- const _component_ElBacktop = vue.resolveComponent("ElBacktop");
816
- const _component_ReceiverView = vue.resolveComponent("ReceiverView");
817
- return vue.openBlock(), vue.createElementBlock("div", {
818
- class: vue.normalizeClass(_ctx.layoutClass)
862
+ const _component_EleAdminLayout = vue.resolveComponent("EleAdminLayout");
863
+ return vue.openBlock(), vue.createBlock(_component_EleAdminLayout, {
864
+ ref: "layoutRef",
865
+ height: _ctx.height,
866
+ headerMenus: _ctx.layoutHeaders,
867
+ headerActive: _ctx.navActive,
868
+ sidebarMenus: _ctx.layoutSidebars,
869
+ sidebarActive: _ctx.sideActive,
870
+ sideboxMenus: _ctx.layoutSideboxs,
871
+ sideboxActive: _ctx.isBoxSide || _ctx.collapse && !_ctx.mobile ? _ctx.sideActive : _ctx.boxActive,
872
+ tabs: _ctx.layoutTabs,
873
+ tabActive: _ctx.tabActive,
874
+ levels: _ctx.layoutLevels,
875
+ collapse: _ctx.collapse,
876
+ compact: _ctx.compact,
877
+ maximized: _ctx.routeMaximized,
878
+ tabBar: _ctx.routeTabBar,
879
+ breadcrumb: _ctx.breadcrumbProps,
880
+ backTop: _ctx.backTopProps,
881
+ headerMenuProps: _ctx.navMenuProps,
882
+ sidebarMenuProps: _ctx.sideMenuProps,
883
+ sideboxMenuProps: _ctx.boxMenuProps,
884
+ layout: _ctx.routeLayout,
885
+ sidebarLayout: _ctx.routeSideType,
886
+ headerStyle: _ctx.headerStyle,
887
+ sidebarStyle: _ctx.sidebarStyle,
888
+ tabStyle: _ctx.tabStyle,
889
+ fixedHeader: _ctx.fixedHeader,
890
+ fixedSidebar: _ctx.fixedSidebar,
891
+ fixedBody: _ctx.fixedBody,
892
+ logoInHeader: _ctx.logoInHeader,
893
+ fixedHome: _ctx.fixedHome,
894
+ homePath: _ctx.homeMenuPath,
895
+ isHome: _ctx.isHome,
896
+ tabContextMenu: _ctx.tabContextMenu,
897
+ tabContextMenus: _ctx.tabContextMenus,
898
+ tabSortable: _ctx.tabSortable,
899
+ headerTitleSlot: _ctx.headerTitleSlot,
900
+ headerIconSlot: _ctx.headerIconSlot,
901
+ sidebarTitleSlot: _ctx.sidebarTitleSlot,
902
+ sidebarIconSlot: _ctx.sidebarIconSlot,
903
+ sideboxTitleSlot: _ctx.sideboxTitleSlot,
904
+ sideboxIconSlot: _ctx.sideboxIconSlot,
905
+ headerCustomStyle: _ctx.headerCustomStyle,
906
+ sidebarCustomStyle: _ctx.sidebarCustomStyle,
907
+ sideboxCustomStyle: _ctx.sideboxCustomStyle,
908
+ tabsCustomStyle: _ctx.tabsCustomStyle,
909
+ contentCustomStyle: _ctx.contentCustomStyle,
910
+ mobile: _ctx.mobile,
911
+ class: vue.normalizeClass(["ele-pro-layout", { "ele-admin-limited": !_ctx.fluid }]),
912
+ "onUpdate:collapse": _ctx.updateCollapse,
913
+ onLogoClick: _ctx.handleLogoClick,
914
+ onHeadMenuOpen: _ctx.handleHeadMenuOpen,
915
+ onHeadMenuClose: _ctx.handleHeadMenuClose,
916
+ onHeadMenuItemClick: _ctx.handleHeadMenuItemClick,
917
+ onHeadMenuItemMouseenter: _ctx.handleHeadMenuItemMouseenter,
918
+ onHeadMouseenter: _ctx.handleHeadMouseenter,
919
+ onHeadMouseleave: _ctx.handleHeadMouseleave,
920
+ onBoxMenuItemClick: _ctx.handleBoxMenuItemClick,
921
+ onBoxMenuItemMouseenter: _ctx.handleBoxMenuItemMouseenter,
922
+ onBoxMouseenter: _ctx.handleBoxMouseEnter,
923
+ onBoxMouseleave: _ctx.handleBoxMouseLeave,
924
+ onSideMenuOpen: _ctx.handleSideMenuOpen,
925
+ onSideMenuClose: _ctx.handleSideMenuClose,
926
+ onSideMenuItemClick: _ctx.handleSideMenuItemClick,
927
+ onSideMouseenter: _ctx.handleSideMouseEnter,
928
+ onSideMouseleave: _ctx.handleSideMouseLeave,
929
+ onTabClick: _ctx.handleTabClick,
930
+ onTabRemove: _ctx.handleTabRemove,
931
+ onTabContextMenu: _ctx.handleTabContextMenu,
932
+ onTabSortChange: _ctx.handleTabSortChange
933
+ }, vue.createSlots({
934
+ body: vue.withCtx(() => [
935
+ _ctx.tabBar && _ctx.keepAlive ? (vue.openBlock(), vue.createBlock(_component_ProIframe, {
936
+ key: 0,
937
+ keepAlive: _ctx.keepAlive,
938
+ transitionName: _ctx.transitionName,
939
+ transitionDelay: _ctx.transitionDelay,
940
+ tabData: _ctx.tabData,
941
+ tabActive: _ctx.tabActive
942
+ }, null, 8, ["keepAlive", "transitionName", "transitionDelay", "tabData", "tabActive"])) : vue.createCommentVNode("", true)
943
+ ]),
944
+ default: vue.withCtx(() => [
945
+ vue.renderSlot(_ctx.$slots, "default"),
946
+ !_ctx.hideFooter ? vue.renderSlot(_ctx.$slots, "footer", { key: 0 }) : vue.createCommentVNode("", true)
947
+ ]),
948
+ _: 2
819
949
  }, [
820
- vue.createVNode(_component_ProHeader, {
821
- menus: _ctx.headerData,
822
- headerStyle: _ctx.headerStyle,
823
- active: _ctx.headerActive,
824
- ellipsis: _ctx.ellipsis,
825
- ellipsisProps: _ctx.ellipsisProps,
826
- menuTrigger: _ctx.menuTrigger,
827
- itemTrigger: _ctx.navTrigger,
828
- collapse: _ctx.collapse,
829
- sidebar: _ctx.sidebar,
830
- titleSlot: _ctx.headerTitleSlot,
831
- iconSlot: _ctx.headerIconSlot,
832
- levels: _ctx.levelData,
833
- breadcrumb: _ctx.breadcrumb,
834
- breadcrumbSeparator: _ctx.breadcrumbSeparator,
835
- homePath: _ctx.homeMenuPath,
836
- isHome: _ctx.isHome,
837
- menuTextEllipsisTooltip: _ctx.menuTextEllipsisTooltip,
838
- tabs: _ctx.tabData,
839
- tabActive: _ctx.tabActive,
840
- fixedHome: _ctx.fixedHome,
841
- tabStyle: _ctx.tabStyle,
842
- tabContextMenu: _ctx.tabContextMenu,
843
- tabContextMenus: _ctx.tabContextMenus,
844
- tabSortable: _ctx.tabSortable,
845
- tabBar: _ctx.tabBar,
846
- onLogoClick: _ctx.onLogoClick,
847
- onOpen: _ctx.onHeadMenuOpen,
848
- onClsoe: _ctx.onHeadMenuClose,
849
- onItemClick: _ctx.onNavItemClick,
850
- onItemMouseenter: _ctx.onNavItemMouseenter,
851
- onMouseEnter: _ctx.onNavMouseEnter,
852
- onMouseLeave: _ctx.onNavMouseLeave,
853
- onTabClick: _ctx.onTabClick,
854
- onTabRemove: _ctx.onTabRemove,
855
- onTabContextMenu: _ctx.onTabContextMenu,
856
- onTabSortChange: _ctx.onTabSortChange
857
- }, vue.createSlots({ _: 2 }, [
858
- vue.renderList(Object.keys(_ctx.$slots).filter(
859
- (k) => ![
860
- "default",
861
- "top",
862
- "bottom",
863
- "boxTop",
864
- "boxBottom",
865
- "footer"
866
- ].includes(k)
867
- ), (name) => {
868
- return {
869
- name,
870
- fn: vue.withCtx((slotProps) => [
871
- vue.renderSlot(_ctx.$slots, name, vue.normalizeProps(vue.guardReactiveProps(slotProps || {})))
872
- ])
873
- };
874
- })
875
- ]), 1032, ["menus", "headerStyle", "active", "ellipsis", "ellipsisProps", "menuTrigger", "itemTrigger", "collapse", "sidebar", "titleSlot", "iconSlot", "levels", "breadcrumb", "breadcrumbSeparator", "homePath", "isHome", "menuTextEllipsisTooltip", "tabs", "tabActive", "fixedHome", "tabStyle", "tabContextMenu", "tabContextMenus", "tabSortable", "tabBar", "onLogoClick", "onOpen", "onClsoe", "onItemClick", "onItemMouseenter", "onMouseEnter", "onMouseLeave", "onTabClick", "onTabRemove", "onTabContextMenu", "onTabSortChange"]),
876
- vue.createVNode(_component_ReceiverView, {
877
- class: "ele-admin-main",
878
- wrapPosition: false
879
- }, {
880
- default: vue.withCtx(() => [
881
- _ctx.sidebox ? (vue.openBlock(), vue.createBlock(_component_ProSidebox, {
882
- key: 0,
883
- menus: _ctx.sideboxData,
884
- sidebarStyle: _ctx.sidebarStyle,
885
- colorfulIcon: _ctx.colorfulIcon,
886
- active: _ctx.collapse ? _ctx.sidebarActive : _ctx.sideboxActive,
887
- compact: _ctx.compact,
950
+ _ctx.$slots.logo ? {
951
+ name: "logo",
952
+ fn: vue.withCtx(() => [
953
+ vue.renderSlot(_ctx.$slots, "logo", {
888
954
  collapse: _ctx.collapse,
889
- popperEffect: _ctx.tooltipEffect,
890
- itemTrigger: _ctx.boxTrigger,
891
- titleSlot: _ctx.sideboxTitleSlot,
892
- iconSlot: _ctx.sideboxIconSlot,
893
- menuTextEllipsisTooltip: _ctx.menuTextEllipsisTooltip,
894
- onItemClick: _ctx.onBoxItemClick,
895
- onItemMouseenter: _ctx.onBoxItemMouseenter,
896
- onMouseEnter: _ctx.onBoxMouseEnter,
897
- onMouseLeave: _ctx.onBoxMouseLeave
898
- }, vue.createSlots({ _: 2 }, [
899
- vue.renderList(Object.keys(_ctx.$slots).filter(
900
- (k) => ![
901
- "default",
902
- "logo",
903
- "left",
904
- "right",
905
- "center",
906
- "breadcrumb",
907
- "top",
908
- "bottom",
909
- "footer",
910
- "tabTitle",
911
- "tabContext",
912
- "tabExtra",
913
- "tabHome"
914
- ].includes(k)
915
- ), (name) => {
916
- return {
917
- name,
918
- fn: vue.withCtx((slotProps) => [
919
- vue.renderSlot(_ctx.$slots, name, vue.normalizeProps(vue.guardReactiveProps(slotProps || {})))
920
- ])
921
- };
922
- })
923
- ]), 1032, ["menus", "sidebarStyle", "colorfulIcon", "active", "compact", "collapse", "popperEffect", "itemTrigger", "titleSlot", "iconSlot", "menuTextEllipsisTooltip", "onItemClick", "onItemMouseenter", "onMouseEnter", "onMouseLeave"])) : vue.createCommentVNode("", true),
924
- _ctx.sidebar ? (vue.openBlock(), vue.createBlock(_component_ProSidebar, {
925
- key: 1,
926
- menus: _ctx.sidebarData,
927
- sidebarStyle: _ctx.sidebarTheme,
928
- colorfulIcon: _ctx.colorfulIcon,
929
- active: _ctx.sidebarActive,
930
- collapse: _ctx.sidebarCollapse,
931
- uniqueOpened: _ctx.uniqueOpened,
932
- defaultOpeneds: _ctx.sidebarOpeneds,
933
- popperEffect: _ctx.tooltipEffect,
934
- itemTrigger: _ctx.itemTrigger,
935
- titleSlot: _ctx.sidebarTitleSlot,
936
- iconSlot: _ctx.sidebarIconSlot,
937
- menuTextEllipsisTooltip: _ctx.menuTextEllipsisTooltip,
938
- onOpen: _ctx.onSideMenuOpen,
939
- onClsoe: _ctx.onSideMenuClose,
940
- onItemClick: _ctx.onMenuItemClick,
941
- onMouseEnter: _ctx.onSideMouseEnter,
942
- onMouseLeave: _ctx.onSideMouseLeave
943
- }, vue.createSlots({ _: 2 }, [
944
- vue.renderList(Object.keys(_ctx.$slots).filter(
945
- (k) => ![
946
- "default",
947
- "logo",
948
- "left",
949
- "right",
950
- "center",
951
- "breadcrumb",
952
- "boxTop",
953
- "boxBottom",
954
- "footer",
955
- "tabTitle",
956
- "tabContext",
957
- "tabExtra",
958
- "tabHome"
959
- ].includes(k)
960
- ), (name) => {
961
- return {
962
- name,
963
- fn: vue.withCtx((slotProps) => [
964
- vue.renderSlot(_ctx.$slots, name, vue.normalizeProps(vue.guardReactiveProps(slotProps || {})))
965
- ])
966
- };
967
- })
968
- ]), 1032, ["menus", "sidebarStyle", "colorfulIcon", "active", "collapse", "uniqueOpened", "defaultOpeneds", "popperEffect", "itemTrigger", "titleSlot", "iconSlot", "menuTextEllipsisTooltip", "onOpen", "onClsoe", "onItemClick", "onMouseEnter", "onMouseLeave"])) : vue.createCommentVNode("", true),
969
- vue.createElementVNode("div", _hoisted_1, [
970
- _ctx.tabBar && _ctx.tabBar !== "header" ? (vue.openBlock(), vue.createBlock(_component_ProTabs, {
971
- key: 0,
972
- tabs: _ctx.tabData,
973
- active: _ctx.tabActive,
974
- tabStyle: _ctx.tabStyle,
975
- fixedHome: _ctx.fixedHome,
976
- homePath: _ctx.homeMenuPath,
977
- isHome: _ctx.isHome,
978
- tabContextMenu: _ctx.tabContextMenu,
979
- tabContextMenus: _ctx.tabContextMenus,
980
- tabSortable: _ctx.tabSortable,
981
- onTabClick: _ctx.onTabClick,
982
- onTabRemove: _ctx.onTabRemove,
983
- onTabContextMenu: _ctx.onTabContextMenu,
984
- onTabSortChange: _ctx.onTabSortChange
985
- }, vue.createSlots({ _: 2 }, [
986
- vue.renderList(Object.keys(_ctx.$slots).filter(
987
- (k) => ["tabTitle", "tabContext", "tabExtra", "tabHome"].includes(k)
988
- ), (name) => {
989
- return {
990
- name,
991
- fn: vue.withCtx((slotProps) => [
992
- vue.renderSlot(_ctx.$slots, name, vue.normalizeProps(vue.guardReactiveProps(slotProps || {})))
993
- ])
994
- };
995
- })
996
- ]), 1032, ["tabs", "active", "tabStyle", "fixedHome", "homePath", "isHome", "tabContextMenu", "tabContextMenus", "tabSortable", "onTabClick", "onTabRemove", "onTabContextMenu", "onTabSortChange"])) : vue.createCommentVNode("", true),
997
- vue.createElementVNode("div", _hoisted_2, [
998
- vue.createElementVNode("div", _hoisted_3, [
999
- vue.renderSlot(_ctx.$slots, "default"),
1000
- !_ctx.hideFooter ? vue.renderSlot(_ctx.$slots, "footer", { key: 0 }) : vue.createCommentVNode("", true)
1001
- ], 512),
1002
- _ctx.tabBar && _ctx.keepAlive ? (vue.openBlock(), vue.createBlock(_component_ProIframe, {
1003
- key: 0,
1004
- keepAlive: _ctx.keepAlive,
1005
- transitionName: _ctx.transitionName,
1006
- transitionDelay: _ctx.transitionDelay,
1007
- tabData: _ctx.tabData,
1008
- tabActive: _ctx.tabActive
1009
- }, null, 8, ["keepAlive", "transitionName", "transitionDelay", "tabData", "tabActive"])) : vue.createCommentVNode("", true),
1010
- _ctx.backTop ? (vue.openBlock(), vue.createBlock(_component_ElBacktop, {
1011
- key: _ctx.backTopSelector,
1012
- target: _ctx.backTopSelector,
1013
- visibilityHeight: _ctx.backTopVisibilityHeight,
1014
- bottom: _ctx.backTopBottom,
1015
- right: _ctx.backTopRight
1016
- }, null, 8, ["target", "visibilityHeight", "bottom", "right"])) : vue.createCommentVNode("", true),
1017
- vue.createElementVNode("div", _hoisted_4, null, 512)
1018
- ])
1019
- ])
955
+ sidebar: _ctx.sidebar
956
+ })
957
+ ]),
958
+ key: "0"
959
+ } : void 0,
960
+ _ctx.$slots.logoTitle ? {
961
+ name: "logoTitle",
962
+ fn: vue.withCtx(() => [
963
+ vue.renderSlot(_ctx.$slots, "logoTitle", {
964
+ collapse: _ctx.collapse,
965
+ sidebar: _ctx.sidebar
966
+ })
1020
967
  ]),
1021
- _: 3
1022
- }),
1023
- vue.createElementVNode("div", {
1024
- class: "ele-admin-mask",
1025
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.updateCollapse && _ctx.updateCollapse(...args))
968
+ key: "1"
969
+ } : void 0,
970
+ _ctx.$slots.breadcrumb ? {
971
+ name: "breadcrumb",
972
+ fn: vue.withCtx(() => [
973
+ vue.renderSlot(_ctx.$slots, "breadcrumb", {
974
+ levels: _ctx.levelData,
975
+ isHome: _ctx.isHome,
976
+ homePath: _ctx.homeMenuPath,
977
+ sidebar: _ctx.sidebar
978
+ })
979
+ ]),
980
+ key: "2"
981
+ } : void 0,
982
+ _ctx.$slots.left ? {
983
+ name: "left",
984
+ fn: vue.withCtx(() => [
985
+ vue.renderSlot(_ctx.$slots, "left", { sidebar: _ctx.sidebar })
986
+ ]),
987
+ key: "3"
988
+ } : void 0,
989
+ _ctx.$slots.center ? {
990
+ name: "center",
991
+ fn: vue.withCtx(() => [
992
+ vue.renderSlot(_ctx.$slots, "center", { sidebar: _ctx.sidebar })
993
+ ]),
994
+ key: "4"
995
+ } : void 0,
996
+ _ctx.$slots.right ? {
997
+ name: "right",
998
+ fn: vue.withCtx(() => [
999
+ vue.renderSlot(_ctx.$slots, "right", { sidebar: _ctx.sidebar })
1000
+ ]),
1001
+ key: "5"
1002
+ } : void 0,
1003
+ vue.renderList(Object.keys(_ctx.$slots).filter(
1004
+ (k) => ![
1005
+ "default",
1006
+ "logo",
1007
+ "logoTitle",
1008
+ "breadcrumb",
1009
+ "left",
1010
+ "center",
1011
+ "right",
1012
+ "footer",
1013
+ "body"
1014
+ ].includes(k)
1015
+ ), (name) => {
1016
+ return {
1017
+ name,
1018
+ fn: vue.withCtx((slotProps) => [
1019
+ vue.renderSlot(_ctx.$slots, name, vue.normalizeProps(vue.guardReactiveProps(slotProps || {})))
1020
+ ])
1021
+ };
1026
1022
  })
1027
- ], 2);
1023
+ ]), 1032, ["height", "headerMenus", "headerActive", "sidebarMenus", "sidebarActive", "sideboxMenus", "sideboxActive", "tabs", "tabActive", "levels", "collapse", "compact", "maximized", "tabBar", "breadcrumb", "backTop", "headerMenuProps", "sidebarMenuProps", "sideboxMenuProps", "layout", "sidebarLayout", "headerStyle", "sidebarStyle", "tabStyle", "fixedHeader", "fixedSidebar", "fixedBody", "logoInHeader", "fixedHome", "homePath", "isHome", "tabContextMenu", "tabContextMenus", "tabSortable", "headerTitleSlot", "headerIconSlot", "sidebarTitleSlot", "sidebarIconSlot", "sideboxTitleSlot", "sideboxIconSlot", "headerCustomStyle", "sidebarCustomStyle", "sideboxCustomStyle", "tabsCustomStyle", "contentCustomStyle", "mobile", "class", "onUpdate:collapse", "onLogoClick", "onHeadMenuOpen", "onHeadMenuClose", "onHeadMenuItemClick", "onHeadMenuItemMouseenter", "onHeadMouseenter", "onHeadMouseleave", "onBoxMenuItemClick", "onBoxMenuItemMouseenter", "onBoxMouseenter", "onBoxMouseleave", "onSideMenuOpen", "onSideMenuClose", "onSideMenuItemClick", "onSideMouseenter", "onSideMouseleave", "onTabClick", "onTabRemove", "onTabContextMenu", "onTabSortChange"]);
1028
1024
  }
1029
1025
  const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
1030
1026
  module.exports = index;