vxe-pc-ui 3.15.13 → 3.15.14

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 (215) hide show
  1. package/es/button/style.css +11 -0
  2. package/es/button/style.min.css +1 -1
  3. package/es/checkbox/src/button.js +3 -1
  4. package/es/checkbox/src/group.js +6 -1
  5. package/es/checkbox-button/style.css +155 -9
  6. package/es/checkbox-button/style.min.css +1 -1
  7. package/es/icon/style.css +1 -1
  8. package/es/icon-picker/src/icon-picker.js +165 -47
  9. package/es/icon-picker/style.css +29 -5
  10. package/es/icon-picker/style.min.css +1 -1
  11. package/es/language/ar-EG.js +3 -0
  12. package/es/language/de-DE.js +3 -0
  13. package/es/language/en-US.js +3 -0
  14. package/es/language/es-ES.js +3 -0
  15. package/es/language/fr-FR.js +3 -0
  16. package/es/language/hu-HU.js +3 -0
  17. package/es/language/hy-AM.js +3 -0
  18. package/es/language/id-ID.js +3 -0
  19. package/es/language/it-IT.js +3 -0
  20. package/es/language/ja-JP.js +3 -0
  21. package/es/language/ko-KR.js +3 -0
  22. package/es/language/ms-MY.js +3 -0
  23. package/es/language/nb-NO.js +3 -0
  24. package/es/language/pt-BR.js +3 -0
  25. package/es/language/ru-RU.js +3 -0
  26. package/es/language/th-TH.js +3 -0
  27. package/es/language/ug-CN.js +3 -0
  28. package/es/language/uk-UA.js +3 -0
  29. package/es/language/uz-UZ.js +3 -0
  30. package/es/language/vi-VN.js +3 -0
  31. package/es/language/zh-CHT.js +3 -0
  32. package/es/language/zh-CN.js +3 -0
  33. package/es/list/src/list.js +15 -1
  34. package/es/radio/src/button.js +3 -1
  35. package/es/radio/src/group.js +6 -1
  36. package/es/radio-button/style.css +155 -9
  37. package/es/radio-button/style.min.css +1 -1
  38. package/es/style.css +1 -1
  39. package/es/style.min.css +1 -1
  40. package/es/tree/src/tree.js +246 -4
  41. package/es/tree/src/util.js +15 -0
  42. package/es/ui/index.js +5 -2
  43. package/es/ui/src/log.js +1 -1
  44. package/es/vxe-button/style.css +11 -0
  45. package/es/vxe-button/style.min.css +1 -1
  46. package/es/vxe-checkbox-button/style.css +155 -9
  47. package/es/vxe-checkbox-button/style.min.css +1 -1
  48. package/es/vxe-icon-picker/style.css +29 -5
  49. package/es/vxe-icon-picker/style.min.css +1 -1
  50. package/es/vxe-radio-button/style.css +155 -9
  51. package/es/vxe-radio-button/style.min.css +1 -1
  52. package/lib/button/style/style.css +11 -0
  53. package/lib/button/style/style.min.css +1 -1
  54. package/lib/checkbox/src/button.js +3 -1
  55. package/lib/checkbox/src/button.min.js +1 -1
  56. package/lib/checkbox/src/group.js +13 -5
  57. package/lib/checkbox/src/group.min.js +1 -1
  58. package/lib/checkbox-button/style/style.css +155 -9
  59. package/lib/checkbox-button/style/style.min.css +1 -1
  60. package/lib/icon/style/style.css +1 -1
  61. package/lib/icon/style/style.min.css +1 -1
  62. package/lib/icon-picker/src/icon-picker.js +154 -28
  63. package/lib/icon-picker/src/icon-picker.min.js +1 -1
  64. package/lib/icon-picker/style/style.css +29 -5
  65. package/lib/icon-picker/style/style.min.css +1 -1
  66. package/lib/index.umd.js +506 -43
  67. package/lib/index.umd.min.js +1 -1
  68. package/lib/language/ar-EG.js +3 -0
  69. package/lib/language/ar-EG.min.js +1 -1
  70. package/lib/language/ar-EG.umd.js +3 -0
  71. package/lib/language/de-DE.js +3 -0
  72. package/lib/language/de-DE.min.js +1 -1
  73. package/lib/language/de-DE.umd.js +3 -0
  74. package/lib/language/en-US.js +3 -0
  75. package/lib/language/en-US.min.js +1 -1
  76. package/lib/language/en-US.umd.js +3 -0
  77. package/lib/language/es-ES.js +3 -0
  78. package/lib/language/es-ES.min.js +1 -1
  79. package/lib/language/es-ES.umd.js +3 -0
  80. package/lib/language/fr-FR.js +3 -0
  81. package/lib/language/fr-FR.min.js +1 -1
  82. package/lib/language/fr-FR.umd.js +3 -0
  83. package/lib/language/hu-HU.js +3 -0
  84. package/lib/language/hu-HU.min.js +1 -1
  85. package/lib/language/hu-HU.umd.js +3 -0
  86. package/lib/language/hy-AM.js +3 -0
  87. package/lib/language/hy-AM.min.js +1 -1
  88. package/lib/language/hy-AM.umd.js +3 -0
  89. package/lib/language/id-ID.js +3 -0
  90. package/lib/language/id-ID.min.js +1 -1
  91. package/lib/language/id-ID.umd.js +3 -0
  92. package/lib/language/it-IT.js +3 -0
  93. package/lib/language/it-IT.min.js +1 -1
  94. package/lib/language/it-IT.umd.js +3 -0
  95. package/lib/language/ja-JP.js +3 -0
  96. package/lib/language/ja-JP.min.js +1 -1
  97. package/lib/language/ja-JP.umd.js +3 -0
  98. package/lib/language/ko-KR.js +3 -0
  99. package/lib/language/ko-KR.min.js +1 -1
  100. package/lib/language/ko-KR.umd.js +3 -0
  101. package/lib/language/ms-MY.js +3 -0
  102. package/lib/language/ms-MY.min.js +1 -1
  103. package/lib/language/ms-MY.umd.js +3 -0
  104. package/lib/language/nb-NO.js +3 -0
  105. package/lib/language/nb-NO.min.js +1 -1
  106. package/lib/language/nb-NO.umd.js +3 -0
  107. package/lib/language/pt-BR.js +3 -0
  108. package/lib/language/pt-BR.min.js +1 -1
  109. package/lib/language/pt-BR.umd.js +3 -0
  110. package/lib/language/ru-RU.js +3 -0
  111. package/lib/language/ru-RU.min.js +1 -1
  112. package/lib/language/ru-RU.umd.js +3 -0
  113. package/lib/language/th-TH.js +3 -0
  114. package/lib/language/th-TH.min.js +1 -1
  115. package/lib/language/th-TH.umd.js +3 -0
  116. package/lib/language/ug-CN.js +3 -0
  117. package/lib/language/ug-CN.min.js +1 -1
  118. package/lib/language/ug-CN.umd.js +3 -0
  119. package/lib/language/uk-UA.js +3 -0
  120. package/lib/language/uk-UA.min.js +1 -1
  121. package/lib/language/uk-UA.umd.js +3 -0
  122. package/lib/language/uz-UZ.js +3 -0
  123. package/lib/language/uz-UZ.min.js +1 -1
  124. package/lib/language/uz-UZ.umd.js +3 -0
  125. package/lib/language/vi-VN.js +3 -0
  126. package/lib/language/vi-VN.min.js +1 -1
  127. package/lib/language/vi-VN.umd.js +3 -0
  128. package/lib/language/zh-CHT.js +3 -0
  129. package/lib/language/zh-CHT.min.js +1 -1
  130. package/lib/language/zh-CHT.umd.js +3 -0
  131. package/lib/language/zh-CN.js +3 -0
  132. package/lib/language/zh-CN.min.js +1 -1
  133. package/lib/language/zh-CN.umd.js +3 -0
  134. package/lib/list/src/list.js +18 -1
  135. package/lib/list/src/list.min.js +1 -1
  136. package/lib/radio/src/button.js +3 -1
  137. package/lib/radio/src/button.min.js +1 -1
  138. package/lib/radio/src/group.js +9 -2
  139. package/lib/radio/src/group.min.js +1 -1
  140. package/lib/radio-button/style/style.css +155 -9
  141. package/lib/radio-button/style/style.min.css +1 -1
  142. package/lib/style.css +1 -1
  143. package/lib/style.min.css +1 -1
  144. package/lib/tree/src/tree.js +287 -6
  145. package/lib/tree/src/tree.min.js +1 -1
  146. package/lib/tree/src/util.js +16 -0
  147. package/lib/tree/src/util.min.js +1 -1
  148. package/lib/ui/index.js +5 -2
  149. package/lib/ui/index.min.js +1 -1
  150. package/lib/ui/src/log.js +1 -1
  151. package/lib/ui/src/log.min.js +1 -1
  152. package/lib/vxe-button/style/style.css +11 -0
  153. package/lib/vxe-button/style/style.min.css +1 -1
  154. package/lib/vxe-checkbox-button/style/style.css +155 -9
  155. package/lib/vxe-checkbox-button/style/style.min.css +1 -1
  156. package/lib/vxe-icon-picker/style/style.css +29 -5
  157. package/lib/vxe-icon-picker/style/style.min.css +1 -1
  158. package/lib/vxe-radio-button/style/style.css +155 -9
  159. package/lib/vxe-radio-button/style/style.min.css +1 -1
  160. package/package.json +1 -1
  161. package/packages/checkbox/src/button.ts +3 -1
  162. package/packages/checkbox/src/group.ts +6 -1
  163. package/packages/icon-picker/src/icon-picker.ts +180 -45
  164. package/packages/language/ar-EG.ts +3 -0
  165. package/packages/language/de-DE.ts +3 -0
  166. package/packages/language/en-US.ts +3 -0
  167. package/packages/language/es-ES.ts +3 -0
  168. package/packages/language/fr-FR.ts +3 -0
  169. package/packages/language/hu-HU.ts +3 -0
  170. package/packages/language/hy-AM.ts +3 -0
  171. package/packages/language/id-ID.ts +3 -0
  172. package/packages/language/it-IT.ts +3 -0
  173. package/packages/language/ja-JP.ts +3 -0
  174. package/packages/language/ko-KR.ts +3 -0
  175. package/packages/language/ms-MY.ts +3 -0
  176. package/packages/language/nb-NO.ts +3 -0
  177. package/packages/language/pt-BR.ts +3 -0
  178. package/packages/language/ru-RU.ts +3 -0
  179. package/packages/language/th-TH.ts +3 -0
  180. package/packages/language/ug-CN.ts +3 -0
  181. package/packages/language/uk-UA.ts +3 -0
  182. package/packages/language/uz-UZ.ts +3 -0
  183. package/packages/language/vi-VN.ts +3 -0
  184. package/packages/language/zh-CHT.ts +3 -0
  185. package/packages/language/zh-CN.ts +3 -0
  186. package/packages/list/src/list.ts +15 -1
  187. package/packages/radio/src/button.ts +3 -1
  188. package/packages/radio/src/group.ts +6 -1
  189. package/packages/tree/src/tree.ts +251 -4
  190. package/packages/tree/src/util.ts +17 -1
  191. package/packages/ui/index.ts +4 -1
  192. package/styles/components/button.scss +24 -69
  193. package/styles/components/checkbox-button.scss +66 -14
  194. package/styles/components/icon-picker.scss +37 -11
  195. package/styles/components/radio-button.scss +66 -14
  196. package/styles/helpers/themeStatus.scss +58 -0
  197. package/types/all.d.ts +205 -0
  198. package/types/components/checkbox-group.d.ts +3 -1
  199. package/types/components/checkbox.d.ts +1 -1
  200. package/types/components/icon-picker.d.ts +27 -4
  201. package/types/components/list.d.ts +2 -2
  202. package/types/components/radio-group.d.ts +3 -1
  203. package/types/components/tree.d.ts +36 -0
  204. /package/es/icon/{iconfont.1782658257467.ttf → iconfont.1782742114089.ttf} +0 -0
  205. /package/es/icon/{iconfont.1782658257467.woff → iconfont.1782742114089.woff} +0 -0
  206. /package/es/icon/{iconfont.1782658257467.woff2 → iconfont.1782742114089.woff2} +0 -0
  207. /package/es/{iconfont.1782658257467.ttf → iconfont.1782742114089.ttf} +0 -0
  208. /package/es/{iconfont.1782658257467.woff → iconfont.1782742114089.woff} +0 -0
  209. /package/es/{iconfont.1782658257467.woff2 → iconfont.1782742114089.woff2} +0 -0
  210. /package/lib/icon/style/{iconfont.1782658257467.ttf → iconfont.1782742114089.ttf} +0 -0
  211. /package/lib/icon/style/{iconfont.1782658257467.woff → iconfont.1782742114089.woff} +0 -0
  212. /package/lib/icon/style/{iconfont.1782658257467.woff2 → iconfont.1782742114089.woff2} +0 -0
  213. /package/lib/{iconfont.1782658257467.ttf → iconfont.1782742114089.ttf} +0 -0
  214. /package/lib/{iconfont.1782658257467.woff → iconfont.1782742114089.woff} +0 -0
  215. /package/lib/{iconfont.1782658257467.woff2 → iconfont.1782742114089.woff2} +0 -0
