ele-admin-plus 1.1.3 → 1.1.4-beta.2

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 (284) hide show
  1. package/es/ele-alert/index.d.ts +10 -10
  2. package/es/ele-alert/props.d.ts +6 -6
  3. package/es/ele-app/style/message.scss +1 -0
  4. package/es/ele-app/style/overwrite.scss +84 -3
  5. package/es/ele-app/types/index.d.ts +7 -6
  6. package/es/ele-avatar-group/index.d.ts +7 -8
  7. package/es/ele-avatar-group/props.d.ts +3 -4
  8. package/es/ele-basic-select/style/index.scss +4 -6
  9. package/es/ele-bottom-bar/index.d.ts +4 -4
  10. package/es/ele-bottom-bar/props.d.ts +2 -3
  11. package/es/ele-card/index.d.ts +6 -6
  12. package/es/ele-card/props.d.ts +3 -4
  13. package/es/ele-check-card/components/card-item.d.ts +2 -3
  14. package/es/ele-check-card/index.d.ts +4 -4
  15. package/es/ele-check-card/props.d.ts +3 -3
  16. package/es/ele-config-provider/receiver.d.ts +1 -1
  17. package/es/ele-config-provider/receiver.js +29 -29
  18. package/es/ele-copyable/index.d.ts +8 -8
  19. package/es/ele-copyable/index.js +5 -4
  20. package/es/ele-copyable/props.d.ts +5 -5
  21. package/es/ele-copyable/style/index.scss +4 -0
  22. package/es/ele-count-up/index.d.ts +2 -2
  23. package/es/ele-count-up/index.js +2 -1
  24. package/es/ele-count-up/props.d.ts +1 -1
  25. package/es/ele-cropper/index.js +2 -2
  26. package/es/ele-dashboard/index.d.ts +1 -2
  27. package/es/ele-drawer/index.d.ts +16 -10
  28. package/es/ele-drawer/props.d.ts +7 -6
  29. package/es/ele-dropdown/index.d.ts +2 -2
  30. package/es/ele-dropdown/props.d.ts +1 -2
  31. package/es/ele-edit-tag/index.d.ts +4 -4
  32. package/es/ele-edit-tag/props.d.ts +2 -3
  33. package/es/ele-ellipsis/index.d.ts +4 -5
  34. package/es/ele-ellipsis/props.d.ts +1 -1
  35. package/es/ele-ellipsis/style/index.scss +4 -0
  36. package/es/ele-file-list/index.d.ts +2 -7
  37. package/es/ele-file-list/index.js +2 -2
  38. package/es/ele-file-list/types/index.d.ts +0 -4
  39. package/es/ele-icon-select/components/icon-grid.d.ts +5 -5
  40. package/es/ele-icon-select/components/icon-popper.d.ts +15 -15
  41. package/es/ele-icon-select/index.d.ts +15 -16
  42. package/es/ele-icon-select/props.d.ts +8 -8
  43. package/es/ele-loading/index.d.ts +26 -1
  44. package/es/ele-loading/index.js +53 -11
  45. package/es/ele-loading/props.d.ts +11 -1
  46. package/es/ele-loading/props.js +16 -1
  47. package/es/ele-loading/style/css-var.scss +7 -0
  48. package/es/ele-loading/style/index.js +1 -0
  49. package/es/ele-loading/style/index.scss +90 -0
  50. package/es/ele-loading/types/index.d.ts +17 -0
  51. package/es/ele-map-picker/components/map-view.d.ts +2 -2
  52. package/es/ele-map-picker/index.d.ts +2 -2
  53. package/es/ele-map-picker/props.d.ts +3 -3
  54. package/es/ele-menus/index.d.ts +2 -0
  55. package/es/ele-menus/index.js +11 -5
  56. package/es/ele-menus/props.d.ts +10 -0
  57. package/es/ele-menus/props.js +7 -1
  58. package/es/ele-menus/style/index.scss +18 -18
  59. package/es/ele-menus/types/index.d.ts +4 -0
  60. package/es/ele-menus/util.d.ts +4 -3
  61. package/es/ele-menus/util.js +23 -12
  62. package/es/ele-modal/index.d.ts +19 -13
  63. package/es/ele-modal/props.d.ts +8 -7
  64. package/es/ele-modal/types/index.d.ts +9 -0
  65. package/es/ele-modal/util.js +45 -32
  66. package/es/ele-pagination/index.d.ts +1 -1
  67. package/es/ele-popconfirm/index.d.ts +10 -10
  68. package/es/ele-popconfirm/index.js +8 -2
  69. package/es/ele-popconfirm/props.d.ts +6 -6
  70. package/es/ele-popover/index.d.ts +6 -6
  71. package/es/ele-popover/props.d.ts +3 -4
  72. package/es/ele-printer/index.d.ts +7 -6
  73. package/es/ele-printer/index.js +11 -4
  74. package/es/ele-printer/props.d.ts +3 -4
  75. package/es/ele-pro-layout/components/pro-header.d.ts +7 -2
  76. package/es/ele-pro-layout/components/pro-header.js +15 -5
  77. package/es/ele-pro-layout/components/pro-iframe.js +10 -7
  78. package/es/ele-pro-layout/components/pro-sidebar.d.ts +7 -2
  79. package/es/ele-pro-layout/components/pro-sidebar.js +14 -5
  80. package/es/ele-pro-layout/components/pro-sidebox.d.ts +11 -4
  81. package/es/ele-pro-layout/components/pro-sidebox.js +16 -5
  82. package/es/ele-pro-layout/components/tab-dropdown.js +1 -4
  83. package/es/ele-pro-layout/index.d.ts +17 -3
  84. package/es/ele-pro-layout/index.js +208 -105
  85. package/es/ele-pro-layout/props.d.ts +6 -1
  86. package/es/ele-pro-layout/props.js +10 -0
  87. package/es/ele-pro-layout/style/collapse.scss +9 -10
  88. package/es/ele-pro-layout/style/index.js +0 -1
  89. package/es/ele-pro-layout/style/layout-mobile.scss +1 -0
  90. package/es/ele-pro-layout/types/index.d.ts +9 -0
  91. package/es/ele-pro-layout/util.d.ts +4 -2
  92. package/es/ele-pro-layout/util.js +20 -17
  93. package/es/ele-pro-table/components/table-view.d.ts +9 -3
  94. package/es/ele-pro-table/components/table-view.js +27 -24
  95. package/es/ele-pro-table/components/tool-column.d.ts +2 -1
  96. package/es/ele-pro-table/components/tool-column.js +26 -18
  97. package/es/ele-pro-table/index.d.ts +46 -25
  98. package/es/ele-pro-table/index.js +182 -196
  99. package/es/ele-pro-table/props.d.ts +27 -15
  100. package/es/ele-pro-table/props.js +15 -3
  101. package/es/ele-pro-table/style/index.js +1 -1
  102. package/es/ele-pro-table/style/index.scss +64 -8
  103. package/es/ele-pro-table/types/index.d.ts +39 -5
  104. package/es/ele-pro-table/util.d.ts +84 -49
  105. package/es/ele-pro-table/util.js +193 -78
  106. package/es/ele-qr-code/index.d.ts +3 -3
  107. package/es/ele-qr-code/props.d.ts +1 -2
  108. package/es/ele-qr-code-svg/index.d.ts +3 -3
  109. package/es/ele-split-panel/index.d.ts +6 -6
  110. package/es/ele-split-panel/props.d.ts +3 -4
  111. package/es/ele-table/style/index.scss +1 -0
  112. package/es/ele-tabs/index.js +4 -3
  113. package/es/ele-tabs/types/index.d.ts +3 -0
  114. package/es/ele-text/index.d.ts +3 -3
  115. package/es/ele-text/props.d.ts +2 -2
  116. package/es/ele-toolbar/index.d.ts +6 -6
  117. package/es/ele-toolbar/props.d.ts +3 -4
  118. package/es/ele-tooltip/index.d.ts +3 -3
  119. package/es/ele-tooltip/props.d.ts +1 -2
  120. package/es/ele-tour/index.d.ts +2 -3
  121. package/es/ele-tour/style/index.scss +1 -1
  122. package/es/ele-tour/util.js +3 -3
  123. package/es/ele-upload-list/index.d.ts +8 -7
  124. package/es/ele-upload-list/index.js +18 -11
  125. package/es/ele-upload-list/props.d.ts +4 -4
  126. package/es/ele-upload-list/props.js +1 -1
  127. package/es/ele-watermark/index.d.ts +16 -8
  128. package/es/ele-watermark/index.js +18 -12
  129. package/es/ele-watermark/props.d.ts +3 -1
  130. package/es/ele-watermark/props.js +5 -1
  131. package/es/ele-watermark/util.js +1 -1
  132. package/es/ele-xg-player/index.js +1 -0
  133. package/es/style/index.scss +1 -0
  134. package/es/style/nprogress.scss +2 -2
  135. package/es/style/themes/default.scss +36 -12
  136. package/es/style/themes/rounded.scss +4 -2
  137. package/es/style/themes/theme-util.scss +2 -0
  138. package/es/utils/core.d.ts +1 -1
  139. package/es/utils/core.js +17 -15
  140. package/es/utils/resolvers.js +2 -2
  141. package/lib/ele-alert/index.d.ts +10 -10
  142. package/lib/ele-alert/props.d.ts +6 -6
  143. package/lib/ele-app/style/message.scss +1 -0
  144. package/lib/ele-app/style/overwrite.scss +84 -3
  145. package/lib/ele-app/types/index.d.ts +7 -6
  146. package/lib/ele-avatar-group/index.d.ts +7 -8
  147. package/lib/ele-avatar-group/props.d.ts +3 -4
  148. package/lib/ele-basic-select/style/index.scss +4 -6
  149. package/lib/ele-bottom-bar/index.d.ts +4 -4
  150. package/lib/ele-bottom-bar/props.d.ts +2 -3
  151. package/lib/ele-card/index.d.ts +6 -6
  152. package/lib/ele-card/props.d.ts +3 -4
  153. package/lib/ele-check-card/components/card-item.d.ts +2 -3
  154. package/lib/ele-check-card/index.d.ts +4 -4
  155. package/lib/ele-check-card/props.d.ts +3 -3
  156. package/lib/ele-config-provider/receiver.d.ts +1 -1
  157. package/lib/ele-config-provider/receiver.js +2 -2
  158. package/lib/ele-copyable/index.d.ts +8 -8
  159. package/lib/ele-copyable/index.js +4 -3
  160. package/lib/ele-copyable/props.d.ts +5 -5
  161. package/lib/ele-copyable/style/index.scss +4 -0
  162. package/lib/ele-count-up/index.d.ts +2 -2
  163. package/lib/ele-count-up/index.js +2 -1
  164. package/lib/ele-count-up/props.d.ts +1 -1
  165. package/lib/ele-cropper/index.js +2 -2
  166. package/lib/ele-dashboard/index.d.ts +1 -2
  167. package/lib/ele-drawer/index.d.ts +16 -10
  168. package/lib/ele-drawer/props.d.ts +7 -6
  169. package/lib/ele-dropdown/index.d.ts +2 -2
  170. package/lib/ele-dropdown/props.d.ts +1 -2
  171. package/lib/ele-edit-tag/index.d.ts +4 -4
  172. package/lib/ele-edit-tag/props.d.ts +2 -3
  173. package/lib/ele-ellipsis/index.d.ts +4 -5
  174. package/lib/ele-ellipsis/props.d.ts +1 -1
  175. package/lib/ele-ellipsis/style/index.scss +4 -0
  176. package/lib/ele-file-list/index.d.ts +2 -7
  177. package/lib/ele-file-list/index.js +2 -2
  178. package/lib/ele-file-list/types/index.d.ts +0 -4
  179. package/lib/ele-icon-select/components/icon-grid.d.ts +5 -5
  180. package/lib/ele-icon-select/components/icon-popper.d.ts +15 -15
  181. package/lib/ele-icon-select/index.d.ts +15 -16
  182. package/lib/ele-icon-select/props.d.ts +8 -8
  183. package/lib/ele-loading/index.d.ts +26 -1
  184. package/lib/ele-loading/index.js +52 -10
  185. package/lib/ele-loading/props.d.ts +11 -1
  186. package/lib/ele-loading/props.js +16 -1
  187. package/lib/ele-loading/style/css-var.scss +7 -0
  188. package/lib/ele-loading/style/index.js +1 -0
  189. package/lib/ele-loading/style/index.scss +90 -0
  190. package/lib/ele-loading/types/index.d.ts +17 -0
  191. package/lib/ele-map-picker/components/map-view.d.ts +2 -2
  192. package/lib/ele-map-picker/index.d.ts +2 -2
  193. package/lib/ele-map-picker/props.d.ts +3 -3
  194. package/lib/ele-menus/index.d.ts +2 -0
  195. package/lib/ele-menus/index.js +9 -3
  196. package/lib/ele-menus/props.d.ts +10 -0
  197. package/lib/ele-menus/props.js +6 -0
  198. package/lib/ele-menus/style/index.scss +18 -18
  199. package/lib/ele-menus/types/index.d.ts +4 -0
  200. package/lib/ele-menus/util.d.ts +4 -3
  201. package/lib/ele-menus/util.js +23 -12
  202. package/lib/ele-modal/index.d.ts +19 -13
  203. package/lib/ele-modal/props.d.ts +8 -7
  204. package/lib/ele-modal/types/index.d.ts +9 -0
  205. package/lib/ele-modal/util.js +45 -32
  206. package/lib/ele-pagination/index.d.ts +1 -1
  207. package/lib/ele-popconfirm/index.d.ts +10 -10
  208. package/lib/ele-popconfirm/index.js +8 -2
  209. package/lib/ele-popconfirm/props.d.ts +6 -6
  210. package/lib/ele-popover/index.d.ts +6 -6
  211. package/lib/ele-popover/props.d.ts +3 -4
  212. package/lib/ele-printer/index.d.ts +7 -6
  213. package/lib/ele-printer/index.js +10 -3
  214. package/lib/ele-printer/props.d.ts +3 -4
  215. package/lib/ele-pro-layout/components/pro-header.d.ts +7 -2
  216. package/lib/ele-pro-layout/components/pro-header.js +15 -5
  217. package/lib/ele-pro-layout/components/pro-iframe.js +10 -7
  218. package/lib/ele-pro-layout/components/pro-sidebar.d.ts +7 -2
  219. package/lib/ele-pro-layout/components/pro-sidebar.js +14 -5
  220. package/lib/ele-pro-layout/components/pro-sidebox.d.ts +11 -4
  221. package/lib/ele-pro-layout/components/pro-sidebox.js +16 -5
  222. package/lib/ele-pro-layout/components/tab-dropdown.js +1 -4
  223. package/lib/ele-pro-layout/index.d.ts +17 -3
  224. package/lib/ele-pro-layout/index.js +205 -102
  225. package/lib/ele-pro-layout/props.d.ts +6 -1
  226. package/lib/ele-pro-layout/props.js +10 -0
  227. package/lib/ele-pro-layout/style/collapse.scss +9 -10
  228. package/lib/ele-pro-layout/style/index.js +0 -1
  229. package/lib/ele-pro-layout/style/layout-mobile.scss +1 -0
  230. package/lib/ele-pro-layout/types/index.d.ts +9 -0
  231. package/lib/ele-pro-layout/util.d.ts +4 -2
  232. package/lib/ele-pro-layout/util.js +19 -16
  233. package/lib/ele-pro-table/components/table-view.d.ts +9 -3
  234. package/lib/ele-pro-table/components/table-view.js +25 -22
  235. package/lib/ele-pro-table/components/tool-column.d.ts +2 -1
  236. package/lib/ele-pro-table/components/tool-column.js +25 -17
  237. package/lib/ele-pro-table/index.d.ts +46 -25
  238. package/lib/ele-pro-table/index.js +180 -194
  239. package/lib/ele-pro-table/props.d.ts +27 -15
  240. package/lib/ele-pro-table/props.js +15 -3
  241. package/lib/ele-pro-table/style/index.js +1 -1
  242. package/lib/ele-pro-table/style/index.scss +64 -8
  243. package/lib/ele-pro-table/types/index.d.ts +39 -5
  244. package/lib/ele-pro-table/util.d.ts +84 -49
  245. package/lib/ele-pro-table/util.js +192 -77
  246. package/lib/ele-qr-code/index.d.ts +3 -3
  247. package/lib/ele-qr-code/props.d.ts +1 -2
  248. package/lib/ele-qr-code-svg/index.d.ts +3 -3
  249. package/lib/ele-split-panel/index.d.ts +6 -6
  250. package/lib/ele-split-panel/props.d.ts +3 -4
  251. package/lib/ele-table/style/index.scss +1 -0
  252. package/lib/ele-tabs/index.js +4 -3
  253. package/lib/ele-tabs/types/index.d.ts +3 -0
  254. package/lib/ele-text/index.d.ts +3 -3
  255. package/lib/ele-text/props.d.ts +2 -2
  256. package/lib/ele-toolbar/index.d.ts +6 -6
  257. package/lib/ele-toolbar/props.d.ts +3 -4
  258. package/lib/ele-tooltip/index.d.ts +3 -3
  259. package/lib/ele-tooltip/props.d.ts +1 -2
  260. package/lib/ele-tour/index.d.ts +2 -3
  261. package/lib/ele-tour/style/index.scss +1 -1
  262. package/lib/ele-tour/util.js +3 -3
  263. package/lib/ele-upload-list/index.d.ts +8 -7
  264. package/lib/ele-upload-list/index.js +17 -10
  265. package/lib/ele-upload-list/props.d.ts +4 -4
  266. package/lib/ele-upload-list/props.js +1 -1
  267. package/lib/ele-watermark/index.d.ts +16 -8
  268. package/lib/ele-watermark/index.js +17 -11
  269. package/lib/ele-watermark/props.d.ts +3 -1
  270. package/lib/ele-watermark/props.js +5 -1
  271. package/lib/ele-watermark/util.js +1 -1
  272. package/lib/ele-xg-player/index.js +1 -0
  273. package/lib/style/index.scss +1 -0
  274. package/lib/style/nprogress.scss +2 -2
  275. package/lib/style/themes/default.scss +36 -12
  276. package/lib/style/themes/rounded.scss +4 -2
  277. package/lib/style/themes/theme-util.scss +2 -0
  278. package/lib/utils/core.d.ts +1 -1
  279. package/lib/utils/core.js +17 -15
  280. package/lib/utils/resolvers.js +2 -2
  281. package/package.json +25 -23
  282. package/typings/global.d.ts +52 -52
  283. package/es/ele-alert/types/index.d.ts +0 -0
  284. package/lib/ele-alert/types/index.d.ts +0 -0
