ele-admin-plus 1.4.1-beta.1 → 1.4.1

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 (224) hide show
  1. package/es/core-components.d.ts +2 -0
  2. package/es/core-components.js +104 -100
  3. package/es/ele-app/plus.d.ts +9 -1
  4. package/es/ele-app/plusx.d.ts +26 -13
  5. package/es/ele-backtop/index.js +7 -1
  6. package/es/ele-basic-select/components/select-view.d.ts +53 -22
  7. package/es/ele-basic-select/components/select-view.js +57 -20
  8. package/es/ele-basic-select/index.d.ts +39 -19
  9. package/es/ele-basic-select/index.js +62 -13
  10. package/es/ele-basic-select/props.d.ts +33 -21
  11. package/es/ele-basic-select/props.js +33 -21
  12. package/es/ele-basic-select/style/index.js +2 -0
  13. package/es/ele-basic-select/types.d.ts +1 -1
  14. package/es/ele-config-provider/components/receiver-view.d.ts +2 -0
  15. package/es/ele-config-provider/components/receiver-view.js +74 -72
  16. package/es/ele-config-provider/receiver.d.ts +2 -2
  17. package/es/ele-config-provider/receiver.js +5 -1
  18. package/es/ele-config-provider/types.d.ts +10 -1
  19. package/es/ele-copyable/index.d.ts +2 -4
  20. package/es/ele-cron-builder/index.d.ts +24 -0
  21. package/es/ele-cron-builder/index.js +81 -0
  22. package/es/ele-cron-builder/props.d.ts +31 -0
  23. package/es/ele-cron-builder/props.js +24 -0
  24. package/es/ele-cron-builder/style/index.d.ts +1 -0
  25. package/es/ele-cron-builder/style/index.js +4 -0
  26. package/es/ele-cron-builder/style/index.scss +6 -0
  27. package/es/ele-cron-builder/types.d.ts +8 -0
  28. package/es/ele-cron-panel/components/cron-day.d.ts +25 -0
  29. package/es/ele-cron-panel/components/cron-day.js +232 -0
  30. package/es/ele-cron-panel/components/cron-hour.d.ts +25 -0
  31. package/es/ele-cron-panel/components/cron-hour.js +174 -0
  32. package/es/ele-cron-panel/components/cron-minute.d.ts +25 -0
  33. package/es/ele-cron-panel/components/cron-minute.js +174 -0
  34. package/es/ele-cron-panel/components/cron-month.d.ts +25 -0
  35. package/es/ele-cron-panel/components/cron-month.js +174 -0
  36. package/es/ele-cron-panel/components/cron-second.d.ts +25 -0
  37. package/es/ele-cron-panel/components/cron-second.js +174 -0
  38. package/es/ele-cron-panel/components/cron-week.d.ts +25 -0
  39. package/es/ele-cron-panel/components/cron-week.js +229 -0
  40. package/es/ele-cron-panel/components/cron-year.d.ts +25 -0
  41. package/es/ele-cron-panel/components/cron-year.js +186 -0
  42. package/es/ele-cron-panel/index.d.ts +14 -0
  43. package/es/ele-cron-panel/index.js +348 -0
  44. package/es/ele-cron-panel/props.d.ts +20 -0
  45. package/es/ele-cron-panel/props.js +14 -0
  46. package/es/ele-cron-panel/style/index.d.ts +1 -0
  47. package/es/ele-cron-panel/style/index.js +7 -0
  48. package/es/ele-cron-panel/style/index.scss +282 -0
  49. package/es/ele-cron-panel/types.d.ts +118 -0
  50. package/es/ele-cron-panel/util.d.ts +23 -0
  51. package/es/ele-cron-panel/util.js +542 -0
  52. package/es/ele-cropper/components/cropper-tools.d.ts +2 -2
  53. package/es/ele-cropper-modal/index.d.ts +2 -4
  54. package/es/ele-crud/index.d.ts +3 -3
  55. package/es/ele-drawer/index.d.ts +9 -0
  56. package/es/ele-drawer/index.js +5 -1
  57. package/es/ele-drawer/props.d.ts +5 -0
  58. package/es/ele-drawer/props.js +6 -1
  59. package/es/ele-drawer/style/index.scss +11 -0
  60. package/es/ele-file-list/index.d.ts +3 -3
  61. package/es/ele-icon-select/components/icon-grid.d.ts +8 -3
  62. package/es/ele-icon-select/components/icon-grid.js +20 -12
  63. package/es/ele-icon-select/index.d.ts +58 -59
  64. package/es/ele-icon-select/index.js +92 -86
  65. package/es/ele-icon-select/props.d.ts +35 -35
  66. package/es/ele-icon-select/props.js +34 -34
  67. package/es/ele-icon-select/style/css-var.scss +1 -1
  68. package/es/ele-icon-select/style/index.scss +50 -18
  69. package/es/ele-icon-select/types.d.ts +13 -0
  70. package/es/ele-map-picker/index.d.ts +3 -3
  71. package/es/ele-modal/index.d.ts +4 -2
  72. package/es/ele-modal/index.js +9 -3
  73. package/es/ele-modal/props.d.ts +2 -0
  74. package/es/ele-modal/props.js +2 -0
  75. package/es/ele-modal/style/index.scss +16 -0
  76. package/es/ele-pro-form/components/item-type-data.js +39 -64
  77. package/es/ele-pro-form/index.d.ts +3 -3
  78. package/es/ele-pro-table/components/table-tools.d.ts +12 -97
  79. package/es/ele-pro-table/components/table-tools.js +118 -248
  80. package/es/ele-pro-table/components/tool-export.d.ts +5 -1
  81. package/es/ele-pro-table/components/tool-export.js +32 -20
  82. package/es/ele-pro-table/components/tool-print.d.ts +5 -1
  83. package/es/ele-pro-table/components/tool-print.js +37 -25
  84. package/es/ele-pro-table/exceljs-plugin.d.ts +12 -0
  85. package/es/ele-pro-table/exceljs-plugin.js +81 -0
  86. package/es/ele-pro-table/index.d.ts +6 -7
  87. package/es/ele-pro-table/index.js +117 -46
  88. package/es/ele-pro-table/types.d.ts +11 -0
  89. package/es/ele-split-panel/style/index.scss +1 -1
  90. package/es/ele-table-select/index.d.ts +2 -0
  91. package/es/ele-table-select/props.d.ts +2 -0
  92. package/es/ele-table-select/props.js +3 -1
  93. package/es/ele-tour/index.d.ts +3 -3
  94. package/es/ele-tree-select/index.d.ts +2 -0
  95. package/es/ele-upload-list/index.d.ts +3 -3
  96. package/es/ele-upload-list/index.js +25 -8
  97. package/es/ele-virtual-table/components/body-cell.d.ts +1 -1
  98. package/es/ele-watermark/index.d.ts +20 -7
  99. package/es/ele-watermark/index.js +253 -94
  100. package/es/ele-watermark/props.d.ts +10 -3
  101. package/es/ele-watermark/props.js +10 -3
  102. package/es/ele-watermark/types.d.ts +12 -0
  103. package/es/ele-watermark/util.d.ts +2 -9
  104. package/es/ele-watermark/util.js +10 -19
  105. package/es/lang/en_US.js +116 -0
  106. package/es/lang/zh_CN.js +116 -0
  107. package/es/lang/zh_TW.js +116 -0
  108. package/es/style/plus.scss +3 -1
  109. package/es/style/themes/default.scss +12 -3
  110. package/es/style/themes/rounded.scss +2 -1
  111. package/es/utils/theme-util.d.ts +1 -1
  112. package/lib/core-components.cjs +104 -100
  113. package/lib/core-components.d.ts +2 -0
  114. package/lib/ele-app/plus.d.ts +9 -1
  115. package/lib/ele-app/plusx.d.ts +26 -13
  116. package/lib/ele-backtop/index.cjs +6 -0
  117. package/lib/ele-basic-select/components/select-view.cjs +56 -19
  118. package/lib/ele-basic-select/components/select-view.d.ts +53 -22
  119. package/lib/ele-basic-select/index.cjs +61 -12
  120. package/lib/ele-basic-select/index.d.ts +39 -19
  121. package/lib/ele-basic-select/props.cjs +33 -21
  122. package/lib/ele-basic-select/props.d.ts +33 -21
  123. package/lib/ele-basic-select/style/index.cjs +2 -0
  124. package/lib/ele-basic-select/types.d.ts +1 -1
  125. package/lib/ele-config-provider/components/receiver-view.cjs +2 -2
  126. package/lib/ele-config-provider/components/receiver-view.d.ts +2 -0
  127. package/lib/ele-config-provider/receiver.cjs +5 -1
  128. package/lib/ele-config-provider/receiver.d.ts +2 -2
  129. package/lib/ele-config-provider/types.d.ts +10 -1
  130. package/lib/ele-copyable/index.d.ts +2 -4
  131. package/lib/ele-cron-builder/index.cjs +80 -0
  132. package/lib/ele-cron-builder/index.d.ts +24 -0
  133. package/lib/ele-cron-builder/props.cjs +24 -0
  134. package/lib/ele-cron-builder/props.d.ts +31 -0
  135. package/lib/ele-cron-builder/style/index.cjs +5 -0
  136. package/lib/ele-cron-builder/style/index.d.ts +1 -0
  137. package/lib/ele-cron-builder/style/index.scss +6 -0
  138. package/lib/ele-cron-builder/types.d.ts +8 -0
  139. package/lib/ele-cron-panel/components/cron-day.cjs +231 -0
  140. package/lib/ele-cron-panel/components/cron-day.d.ts +25 -0
  141. package/lib/ele-cron-panel/components/cron-hour.cjs +173 -0
  142. package/lib/ele-cron-panel/components/cron-hour.d.ts +25 -0
  143. package/lib/ele-cron-panel/components/cron-minute.cjs +173 -0
  144. package/lib/ele-cron-panel/components/cron-minute.d.ts +25 -0
  145. package/lib/ele-cron-panel/components/cron-month.cjs +173 -0
  146. package/lib/ele-cron-panel/components/cron-month.d.ts +25 -0
  147. package/lib/ele-cron-panel/components/cron-second.cjs +173 -0
  148. package/lib/ele-cron-panel/components/cron-second.d.ts +25 -0
  149. package/lib/ele-cron-panel/components/cron-week.cjs +228 -0
  150. package/lib/ele-cron-panel/components/cron-week.d.ts +25 -0
  151. package/lib/ele-cron-panel/components/cron-year.cjs +185 -0
  152. package/lib/ele-cron-panel/components/cron-year.d.ts +25 -0
  153. package/lib/ele-cron-panel/index.cjs +347 -0
  154. package/lib/ele-cron-panel/index.d.ts +14 -0
  155. package/lib/ele-cron-panel/props.cjs +14 -0
  156. package/lib/ele-cron-panel/props.d.ts +20 -0
  157. package/lib/ele-cron-panel/style/index.cjs +8 -0
  158. package/lib/ele-cron-panel/style/index.d.ts +1 -0
  159. package/lib/ele-cron-panel/style/index.scss +282 -0
  160. package/lib/ele-cron-panel/types.d.ts +118 -0
  161. package/lib/ele-cron-panel/util.cjs +542 -0
  162. package/lib/ele-cron-panel/util.d.ts +23 -0
  163. package/lib/ele-cropper/components/cropper-tools.d.ts +2 -2
  164. package/lib/ele-cropper-modal/index.d.ts +2 -4
  165. package/lib/ele-crud/index.d.ts +3 -3
  166. package/lib/ele-drawer/index.cjs +4 -0
  167. package/lib/ele-drawer/index.d.ts +9 -0
  168. package/lib/ele-drawer/props.cjs +6 -1
  169. package/lib/ele-drawer/props.d.ts +5 -0
  170. package/lib/ele-drawer/style/index.scss +11 -0
  171. package/lib/ele-file-list/index.d.ts +3 -3
  172. package/lib/ele-icon-select/components/icon-grid.cjs +19 -11
  173. package/lib/ele-icon-select/components/icon-grid.d.ts +8 -3
  174. package/lib/ele-icon-select/index.cjs +91 -85
  175. package/lib/ele-icon-select/index.d.ts +58 -59
  176. package/lib/ele-icon-select/props.cjs +34 -34
  177. package/lib/ele-icon-select/props.d.ts +35 -35
  178. package/lib/ele-icon-select/style/css-var.scss +1 -1
  179. package/lib/ele-icon-select/style/index.scss +50 -18
  180. package/lib/ele-icon-select/types.d.ts +13 -0
  181. package/lib/ele-map-picker/index.d.ts +3 -3
  182. package/lib/ele-modal/index.cjs +9 -3
  183. package/lib/ele-modal/index.d.ts +4 -2
  184. package/lib/ele-modal/props.cjs +2 -0
  185. package/lib/ele-modal/props.d.ts +2 -0
  186. package/lib/ele-modal/style/index.scss +16 -0
  187. package/lib/ele-pro-form/components/item-type-data.cjs +39 -64
  188. package/lib/ele-pro-form/index.d.ts +3 -3
  189. package/lib/ele-pro-table/components/table-tools.cjs +117 -247
  190. package/lib/ele-pro-table/components/table-tools.d.ts +12 -97
  191. package/lib/ele-pro-table/components/tool-export.cjs +32 -20
  192. package/lib/ele-pro-table/components/tool-export.d.ts +5 -1
  193. package/lib/ele-pro-table/components/tool-print.cjs +37 -25
  194. package/lib/ele-pro-table/components/tool-print.d.ts +5 -1
  195. package/lib/ele-pro-table/exceljs-plugin.cjs +81 -0
  196. package/lib/ele-pro-table/exceljs-plugin.d.ts +12 -0
  197. package/lib/ele-pro-table/index.cjs +143 -72
  198. package/lib/ele-pro-table/index.d.ts +6 -7
  199. package/lib/ele-pro-table/types.d.ts +11 -0
  200. package/lib/ele-split-panel/style/index.scss +1 -1
  201. package/lib/ele-table-select/index.d.ts +2 -0
  202. package/lib/ele-table-select/props.cjs +3 -1
  203. package/lib/ele-table-select/props.d.ts +2 -0
  204. package/lib/ele-tour/index.d.ts +3 -3
  205. package/lib/ele-tree-select/index.d.ts +2 -0
  206. package/lib/ele-upload-list/index.cjs +25 -8
  207. package/lib/ele-upload-list/index.d.ts +3 -3
  208. package/lib/ele-virtual-table/components/body-cell.d.ts +1 -1
  209. package/lib/ele-watermark/index.cjs +251 -92
  210. package/lib/ele-watermark/index.d.ts +20 -7
  211. package/lib/ele-watermark/props.cjs +10 -3
  212. package/lib/ele-watermark/props.d.ts +10 -3
  213. package/lib/ele-watermark/types.d.ts +12 -0
  214. package/lib/ele-watermark/util.cjs +10 -19
  215. package/lib/ele-watermark/util.d.ts +2 -9
  216. package/lib/lang/en_US.cjs +116 -0
  217. package/lib/lang/zh_CN.cjs +116 -0
  218. package/lib/lang/zh_TW.cjs +116 -0
  219. package/lib/style/plus.scss +3 -1
  220. package/lib/style/themes/default.scss +12 -3
  221. package/lib/style/themes/rounded.scss +2 -1
  222. package/lib/utils/theme-util.d.ts +1 -1
  223. package/package.json +1 -1
  224. package/typings/global.d.ts +2 -0