@@ -10,11 +10,32 @@ var _ui = require("../../ui");
10
10
  var _dom = require("../../ui/src/dom");
11
11
  var _utils = require("../../ui/src/utils");
12
12
  var _vn = require("../../ui/src/vn");
13
+ var _input = _interopRequireDefault(require("../../input/src/input"));
13
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
15
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
15
16
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
16
17
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
17
18
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
+ function createReactData() {
20
+ return {
21
+ initialized: false,
22
+ selectIcon: '',
23
+ panelIndex: 0,
24
+ panelStyle: {},
25
+ panelPlacement: null,
26
+ visiblePanel: false,
27
+ isAniVisible: false,
28
+ isActivated: false,
29
+ searchValue: '',
30
+ iconGroups: []
31
+ };
32
+ }
33
+ function createInternalData() {
34
+ return {
35
+ fullList: []
36
+ // hpTimeout: undefined
37
+ };
38
+ }
18
39
  var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defineVxeComponent)({
19
40
  name: 'VxeIconPicker',
20
41
  mixins: [_ui.globalMixins.sizeMixin],
@@ -52,6 +73,13 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
52
73
  type: Boolean,
53
74
  default: null
54
75
  },
76
+ filterable: {
77
+ type: Boolean,
78
+ default: function _default() {
79
+ return (0, _ui.getConfig)().iconPicker.filterable;
80
+ }
81
+ },
82
+ filterConfig: Object,
55
83
  icons: Array,
56
84
  placement: String,
57
85
  popupConfig: Object,
@@ -85,24 +113,11 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
85
113
  };
86
114
  },
87
115
  data: function data() {
88
- var reactData = {
89
- initialized: false,
90
- selectIcon: '',
91
- panelIndex: 0,
92
- panelStyle: {},
93
- panelPlacement: null,
94
- visiblePanel: false,
95
- isAniVisible: false,
96
- isActivated: false
97
- };
98
- var internalData = {
99
- hpTimeout: undefined
100
- };
101
- return {
116
+ var reactData = createReactData();
117
+ return Object.assign(Object.assign({}, {}), {
102
118
  xID: _xeUtils.default.uniqueId(),
103
- reactData: reactData,
104
- internalData: internalData
105
- };
119
+ reactData: reactData
120
+ });
106
121
  },
107
122
  computed: Object.assign(Object.assign({}, {}), {
108
123
  computeFormReadonly: function computeFormReadonly() {
@@ -167,6 +182,22 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
167
182
  }
168
183
  return (0, _ui.getI18n)('vxe.base.pleaseSelect');
169
184
  },
185
+ computePanelStyle: function computePanelStyle() {
186
+ var $xeIconPicker = this;
187
+ var popupOpts = $xeIconPicker.computePopupOpts;
188
+ var chunkSize = popupOpts.chunkSize,
189
+ height = popupOpts.height,
190
+ maxHeight = popupOpts.maxHeight;
191
+ var stys = {
192
+ '--vxe-ui-icon-picker-item-width': "".concat(100 / (chunkSize || 4), "%")
193
+ };
194
+ if (height) {
195
+ stys['--vxe-ui-icon-picker-panel-height'] = (0, _dom.toCssUnit)(height);
196
+ } else if (maxHeight) {
197
+ stys['--vxe-ui-icon-picker-panel-max-height'] = (0, _dom.toCssUnit)(maxHeight);
198
+ }
199
+ return stys;
200
+ },
170
201
  computeIconList: function computeIconList() {
171
202
  var $xeIconPicker = this;
172
203
  var props = $xeIconPicker;
@@ -188,6 +219,11 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
188
219
  };
189
220
  });