@@ -1,5 +1,5 @@
1
1
  import type { PropType, ExtractPropTypes } from 'vue';
2
- import type { StyleValue, ElEmptyProps } from '../ele-app/types';
2
+ import type { ElEmptyProps } from '../ele-app/types';
3
3
  import type { EleTooltipProps } from '../ele-avatar-group/types';
4
4
  import type { IconItem } from './types';
5
5
  /**
@@ -55,13 +55,13 @@ export declare const iconSelectProps: {
55
55
  default: boolean;
56
56
  };
57
57
  tooltipProps: PropType<EleTooltipProps>;
58
- headerStyle: PropType<StyleValue>;
59
- tabsStyle: PropType<StyleValue>;
60
- searchStyle: PropType<StyleValue>;
61
- menusStyle: PropType<StyleValue>;
62
- bodyStyle: PropType<StyleValue>;
63
- gridStyle: PropType<StyleValue>;
64
- itemStyle: PropType<StyleValue>;
58
+ headerStyle: PropType<Partial<import("vue").CSSProperties>>;
59
+ tabsStyle: PropType<Partial<import("vue").CSSProperties>>;
60
+ searchStyle: PropType<Partial<import("vue").CSSProperties>>;
61
+ menusStyle: PropType<Partial<import("vue").CSSProperties>>;
62
+ bodyStyle: PropType<Partial<import("vue").CSSProperties>>;
63
+ gridStyle: PropType<Partial<import("vue").CSSProperties>>;
64
+ itemStyle: PropType<Partial<import("vue").CSSProperties>>;
65
65
  responsive: {
66
66
  type: BooleanConstructor;
67
67
  default: null;
@@ -1,14 +1,39 @@
1
+ import { ComponentProps } from '../ele-app/types';
2
+ import type { CircleProps } from './types';
1
3
  declare const _default: import("vue").DefineComponent<{
2
4
  loading: BooleanConstructor;
3
5
  text: StringConstructor;
4
6
  background: StringConstructor;
5
7
  spinner: StringConstructor;
6
- }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
8
+ svgViewBox: StringConstructor;
9
+ type: {
10
+ type: import("vue").PropType<import("./types").LoadingType>;
11
+ default: string;
12
+ };
13
+ blur: BooleanConstructor;
14
+ size: import("vue").PropType<import("./types").LoadingSize>;
15
+ spinnerStyle: import("vue").PropType<Partial<import("vue").CSSProperties>>;
16
+ textStyle: import("vue").PropType<Partial<import("vue").CSSProperties>>;
17
+ }, {
18
+ isCircle: import("vue").ComputedRef<boolean>;
19
+ rootProps: import("vue").ComputedRef<ComponentProps<CircleProps>>;
20
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
21
  loading: BooleanConstructor;
8
22
  text: StringConstructor;
9
23
  background: StringConstructor;
10
24
  spinner: StringConstructor;
25
+ svgViewBox: StringConstructor;
26
+ type: {
27
+ type: import("vue").PropType<import("./types").LoadingType>;
28
+ default: string;
29
+ };
30
+ blur: BooleanConstructor;
31
+ size: import("vue").PropType<import("./types").LoadingSize>;
32
+ spinnerStyle: import("vue").PropType<Partial<import("vue").CSSProperties>>;
33
+ textStyle: import("vue").PropType<Partial<import("vue").CSSProperties>>;
11
34
  }>>, {
35
+ type: import("./types").LoadingType;
12
36
  loading: boolean;
37
+ blur: boolean;
13
38
  }, {}>;
14
39
  export default _default;
@@ -1,12 +1,32 @@
1
- import { defineComponent, resolveDirective, withDirectives, openBlock, createElementBlock, renderSlot } from "vue";
1
+ import { defineComponent, computed, resolveDirective, withDirectives, openBlock, createElementBlock, normalizeProps, guardReactiveProps, renderSlot, normalizeStyle, normalizeClass, toDisplayString, createCommentVNode, vShow, createElementVNode } from "vue";
2
2
  import { vLoading } from "element-plus";
3
+ import { useLicense } from "../ele-config-provider/receiver";
3
4
  import { loadingProps } from "./props";
4
5
  const _sfc_main = defineComponent({
5
6
  name: "EleLoading",
6
7
  directives: {
7
8
  loading: vLoading
8
9
  },
9
- props: loadingProps
10
+ props: loadingProps,
11
+ setup(props) {
12
+ const { authenticated } = useLicense();
13
+ const isCircle = computed(() => {
14
+ return !authenticated.value || props.type === "circle";
15
+ });
16
+ const rootProps = computed(() => {
17
+ const obj = {
18
+ class: ["ele-loading", { "ele-loading-show": props.loading }]
19
+ };
20
+ if (isCircle.value) {
21
+ obj["element-loading-text"] = props.text;
22
+ obj["element-loading-background"] = props.background;
23
+ obj["element-loading-spinner"] = props.spinner;
24
+ obj["element-loading-svg-view-box"] = props.svgViewBox;
25
+ }
26
+ return obj;
27
+ });
28
+ return { isCircle, rootProps };
29
+ }
10
30
  });
11
31
  const _export_sfc = (sfc, props) => {
12
32
  const target = sfc.__vccOpts || sfc;
@@ -15,17 +35,39 @@ const _export_sfc = (sfc, props) => {
15
35
  }
16
36
  return target;
17
37
  };
18
- const _hoisted_1 = ["element-loading-text", "element-loading-background", "element-loading-spinner"];
38
+ const _hoisted_1 = /* @__PURE__ */ createElementVNode("div", { class: "ele-loading-dot" }, [
39
+ /* @__PURE__ */ createElementVNode("i"),
40
+ /* @__PURE__ */ createElementVNode("i"),
41
+ /* @__PURE__ */ createElementVNode("i"),
42
+ /* @__PURE__ */ createElementVNode("i")
43
+ ], -1);
19
44
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
20
45
  const _directive_loading = resolveDirective("loading");