@@ -3,7 +3,7 @@ import { StyleValue } from '../ele-app/types';
3
3
  import { ElInputProps, ElEmptyProps } from '../ele-app/el';
4
4
  import { EleTooltipProps } from '../ele-app/plus';
5
5
  import { PopperType, PopperProps } from '../ele-basic-select/types';
6
- import { IconItem } from './types';
6
+ import { IconItem, ItemTooltip } from './types';
7
7
 
8
8
  /**
9
9
  * 属性
@@ -25,12 +25,37 @@ export declare const iconSelectProps: {
25
25
  automaticDropdown: BooleanConstructor;
26
26
  /** 是否可以筛选 */
27
27
  filterable: PropType<boolean | "popper">;
28
- /** 是否将下拉框插入 body */
28
+ /** 自定义样式 */
29
+ selectStyle: PropType<StyleValue>;
30
+ /** 自定义输入框样式 */
31
+ inputStyle: PropType<StyleValue>;
32
+ /** 自定义多选标签容器样式 */
33
+ selectTagsStyle: PropType<StyleValue>;
34
+ /** 下拉组件类名 */
35
+ popperClass: StringConstructor;
36
+ /** 下拉组件宽度 */
37
+ popperWidth: {
38
+ type: (NumberConstructor | StringConstructor)[];
39
+ default: number;
40
+ };
41
+ /** 下拉组件高度 */
42
+ popperHeight: {
43
+ type: (NumberConstructor | StringConstructor)[];
44
+ default: number;
45
+ };
46
+ /** 下拉组件类型 */
47
+ popperType: {
48
+ type: PropType<PopperType>;
49
+ default: string;
50
+ };
51
+ /** 下拉组件属性 */
52
+ popperProps: PropType<PopperProps>;
53
+ /** 是否将下拉组件插入 body */
29
54
  teleported: {
30
55
  type: BooleanConstructor;
31
56
  default: boolean;
32
57
  };