190
221
  },
222
+ computeFilterOpts: function computeFilterOpts() {
223
+ var $xeIconPicker = this;
224
+ var props = $xeIconPicker;
225
+ return Object.assign({}, (0, _ui.getConfig)().iconPicker.filterConfig, props.filterConfig);
226
+ },
191
227
  computePopupOpts: function computePopupOpts() {
192
228
  var $xeIconPicker = this;
193
229
  var props = $xeIconPicker;
@@ -291,6 +327,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
291
327
  var panelElem = $xeIconPicker.$refs.refOptionPanel;
292
328
  var btnTransfer = $xeIconPicker.computeBtnTransfer;
293
329
  var popupOpts = $xeIconPicker.computePopupOpts;
330
+ var width = popupOpts.width;
294
331
  var handleStyle = function handleStyle() {
295
332
  var ppObj = (0, _dom.updatePanelPlacement)(targetElem, panelElem, {
296
333
  placement: popupOpts.placement || placement,
@@ -300,6 +337,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
300
337
  var panelStyle = Object.assign(ppObj.style, {
301
338
  zIndex: panelIndex
302
339
  });
340
+ if (width) {
341
+ Object.assign(panelStyle, {
342
+ width: (0, _dom.toCssUnit)(width),
343
+ minWidth: undefined
344
+ });
345
+ }
303
346
  reactData.panelStyle = panelStyle;
304
347
  reactData.panelPlacement = ppObj.placement;
305
348
  };
@@ -346,6 +389,34 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
346
389
  reactData.isAniVisible = false;
347
390
  }, 350);
348
391
  },
392
+ handleData: function handleData() {
393
+ var $xeIconPicker = this;
394
+ var props = $xeIconPicker;
395
+ var reactData = $xeIconPicker.reactData;
396
+ var modelValue = props.value;
397
+ var searchValue = reactData.searchValue;
398
+ var filterOpts = $xeIconPicker.computeFilterOpts;
399
+ var filterMethod = filterOpts.filterMethod;
400
+ var popupOpts = $xeIconPicker.computePopupOpts;
401
+ var chunkSize = popupOpts.chunkSize;
402
+ var iconList = $xeIconPicker.computeIconList;
403
+ var visibleList = iconList;
404
+ if (searchValue) {
405
+ var searchTxt = "".concat(searchValue).toLowerCase();
406
+ visibleList = iconList.filter(function (item) {
407
+ if (filterMethod) {
408
+ return filterMethod({
409
+ option: item,
410
+ value: modelValue,
411
+ searchValue: searchTxt,
412
+ $iconPicker: $xeIconPicker
413
+ });
414
+ }
415
+ return item.title && "".concat(item.title).toLowerCase().indexOf(searchTxt) > -1 || item.icon && "".concat(item.icon).indexOf(searchTxt) > -1;
416
+ });
417
+ }
418
+ reactData.iconGroups = _xeUtils.default.chunk(visibleList, chunkSize || 4);
419
+ },
349
420
  changeEvent: function changeEvent(evnt, selectValue) {
350
421
  var $xeIconPicker = this;
351
422
  var props = $xeIconPicker;
@@ -507,6 +578,26 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
507
578
  $xeIconPicker.changeEvent(evnt, value);
508
579
  $xeIconPicker.hideOptionPanel();
509
580
  },
581
+ modelSearchEvent: function modelSearchEvent(value) {
582
+ var $xeIconPicker = this;
583
+ var reactData = $xeIconPicker.reactData;
584
+ reactData.searchValue = value;
585
+ },
586
+ focusSearchEvent: function focusSearchEvent() {
587
+ var $xeIconPicker = this;
588
+ var reactData = $xeIconPicker.reactData;
589
+ reactData.isActivated = true;
590
+ },
591
+ handleSearchEvent: function handleSearchEvent() {
592
+ var $xeIconPicker = this;
593
+ $xeIconPicker.handleData();
594
+ },
595
+ triggerSearchEvent: _xeUtils.default.debounce(function () {
596
+ var $xeIconPicker = this;
597
+ $xeIconPicker.handleSearchEvent();
598
+ }, 350, {
599
+ trailing: true
600
+ }),
510
601
  //
511
602
  // Render
512
603
  //
@@ -515,24 +606,26 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
515
606
  var props = $xeIconPicker;
516
607
  var reactData = $xeIconPicker.reactData;
517
608
  var showIconTitle = props.showIconTitle;
518
- var selectIcon = reactData.selectIcon;
519
- var iconGroupList = $xeIconPicker.computeIconGroupList;
520
- var isDisabled = $xeIconPicker.computeIsDisabled;
609
+ var selectIcon = reactData.selectIcon,
610
+ iconGroups = reactData.iconGroups;
521
611
  return h('div', {
522
612
  class: 'vxe-ico-picker--list-wrapper'
523
- }, iconGroupList.map(function (list) {
613
+ }, iconGroups.map(function (list) {
524
614
  return h('div', {
525
615
  class: 'vxe-ico-picker--list'
526
616
  }, list.map(function (item) {
527
617
  var iconRender = item.iconRender;
528
618
  var compConf = iconRender ? _ui.renderer.get(iconRender.name) : null;
529
- var oIconMethod = compConf ? compConf.renderIconPickerOptionIcon : null;
619
+ var iconMethod = compConf ? compConf.renderIconPickerOptionIcon : null;
530
620
  return h('div', {
531
621
  class: ['vxe-ico-picker--item', {
532
622
  'is--selected': selectIcon === item.icon
533
- }],
623
+ }]
624
+ }, [h('div', {
625
+ class: 'vxe-ico-picker--item-inner',
534
626
  on: {
535
627
  click: function click(evnt) {
628
+ var isDisabled = $xeIconPicker.computeIsDisabled;
536
629
  if (!isDisabled) {
537
630
  $xeIconPicker.handleClickIconEvent(evnt, item);
538
631
  }
@@ -540,14 +633,14 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
540
633
  }
541
634
  }, [h('div', {
542
635
  class: 'vxe-ico-picker--item-icon'
543
- }, oIconMethod && iconRender ? (0, _vn.getSlotVNs)(oIconMethod.call($xeIconPicker, h, iconRender, {
636
+ }, iconMethod && iconRender ? (0, _vn.getSlotVNs)(iconMethod(h, iconRender, {
544
637
  $iconPicker: $xeIconPicker,
545
638
  option: item
546
639
  })) : [h('i', {
547
640
  class: item.icon || ''
548
641
  })]), showIconTitle ? h('div', {
549
642
  class: 'vxe-ico-picker--item-title'
550
- }, "".concat(item.title || '')) : (0, _ui.renderEmptyElement)($xeIconPicker)]);
643
+ }, "".concat(item.title || '')) : (0, _ui.renderEmptyElement)($xeIconPicker)])]);
551
644
  }));
552
645
  }));
553
646
  },
@@ -582,7 +675,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
582
675
  var props = $xeIconPicker;
583
676
  var reactData = $xeIconPicker.reactData;
584
677
  var className = props.className,
585
- clearable = props.clearable;
678
+ clearable = props.clearable,
679
+ filterable = props.filterable;
586
680
  var initialized = reactData.initialized,
587
681
  isActivated = reactData.isActivated,
588
682
  isAniVisible = reactData.isAniVisible,
@@ -593,6 +687,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
593
687
  var btnTransfer = $xeIconPicker.computeBtnTransfer;
594
688
  var formReadonly = $xeIconPicker.computeFormReadonly;
595
689
  var inpPlaceholder = $xeIconPicker.computeInpPlaceholder;