21
- return withDirectives((openBlock(), createElementBlock("div", {
22
- "element-loading-text": _ctx.text,
23
- "element-loading-background": _ctx.background,
24
- "element-loading-spinner": _ctx.spinner
25
- }, [
26
- renderSlot(_ctx.$slots, "default")
27
- ], 8, _hoisted_1)), [
28
- [_directive_loading, _ctx.loading]
46
+ return withDirectives((openBlock(), createElementBlock("div", normalizeProps(guardReactiveProps(_ctx.rootProps)), [
47
+ renderSlot(_ctx.$slots, "default"),
48
+ !_ctx.isCircle ? withDirectives((openBlock(), createElementBlock("div", {
49
+ key: 0,
50
+ style: normalizeStyle(_ctx.spinnerStyle),
51
+ class: normalizeClass([
52
+ "ele-loading-spinner",
53
+ { "ele-loading-blur": _ctx.blur },
54
+ { "ele-loading-small": _ctx.size === "small" },
55
+ { "ele-loading-large": _ctx.size === "large" }
56
+ ])
57
+ }, [
58
+ renderSlot(_ctx.$slots, "spinner", {}, () => [
59
+ _hoisted_1
60
+ ]),
61
+ _ctx.text ? (openBlock(), createElementBlock("div", {
62
+ key: 0,
63
+ class: "ele-loading-text",
64
+ style: normalizeStyle(_ctx.textStyle)
65
+ }, toDisplayString(_ctx.text), 5)) : createCommentVNode("", true)
66
+ ], 6)), [
67
+ [vShow, _ctx.loading]
68
+ ]) : createCommentVNode("", true)
69
+ ], 16)), [
70
+ [_directive_loading, _ctx.isCircle && _ctx.loading]
29
71
  ]);
30
72
  }
31
73
  const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
@@ -1,4 +1,5 @@
1
- import type { ExtractPropTypes } from 'vue';
1
+ import type { PropType, ExtractPropTypes } from 'vue';
2
+ import type { LoadingType, LoadingSize } from './types';
2
3
  /**
3
4
  * 属性
4
5
  */
@@ -7,5 +8,14 @@ export declare const loadingProps: {
7
8
  text: StringConstructor;
8
9
  background: StringConstructor;
9
10
  spinner: StringConstructor;
11
+ svgViewBox: StringConstructor;
12
+ type: {
13
+ type: PropType<LoadingType>;
14
+ default: string;
15
+ };
16
+ blur: BooleanConstructor;
17
+ size: PropType<LoadingSize>;
18
+ spinnerStyle: PropType<Partial<import("vue").CSSProperties>>;
19
+ textStyle: PropType<Partial<import("vue").CSSProperties>>;
10
20
  };
11
21
  export type LoadingProps = ExtractPropTypes<typeof loadingProps>;
@@ -6,7 +6,22 @@ const loadingProps = {
6
6
  // 背景遮罩的颜色
7
7
  background: String,
8
8
  // 自定义加载图标
9
- spinner: String
9
+ spinner: String,
10
+ // 自定义加载图标svg的view-box
11
+ svgViewBox: String,
12
+ // 加载器类型
13
+ type: {
14
+ type: String,
15
+ default: "dot"
16
+ },
17
+ // 背景模糊效果
18
+ blur: Boolean,
19
+ // 加载器尺寸
20
+ size: String,
21
+ // 自定义加载器样式
22
+ spinnerStyle: Object,
23
+ // 自定义文本样式
24
+ textStyle: Object
10
25
  };
11
26
  export {
12
27
  loadingProps
@@ -0,0 +1,7 @@
1
+ @use '../../style/util.scss' as *;
2
+
3
+ @mixin set-loading-var($var) {
4
+ .ele-loading {
5
+ @include set-ele-var('loading', $var);
6
+ }
7
+ }
@@ -1 +1,2 @@
1
1
  import 'element-plus/es/components/loading/style/index';
2
+ import './index.scss';
@@ -0,0 +1,90 @@
1
+ @use '../../style/themes/default.scss' as *;
2
+ @use '../../style/util.scss' as *;
3
+ @use './css-var.scss' as *;
4
+
5
+ @include set-loading-var($ele);
6
+
7
+ .ele-loading {
8
+ box-sizing: border-box;
9
+ }
10
+
11
+ .ele-loading-show {
12
+ position: relative;
13
+ }
14
+
15
+ .ele-loading-spinner {
16
+ position: absolute;
17
+ top: 0;
18
+ left: 0;
19
+ width: 100%;
20
+ height: 100%;
21
+ background: eleVar('loading', 'bg');
22
+ box-sizing: border-box;
23
+ display: flex;
24
+ flex-direction: column;
25
+ justify-content: center;
26
+ align-items: center;
27
+ z-index: eleVar('loading', 'index');
28
+ }
29
+
30
+ /* 模糊背景 */
31
+ .ele-loading-blur {
32
+ backdrop-filter: blur(2px);
33
+ }
34
+
35
+ /* 文本 */
36
+ .ele-loading-text {
37
+ color: elVar('color-primary');
38
+ font-size: elVar('font-size', 'base');
39
+ margin-top: 10px;
40
+ text-align: center;
41
+ }
42
+
43
+ /* 圆点风格 */
44
+ .ele-loading-dot {
45
+ width: eleVar('loading', 'size');
46
+ height: eleVar('loading', 'size');
47
+ display: grid;
48
+ grid-gap: eleVar('loading', 'space');
49
+ grid-template-columns: repeat(2, 1fr);
50
+ grid-template-rows: repeat(2, 1fr);
51
+ transform: rotate(45deg);
52
+ animation: eleloadingRotate 1.2s infinite linear;
53
+
54
+ & > i {
55
+ background: elVar('color-primary');
56
+ border-radius: 50%;
57
+
58
+ &:nth-child(2) {
59
+ background: elVar('color-primary', 'light-3');
60
+ }
61
+
62
+ &:nth-child(3) {
63
+ background: elVar('color-primary', 'light-7');
64
+ }
65
+
66
+ &:nth-child(4) {
67
+ background: elVar('color-primary', 'light-8');
68
+ }
69
+ }
70
+ }
71
+
72
+ @keyframes eleloadingRotate {
73
+ to {
74
+ transform: rotate(405deg);
75
+ }
76
+ }
77
+
78
+ /* 小型尺寸 */
79
+ .ele-loading-small .ele-loading-dot {
80
+ width: eleVar('loading', 'sm-size');
81
+ height: eleVar('loading', 'sm-size');
82
+ grid-gap: eleVar('loading', 'sm-space');
83
+ }
84
+
85
+ /* 大型尺寸 */
86
+ .ele-loading-large .ele-loading-dot {
87
+ width: eleVar('loading', 'lg-size');
88
+ height: eleVar('loading', 'lg-size');
89
+ grid-gap: eleVar('loading', 'lg-space');
90
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 加载器类型
3
+ */
4
+ export type LoadingType = 'circle' | 'dot';
5
+ /**
6
+ * 加载器尺寸
7
+ */
8
+ export type LoadingSize = 'small' | 'default' | 'large';
9
+ /**
10
+ * 圆形加载器属性
11
+ */
12
+ export interface CircleProps {
13
+ ['element-loading-text']?: string;
14
+ ['element-loading-background']?: string;
15
+ ['element-loading-spinner']?: string;
16
+ ['element-loading-svg-view-box']?: string;
17
+ }
@@ -54,7 +54,7 @@ declare const _default: import("vue").DefineComponent<{
54
54
  darkMode: BooleanConstructor;
55
55
  okText: StringConstructor;
56
56
  emptyProps: import("vue").PropType<import("../../ele-app/types").ElEmptyProps>;
57
- headerStyle: import("vue").PropType<import("../../ele-app/types").StyleValue>;
57
+ headerStyle: import("vue").PropType<Partial<import("vue").CSSProperties>>;
58
58
  }, {
59
59
  mapRef: import("vue").Ref<HTMLDivElement | null>;
60
60
  loading: import("vue").Ref<boolean>;
@@ -168,7 +168,7 @@ declare const _default: import("vue").DefineComponent<{
168
168
  darkMode: BooleanConstructor;
169
169
  okText: StringConstructor;
170
170
  emptyProps: import("vue").PropType<import("../../ele-app/types").ElEmptyProps>;
171
- headerStyle: import("vue").PropType<import("../../ele-app/types").StyleValue>;
171
+ headerStyle: import("vue").PropType<Partial<import("vue").CSSProperties>>;
172
172
  }>> & {
173
173
  onDone?: ((_result: CenterPoint) => any) | undefined;
174
174
  onMapDone?: ((_ins: any) => any) | undefined;
@@ -65,7 +65,7 @@ declare const _default: import("vue").DefineComponent<{
65
65
  darkMode: BooleanConstructor;
66
66
  okText: StringConstructor;
67
67
  emptyProps: import("vue").PropType<import("../ele-app/types").ElEmptyProps>;
68
- headerStyle: import("vue").PropType<import("../ele-app/types").StyleValue>;
68
+ headerStyle: import("vue").PropType<Partial<import("vue").CSSProperties>>;
69
69
  }, {
70
70
  mapRef: Ref<MapViewInstance>;
71
71
  lang: import("vue").ComputedRef<MapLocale>;
@@ -143,7 +143,7 @@ declare const _default: import("vue").DefineComponent<{
143
143
  darkMode: BooleanConstructor;
144
144
  okText: StringConstructor;
145
145
  emptyProps: import("vue").PropType<import("../ele-app/types").ElEmptyProps>;
146
- headerStyle: import("vue").PropType<import("../ele-app/types").StyleValue>;
146
+ headerStyle: import("vue").PropType<Partial<import("vue").CSSProperties>>;
147
147
  }>> & {
148
148
  "onUpdate:modelValue"?: ((_value: boolean) => any) | undefined;
149
149
  onOpen?: (() => any) | undefined;
@@ -1,5 +1,5 @@
1
1
  import type { PropType, ExtractPropTypes } from 'vue';
2
- import type { StyleValue, ElEmptyProps } from '../ele-app/types';
2
+ import type { ElEmptyProps } from '../ele-app/types';
3
3
  import type { ModalProps } from '../ele-modal/props';
4
4
  import type { MapLocale, CenterPoint } from './types';
5
5
  /**
@@ -60,7 +60,7 @@ export declare const mapProps: {
60
60
  darkMode: BooleanConstructor;
61
61
  okText: StringConstructor;
62
62
  emptyProps: PropType<ElEmptyProps>;
63
- headerStyle: PropType<StyleValue>;
63
+ headerStyle: PropType<Partial<import("vue").CSSProperties>>;
64
64
  };
65
65
  export declare const mapPickerProps: {
66
66
  modelValue: BooleanConstructor;
@@ -124,7 +124,7 @@ export declare const mapPickerProps: {
124
124
  darkMode: BooleanConstructor;
125
125
  okText: StringConstructor;
126
126
  emptyProps: PropType<ElEmptyProps>;
127
- headerStyle: PropType<StyleValue>;
127
+ headerStyle: PropType<Partial<import("vue").CSSProperties>>;
128
128
  };
129
129
  export type MapPickerProps = ExtractPropTypes<typeof mapPickerProps>;
130
130
  export type MapProps = ExtractPropTypes<typeof mapProps>;
@@ -37,6 +37,7 @@ declare const _default: import("vue").DefineComponent<{
37
37
  open: (index: string) => void;
38
38
  close: (index: string) => void;
39
39
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
40
+ itemClick: (_item: import("./types").MenuItem) => boolean;
40
41
  close: (index: string, indexPath: string[]) => boolean;
41
42
  open: (index: string, indexPath: string[]) => boolean;
42
43
  select: (index: string, indexPath: string[], item: MenuItemClicked, routerResult?: Promise<void | NavigationFailure> | undefined) => boolean;
@@ -75,6 +76,7 @@ declare const _default: import("vue").DefineComponent<{
75
76
  onSelect?: ((index: string, indexPath: string[], item: MenuItemClicked, routerResult?: Promise<void | NavigationFailure> | undefined) => any) | undefined;
76
77
  onOpen?: ((index: string, indexPath: string[]) => any) | undefined;
77
78
  onClose?: ((index: string, indexPath: string[]) => any) | undefined;
79
+ onItemClick?: ((_item: import("./types").MenuItem) => any) | undefined;
78
80
  }, {
79
81
  mode: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "horizontal" | "vertical", unknown>;
80
82
  defaultActive: string;
@@ -1,14 +1,14 @@
1
1
  import { defineComponent, ref, computed, onMounted, watch, h } from "vue";
2
- import { menuEmits, ElMenu, ElSubMenu, ElIcon } from "element-plus";
2
+ import { ElMenu, ElSubMenu, ElIcon } from "element-plus";
3
3
  import { useLicense } from "../ele-config-provider/receiver";
4
4
  import { pick } from "../utils/core";
5
5
  import { EllipsisOutlined } from "../icons";
6
6
  import { useMenuEllipsis, getMenuItems, renderItems, getPopperClass, ellipsisClass } from "./util";
7
- import { menusProps, menuPropKeys } from "./props";
7
+ import { menusProps, menusEmits, menuPropKeys } from "./props";
8
8
  const index = defineComponent({
9
9
  name: "EleMenus",
10
10
  props: menusProps,
11
- emits: menuEmits,
11
+ emits: menusEmits,
12
12
  setup(props, { slots, emit, expose }) {
13
13
  const { authenticated } = useLicense();
14
14
  const menuRef = ref(null);
@@ -56,6 +56,9 @@ const index = defineComponent({
56
56
  }
57
57
  }
58
58
  );
59
+ const onItemClick = (item) => {
60
+ emit("itemClick", item);
61
+ };
59
62
  const exposeValue = {
60
63
  menuRef,
61
64
  open: (index2) => {
@@ -108,7 +111,8 @@ const index = defineComponent({
108
111
  props.colorful,
109
112
  props.popupColorful,
110
113
  props.firstPopperClass,
111
- true
114
+ true,
115
+ onItemClick
112
116
  );
113
117
  if (moreItems) {
114
118
  const ellipsisProps = props.ellipsisProps || {};
@@ -144,7 +148,9 @@ const index = defineComponent({
144
148
  props.popupTheme,
145
149
  props.colorful,
146
150
  props.popupColorful,
147
- props.firstPopperClass
151
+ props.firstPopperClass,
152
+ false,
153
+ onItemClick
148
154
  );
149
155
  },
150
156
  title: () => {
@@ -42,3 +42,13 @@ export type MenuPropKeys = Array<keyof typeof menuProps>;
42
42
  * 菜单组件属性名
43
43
  */
44
44
  export declare const menuPropKeys: MenuPropKeys;
45
+ /**
46
+ * 事件
47
+ */
48
+ export declare const menusEmits: {
49
+ /** 菜单项点击事件 */
50
+ itemClick: (_item: MenuItem) => boolean;
51
+ close: (index: string, indexPath: string[]) => boolean;
52
+ open: (index: string, indexPath: string[]) => boolean;
53
+ select: (index: string, indexPath: string[], item: import("element-plus").MenuItemClicked, routerResult?: Promise<void | import("vue-router").NavigationFailure> | undefined) => boolean;
54
+ };
@@ -1,4 +1,4 @@
1
- import { menuProps } from "element-plus";
1
+ import { menuProps, menuEmits } from "element-plus";
2
2
  const menusProps = {
3
3
  ...menuProps,
4
4
  // 菜单数据
@@ -28,7 +28,13 @@ const menusProps = {
28
28
  ellipsisProps: Object
29
29
  };
30
30
  const menuPropKeys = Object.keys(menuProps);
31
+ const menusEmits = {
32
+ ...menuEmits,
33
+ /** 菜单项点击事件 */
34
+ itemClick: (_item) => true
35
+ };
31
36
  export {
32
37
  menuPropKeys,
38
+ menusEmits,
33
39
  menusProps
34
40
  };
@@ -704,23 +704,23 @@
704
704
  }
705
705
  }
706
706
 
707
- // 兼容横向菜单溢出的菜单
708
- /* .el-popper > .el-menu--popup-container {
709
- display: block;
710
- border: none;
711
- }
707
+ // Tooltip
708
+ .el-popper.is-dark > .ele-menu-title {
709
+ position: static;
712
710
 
713
- .el-menu--popup-container > .el-menu--popup {
714
- background: none;
715
- box-shadow: none;
716
- border-radius: 0;
717
- max-height: calc(100vh - 10px);
718
- overflow-y: auto;
719
- overflow-y: overlay;
720
- }
711
+ &::before {
712
+ content: '';
713
+ background: eleVar('tooltip', 'bg');
714
+ border-radius: eleVar('tooltip', 'radius');
715
+ position: absolute;
716
+ top: 0;
717
+ left: 0;
718
+ right: 0;
719
+ bottom: 0;
720
+ z-index: -1;
721
+ }
721
722
 
722
- .el-menu--popup > .el-menu-item > .el-badge,
723
- .el-menu--popup > .el-sub-menu > .el-sub-menu__title > .el-badge {
724
- order: 3;
725
- line-height: 1;
726
- } */
723
+ & + .el-popper__arrow {
724
+ z-index: -2;
725
+ }
726
+ }
@@ -61,6 +61,10 @@ export interface MenuResult {
61
61
  /** 省略的菜单数据 */
62
62
  moreItems?: MenuItem[];
63
63
  }
64
+ /**
65
+ * 菜单项点击事件
66
+ */
67
+ export type ItemClick = (item: MenuItem) => void;
64
68
  /**
65
69
  * 菜单省略计算参数
66
70
  */
@@ -1,13 +1,14 @@
1
1
  import type { VNode, Slot } from 'vue';
2
- import type { MenuItem, MenuTheme, PopupMenuTheme, PopupColorful, MenuResult, MenuEllipsisOption } from './types';
2
+ import type { MenuItem, MenuTheme, PopupMenuTheme, PopupColorful, MenuResult, MenuEllipsisOption, ItemClick } from './types';
3
3
  export declare const linkClass = "ele-menu-link";
4
+ export declare const titleClass = "ele-menu-title";
4
5
  export declare const overflowClass = "ele-menu-overflow";
5
6
  export declare const ellipsisClass = "ele-sub-menu-ellipsis";
6
7
  /**
7
8
  * 生成菜单链接节点
8
9
  * @param path 链接地址
9
10
  */
10
- export declare function getLinkNode(path?: string): VNode | undefined;
11
+ export declare function getLinkNode(item: MenuItem, onItemClick?: ItemClick): VNode | undefined;
11
12
  /**
12
13
  * 生成菜单内容节点
13
14
  * @param icons 图标节点
@@ -29,7 +30,7 @@ export declare function getNodes(icons?: VNode[], titles?: VNode[], badge?: VNod
29
30
  * @param firstPopClass 第一级气泡菜单类名
30
31
  * @param first 是否是第一级菜单
31
32
  */
32
- export declare function renderItems(items?: MenuItem[], sIcon?: Slot, sTitle?: Slot, tipDisabled?: boolean, theme?: MenuTheme, popTheme?: PopupMenuTheme, colorful?: boolean, popupColorful?: PopupColorful, firstPopClass?: string, first?: boolean): VNode[];
33
+ export declare function renderItems(items?: MenuItem[], sIcon?: Slot, sTitle?: Slot, tipDisabled?: boolean, theme?: MenuTheme, popTheme?: PopupMenuTheme, colorful?: boolean, popupColorful?: PopupColorful, firstPopClass?: string, first?: boolean, onItemClick?: ItemClick): VNode[];
33
34
  /**
34
35
  * 生成菜单数据
35
36
  * @param items 菜单数据
@@ -4,21 +4,25 @@ import { ElIcon, ElBadge, ElMenuItem, ElMenuItemGroup, ElSubMenu } from "element
4
4
  import { isExternalLink, getCurrentStyle, debounce } from "../utils/core";
5
5
  import { ArrowDown, ArrowRight } from "../icons";
6
6
  const linkClass = "ele-menu-link";
7
+ const titleClass = "ele-menu-title";
7
8
  const overflowClass = "ele-menu-overflow";
8
9
  const ellipsisClass = "ele-sub-menu-ellipsis";
9
- function getLinkNode(path) {
10
- if (!path) {
10
+ function getLinkNode(item, onItemClick) {
11
+ if (!(item == null ? void 0 : item.path)) {
11
12
  return;
12
13
  }
13
- if (isExternalLink(path)) {
14
+ if (isExternalLink(item.path)) {
14
15
  return h("a", {
15
- href: path,
16
+ href: item.path,
16
17
  target: "_blank",
17
18
  class: linkClass,
18
- onClick: (e) => e.stopPropagation()
19
+ onClick: (e) => {
20
+ e.stopPropagation();
21
+ onItemClick && onItemClick(item);
22
+ }
19
23
  });
20
24
  }
21
- return h(RouterLink, { to: path, class: linkClass });
25
+ return h(RouterLink, { to: item.path, class: linkClass });
22
26
  }
23
27
  function getNodes(icons, titles, badge, link) {
24
28
  const nodes = [];
@@ -40,7 +44,7 @@ function getNodes(icons, titles, badge, link) {
40
44
  }
41
45
  return nodes;
42
46
  }
43
- function renderItems(items, sIcon, sTitle, tipDisabled, theme, popTheme, colorful, popupColorful, firstPopClass, first) {
47
+ function renderItems(items, sIcon, sTitle, tipDisabled, theme, popTheme, colorful, popupColorful, firstPopClass, first, onItemClick) {
44
48
  const nodes = [];
45
49
  if (!items) {
46
50
  return nodes;
@@ -57,11 +61,11 @@ function renderItems(items, sIcon, sTitle, tipDisabled, theme, popTheme, colorfu
57
61
  }
58
62
  const tNodes = sTitle ? sTitle({ item, title: item.title }) ?? [] : [];
59
63
  if (!tNodes.length && item.title) {
60
- tNodes.push(h("span", item.title));
64
+ tNodes.push(h("span", { class: titleClass }, item.title));
61
65
  }
62
66
  const bNode = item.badge != null ? h(ElBadge, item.badge) : null;
63
67
  if (!((_a = item.children) == null ? void 0 : _a.length)) {
64
- const linkNode = getLinkNode(item.path);
68
+ const linkNode = getLinkNode(item, onItemClick);
65
69
  const key = item.key || item.index || item.path;
66
70
  nodes.push(
67
71
  h(
@@ -71,7 +75,10 @@ function renderItems(items, sIcon, sTitle, tipDisabled, theme, popTheme, colorfu
71
75
  index: item.index,
72
76
  route: item.route,
73
77
  disabled: item.disabled,
74
- class: item.overflow ? overflowClass : void 0
78
+ class: item.overflow ? overflowClass : void 0,
79
+ onClick: () => {
80
+ onItemClick && onItemClick(item);
81
+ }
75
82
  },
76
83
  {
77
84
  default: () => {
@@ -103,7 +110,8 @@ function renderItems(items, sIcon, sTitle, tipDisabled, theme, popTheme, colorfu
103
110
  colorful,
104
111
  popupColorful,
105
112
  firstPopClass,
106
- first
113
+ first,
114
+ onItemClick
107
115
  );
108
116
  },
109
117
  title: () => getNodes(iNodes, tNodes, bNode)
@@ -154,7 +162,9 @@ function renderItems(items, sIcon, sTitle, tipDisabled, theme, popTheme, colorfu
154
162
  popTheme,
155
163
  colorful,
156
164
  popupColorful,
157
- firstPopClass
165
+ firstPopClass,
166
+ false,
167
+ onItemClick
158
168
  );
159
169
  },
160
170
  title: () => getNodes(iNodes, tNodes, bNode)
@@ -299,5 +309,6 @@ export {
299
309
  linkClass,
300
310
  overflowClass,
301
311
  renderItems,
312
+ titleClass,
302
313
  useMenuEllipsis
303
314
  };