33
- /** 始终渲染下拉框 */
58
+ /** 始终渲染下拉组件 */
34
59
  persistent: {
35
60
  type: BooleanConstructor;
36
61
  default: boolean;
@@ -47,35 +72,19 @@ export declare const iconSelectProps: {
47
72
  };
48
73
  /** popper.js 参数 */
49
74
  popperOptions: PropType<EleTooltipProps["popperOptions"]>;
50
- /** 下拉框类名 */
51
- popperClass: StringConstructor;
52
- /** 下拉框宽度 */
53
- popperWidth: {
54
- type: (NumberConstructor | StringConstructor)[];
55
- default: number;
56
- };
57
- /** 下拉框高度 */
58
- popperHeight: {
59
- type: (NumberConstructor | StringConstructor)[];
60
- default: number;
61
- };
62
- /** 自定义样式 */
63
- selectStyle: PropType<StyleValue>;
64
- /** 自定义样式 */
65
- inputStyle: PropType<StyleValue>;
66
- /** 自定义多选标签容器样式 */
67
- selectTagsStyle: PropType<StyleValue>;
68
- /** 顶部选项卡只有一个时隐藏 */
69
- hideOnSingleTab: BooleanConstructor;
70
- /** 空组件属性 */
71
- emptyProps: PropType<ElEmptyProps>;
75
+ /** 搜索框提示文本 */
76
+ filterPlaceholder: StringConstructor;
72
77
  /** 是否显示文本提示 */
73
78
  tooltip: {
74
- type: BooleanConstructor;
79
+ type: PropType<ItemTooltip>;
75
80
  default: boolean;
76
81
  };
77
82
  /** 提示属性 */
78
83
  tooltipProps: PropType<EleTooltipProps>;
84
+ /** 空组件属性 */
85
+ emptyProps: PropType<ElEmptyProps>;
86
+ /** 顶部选项卡只有一个时隐藏 */
87
+ hideOnSingleTab: BooleanConstructor;
79
88
  /** 头部样式 */
80
89
  headerStyle: PropType<StyleValue>;
81
90
  /** 选项卡样式 */
@@ -90,15 +99,6 @@ export declare const iconSelectProps: {
90
99
  gridStyle: PropType<StyleValue>;
91
100
  /** 图标样式 */
92
101
  itemStyle: PropType<StyleValue>;
93
- /** 搜索框提示文本 */
94
- filterPlaceholder: {
95
- type: StringConstructor;
96
- default: string;
97
- };
98
- /** 下拉类型 */
99
- popperType: PropType<PopperType>;
100
- /** 下拉组件属性 */
101
- popperProps: PropType<PopperProps>;
102
102
  /** 是否开启响应式 */
103
103
  responsive: {
104
104
  type: BooleanConstructor;
@@ -15,12 +15,37 @@ const iconSelectProps = {
15
15
  automaticDropdown: Boolean,
16
16
  /** 是否可以筛选 */
17
17
  filterable: [Boolean, String],
18
- /** 是否将下拉框插入 body */
18
+ /** 自定义样式 */
19
+ selectStyle: Object,
20
+ /** 自定义输入框样式 */
21
+ inputStyle: Object,
22
+ /** 自定义多选标签容器样式 */
23
+ selectTagsStyle: Object,
24
+ /** 下拉组件类名 */
25
+ popperClass: String,
26
+ /** 下拉组件宽度 */
27
+ popperWidth: {
28
+ type: [Number, String],
29
+ default: 460
30
+ },
31
+ /** 下拉组件高度 */
32
+ popperHeight: {
33
+ type: [Number, String],
34
+ default: 320
35
+ },
36
+ /** 下拉组件类型 */
37
+ popperType: {
38
+ type: String,
39
+ default: "popper"
40
+ },
41
+ /** 下拉组件属性 */
42
+ popperProps: Object,
43
+ /** 是否将下拉组件插入 body */
19
44
  teleported: {
20
45
  type: Boolean,
21
46
  default: true
22
47
  },
23
- /** 始终渲染下拉框 */
48
+ /** 始终渲染下拉组件 */
24
49
  persistent: {
25
50
  type: Boolean,
26
51
  default: true
@@ -37,35 +62,19 @@ const iconSelectProps = {
37
62
  },
38
63
  /** popper.js 参数 */
39
64
  popperOptions: Object,
40
- /** 下拉框类名 */
41
- popperClass: String,
42
- /** 下拉框宽度 */
43
- popperWidth: {
44
- type: [Number, String],
45
- default: 414
46
- },
47
- /** 下拉框高度 */
48
- popperHeight: {
49
- type: [Number, String],
50
- default: 260
51
- },
52
- /** 自定义样式 */
53
- selectStyle: Object,
54
- /** 自定义样式 */
55
- inputStyle: Object,
56
- /** 自定义多选标签容器样式 */
57
- selectTagsStyle: Object,
58
- /** 顶部选项卡只有一个时隐藏 */
59
- hideOnSingleTab: Boolean,
60
- /** 空组件属性 */
61
- emptyProps: Object,
65
+ /** 搜索框提示文本 */
66
+ filterPlaceholder: String,
62
67
  /** 是否显示文本提示 */
63
68
  tooltip: {
64
- type: Boolean,
69
+ type: [Boolean, String],
65
70
  default: true
66
71
  },
67
72
  /** 提示属性 */
68
73
  tooltipProps: Object,
74
+ /** 空组件属性 */
75
+ emptyProps: Object,
76
+ /** 顶部选项卡只有一个时隐藏 */
77
+ hideOnSingleTab: Boolean,
69
78
  /** 头部样式 */
70
79
  headerStyle: Object,
71
80
  /** 选项卡样式 */
@@ -80,15 +89,6 @@ const iconSelectProps = {
80
89
  gridStyle: Object,
81
90
  /** 图标样式 */
82
91
  itemStyle: Object,
83
- /** 搜索框提示文本 */
84
- filterPlaceholder: {
85
- type: String,
86
- default: ""
87
- },
88
- /** 下拉类型 */
89
- popperType: String,
90
- /** 下拉组件属性 */
91
- popperProps: Object,
92
92
  /** 是否开启响应式 */
93
93
  responsive: {
94
94
  type: Boolean,
@@ -2,7 +2,7 @@
2
2
 
3
3
  /* 图标选择主题变量 */
4
4
  @mixin set-icon-var($var) {
5
- .ele-icon-select {
5
+ .ele-icon-select-popper {
6
6
  @include set-ele-var('icon', $var);
7
7
  }
8
8
  }
@@ -4,19 +4,32 @@
4
4
 
5
5
  @include set-icon-var($ele);
6
6
 
7
+ /* 选择框 */
7
8
  .ele-select.is-icon-select .el-input__prefix-inner {
8
9
  color: elVar('input', 'text-color');
9
10
  }
10
11
 
11
- .ele-icon-select-popper.is-responsive {
12
+ /* 下拉面板 */
13
+ .ele-icon-select-popper.is-icon-select-responsive {
12
14
  max-width: calc(100vw - 32px);
13
15
  }
14
16
 
15
- .ele-icon-select {
17
+ .ele-icon-select-popper.is-icon-select-default,
18
+ .ele-icon-select-popper > .ele-popover-body,
19
+ .ele-icon-select-popper > .el-dialog__body > .ele-modal-body,
20
+ .ele-icon-select-popper > .el-drawer__body > .ele-drawer-body {
16
21
  display: flex;
17
22
  flex-direction: column;
23
+ padding: 0;
18
24
  }
19
25
 
26
+ .ele-icon-select-main {
27
+ flex: 1;
28
+ display: flex;
29
+ overflow: auto;
30
+ }
31
+
32
+ /* 顶栏 */
20
33
  .ele-icon-select-header {
21
34
  display: flex;
22
35
  align-items: center;
@@ -91,6 +104,7 @@
91
104
  }
92
105
  }
93
106
 
107
+ /* 顶栏搜索框 */
94
108
  .ele-icon-select-search {
95
109
  width: 100%;
96
110
  flex-shrink: 0;
@@ -107,20 +121,14 @@
107
121
  padding-left: 12px;
108
122
  }
109
123
 
110
- .ele-icon-select-main {
111
- flex: 1;
112
- display: flex;
113
- overflow: auto;
114
- }
115
-
124
+ /* 左侧菜单 */
116
125
  .ele-icon-select-menus {
117
- height: 100%;
118
- width: eleVar('icon', 'menus-width');
119
126
  flex-shrink: 0;
120
- overflow: auto;
127
+ width: eleVar('icon', 'menus-width');
121
128
  padding: eleVar('icon', 'menus-padding');
122
129
  box-shadow: -0.8px 0 0 elVar('border-color', 'light') inset;
123
130
  box-sizing: border-box;
131
+ overflow: auto;
124
132
 
125
133
  .ele-icon-select-menu {
126
134
  height: eleVar('icon', 'menu-height');
@@ -184,6 +192,7 @@
184
192
  }
185
193
  }
186
194
 
195
+ /* 图标列表 */
187
196
  .ele-icon-select-body {
188
197
  flex: 1;
189
198
  height: 100%;
@@ -198,11 +207,12 @@
198
207
  .ele-icon-select-grid {
199
208
  box-sizing: border-box;
200
209
  display: grid;
201
- grid-template-columns: repeat(5, 1fr);
210
+ grid-template-columns: repeat(auto-fill, minmax(56px, 1fr));
202
211
  grid-gap: 8px;
203
212
 
204
213
  .ele-icon-select-item {
205
- height: 48px;
214
+ height: eleVar('icon', 'item-height');
215
+ padding: eleVar('icon', 'item-padding');
206
216
  display: flex;
207
217
  flex-direction: column;
208
218
  align-items: center;
@@ -211,11 +221,7 @@
211
221
  font-size: eleVar('icon', 'font-size');
212
222
  border: eleVar('icon', 'border');
213
223
  border-radius: eleVar('icon', 'radius');
214
- transition: (
215
- color $transition-base,
216
- background-color $transition-base,
217
- border-color $transition-base
218
- );
224
+ transition: (color $transition-base, background-color $transition-base);
219
225
  box-sizing: border-box;
220
226
  overflow: hidden;
221
227
  cursor: pointer;
@@ -232,4 +238,30 @@
232
238
  border: eleVar('icon', 'active-border');
233
239
  }
234
240
  }
241
+
242
+ .ele-icon-select-item-name {
243
+ max-width: 100%;
244
+ font-size: eleVar('icon', 'name-font-size');
245
+ margin-top: eleVar('icon', 'name-margin-top');
246
+ white-space: nowrap;
247
+ word-break: break-all;
248
+ text-overflow: ellipsis;
249
+ overflow: hidden;
250
+ }
251
+
252
+ &.is-loose {
253
+ grid-template-columns: repeat(auto-fill, minmax(98px, 1fr));
254
+
255
+ .ele-icon-select-item {
256
+ font-size: eleVar('icon', 'loose-font-size');
257
+ height: eleVar('icon', 'loose-item-height');
258
+ padding: eleVar('icon', 'loose-item-padding');
259
+ }
260
+ }
261
+ }
262
+
263
+ /* 抽屉模式 */
264
+ .ele-icon-select-popper > .el-drawer__body > .ele-drawer-body {
265
+ height: 100%;
266
+ overflow: auto;
235
267
  }
@@ -14,3 +14,16 @@ export interface IconItem {
14
14
  icons?: string[];
15
15
  }[];
16
16
  }
17
+
18
+ /**
19
+ * 图标文字提示
20
+ */
21
+ export type ItemTooltip = boolean | 'static';
22
+
23
+ /**
24
+ * 国际化
25
+ */
26
+ export interface IconSelectLocale {
27
+ title: string;
28
+ searchPlaceholder: string;
29
+ }
@@ -1,5 +1,5 @@
1
1
  import { EleMapPickerViewInstance } from '../ele-app/plusx';
2
- import { PoiItem, MapLocale } from './types';
2
+ import { PoiItem } from './types';
3
3
 
4
4
  declare function __VLS_template(): Partial<Record<string, (_: any) => any>>;
5
5
  declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
@@ -9,7 +9,7 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
9
9
  type: BooleanConstructor;
10
10
  default: null;
11
11
  };
12
- locale: import('vue').PropType<Partial<MapLocale>>;
12
+ locale: import('vue').PropType<Partial<import('./types').MapLocale>>;
13
13
  keywordMode: BooleanConstructor;
14
14
  headerStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
15
15
  height: {
@@ -92,7 +92,7 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
92
92
  type: BooleanConstructor;
93
93
  default: null;
94
94
  };
95
- locale: import('vue').PropType<Partial<MapLocale>>;
95
+ locale: import('vue').PropType<Partial<import('./types').MapLocale>>;
96
96
  keywordMode: BooleanConstructor;
97
97
  headerStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
98
98
  height: {
@@ -23,6 +23,7 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
23
23
  type: BooleanConstructor;
24
24
  default: boolean;
25
25
  };
26
+ bodyHeight: (StringConstructor | NumberConstructor)[];
26
27
  moveOut: import('vue').PropType<import('./types').MoveOut>;
27
28
  resizable: import('vue').PropType<import('./types').Resizable>;
28
29
  position: import('vue').PropType<import('./types').Position>;
@@ -191,11 +192,11 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
191
192
  close: () => void;
192
193
  open: () => void;
193
194
  "update:modelValue": (value: boolean) => void;
194
- "update:fullscreen": (_fullscreen: boolean) => void;
195
195
  opened: () => void;
196
196
  closed: () => void;
197
197
  openAutoFocus: () => void;
198
198
  closeAutoFocus: () => void;
199
+ "update:fullscreen": (_fullscreen: boolean) => void;
199
200
  }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
200
201
  appendToBody: {
201
202
  type: BooleanConstructor;
@@ -205,6 +206,7 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
205
206
  type: BooleanConstructor;
206
207
  default: boolean;
207
208
  };
209
+ bodyHeight: (StringConstructor | NumberConstructor)[];
208
210
  moveOut: import('vue').PropType<import('./types').MoveOut>;
209
211
  resizable: import('vue').PropType<import('./types').Resizable>;
210
212
  position: import('vue').PropType<import('./types').Position>;
@@ -369,11 +371,11 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
369
371
  onClose?: (() => any) | undefined;
370
372
  onOpen?: (() => any) | undefined;
371
373
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
372
- "onUpdate:fullscreen"?: ((_fullscreen: boolean) => any) | undefined;
373
374
  onOpened?: (() => any) | undefined;
374
375
  onClosed?: (() => any) | undefined;
375
376
  onOpenAutoFocus?: (() => any) | undefined;
376
377
  onCloseAutoFocus?: (() => any) | undefined;
378
+ "onUpdate:fullscreen"?: ((_fullscreen: boolean) => any) | undefined;
377
379
  }>, {
378
380
  form: boolean;
379
381
  title: string;
@@ -21,7 +21,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
21
21
  const isActivated = ref(true);
22
22
  const dialogClass = computed(() => {
23
23
  const classes = [wrapperClass];
24
- if (props.responsive ?? isResponsive.value ?? true) {
24
+ if (isResponsive.value) {
25
25
  classes.push("ele-modal-responsive");
26
26
  }
27
27
  if (props.alignCenter || props.position === "center") {
@@ -284,15 +284,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
284
284
  ]),
285
285
  default: withCtx(() => [
286
286
  createVNode(unref(ReceiverView), {
287
+ wrapHeight: _ctx.bodyHeight,
287
288
  wrapPosition: false,
288
- class: normalizeClass(["ele-modal-body", { "is-form": _ctx.form }, _ctx.modalBodyClass]),
289
+ class: normalizeClass([
290
+ "ele-modal-body",
291
+ { "is-fluid-body": _ctx.bodyHeight != null },
292
+ { "is-form": _ctx.form },
293
+ _ctx.modalBodyClass
294
+ ]),
289
295
  style: normalizeStyle(_ctx.bodyStyle)
290
296
  }, {
291
297
  default: withCtx(() => [
292
298
  renderSlot(_ctx.$slots, "default")
293
299
  ]),
294
300
  _: 3
295
- }, 8, ["class", "style"])
301
+ }, 8, ["wrapHeight", "class", "style"])
296
302
  ]),
297
303
  _: 2
298
304
  }, [
@@ -15,6 +15,8 @@ export declare const modalProps: {
15
15
  type: BooleanConstructor;
16
16
  default: boolean;
17
17
  };
18
+ /** 弹窗主体高度 */
19
+ bodyHeight: (NumberConstructor | StringConstructor)[];
18
20
  /** 是否可以拖出边界 */
19
21
  moveOut: PropType<MoveOut>;
20
22
  /** 是否可以拉伸 */
@@ -9,6 +9,8 @@ const modalProps = {
9
9
  type: Boolean,
10
10
  default: true
11
11
  },
12
+ /** 弹窗主体高度 */
13
+ bodyHeight: [String, Number],
12
14
  /** 是否可以拖出边界 */
13
15
  moveOut: [Boolean, Array],
14
16
  /** 是否可以拉伸 */
@@ -39,6 +39,11 @@
39
39
  }
40
40
  }
41
41
  }
42
+
43
+ &.dialog-fade-enter-active .el-overlay-dialog *,
44
+ &.dialog-fade-leave-active .el-overlay-dialog * {
45
+ pointer-events: none !important;
46
+ }
42
47
  }
43
48
 
44
49
  /* header */
@@ -59,6 +64,11 @@
59
64
  box-sizing: border-box;
60
65
  }
61
66
 
67
+ .is-show-header-border > .el-dialog__header > .ele-modal-header {
68
+ padding: eleVar('modal', 'bordered-header-padding');
69
+ border-bottom: eleVar('modal', 'bordered-header-border');
70
+ }
71
+
62
72
  /* 图标按钮 */
63
73
  .ele-modal-tool {
64
74
  flex-shrink: 0;
@@ -90,6 +100,12 @@
90
100
  padding: eleVar('modal', 'body-padding');
91
101
  box-sizing: border-box;
92
102
 
103
+ &.is-fluid-body {
104
+ max-height: 100%;
105
+ min-height: 100%;
106
+ overflow: auto;
107
+ }
108
+
93
109
  &.is-form {
94
110
  padding: eleVar('modal', 'form-body-padding');
95
111
  }