690
+ var panelStyle = $xeIconPicker.computePanelStyle;
596
691
  var popupOpts = $xeIconPicker.computePopupOpts;
597
692
  var ppClassName = popupOpts.className || props.popupClassName;
598
693
  if (formReadonly) {
@@ -645,8 +740,29 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
645
740
  },
646
741
  style: reactData.panelStyle
647
742
  }, [initialized && (visiblePanel || isAniVisible) ? h('div', {
648
- class: 'vxe-ico-picker--panel-wrapper'
649
- }, [$xeIconPicker.renderIconWrapper(h)]) : (0, _ui.renderEmptyElement)($xeIconPicker)])]);
743
+ class: 'vxe-ico-picker--panel-wrapper',
744
+ style: panelStyle
745
+ }, [filterable ? h('div', {
746
+ class: 'vxe-ico-picker--panel-search'
747
+ }, [h(_input.default, {
748
+ ref: 'refInpSearch',
749
+ class: 'vxe-ico-picker-search--input',
750
+ props: {
751
+ value: reactData.searchValue,
752
+ type: 'text',
753
+ clearable: true,
754
+ disabled: false,
755
+ readonly: false,
756
+ placeholder: (0, _ui.getI18n)('vxe.iconPicker.search'),
757
+ prefixIcon: (0, _ui.getIcon)().INPUT_SEARCH
758
+ },
759
+ on: {
760
+ 'model-value': $xeIconPicker.modelSearchEvent,
761
+ focus: $xeIconPicker.focusSearchEvent,
762
+ change: $xeIconPicker.triggerSearchEvent,
763
+ search: $xeIconPicker.triggerSearchEvent
764
+ }
765
+ })]) : (0, _ui.renderEmptyElement)($xeIconPicker), $xeIconPicker.renderIconWrapper(h)]) : (0, _ui.renderEmptyElement)($xeIconPicker)])]);
650
766
  }
651
767
  },
652
768
  watch: {
@@ -654,13 +770,19 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
654
770
  var $xeIconPicker = this;
655
771
  var reactData = $xeIconPicker.reactData;
656
772
  reactData.selectIcon = "".concat(val || '');
773
+ },
774
+ computeIconList: function computeIconList() {
775
+ var $xeIconPicker = this;
776
+ $xeIconPicker.handleData();
657
777
  }
658
778
  },
659
779
  created: function created() {
660
780
  var $xeIconPicker = this;
661
781
  var props = $xeIconPicker;
662
782
  var reactData = $xeIconPicker.reactData;
783
+ $xeIconPicker.internalData = createInternalData();
663
784
  reactData.selectIcon = "".concat(props.value || '');
785
+ $xeIconPicker.handleData();
664
786
  _ui.globalEvents.on($xeIconPicker, 'mousewheel', $xeIconPicker.handleGlobalMousewheelEvent);
665
787
  _ui.globalEvents.on($xeIconPicker, 'mousedown', $xeIconPicker.handleGlobalMousedownEvent);
666
788
  _ui.globalEvents.on($xeIconPicker, 'keydown', $xeIconPicker.handleGlobalKeydownEvent);
@@ -668,6 +790,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
668
790
  },
669
791
  beforeDestroy: function beforeDestroy() {
670
792
  var $xeIconPicker = this;
793
+ var reactData = $xeIconPicker.reactData;
794
+ var internalData = $xeIconPicker.internalData;
671
795
  var panelElem = $xeIconPicker.$refs.refOptionPanel;
672
796
  if (panelElem && panelElem.parentNode) {
673
797
  panelElem.parentNode.removeChild(panelElem);
@@ -676,6 +800,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
676
800
  _ui.globalEvents.off($xeIconPicker, 'mousedown');
677
801
  _ui.globalEvents.off($xeIconPicker, 'keydown');
678
802
  _ui.globalEvents.off($xeIconPicker, 'blur');
803
+ _xeUtils.default.assign(reactData, createReactData());
804
+ _xeUtils.default.assign(internalData, createInternalData());
679
805
  },
680
806
  render: function render(h) {
681
807
  return this.renderVN(h);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,t,i){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var i=e[Symbol.toPrimitive];if(void 0===i)return("string"===t?String:Number)(e);i=i.call(e,t||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeIconPicker",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:String,placeholder:String,clearable:Boolean,size:{type:String,default:function(){return(0,_ui.getConfig)().iconPicker.size||(0,_ui.getConfig)().size}},className:[String,Function],popupClassName:[String,Function],showIconTitle:{type:Boolean,default:function(){return(0,_ui.getConfig)().iconPicker.showIconTitle}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},icons:Array,placement:String,popupConfig:Object,transfer:{type:Boolean,default:null}},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeIconPicker:this}},data:function(){var e={hpTimeout:void 0};return{xID:_xeUtils.default.uniqueId(),reactData:{initialized:!1,selectIcon:"",panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1},internalData:e}},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,i=e.$xeModal,n=e.$xeDrawer,a=e.$xeForm,o=e.transfer,e=e.computePopupOpts;if(_xeUtils.default.isBoolean(e.transfer))return e.transfer;if(null===o){e=(0,_ui.getConfig)().iconPicker.transfer;if(_xeUtils.default.isBoolean(e))return e;if(t||i||n||a)return!0}return o},computeInpPlaceholder:function(){var e=this.placeholder;return(e=e||(0,_ui.getConfig)().select.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")},computeIconList:function(){var e=this.icons;return(e=e&&e.length?e:(0,_ui.getConfig)().iconPicker.icons||[]).map(function(e){return _xeUtils.default.isString(e)?{title:e,icon:"vxe-icon-".concat("".concat(e||"").replace(/^vxe-icon-/,""))}:{title:"".concat(e.title||""),icon:e.icon||"",iconRender:e.iconRender}})},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().iconPicker.popupConfig,this.popupConfig)},computeIconGroupList:function(){var e=this.computeIconList;return _xeUtils.default.chunk(e,4)},computeSelectIconItem:function(){var t=this.reactData.selectIcon,e=this.computeIconList;return t?e.find(function(e){return e.icon===t}):null}}),methods:{dispatchEvent:function(e,t,i){this.$emit(e,(0,_ui.createEvent)(i,{$iconPicker:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},isPanelVisible:function(){return this.reactData.visiblePanel},togglePanel:function(){return this.reactData.visiblePanel?this.hideOptionPanel():this.showOptionPanel(),this.$nextTick()},hidePanel:function(){return this.reactData.visiblePanel&&this.hideOptionPanel(),this.$nextTick()},showPanel:function(){return this.reactData.visiblePanel||this.showOptionPanel(),this.$nextTick()},focus:function(){var e=this.reactData,t=this.$refs.refInput;return e.isActivated=!0,t.blur(),this.$nextTick()},blur:function(){var e=this.reactData;return this.$refs.refInput.blur(),e.isActivated=!1,this.$nextTick()},updateZindex:function(){var e=this.reactData;e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(o,l,{placement:c.placement||n,defaultPlacement:c.defaultPlacement,teleportTo:r}),t=Object.assign(e.style,{zIndex:a});i.panelStyle=t,i.panelPlacement=e.placement}var t=this,i=t.reactData,n=t.placement,a=i.panelIndex,o=t.$refs.refElem,l=t.$refs.refOptionPanel,r=t.computeBtnTransfer,c=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(){var e=this,t=e.reactData,i=e.internalData,n=i.hpTimeout;e.computeIsDisabled||(n&&(clearTimeout(n),i.hpTimeout=void 0),n=e.computeBtnTransfer,i=e.$refs.refOptionPanel,t.initialized||(t.initialized=!0,n&&i&&document.body.appendChild(i)),t.isActivated=!0,t.isAniVisible=!0,setTimeout(function(){t.visiblePanel=!0,e.updatePlacement()},10),e.updateZindex(),e.updatePlacement())},hideOptionPanel:function(){var e=this.reactData,t=this.internalData;e.visiblePanel=!1,t.hpTimeout=setTimeout(function(){e.isAniVisible=!1},350)},changeEvent:function(e,t){var i=this,n=i,a=i.reactData,o=i.$xeForm,l=i.formItemInfo;(a.selectIcon=t)!==n.value&&(i.emitModel(t),i.dispatchEvent("change",{value:t},e),o)&&l&&o.triggerItemEvent(e,l.itemConfig.field,t)},focusEvent:function(){var e=this.reactData;this.computeIsDisabled||e.visiblePanel||this.showOptionPanel()},blurEvent:function(){this.reactData.isActivated=!1},clearValueEvent:function(e,t){this.changeEvent(e,t),this.dispatchEvent("clear",{value:t},e)},clearEvent:function(e,t){this.clearValueEvent(t,null),this.hideOptionPanel()},togglePanelEvent:function(e){var t=this.reactData;e.preventDefault(),t.visiblePanel?this.hideOptionPanel():this.showOptionPanel()},clickEvent:function(e){this.togglePanelEvent(e),this.dispatchEvent("click",{},e)},handleGlobalMousewheelEvent:function(e){var t=this,i=t.reactData.visiblePanel;t.computeIsDisabled||i&&(i=t.$refs.refOptionPanel,(0,_dom.getEventTargetNode)(e,i).flag?t.updatePlacement():t.hideOptionPanel())},handleGlobalMousedownEvent:function(e){var t,i,n=this,a=n.reactData,o=a.visiblePanel;n.computeIsDisabled||(t=n.$refs.refElem,i=n.$refs.refOptionPanel,a.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,i).flag,o&&!a.isActivated&&n.hideOptionPanel())},handleGlobalKeydownEvent:function(e){var t,i,n,a,o,l,r,c=this,s=c.reactData,u=c.clearable,p=s.visiblePanel;c.computeIsDisabled||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),i=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ENTER),n=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),a=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),o=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),l=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.DELETE),r=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.SPACEBAR),t&&(s.isActivated=!1),p?n||t?c.hideOptionPanel():i?(e.preventDefault(),e.stopPropagation()):(a||o||r)&&e.preventDefault():(a||o||i||r)&&s.isActivated&&(e.preventDefault(),c.showOptionPanel()),s.isActivated&&l&&u&&c.clearValueEvent(e,null))},handleGlobalBlurEvent:function(){var e=this.reactData,t=e.visiblePanel,i=e.isActivated;t&&this.hideOptionPanel(),i&&(e.isActivated=!1),(t||i)&&(e=this.$refs.refInput)&&e.blur()},handleClickIconEvent:function(e,t){t=t.icon;this.changeEvent(e,t),this.hideOptionPanel()},renderIconWrapper:function(n){var a=this,e=a.reactData,o=a.showIconTitle,l=e.selectIcon,e=a.computeIconGroupList,r=a.computeIsDisabled;return n("div",{class:"vxe-ico-picker--list-wrapper"},e.map(function(e){return n("div",{class:"vxe-ico-picker--list"},e.map(function(t){var e=t.iconRender,i=e?_ui.renderer.get(e.name):null,i=i?i.renderIconPickerOptionIcon:null;return n("div",{class:["vxe-ico-picker--item",{"is--selected":l===t.icon}],on:{click:function(e){r||a.handleClickIconEvent(e,t)}}},[n("div",{class:"vxe-ico-picker--item-icon"},i&&e?(0,_vn.getSlotVNs)(i.call(a,n,e,{$iconPicker:a,option:t})):[n("i",{class:t.icon||""})]),o?n("div",{class:"vxe-ico-picker--item-title"},"".concat(t.title||"")):(0,_ui.renderEmptyElement)(a)])}))}))},renderIconView:function(e){var t=this.reactData.selectIcon,i=this.computeSelectIconItem;if(i){var n=i.iconRender,a=n?_ui.renderer.get(n.name):null,a=a?a.renderIconPickerOptionIcon:null;if(a&&n)return e("div",{key:"inc",class:"vxe-ico-picker--icon"},(0,_vn.getSlotVNs)(a.call(this,e,n,{$iconPicker:this,option:i})))}return e("div",{key:"ind",class:"vxe-ico-picker--icon"},[e("i",{class:t})])},renderVN:function(e){var t=this,i=t.reactData,n=t.className,a=t.clearable,o=i.initialized,l=i.isActivated,r=i.isAniVisible,c=i.visiblePanel,s=i.selectIcon,u=t.computeSize,p=t.computeIsDisabled,d=t.computeBtnTransfer,f=t.computeInpPlaceholder,v=t.computePopupOpts.className||t.popupClassName;return t.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-ico-picker--readonly",n]},[e("i",{class:s})]):e("div",{ref:"refElem",class:["vxe-ico-picker",n?_xeUtils.default.isFunction(n)?n({$iconPicker:t}):n:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(u),u),"show--clear",a&&!p&&!!s),"is--visible",c),"is--disabled",p),"is--active",l)]},[e("div",{class:"vxe-ico-picker--inner",on:{click:t.clickEvent}},[e("input",{ref:"refInput",class:"vxe-ico-picker--input",on:{focus:t.focusEvent,blur:t.blurEvent}}),s?t.renderIconView(e):e("div",{class:"vxe-ico-picker--placeholder"},f),e("div",{class:"vxe-ico-picker--suffix"},[e("div",{class:"vxe-ico-picker--clear-icon",on:{click:t.clearEvent}},[e("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]),e("div",{class:"vxe-ico-picker--suffix-icon"},[e("i",{class:c?(0,_ui.getIcon)().ICON_PICKER_OPEN:(0,_ui.getIcon)().ICON_PICKER_CLOSE})])])]),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-ico-picker--panel",v?_xeUtils.default.isFunction(v)?v({$iconPicker:t}):v:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(u),u),"is--transfer",d),"ani--leave",r),"ani--enter",c)],attrs:{placement:i.panelPlacement},style:i.panelStyle},[o&&(c||r)?e("div",{class:"vxe-ico-picker--panel-wrapper"},[t.renderIconWrapper(e)]):(0,_ui.renderEmptyElement)(t)])])}},watch:{value:function(e){this.reactData.selectIcon="".concat(e||"")}},created:function(){var e=this;e.reactData.selectIcon="".concat(e.value||""),_ui.globalEvents.on(e,"mousewheel",e.handleGlobalMousewheelEvent),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"keydown",e.handleGlobalKeydownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent)},beforeDestroy:function(){var e=this,t=e.$refs.refOptionPanel;t&&t.parentNode&&t.parentNode.removeChild(t),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"keydown"),_ui.globalEvents.off(e,"blur")},render:function(e){return this.renderVN(e)}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_input=_interopRequireDefault(require("../../input/src/input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,t,i){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var i=e[Symbol.toPrimitive];if(void 0===i)return("string"===t?String:Number)(e);i=i.call(e,t||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}function createReactData(){return{initialized:!1,selectIcon:"",panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1,searchValue:"",iconGroups:[]}}function createInternalData(){return{fullList:[]}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeIconPicker",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:String,placeholder:String,clearable:Boolean,size:{type:String,default:function(){return(0,_ui.getConfig)().iconPicker.size||(0,_ui.getConfig)().size}},className:[String,Function],popupClassName:[String,Function],showIconTitle:{type:Boolean,default:function(){return(0,_ui.getConfig)().iconPicker.showIconTitle}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},filterable:{type:Boolean,default:function(){return(0,_ui.getConfig)().iconPicker.filterable}},filterConfig:Object,icons:Array,placement:String,popupConfig:Object,transfer:{type:Boolean,default:null}},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeIconPicker:this}},data:function(){var e=createReactData();return Object.assign(Object.assign({},{}),{xID:_xeUtils.default.uniqueId(),reactData:e})},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,i=e.$xeModal,n=e.$xeDrawer,a=e.$xeForm,o=e.transfer,e=e.computePopupOpts;if(_xeUtils.default.isBoolean(e.transfer))return e.transfer;if(null===o){e=(0,_ui.getConfig)().iconPicker.transfer;if(_xeUtils.default.isBoolean(e))return e;if(t||i||n||a)return!0}return o},computeInpPlaceholder:function(){var e=this.placeholder;return(e=e||(0,_ui.getConfig)().select.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")},computePanelStyle:function(){var e=this.computePopupOpts,t=e.chunkSize,i=e.height,e=e.maxHeight,t={"--vxe-ui-icon-picker-item-width":"".concat(100/(t||4),"%")};return i?t["--vxe-ui-icon-picker-panel-height"]=(0,_dom.toCssUnit)(i):e&&(t["--vxe-ui-icon-picker-panel-max-height"]=(0,_dom.toCssUnit)(e)),t},computeIconList:function(){var e=this.icons;return(e=e&&e.length?e:(0,_ui.getConfig)().iconPicker.icons||[]).map(function(e){return _xeUtils.default.isString(e)?{title:e,icon:"vxe-icon-".concat("".concat(e||"").replace(/^vxe-icon-/,""))}:{title:"".concat(e.title||""),icon:e.icon||"",iconRender:e.iconRender}})},computeFilterOpts:function(){return Object.assign({},(0,_ui.getConfig)().iconPicker.filterConfig,this.filterConfig)},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().iconPicker.popupConfig,this.popupConfig)},computeIconGroupList:function(){var e=this.computeIconList;return _xeUtils.default.chunk(e,4)},computeSelectIconItem:function(){var t=this.reactData.selectIcon,e=this.computeIconList;return t?e.find(function(e){return e.icon===t}):null}}),methods:{dispatchEvent:function(e,t,i){this.$emit(e,(0,_ui.createEvent)(i,{$iconPicker:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},isPanelVisible:function(){return this.reactData.visiblePanel},togglePanel:function(){return this.reactData.visiblePanel?this.hideOptionPanel():this.showOptionPanel(),this.$nextTick()},hidePanel:function(){return this.reactData.visiblePanel&&this.hideOptionPanel(),this.$nextTick()},showPanel:function(){return this.reactData.visiblePanel||this.showOptionPanel(),this.$nextTick()},focus:function(){var e=this.reactData,t=this.$refs.refInput;return e.isActivated=!0,t.blur(),this.$nextTick()},blur:function(){var e=this.reactData;return this.$refs.refInput.blur(),e.isActivated=!1,this.$nextTick()},updateZindex:function(){var e=this.reactData;e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(o,r,{placement:c.placement||n,defaultPlacement:c.defaultPlacement,teleportTo:l}),t=Object.assign(e.style,{zIndex:a});s&&Object.assign(t,{width:(0,_dom.toCssUnit)(s),minWidth:void 0}),i.panelStyle=t,i.panelPlacement=e.placement}var t=this,i=t.reactData,n=t.placement,a=i.panelIndex,o=t.$refs.refElem,r=t.$refs.refOptionPanel,l=t.computeBtnTransfer,c=t.computePopupOpts,s=c.width;return e(),t.$nextTick().then(e)},showOptionPanel:function(){var e=this,t=e.reactData,i=e.internalData,n=i.hpTimeout;e.computeIsDisabled||(n&&(clearTimeout(n),i.hpTimeout=void 0),n=e.computeBtnTransfer,i=e.$refs.refOptionPanel,t.initialized||(t.initialized=!0,n&&i&&document.body.appendChild(i)),t.isActivated=!0,t.isAniVisible=!0,setTimeout(function(){t.visiblePanel=!0,e.updatePlacement()},10),e.updateZindex(),e.updatePlacement())},hideOptionPanel:function(){var e=this.reactData,t=this.internalData;e.visiblePanel=!1,t.hpTimeout=setTimeout(function(){e.isAniVisible=!1},350)},handleData:function(){var t,i=this,e=i.reactData,n=i.value,a=e.searchValue,o=i.computeFilterOpts.filterMethod,r=i.computePopupOpts.chunkSize,l=i.computeIconList,c=l;a&&(t="".concat(a).toLowerCase(),c=l.filter(function(e){return o?o({option:e,value:n,searchValue:t,$iconPicker:i}):e.title&&-1<"".concat(e.title).toLowerCase().indexOf(t)||e.icon&&-1<"".concat(e.icon).indexOf(t)})),e.iconGroups=_xeUtils.default.chunk(c,r||4)},changeEvent:function(e,t){var i=this,n=i,a=i.reactData,o=i.$xeForm,r=i.formItemInfo;(a.selectIcon=t)!==n.value&&(i.emitModel(t),i.dispatchEvent("change",{value:t},e),o)&&r&&o.triggerItemEvent(e,r.itemConfig.field,t)},focusEvent:function(){var e=this.reactData;this.computeIsDisabled||e.visiblePanel||this.showOptionPanel()},blurEvent:function(){this.reactData.isActivated=!1},clearValueEvent:function(e,t){this.changeEvent(e,t),this.dispatchEvent("clear",{value:t},e)},clearEvent:function(e,t){this.clearValueEvent(t,null),this.hideOptionPanel()},togglePanelEvent:function(e){var t=this.reactData;e.preventDefault(),t.visiblePanel?this.hideOptionPanel():this.showOptionPanel()},clickEvent:function(e){this.togglePanelEvent(e),this.dispatchEvent("click",{},e)},handleGlobalMousewheelEvent:function(e){var t=this,i=t.reactData.visiblePanel;t.computeIsDisabled||i&&(i=t.$refs.refOptionPanel,(0,_dom.getEventTargetNode)(e,i).flag?t.updatePlacement():t.hideOptionPanel())},handleGlobalMousedownEvent:function(e){var t,i,n=this,a=n.reactData,o=a.visiblePanel;n.computeIsDisabled||(t=n.$refs.refElem,i=n.$refs.refOptionPanel,a.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,i).flag,o&&!a.isActivated&&n.hideOptionPanel())},handleGlobalKeydownEvent:function(e){var t,i,n,a,o,r,l,c=this,s=c.reactData,u=c.clearable,p=s.visiblePanel;c.computeIsDisabled||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),i=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ENTER),n=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),a=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),o=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),r=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.DELETE),l=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.SPACEBAR),t&&(s.isActivated=!1),p?n||t?c.hideOptionPanel():i?(e.preventDefault(),e.stopPropagation()):(a||o||l)&&e.preventDefault():(a||o||i||l)&&s.isActivated&&(e.preventDefault(),c.showOptionPanel()),s.isActivated&&r&&u&&c.clearValueEvent(e,null))},handleGlobalBlurEvent:function(){var e=this.reactData,t=e.visiblePanel,i=e.isActivated;t&&this.hideOptionPanel(),i&&(e.isActivated=!1),(t||i)&&(e=this.$refs.refInput)&&e.blur()},handleClickIconEvent:function(e,t){t=t.icon;this.changeEvent(e,t),this.hideOptionPanel()},modelSearchEvent:function(e){this.reactData.searchValue=e},focusSearchEvent:function(){this.reactData.isActivated=!0},handleSearchEvent:function(){this.handleData()},triggerSearchEvent:_xeUtils.default.debounce(function(){this.handleSearchEvent()},350,{trailing:!0}),renderIconWrapper:function(n){var a=this,e=a.reactData,o=a.showIconTitle,r=e.selectIcon;return n("div",{class:"vxe-ico-picker--list-wrapper"},e.iconGroups.map(function(e){return n("div",{class:"vxe-ico-picker--list"},e.map(function(t){var e=t.iconRender,i=e?_ui.renderer.get(e.name):null,i=i?i.renderIconPickerOptionIcon:null;return n("div",{class:["vxe-ico-picker--item",{"is--selected":r===t.icon}]},[n("div",{class:"vxe-ico-picker--item-inner",on:{click:function(e){a.computeIsDisabled||a.handleClickIconEvent(e,t)}}},[n("div",{class:"vxe-ico-picker--item-icon"},i&&e?(0,_vn.getSlotVNs)(i(n,e,{$iconPicker:a,option:t})):[n("i",{class:t.icon||""})]),o?n("div",{class:"vxe-ico-picker--item-title"},"".concat(t.title||"")):(0,_ui.renderEmptyElement)(a)])])}))}))},renderIconView:function(e){var t=this.reactData.selectIcon,i=this.computeSelectIconItem;if(i){var n=i.iconRender,a=n?_ui.renderer.get(n.name):null,a=a?a.renderIconPickerOptionIcon:null;if(a&&n)return e("div",{key:"inc",class:"vxe-ico-picker--icon"},(0,_vn.getSlotVNs)(a.call(this,e,n,{$iconPicker:this,option:i})))}return e("div",{key:"ind",class:"vxe-ico-picker--icon"},[e("i",{class:t})])},renderVN:function(e){var t=this,i=t.reactData,n=t.className,a=t.clearable,o=t.filterable,r=i.initialized,l=i.isActivated,c=i.isAniVisible,s=i.visiblePanel,u=i.selectIcon,p=t.computeSize,f=t.computeIsDisabled,d=t.computeBtnTransfer,v=t.computeInpPlaceholder,h=t.computePanelStyle,m=t.computePopupOpts.className||t.popupClassName;return t.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-ico-picker--readonly",n]},[e("i",{class:u})]):e("div",{ref:"refElem",class:["vxe-ico-picker",n?_xeUtils.default.isFunction(n)?n({$iconPicker:t}):n:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"show--clear",a&&!f&&!!u),"is--visible",s),"is--disabled",f),"is--active",l)]},[e("div",{class:"vxe-ico-picker--inner",on:{click:t.clickEvent}},[e("input",{ref:"refInput",class:"vxe-ico-picker--input",on:{focus:t.focusEvent,blur:t.blurEvent}}),u?t.renderIconView(e):e("div",{class:"vxe-ico-picker--placeholder"},v),e("div",{class:"vxe-ico-picker--suffix"},[e("div",{class:"vxe-ico-picker--clear-icon",on:{click:t.clearEvent}},[e("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]),e("div",{class:"vxe-ico-picker--suffix-icon"},[e("i",{class:s?(0,_ui.getIcon)().ICON_PICKER_OPEN:(0,_ui.getIcon)().ICON_PICKER_CLOSE})])])]),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-ico-picker--panel",m?_xeUtils.default.isFunction(m)?m({$iconPicker:t}):m:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--transfer",d),"ani--leave",c),"ani--enter",s)],attrs:{placement:i.panelPlacement},style:i.panelStyle},[r&&(s||c)?e("div",{class:"vxe-ico-picker--panel-wrapper",style:h},[o?e("div",{class:"vxe-ico-picker--panel-search"},[e(_input.default,{ref:"refInpSearch",class:"vxe-ico-picker-search--input",props:{value:i.searchValue,type:"text",clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.iconPicker.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH},on:{"model-value":t.modelSearchEvent,focus:t.focusSearchEvent,change:t.triggerSearchEvent,search:t.triggerSearchEvent}})]):(0,_ui.renderEmptyElement)(t),t.renderIconWrapper(e)]):(0,_ui.renderEmptyElement)(t)])])}},watch:{value:function(e){this.reactData.selectIcon="".concat(e||"")},computeIconList:function(){this.handleData()}},created:function(){var e=this,t=e,i=e.reactData;e.internalData=createInternalData(),i.selectIcon="".concat(t.value||""),e.handleData(),_ui.globalEvents.on(e,"mousewheel",e.handleGlobalMousewheelEvent),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"keydown",e.handleGlobalKeydownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent)},beforeDestroy:function(){var e=this,t=e.reactData,i=e.internalData,n=e.$refs.refOptionPanel;n&&n.parentNode&&n.parentNode.removeChild(n),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"keydown"),_ui.globalEvents.off(e,"blur"),_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(i,createInternalData())},render:function(e){return this.renderVN(e)}});
@@ -7,6 +7,11 @@
7
7
  border-radius: var(--vxe-ui-base-border-radius);
8
8
  background-color: var(--vxe-ui-layout-background-color);
9
9
  }
10
+ .vxe-ico-picker.is--disabled {
11
+ background-color: var(--vxe-ui-input-disabled-background-color);
12
+ color: var(--vxe-ui-font-disabled-color);
13
+ cursor: no-drop;
14
+ }
10
15
  .vxe-ico-picker.show--clear:hover .vxe-ico-picker--clear-icon {
11
16
  display: block;
12
17
  }
@@ -64,6 +69,15 @@
64
69
  transition: transform 0.2s ease-in-out;
65
70
  }
66
71
 
72
+ .vxe-ico-picker--panel-search {
73
+ display: block;
74
+ flex-shrink: 0;
75
+ padding: var(--vxe-ui-layout-padding-default);
76
+ }
77
+ .vxe-ico-picker--panel-search .vxe-ico-picker-search--input {
78
+ width: 100%;
79
+ }
80
+
67
81
  .vxe-ico-picker--readonly {
68
82
  color: var(--vxe-ui-font-color);
69
83
  display: inline-flex;
@@ -83,10 +97,17 @@
83
97
  color: var(--vxe-ui-font-primary-color);
84
98
  }
85
99
 
100
+ .vxe-ico-picker--all-list {
101
+ display: flex;
102
+ flex-direction: row;
103
+ flex-wrap: wrap;
104
+ }
105
+
86
106
  .vxe-ico-picker--list-wrapper {
87
107
  overflow-x: hidden;
88
108
  overflow-y: auto;
89
- max-height: 22.3em;
109
+ height: var(--vxe-ui-icon-picker-panel-height);
110
+ max-height: var(--vxe-ui-icon-picker-panel-max-height, var(--vxe-ui-icon-picker-panel-height, 22.3em));
90
111
  padding: var(--vxe-ui-layout-padding-qtr);
91
112
  }
92
113
 
@@ -98,17 +119,20 @@
98
119
  .vxe-ico-picker--item {
99
120
  display: flex;
100
121
  flex-direction: column;
101
- width: 4.8em;
122
+ min-width: 4.8em;
123
+ width: var(--vxe-ui-icon-picker-item-width, 4.8em);
124
+ padding: var(--vxe-ui-layout-padding-half);
125
+ }
126
+ .vxe-ico-picker--item .vxe-ico-picker--item-inner {
102
127
  padding: 0.2em;
103
128
  border: 1px solid var(--vxe-ui-input-border-color);
104
129
  border-radius: var(--vxe-ui-base-border-radius);
105
- margin: var(--vxe-ui-layout-padding-half);
106
130
  cursor: pointer;
107
131
  }
108
- .vxe-ico-picker--item:hover {
132
+ .vxe-ico-picker--item .vxe-ico-picker--item-inner:hover {
109
133
  background-color: var(--vxe-ui-base-hover-background-color);
110
134
  }
111
- .vxe-ico-picker--item.is--selected {
135
+ .vxe-ico-picker--item.is--selected .vxe-ico-picker--item-inner {
112
136
  color: var(--vxe-ui-font-primary-color);
113
137
  border-color: var(--vxe-ui-font-primary-color);
114
138
  }
@@ -1 +1 @@
1
- .vxe-ico-picker{position:relative;display:inline-block;color:var(--vxe-ui-font-color);width:100px;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-layout-background-color)}.vxe-ico-picker.show--clear:hover .vxe-ico-picker--clear-icon{display:block}.vxe-ico-picker.is--active{border-color:var(--vxe-ui-font-primary-color)}.vxe-ico-picker--inner{display:flex;flex-direction:row;width:100%;padding:0 .5em}.vxe-ico-picker--input{position:absolute;z-index:-1;width:1px;height:1px;outline:0;border:0}.vxe-ico-picker--icon{flex-grow:1;display:inline-flex;flex-direction:row;align-items:center;justify-content:left;padding:0 .5em}.vxe-ico-picker--icon>svg{max-width:1em;max-height:1em;vertical-align:middle}.vxe-ico-picker--placeholder{flex-grow:1;color:var(--vxe-ui-input-placeholder-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-ico-picker--suffix{display:flex;flex-direction:row;flex-shrink:0;color:var(--vxe-ui-input-placeholder-color);cursor:pointer}.vxe-ico-picker--suffix .vxe-ico-picker--suffix-icon>i{display:inline-block;transition:transform .2s ease-in-out}.vxe-ico-picker--readonly{color:var(--vxe-ui-font-color);display:inline-flex}.vxe-ico-picker--clear-icon{display:none;padding-right:.5em;height:100%;color:var(--vxe-ui-input-placeholder-color);cursor:pointer}.vxe-ico-picker--clear-icon:hover{color:var(--vxe-ui-font-color)}.vxe-ico-picker--clear-icon:active{color:var(--vxe-ui-font-primary-color)}.vxe-ico-picker--list-wrapper{overflow-x:hidden;overflow-y:auto;max-height:22.3em;padding:var(--vxe-ui-layout-padding-qtr)}.vxe-ico-picker--list{display:flex;flex-direction:row}.vxe-ico-picker--item{display:flex;flex-direction:column;width:4.8em;padding:.2em;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius);margin:var(--vxe-ui-layout-padding-half);cursor:pointer}.vxe-ico-picker--item:hover{background-color:var(--vxe-ui-base-hover-background-color)}.vxe-ico-picker--item.is--selected{color:var(--vxe-ui-font-primary-color);border-color:var(--vxe-ui-font-primary-color)}.vxe-ico-picker--item-icon{flex-grow:1;display:flex;flex-direction:row;align-items:center;justify-content:center;height:1.5em;font-size:1.4em}.vxe-ico-picker--item-icon>svg{max-width:1em;max-height:1em;vertical-align:middle}.vxe-ico-picker--item-title{padding:0 .2em;line-height:1.3em;flex-shrink:0;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9em}.vxe-ico-picker--item-icon,.vxe-ico-picker--item-title{width:100%}.vxe-ico-picker--panel-wrapper{position:relative;border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-base-popup-border-color);box-shadow:var(--vxe-ui-base-popup-box-shadow);background-color:var(--vxe-ui-layout-background-color)}.vxe-ico-picker--panel{display:none;position:absolute;left:0;padding:4px 0;color:var(--vxe-ui-font-color);text-align:left}.vxe-ico-picker--panel:not(.is--transfer){min-width:100%}.vxe-ico-picker--panel.is--transfer{position:fixed}.vxe-ico-picker--panel.ani--leave{display:block;opacity:0;transform:scaleY(.5);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transform-origin:center top;backface-visibility:hidden}.vxe-ico-picker--panel.ani--leave[placement=top]{transform-origin:center bottom}.vxe-ico-picker--panel.ani--enter{opacity:1;transform:scaleY(1)}.vxe-ico-picker{height:var(--vxe-ui-input-height-default);line-height:var(--vxe-ui-input-height-default)}.vxe-ico-picker.size--medium{height:var(--vxe-ui-input-height-medium);line-height:var(--vxe-ui-input-height-medium)}.vxe-ico-picker.size--small{height:var(--vxe-ui-input-height-small);line-height:var(--vxe-ui-input-height-small)}.vxe-ico-picker.size--mini{height:var(--vxe-ui-input-height-mini);line-height:var(--vxe-ui-input-height-mini)}.vxe-ico-picker,.vxe-ico-picker--panel{font-size:var(--vxe-ui-font-size-default)}.vxe-ico-picker--panel.size--medium,.vxe-ico-picker.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-ico-picker--panel.size--small,.vxe-ico-picker.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-ico-picker--panel.size--mini,.vxe-ico-picker.size--mini{font-size:var(--vxe-ui-font-size-mini)}
1
+ .vxe-ico-picker{position:relative;display:inline-block;color:var(--vxe-ui-font-color);width:100px;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-layout-background-color)}.vxe-ico-picker.is--disabled{background-color:var(--vxe-ui-input-disabled-background-color);color:var(--vxe-ui-font-disabled-color);cursor:no-drop}.vxe-ico-picker.show--clear:hover .vxe-ico-picker--clear-icon{display:block}.vxe-ico-picker.is--active{border-color:var(--vxe-ui-font-primary-color)}.vxe-ico-picker--inner{display:flex;flex-direction:row;width:100%;padding:0 .5em}.vxe-ico-picker--input{position:absolute;z-index:-1;width:1px;height:1px;outline:0;border:0}.vxe-ico-picker--icon{flex-grow:1;display:inline-flex;flex-direction:row;align-items:center;justify-content:left;padding:0 .5em}.vxe-ico-picker--icon>svg{max-width:1em;max-height:1em;vertical-align:middle}.vxe-ico-picker--placeholder{flex-grow:1;color:var(--vxe-ui-input-placeholder-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-ico-picker--suffix{display:flex;flex-direction:row;flex-shrink:0;color:var(--vxe-ui-input-placeholder-color);cursor:pointer}.vxe-ico-picker--suffix .vxe-ico-picker--suffix-icon>i{display:inline-block;transition:transform .2s ease-in-out}.vxe-ico-picker--panel-search{display:block;flex-shrink:0;padding:var(--vxe-ui-layout-padding-default)}.vxe-ico-picker--panel-search .vxe-ico-picker-search--input{width:100%}.vxe-ico-picker--readonly{color:var(--vxe-ui-font-color);display:inline-flex}.vxe-ico-picker--clear-icon{display:none;padding-right:.5em;height:100%;color:var(--vxe-ui-input-placeholder-color);cursor:pointer}.vxe-ico-picker--clear-icon:hover{color:var(--vxe-ui-font-color)}.vxe-ico-picker--clear-icon:active{color:var(--vxe-ui-font-primary-color)}.vxe-ico-picker--all-list{display:flex;flex-direction:row;flex-wrap:wrap}.vxe-ico-picker--list-wrapper{overflow-x:hidden;overflow-y:auto;height:var(--vxe-ui-icon-picker-panel-height);max-height:var(--vxe-ui-icon-picker-panel-max-height,var(--vxe-ui-icon-picker-panel-height,22.3em));padding:var(--vxe-ui-layout-padding-qtr)}.vxe-ico-picker--list{display:flex;flex-direction:row}.vxe-ico-picker--item{display:flex;flex-direction:column;min-width:4.8em;width:var(--vxe-ui-icon-picker-item-width,4.8em);padding:var(--vxe-ui-layout-padding-half)}.vxe-ico-picker--item .vxe-ico-picker--item-inner{padding:.2em;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius);cursor:pointer}.vxe-ico-picker--item .vxe-ico-picker--item-inner:hover{background-color:var(--vxe-ui-base-hover-background-color)}.vxe-ico-picker--item.is--selected .vxe-ico-picker--item-inner{color:var(--vxe-ui-font-primary-color);border-color:var(--vxe-ui-font-primary-color)}.vxe-ico-picker--item-icon{flex-grow:1;display:flex;flex-direction:row;align-items:center;justify-content:center;height:1.5em;font-size:1.4em}.vxe-ico-picker--item-icon>svg{max-width:1em;max-height:1em;vertical-align:middle}.vxe-ico-picker--item-title{padding:0 .2em;line-height:1.3em;flex-shrink:0;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9em}.vxe-ico-picker--item-icon,.vxe-ico-picker--item-title{width:100%}.vxe-ico-picker--panel-wrapper{position:relative;border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-base-popup-border-color);box-shadow:var(--vxe-ui-base-popup-box-shadow);background-color:var(--vxe-ui-layout-background-color)}.vxe-ico-picker--panel{display:none;position:absolute;left:0;padding:4px 0;color:var(--vxe-ui-font-color);text-align:left}.vxe-ico-picker--panel:not(.is--transfer){min-width:100%}.vxe-ico-picker--panel.is--transfer{position:fixed}.vxe-ico-picker--panel.ani--leave{display:block;opacity:0;transform:scaleY(.5);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transform-origin:center top;backface-visibility:hidden}.vxe-ico-picker--panel.ani--leave[placement=top]{transform-origin:center bottom}.vxe-ico-picker--panel.ani--enter{opacity:1;transform:scaleY(1)}.vxe-ico-picker{height:var(--vxe-ui-input-height-default);line-height:var(--vxe-ui-input-height-default)}.vxe-ico-picker.size--medium{height:var(--vxe-ui-input-height-medium);line-height:var(--vxe-ui-input-height-medium)}.vxe-ico-picker.size--small{height:var(--vxe-ui-input-height-small);line-height:var(--vxe-ui-input-height-small)}.vxe-ico-picker.size--mini{height:var(--vxe-ui-input-height-mini);line-height:var(--vxe-ui-input-height-mini)}.vxe-ico-picker,.vxe-ico-picker--panel{font-size:var(--vxe-ui-font-size-default)}.vxe-ico-picker--panel.size--medium,.vxe-ico-picker.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-ico-picker--panel.size--small,.vxe-ico-picker.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-ico-picker--panel.size--mini,.vxe-ico-picker.size--mini{font-size:var(--vxe-ui-font-size-mini)}