vxe-table 4.2.8 → 4.3.0-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 (227) hide show
  1. package/es/button/src/button.js +14 -14
  2. package/es/button/style.css +1 -58
  3. package/es/checkbox/src/checkbox.js +7 -4
  4. package/es/checkbox/style.css +37 -58
  5. package/es/edit/src/hook.js +29 -13
  6. package/es/export/src/export-panel.js +10 -20
  7. package/es/export/src/hook.js +45 -45
  8. package/es/export/src/import-panel.js +2 -2
  9. package/es/export/src/util.js +7 -7
  10. package/es/export/style.css +27 -82
  11. package/es/filter/src/hook.js +5 -5
  12. package/es/filter/src/panel.js +9 -17
  13. package/es/filter/style.css +27 -79
  14. package/es/footer/src/footer.js +15 -15
  15. package/es/form/src/form-config-item.js +8 -7
  16. package/es/form/src/form-item.js +8 -7
  17. package/es/form/src/form.js +8 -6
  18. package/es/form/style.css +0 -3
  19. package/es/grid/src/grid.js +18 -13
  20. package/es/grid/style.css +1 -1
  21. package/es/header/src/header.js +18 -18
  22. package/es/header/style.css +0 -95
  23. package/es/icon/style.css +379 -0
  24. package/es/input/src/input.js +26 -26
  25. package/es/input/style.css +13 -4
  26. package/es/keyboard/src/hook.js +7 -7
  27. package/es/list/src/list.js +5 -5
  28. package/es/loading/src/loading.js +1 -1
  29. package/es/menu/src/hooks.js +9 -9
  30. package/es/menu/src/panel.js +2 -2
  31. package/es/modal/src/modal.js +52 -51
  32. package/es/modal/style.css +2 -3
  33. package/es/pager/src/pager.js +3 -3
  34. package/es/pager/style.css +4 -2
  35. package/es/pulldown/src/pulldown.js +7 -7
  36. package/es/radio/src/button.js +1 -1
  37. package/es/radio/src/radio.js +5 -4
  38. package/es/radio/style.css +32 -55
  39. package/es/select/src/select.js +13 -12
  40. package/es/select/style.css +1 -0
  41. package/es/style.css +1 -1
  42. package/es/style.min.css +1 -1
  43. package/es/switch/src/switch.js +1 -1
  44. package/es/table/src/body.js +38 -34
  45. package/es/table/src/cell.js +16 -28
  46. package/es/table/src/columnInfo.js +4 -4
  47. package/es/table/src/table.js +65 -60
  48. package/es/table/src/util.js +2 -2
  49. package/es/table/style.css +160 -139
  50. package/es/textarea/src/textarea.js +5 -5
  51. package/es/toolbar/src/toolbar.js +17 -24
  52. package/es/toolbar/style.css +28 -80
  53. package/es/tools/dom.js +2 -2
  54. package/es/tools/log.js +1 -1
  55. package/es/tools/vn.js +7 -0
  56. package/es/tooltip/src/tooltip.js +22 -10
  57. package/es/v-x-e-table/index.js +1 -1
  58. package/es/v-x-e-table/src/conf.js +43 -38
  59. package/es/v-x-e-table/src/interceptor.js +1 -1
  60. package/es/v-x-e-table/src/renderer.js +19 -15
  61. package/es/v-x-e-table/style.css +405 -2
  62. package/lib/button/src/button.js +10 -10
  63. package/lib/button/src/button.min.js +1 -1
  64. package/lib/button/style/style.css +1 -58
  65. package/lib/button/style/style.min.css +1 -1
  66. package/lib/checkbox/src/checkbox.js +5 -3
  67. package/lib/checkbox/src/checkbox.min.js +1 -1
  68. package/lib/checkbox/style/style.css +37 -58
  69. package/lib/checkbox/style/style.min.css +1 -1
  70. package/lib/edit/src/hook.js +14 -13
  71. package/lib/edit/src/hook.min.js +1 -1
  72. package/lib/export/src/export-panel.js +11 -17
  73. package/lib/export/src/export-panel.min.js +1 -1
  74. package/lib/export/src/hook.js +50 -50
  75. package/lib/export/src/hook.min.js +1 -1
  76. package/lib/export/src/import-panel.js +3 -3
  77. package/lib/export/src/import-panel.min.js +1 -1
  78. package/lib/export/src/util.js +4 -4
  79. package/lib/export/src/util.min.js +1 -1
  80. package/lib/export/style/style.css +27 -82
  81. package/lib/export/style/style.min.css +1 -1
  82. package/lib/filter/src/hook.js +5 -5
  83. package/lib/filter/src/hook.min.js +1 -1
  84. package/lib/filter/src/panel.js +11 -15
  85. package/lib/filter/src/panel.min.js +1 -1
  86. package/lib/filter/style/style.css +27 -79
  87. package/lib/filter/style/style.min.css +1 -1
  88. package/lib/footer/src/footer.js +14 -14
  89. package/lib/footer/src/footer.min.js +1 -1
  90. package/lib/form/src/form-config-item.js +9 -7
  91. package/lib/form/src/form-config-item.min.js +1 -1
  92. package/lib/form/src/form-item.js +9 -7
  93. package/lib/form/src/form-item.min.js +1 -1
  94. package/lib/form/src/form.js +9 -6
  95. package/lib/form/src/form.min.js +1 -1
  96. package/lib/form/style/style.css +0 -3
  97. package/lib/form/style/style.min.css +1 -1
  98. package/lib/grid/src/grid.js +17 -13
  99. package/lib/grid/src/grid.min.js +1 -1
  100. package/lib/grid/style/style.css +1 -1
  101. package/lib/grid/style/style.min.css +1 -1
  102. package/lib/header/src/header.js +17 -17
  103. package/lib/header/src/header.min.js +1 -1
  104. package/lib/header/style/style.css +0 -95
  105. package/lib/header/style/style.min.css +0 -1
  106. package/lib/icon/style/style.css +379 -0
  107. package/lib/icon/style/style.min.css +1 -1
  108. package/lib/index.umd.js +163 -159
  109. package/lib/index.umd.min.js +1 -1
  110. package/lib/input/src/input.js +23 -23
  111. package/lib/input/src/input.min.js +1 -1
  112. package/lib/input/style/style.css +13 -4
  113. package/lib/input/style/style.min.css +1 -1
  114. package/lib/keyboard/src/hook.js +7 -7
  115. package/lib/keyboard/src/hook.min.js +1 -1
  116. package/lib/list/src/list.js +5 -5
  117. package/lib/list/src/list.min.js +1 -1
  118. package/lib/loading/src/loading.js +1 -1
  119. package/lib/loading/src/loading.min.js +1 -1
  120. package/lib/menu/src/hooks.js +9 -9
  121. package/lib/menu/src/hooks.min.js +1 -1
  122. package/lib/menu/src/panel.js +2 -2
  123. package/lib/menu/src/panel.min.js +1 -1
  124. package/lib/modal/src/modal.js +55 -53
  125. package/lib/modal/src/modal.min.js +1 -1
  126. package/lib/modal/style/style.css +2 -3
  127. package/lib/modal/style/style.min.css +1 -1
  128. package/lib/pager/src/pager.js +2 -2
  129. package/lib/pager/src/pager.min.js +1 -1
  130. package/lib/pager/style/style.css +4 -2
  131. package/lib/pager/style/style.min.css +1 -1
  132. package/lib/pulldown/src/pulldown.js +7 -7
  133. package/lib/pulldown/src/pulldown.min.js +1 -1
  134. package/lib/radio/src/button.js +1 -1
  135. package/lib/radio/src/button.min.js +1 -1
  136. package/lib/radio/src/radio.js +4 -4
  137. package/lib/radio/src/radio.min.js +1 -1
  138. package/lib/radio/style/style.css +32 -55
  139. package/lib/radio/style/style.min.css +1 -1
  140. package/lib/select/src/select.js +14 -12
  141. package/lib/select/src/select.min.js +1 -1
  142. package/lib/select/style/style.css +1 -0
  143. package/lib/select/style/style.min.css +1 -1
  144. package/lib/style.css +1 -1
  145. package/lib/style.min.css +1 -1
  146. package/lib/switch/src/switch.js +1 -1
  147. package/lib/switch/src/switch.min.js +1 -1
  148. package/lib/table/src/body.js +36 -34
  149. package/lib/table/src/body.min.js +1 -1
  150. package/lib/table/src/cell.js +21 -29
  151. package/lib/table/src/cell.min.js +1 -1
  152. package/lib/table/src/columnInfo.js +4 -4
  153. package/lib/table/src/columnInfo.min.js +1 -1
  154. package/lib/table/src/table.js +65 -61
  155. package/lib/table/src/table.min.js +1 -1
  156. package/lib/table/src/util.js +2 -2
  157. package/lib/table/src/util.min.js +1 -1
  158. package/lib/table/style/style.css +160 -139
  159. package/lib/table/style/style.min.css +1 -1
  160. package/lib/textarea/src/textarea.js +6 -6
  161. package/lib/textarea/src/textarea.min.js +1 -1
  162. package/lib/toolbar/src/toolbar.js +20 -22
  163. package/lib/toolbar/src/toolbar.min.js +1 -1
  164. package/lib/toolbar/style/style.css +28 -80
  165. package/lib/toolbar/style/style.min.css +1 -1
  166. package/lib/tools/dom.js +2 -2
  167. package/lib/tools/dom.min.js +1 -1
  168. package/lib/tools/log.js +1 -1
  169. package/lib/tools/log.min.js +1 -1
  170. package/lib/tools/vn.js +13 -0
  171. package/lib/tools/vn.min.js +1 -1
  172. package/lib/tooltip/src/tooltip.js +22 -8
  173. package/lib/tooltip/src/tooltip.min.js +1 -1
  174. package/lib/v-x-e-table/index.js +1 -1
  175. package/lib/v-x-e-table/index.min.js +1 -1
  176. package/lib/v-x-e-table/src/conf.js +43 -38
  177. package/lib/v-x-e-table/src/conf.min.js +1 -1
  178. package/lib/v-x-e-table/src/interceptor.js +1 -1
  179. package/lib/v-x-e-table/src/interceptor.min.js +1 -1
  180. package/lib/v-x-e-table/src/renderer.js +18 -16
  181. package/lib/v-x-e-table/src/renderer.min.js +1 -1
  182. package/lib/v-x-e-table/style/style.css +405 -2
  183. package/lib/v-x-e-table/style/style.min.css +1 -1
  184. package/package.json +6 -6
  185. package/packages/checkbox/src/checkbox.ts +7 -4
  186. package/packages/edit/src/hook.ts +18 -6
  187. package/packages/export/src/export-panel.ts +9 -19
  188. package/packages/filter/src/panel.ts +8 -16
  189. package/packages/form/src/form-config-item.ts +4 -3
  190. package/packages/form/src/form-item.ts +4 -3
  191. package/packages/form/src/form.ts +6 -4
  192. package/packages/grid/src/grid.ts +2 -1
  193. package/packages/input/src/input.ts +3 -3
  194. package/packages/modal/src/modal.ts +5 -4
  195. package/packages/radio/src/radio.ts +4 -3
  196. package/packages/select/src/select.ts +2 -1
  197. package/packages/table/src/cell.ts +18 -35
  198. package/packages/table/src/table.ts +11 -10
  199. package/packages/toolbar/src/toolbar.ts +14 -21
  200. package/packages/tools/vn.ts +10 -0
  201. package/packages/tooltip/src/tooltip.ts +8 -4
  202. package/packages/v-x-e-table/src/conf.ts +43 -38
  203. package/styles/base/checked.scss +44 -148
  204. package/styles/button.scss +1 -43
  205. package/styles/checkbox.scss +6 -65
  206. package/styles/export.scss +2 -9
  207. package/styles/filter.scss +2 -6
  208. package/styles/form.scss +0 -3
  209. package/styles/header.scss +0 -134
  210. package/styles/icon.scss +509 -713
  211. package/styles/input.scss +8 -0
  212. package/styles/modal.scss +0 -1
  213. package/styles/old-icon.scss +713 -0
  214. package/styles/pager.scss +2 -0
  215. package/styles/radio.scss +9 -77
  216. package/styles/select.scss +1 -0
  217. package/styles/table.scss +144 -21
  218. package/styles/toolbar.scss +2 -6
  219. package/styles/variable.scss +5 -5
  220. package/types/all.d.ts +6 -0
  221. package/types/column.d.ts +11 -11
  222. package/types/component.d.ts +3 -1
  223. package/types/form-item.d.ts +1 -0
  224. package/types/form.d.ts +6 -2
  225. package/types/grid.d.ts +4 -4
  226. package/types/table.d.ts +2 -2
  227. package/types/v-x-e-table/renderer.d.ts +3 -2
@@ -21,6 +21,8 @@ var _event = require("../../tools/event");
21
21
 
22
22
  var _input = _interopRequireDefault(require("../../input/src/input"));
23
23
 
24
+ var _vn = require("../../tools/vn");
25
+
24
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
27
 
26
28
  function isOptionVisible(option) {
@@ -169,7 +171,7 @@ var _default2 = (0, _vue.defineComponent)({
169
171
  }
170
172
 
171
173
  if (_xeUtils.default.isFunction(slotFunc)) {
172
- return slotFunc(params);
174
+ return (0, _vn.getSlotVNs)(slotFunc(params));
173
175
  }
174
176
  }
175
177
 
@@ -238,7 +240,7 @@ var _default2 = (0, _vue.defineComponent)({
238
240
  var label = getSelectLabel(val);
239
241
 
240
242
  if (multiMaxCharNum > 0 && label.length > multiMaxCharNum) {
241
- return label.substring(0, multiMaxCharNum) + "...";
243
+ return "".concat(label.substring(0, multiMaxCharNum), "...");
242
244
  }
243
245
 
244
246
  return label;
@@ -287,7 +289,7 @@ var _default2 = (0, _vue.defineComponent)({
287
289
  });
288
290
  } else if (filterable) {
289
291
  reactData.visibleGroupList = fullGroupList.filter(function (group) {
290
- return isOptionVisible(group) && (!searchValue || ("" + group[groupLabelField]).indexOf(searchValue) > -1);
292
+ return isOptionVisible(group) && (!searchValue || "".concat(group[groupLabelField]).indexOf(searchValue) > -1);
291
293
  });
292
294
  } else {
293
295
  reactData.visibleGroupList = fullGroupList.filter(isOptionVisible);
@@ -303,7 +305,7 @@ var _default2 = (0, _vue.defineComponent)({
303
305
  });
304
306
  } else if (filterable) {
305
307
  reactData.visibleOptionList = fullOptionList.filter(function (option) {
306
- return isOptionVisible(option) && (!searchValue || ("" + option[labelField]).indexOf(searchValue) > -1);
308
+ return isOptionVisible(option) && (!searchValue || "".concat(option[labelField]).indexOf(searchValue) > -1);
307
309
  });
308
310
  } else {
309
311
  reactData.visibleOptionList = fullOptionList.filter(isOptionVisible);
@@ -354,7 +356,7 @@ var _default2 = (0, _vue.defineComponent)({
354
356
  if (option) {
355
357
  var optWrapperElem = refOptionWrapper.value;
356
358
  var panelElem = refOptionPanel.value;
357
- var optElem = panelElem.querySelector("[optid='" + getOptid(option) + "']");
359
+ var optElem = panelElem.querySelector("[optid='".concat(getOptid(option), "']"));
358
360
 
359
361
  if (optWrapperElem && optElem) {
360
362
  var wrapperHeight = optWrapperElem.offsetHeight;
@@ -438,21 +440,21 @@ var _default2 = (0, _vue.defineComponent)({
438
440
  }
439
441
 
440
442
  Object.assign(panelStyle, {
441
- left: left + "px",
442
- top: top_1 + "px",
443
- minWidth: targetWidth + "px"
443
+ left: "".concat(left, "px"),
444
+ top: "".concat(top_1, "px"),
445
+ minWidth: "".concat(targetWidth, "px")
444
446
  });
445
447
  } else {
446
448
  if (placement === 'top') {
447
449
  panelPlacement = 'top';
448
- panelStyle.bottom = targetHeight + "px";
450
+ panelStyle.bottom = "".concat(targetHeight, "px");
449
451
  } else if (!placement) {
450
452
  // 如果下面不够放,则向上
451
453
  if (boundingTop + targetHeight + panelHeight > visibleHeight) {
452
454
  // 如果上面不够放,则向下(优先)
453
455
  if (boundingTop - targetHeight - panelHeight > marginSize) {
454
456
  panelPlacement = 'top';
455
- panelStyle.bottom = targetHeight + "px";
457
+ panelStyle.bottom = "".concat(targetHeight, "px");
456
458
  }
457
459
  }
458
460
  }
@@ -1094,7 +1096,7 @@ var _default2 = (0, _vue.defineComponent)({
1094
1096
  ref: refElem,
1095
1097
  class: ['vxe-select', className ? _xeUtils.default.isFunction(className) ? className({
1096
1098
  $select: $xeselect
1097
- }) : className : '', (_a = {}, _a["size--" + vSize] = vSize, _a['is--visivle'] = visiblePanel, _a['is--disabled'] = disabled, _a['is--filter'] = filterable, _a['is--loading'] = loading, _a['is--active'] = isActivated, _a)]
1099
+ }) : className : '', (_a = {}, _a["size--".concat(vSize)] = vSize, _a['is--visivle'] = visiblePanel, _a['is--disabled'] = disabled, _a['is--filter'] = filterable, _a['is--loading'] = loading, _a['is--active'] = isActivated, _a)]
1098
1100
  }, [(0, _vue.h)('div', {
1099
1101
  class: 'vxe-select-slots',
1100
1102
  ref: 'hideOption'
@@ -1122,7 +1124,7 @@ var _default2 = (0, _vue.defineComponent)({
1122
1124
  disabled: transfer ? !inited : true
1123
1125
  }, [(0, _vue.h)('div', {
1124
1126
  ref: refOptionPanel,
1125
- class: ['vxe-table--ignore-clear vxe-select--panel', (_b = {}, _b["size--" + vSize] = vSize, _b['is--transfer'] = transfer, _b['animat--leave'] = !loading && reactData.animatVisible, _b['animat--enter'] = !loading && visiblePanel, _b)],
1127
+ class: ['vxe-table--ignore-clear vxe-select--panel', (_b = {}, _b["size--".concat(vSize)] = vSize, _b['is--transfer'] = transfer, _b['animat--leave'] = !loading && reactData.animatVisible, _b['animat--enter'] = !loading && visiblePanel, _b)],
1126
1128
  placement: reactData.panelPlacement,
1127
1129
  style: reactData.panelStyle
1128
1130
  }, inited ? [filterable ? (0, _vue.h)('div', {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=require("../../hooks/size"),_dom=require("../../tools/dom"),_utils=require("../../tools/utils"),_event=require("../../tools/event"),_input=_interopRequireDefault(require("../../input/src/input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function isOptionVisible(e){return!1!==e.visible}function getOptUniqueId(){return _xeUtils.default.uniqueId("opt_")}var _default2=(0,_vue.defineComponent)({name:"VxeSelect",props:{modelValue:null,clearable:Boolean,placeholder:String,loading:Boolean,disabled:Boolean,multiple:Boolean,multiCharOverflow:{type:[Number,String],default:function(){return _conf.default.select.multiCharOverflow}},prefixIcon:String,placement:String,options:Array,optionProps:Object,optionGroups:Array,optionGroupProps:Object,optionConfig:Object,className:[String,Function],size:{type:String,default:function(){return _conf.default.select.size||_conf.default.size}},filterable:Boolean,filterMethod:Function,remote:Boolean,remoteMethod:Function,emptyText:String,optionId:{type:String,default:function(){return _conf.default.select.optionId}},optionKey:Boolean,transfer:{type:Boolean,default:function(){return _conf.default.select.transfer}}},emits:["update:modelValue","change","clear"],setup:function(h,e){function m(e,t){return e&&(_xeUtils.default.isString(e)&&(e=L[e]||null),_xeUtils.default.isFunction(e))?e(t):[]}function v(t){var e=A.fullOptionList,n=A.fullGroupList,i=Y.value,o=$.value;if(i)for(var l=0;l<n.length;l++){var u=n[l];if(u.options)for(var r=0;r<u.options.length;r++){var a=u.options[r];if(t===a[o])return a}}return e.find(function(e){return t===e[o]})}function o(t){var e=A.remoteValueList,n=F.value,e=(e=e.find(function(e){return t===e.key}))?e.result:null;return _xeUtils.default.toValueString(e?e[n]:t)}function l(e){var t=F.value,n=v(e);return _xeUtils.default.toValueString(n?n[t]:e)}function u(){var e=h.filterable,t=h.filterMethod,n=A.fullOptionList,i=A.fullGroupList,o=A.searchValue,l=Y.value,u=B.value,r=F.value;return l?A.visibleGroupList=e&&t?i.filter(function(e){return isOptionVisible(e)&&t({group:e,option:null,searchValue:o})}):e?i.filter(function(e){return isOptionVisible(e)&&(!o||-1<(""+e[u]).indexOf(o))}):i.filter(isOptionVisible):A.visibleOptionList=e&&t?n.filter(function(e){return isOptionVisible(e)&&t({group:null,option:e,searchValue:o})}):e?n.filter(function(e){return isOptionVisible(e)&&(!o||-1<(""+e[r]).indexOf(o))}):n.filter(isOptionVisible),(0,_vue.nextTick)()}function n(){function t(e){X(e)||(e[o]=getOptUniqueId())}var e=A.fullOptionList,n=A.fullGroupList,i=z.value,o=Z();n.length?n.forEach(function(e){t(e),e[i]&&e[i].forEach(t)}):e.length&&e.forEach(t),u()}function x(e){var t=$.value;e&&(A.currentOption=e,A.currentValue=e[t])}function p(i,o){return(0,_vue.nextTick)().then(function(){var e,t,n;i&&(e=K.value,t=w.value.querySelector("[optid='"+X(i)+"']"),e&&t&&(n=e.offsetHeight,o?t.offsetTop+t.offsetHeight-e.scrollTop>n&&(e.scrollTop=t.offsetTop+t.offsetHeight-n):(t.offsetTop+5<e.scrollTop||t.offsetTop+5>e.scrollTop+e.clientHeight)&&(e.scrollTop=t.offsetTop-5)))})}function i(){return(0,_vue.nextTick)().then(function(){var e=h.transfer,t=h.placement,n=A.panelIndex,i=N.value,o=w.value;if(o&&i){var l=i.offsetHeight,u=i.offsetWidth,r=o.offsetHeight,a=o.offsetWidth,s={zIndex:n},f=(0,_dom.getAbsolutePos)(i),c=f.boundingTop,o=f.boundingLeft,n=f.visibleHeight,i=f.visibleWidth,f="bottom";return e?(e=c+l,"top"===t?(f="top",e=c-r):t||(n<e+r+5&&(f="top",e=c-r),e<5&&(f="bottom",e=c+l)),i<(o=o)+a+5&&(o-=o+a+5-i),o<5&&(o=5),Object.assign(s,{left:o+"px",top:e+"px",minWidth:u+"px"})):"top"===t?(f="top",s.bottom=l+"px"):t||n<c+l+r&&5<c-l-r&&(f="top",s.bottom=l+"px"),A.panelStyle=s,A.panelPlacement=f,(0,_vue.nextTick)()}})}function c(e,t){te(t,null),Q()}function g(e,t,n){var i=h.modelValue,o=h.multiple,l=A.remoteValueList;o?(o=void 0,o=i?-1===i.indexOf(t)?i.concat([t]):i.filter(function(e){return e!==t}):[t],(i=l.find(function(e){return e.key===t}))?i.result=n:l.push({key:t,result:n}),ee(e,o)):(A.remoteValueList=[{key:t,result:n}],ee(e,t),Q())}function t(e){var t=h.disabled,n=A.visiblePanel;t||n&&(n=w.value,((0,_dom.getEventTargetNode)(e,n).flag?i:Q)())}function r(e){var t,n=h.disabled,i=A.visiblePanel;n||(t=N.value,n=w.value,A.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,n).flag,i&&!A.isActivated&&Q())}function a(e){var t,n,i,o,l,u,r=h.clearable,a=h.disabled,s=A.visiblePanel,f=A.currentValue,c=A.currentOption;a||(u=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.TAB),t=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ENTER),n=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ESCAPE),i=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ARROW_UP),o=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ARROW_DOWN),l=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.DELETE),a=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.SPACEBAR),u&&(A.isActivated=!1),s?n||u?Q():t?(e.preventDefault(),e.stopPropagation(),g(e,f,c)):i||o?(e.preventDefault(),c=(u=function(e,t){var n,i,o,l,u=A.visibleOptionList,r=A.visibleGroupList,a=Y.value,s=$.value,f=z.value;if(a)for(var c=0;c<r.length;c++){var v=r[c],p=v[f],d=v.disabled;if(p)for(var _=0;_<p.length;_++){var b=isOptionVisible(m=p[_]),h=d||m.disabled;if(n||h||(n=m),l&&b&&!h&&(o=m,!t))return{offsetOption:o};if(e===m[s]){if(l=m,t)return{offsetOption:i}}else b&&!h&&(i=m)}}else for(_=0;_<u.length;_++){var m,h=(m=u[_]).disabled;if(n||h||(n=m),l&&!h&&(o=m,!t))return{offsetOption:o};if(e===m[s]){if(l=m,t)return{offsetOption:i}}else h||(i=m)}return{firstOption:n}}(f,i)).firstOption,(u=u.offsetOption)||v(f)||(u=c),x(u),p(u,o)):a&&e.preventDefault():(i||o||t||a)&&A.isActivated&&(e.preventDefault(),J()),A.isActivated&&l&&r&&te(e,null))}function s(){Q()}function f(){h.filterable&&(0,_vue.nextTick)(function(){var e=C.value;e&&e.focus()})}function d(){h.disabled||(A.isActivated=!0)}function _(){A.isActivated=!1}function b(e){A.searchValue=e}function E(){A.isActivated=!0}function O(e){e=e.$event,(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ENTER)&&(e.preventDefault(),e.stopPropagation())}function V(e){e.$event.preventDefault(),(A.visiblePanel?Q:J)()}var T,L=e.slots,y=e.emit,P=(0,_vue.inject)("$xeform",null),S=(0,_vue.inject)("$xeformiteminfo",null),G=_xeUtils.default.uniqueId(),k=(0,_size.useSize)(h),A=(0,_vue.reactive)({inited:!1,staticOptions:[],fullGroupList:[],fullOptionList:[],visibleGroupList:[],visibleOptionList:[],remoteValueList:[],panelIndex:0,panelStyle:{},panelPlacement:null,currentOption:null,currentValue:null,visiblePanel:!1,animatVisible:!1,isActivated:!1,searchValue:"",searchLoading:!1}),N=(0,_vue.ref)(),I=(0,_vue.ref)(),C=(0,_vue.ref)(),K=(0,_vue.ref)(),w=(0,_vue.ref)(),U={refElem:N},D={xID:G,props:h,context:e,reactData:A,getRefMaps:function(){return U}},q={},R=(0,_vue.computed)(function(){return h.optionProps||{}}),j=(0,_vue.computed)(function(){return h.optionGroupProps||{}}),F=(0,_vue.computed)(function(){return R.value.label||"label"}),$=(0,_vue.computed)(function(){return R.value.value||"value"}),B=(0,_vue.computed)(function(){return j.value.label||"label"}),z=(0,_vue.computed)(function(){return j.value.options||"options"}),M=(0,_vue.computed)(function(){return Object.assign({},_conf.default.select.optionConfig,h.optionConfig)}),Y=(0,_vue.computed)(function(){return A.fullGroupList.some(function(e){return e.options&&e.options.length})}),H=(0,_vue.computed)(function(){return _xeUtils.default.toNumber(h.multiCharOverflow)}),W=(0,_vue.computed)(function(){var e=h.modelValue,t=h.multiple,n=h.remote,i=H.value;if(e&&t){t=_xeUtils.default.isArray(e)?e:[e];return n?t.map(o).join(", "):t.map(function(e){e=l(e);return 0<i&&e.length>i?e.substring(0,i)+"...":e}).join(", ")}return(n?o:l)(e)}),Z=function(){return M.value.keyField||h.optionId||"_X_OPTION_KEY"},X=function(e){e=e[Z()];return e?encodeURIComponent(e):""},J=function(){var e=h.loading,t=h.disabled,n=h.filterable;e||t||(clearTimeout(T),A.inited||(A.inited=!0),A.isActivated=!0,A.animatVisible=!0,n&&u(),setTimeout(function(){var e=h.modelValue,t=h.multiple,e=v(t&&e?e[0]:e);A.visiblePanel=!0,e&&(x(e),p(e)),f()},10),A.panelIndex<(0,_utils.getLastZIndex)()&&(A.panelIndex=(0,_utils.nextZIndex)()),i())},Q=function(){A.searchValue="",A.searchLoading=!1,A.visiblePanel=!1,T=window.setTimeout(function(){A.animatVisible=!1},350)},ee=function(e,t){t!==h.modelValue&&(y("update:modelValue",t),q.dispatchEvent("change",{value:t},e),P&&S&&P.triggerItemEvent(e,S.itemConfig.field,t))},te=function(e,t){A.remoteValueList=[],ee(e,t),q.dispatchEvent("clear",{value:t},e)},ne=_xeUtils.default.debounce(function(){var e=h.remote,t=h.remoteMethod,n=A.searchValue;e&&t?(A.searchLoading=!0,Promise.resolve(t({searchValue:n})).then(function(){return(0,_vue.nextTick)()}).catch(function(){return(0,_vue.nextTick)()}).finally(function(){A.searchLoading=!1,u()})):u()},350,{trailing:!0}),ie=function(e,a){var s=h.optionKey,f=h.modelValue,c=h.multiple,v=A.currentValue,t=M.value,p=F.value,d=$.value,_=Y.value,b=t.useKey;return e.map(function(t,e){var n=t.slots,i=t.className,o=!_||isOptionVisible(t),l=a&&a.disabled||t.disabled,u=t[d],r=X(t),n=n?n.default:null;return o?(0,_vue.h)("div",{key:b||s?r:e,class:["vxe-select-option",i?_xeUtils.default.isFunction(i)?i({option:t,$select:D}):i:"",{"is--disabled":l,"is--selected":c?f&&-1<f.indexOf(u):f===u,"is--hover":v===u}],optid:r,onMousedown:function(e){0===e.button&&e.stopPropagation()},onClick:function(e){l||g(e,u,t)},onMouseenter:function(){l||x(t)}},n?m(n,{option:t,$select:D}):(0,_utils.formatText)((0,_utils.getFuncText)(t[p]))):null})},oe=function(){var u=h.optionKey,e=A.visibleGroupList,t=M.value,r=B.value,a=z.value,s=t.useKey;return e.map(function(e,t){var n=e.slots,i=e.className,o=X(e),l=e.disabled,n=n?n.default:null;return(0,_vue.h)("div",{key:s||u?o:t,class:["vxe-optgroup",i?_xeUtils.default.isFunction(i)?i({option:e,$select:D}):i:"",{"is--disabled":l}],optid:o},[(0,_vue.h)("div",{class:"vxe-optgroup--title"},n?m(n,{option:e,$select:D}):(0,_utils.getFuncText)(e[r])),(0,_vue.h)("div",{class:"vxe-optgroup--wrapper"},ie(e[a]||[],e))])})},q={dispatchEvent:function(e,t,n){y(e,Object.assign({$select:D,$event:n},t))},isPanelVisible:function(){return A.visiblePanel},togglePanel:function(){return(A.visiblePanel?Q:J)(),(0,_vue.nextTick)()},hidePanel:function(){return A.visiblePanel&&Q(),(0,_vue.nextTick)()},showPanel:function(){return A.visiblePanel||J(),(0,_vue.nextTick)()},refreshOption:u,focus:function(){var e=I.value;return A.isActivated=!0,e.blur(),(0,_vue.nextTick)()},blur:function(){return I.value.blur(),(A.isActivated=!1,_vue.nextTick)()}};Object.assign(D,q),(0,_vue.watch)(function(){return A.staticOptions},function(e){e.some(function(e){return e.options&&e.options.length})?(A.fullOptionList=[],A.fullGroupList=e):(A.fullGroupList=[],A.fullOptionList=e||[]),n()}),(0,_vue.watch)(function(){return h.options},function(e){A.fullGroupList=[],A.fullOptionList=e||[],n()}),(0,_vue.watch)(function(){return h.optionGroups},function(e){A.fullOptionList=[],A.fullGroupList=e||[],n()}),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=h.options,t=h.optionGroups;t?A.fullGroupList=t:e&&(A.fullOptionList=e),n()}),_event.GlobalEvent.on(D,"mousewheel",t),_event.GlobalEvent.on(D,"mousedown",r),_event.GlobalEvent.on(D,"keydown",a),_event.GlobalEvent.on(D,"blur",s)}),(0,_vue.onUnmounted)(function(){_event.GlobalEvent.off(D,"mousewheel"),_event.GlobalEvent.off(D,"mousedown"),_event.GlobalEvent.off(D,"keydown"),_event.GlobalEvent.off(D,"blur")});return D.renderVN=function(){var e=h.className,t=h.transfer,n=h.disabled,i=h.loading,o=h.filterable,l=A.inited,u=A.isActivated,r=A.visiblePanel,a=k.value,s=W.value,f=L.prefix;return(0,_vue.h)("div",{ref:N,class:["vxe-select",e?_xeUtils.default.isFunction(e)?e({$select:D}):e:"",((e={})["size--"+a]=a,e["is--visivle"]=r,e["is--disabled"]=n,e["is--filter"]=o,e["is--loading"]=i,e["is--active"]=u,e)]},[(0,_vue.h)("div",{class:"vxe-select-slots",ref:"hideOption"},L.default?L.default({}):[]),(0,_vue.h)(_input.default,{ref:I,clearable:h.clearable,placeholder:h.placeholder,readonly:!0,disabled:n,type:"text",prefixIcon:h.prefixIcon,suffixIcon:i?_conf.default.icon.SELECT_LOADED:r?_conf.default.icon.SELECT_OPEN:_conf.default.icon.SELECT_CLOSE,modelValue:s,onClear:c,onClick:V,onFocus:d,onBlur:_,onSuffixClick:V},f?{prefix:function(){return f({})}}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!t||!l},[(0,_vue.h)("div",{ref:w,class:["vxe-table--ignore-clear vxe-select--panel",((s={})["size--"+a]=a,s["is--transfer"]=t,s["animat--leave"]=!i&&A.animatVisible,s["animat--enter"]=!i&&r,s)],placement:A.panelPlacement,style:A.panelStyle},l?[o?(0,_vue.h)("div",{class:"vxe-select-filter--wrapper"},[(0,_vue.h)(_input.default,{ref:C,class:"vxe-select-filter--input",modelValue:A.searchValue,clearable:!0,placeholder:_conf.default.i18n("vxe.select.search"),prefixIcon:_conf.default.icon.INPUT_SEARCH,"onUpdate:modelValue":b,onFocus:E,onKeydown:O,onChange:ne,onSearch:ne})]):(0,_vue.createCommentVNode)(),(0,_vue.h)("div",{ref:K,class:"vxe-select-option--wrapper"},function(){var e=A.visibleGroupList,t=A.visibleOptionList,n=A.searchLoading,i=Y.value;if(n)return[(0,_vue.h)("div",{class:"vxe-select--search-loading"},[(0,_vue.h)("i",{class:["vxe-select--search-icon",_conf.default.icon.SELECT_LOADED]}),(0,_vue.h)("span",{class:"vxe-select--search-text"},_conf.default.i18n("vxe.select.loadingText"))])];if(i){if(e.length)return oe()}else if(t.length)return ie(t);return[(0,_vue.h)("div",{class:"vxe-select--empty-placeholder"},h.emptyText||_conf.default.i18n("vxe.select.emptyText"))]}())]:[])])])},(0,_vue.provide)("$xeselect",D),D},render:function(){return this.renderVN()}});exports.default=_default2;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=require("../../hooks/size"),_dom=require("../../tools/dom"),_utils=require("../../tools/utils"),_event=require("../../tools/event"),_input=_interopRequireDefault(require("../../input/src/input")),_vn=require("../../tools/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function isOptionVisible(e){return!1!==e.visible}function getOptUniqueId(){return _xeUtils.default.uniqueId("opt_")}var _default2=(0,_vue.defineComponent)({name:"VxeSelect",props:{modelValue:null,clearable:Boolean,placeholder:String,loading:Boolean,disabled:Boolean,multiple:Boolean,multiCharOverflow:{type:[Number,String],default:function(){return _conf.default.select.multiCharOverflow}},prefixIcon:String,placement:String,options:Array,optionProps:Object,optionGroups:Array,optionGroupProps:Object,optionConfig:Object,className:[String,Function],size:{type:String,default:function(){return _conf.default.select.size||_conf.default.size}},filterable:Boolean,filterMethod:Function,remote:Boolean,remoteMethod:Function,emptyText:String,optionId:{type:String,default:function(){return _conf.default.select.optionId}},optionKey:Boolean,transfer:{type:Boolean,default:function(){return _conf.default.select.transfer}}},emits:["update:modelValue","change","clear"],setup:function(h,e){function m(e,t){return e&&(_xeUtils.default.isString(e)&&(e=L[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]}function v(t){var e=k.fullOptionList,n=k.fullGroupList,i=Y.value,o=$.value;if(i)for(var l=0;l<n.length;l++){var u=n[l];if(u.options)for(var r=0;r<u.options.length;r++){var a=u.options[r];if(t===a[o])return a}}return e.find(function(e){return t===e[o]})}function o(t){var e=k.remoteValueList,n=F.value,e=(e=e.find(function(e){return t===e.key}))?e.result:null;return _xeUtils.default.toValueString(e?e[n]:t)}function l(e){var t=F.value,n=v(e);return _xeUtils.default.toValueString(n?n[t]:e)}function u(){var e=h.filterable,t=h.filterMethod,n=k.fullOptionList,i=k.fullGroupList,o=k.searchValue,l=Y.value,u=B.value,r=F.value;return l?k.visibleGroupList=e&&t?i.filter(function(e){return isOptionVisible(e)&&t({group:e,option:null,searchValue:o})}):e?i.filter(function(e){return isOptionVisible(e)&&(!o||-1<"".concat(e[u]).indexOf(o))}):i.filter(isOptionVisible):k.visibleOptionList=e&&t?n.filter(function(e){return isOptionVisible(e)&&t({group:null,option:e,searchValue:o})}):e?n.filter(function(e){return isOptionVisible(e)&&(!o||-1<"".concat(e[r]).indexOf(o))}):n.filter(isOptionVisible),(0,_vue.nextTick)()}function n(){function t(e){X(e)||(e[o]=getOptUniqueId())}var e=k.fullOptionList,n=k.fullGroupList,i=z.value,o=Z();n.length?n.forEach(function(e){t(e),e[i]&&e[i].forEach(t)}):e.length&&e.forEach(t),u()}function x(e){var t=$.value;e&&(k.currentOption=e,k.currentValue=e[t])}function p(i,o){return(0,_vue.nextTick)().then(function(){var e,t,n;i&&(e=K.value,t=w.value.querySelector("[optid='".concat(X(i),"']")),e&&t&&(n=e.offsetHeight,o?t.offsetTop+t.offsetHeight-e.scrollTop>n&&(e.scrollTop=t.offsetTop+t.offsetHeight-n):(t.offsetTop+5<e.scrollTop||t.offsetTop+5>e.scrollTop+e.clientHeight)&&(e.scrollTop=t.offsetTop-5)))})}function i(){return(0,_vue.nextTick)().then(function(){var e=h.transfer,t=h.placement,n=k.panelIndex,i=A.value,o=w.value;if(o&&i){var l=i.offsetHeight,u=i.offsetWidth,r=o.offsetHeight,a=o.offsetWidth,s={zIndex:n},c=(0,_dom.getAbsolutePos)(i),f=c.boundingTop,o=c.boundingLeft,n=c.visibleHeight,i=c.visibleWidth,c="bottom";return e?(e=f+l,"top"===t?(c="top",e=f-r):t||(n<e+r+5&&(c="top",e=f-r),e<5&&(c="bottom",e=f+l)),i<(o=o)+a+5&&(o-=o+a+5-i),o<5&&(o=5),Object.assign(s,{left:"".concat(o,"px"),top:"".concat(e,"px"),minWidth:"".concat(u,"px")})):"top"===t?(c="top",s.bottom="".concat(l,"px")):t||n<f+l+r&&5<f-l-r&&(c="top",s.bottom="".concat(l,"px")),k.panelStyle=s,k.panelPlacement=c,(0,_vue.nextTick)()}})}function f(e,t){te(t,null),Q()}function g(e,t,n){var i=h.modelValue,o=h.multiple,l=k.remoteValueList;o?(o=void 0,o=i?-1===i.indexOf(t)?i.concat([t]):i.filter(function(e){return e!==t}):[t],(i=l.find(function(e){return e.key===t}))?i.result=n:l.push({key:t,result:n}),ee(e,o)):(k.remoteValueList=[{key:t,result:n}],ee(e,t),Q())}function t(e){var t=h.disabled,n=k.visiblePanel;t||n&&(n=w.value,((0,_dom.getEventTargetNode)(e,n).flag?i:Q)())}function r(e){var t,n=h.disabled,i=k.visiblePanel;n||(t=A.value,n=w.value,k.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,n).flag,i&&!k.isActivated&&Q())}function a(e){var t,n,i,o,l,u,r=h.clearable,a=h.disabled,s=k.visiblePanel,c=k.currentValue,f=k.currentOption;a||(u=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.TAB),t=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ENTER),n=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ESCAPE),i=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ARROW_UP),o=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ARROW_DOWN),l=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.DELETE),a=(0,_event.hasEventKey)(e,_event.EVENT_KEYS.SPACEBAR),u&&(k.isActivated=!1),s?n||u?Q():t?(e.preventDefault(),e.stopPropagation(),g(e,c,f)):i||o?(e.preventDefault(),f=(u=function(e,t){var n,i,o,l,u=k.visibleOptionList,r=k.visibleGroupList,a=Y.value,s=$.value,c=z.value;if(a)for(var f=0;f<r.length;f++){var v=r[f],p=v[c],d=v.disabled;if(p)for(var _=0;_<p.length;_++){var b=isOptionVisible(m=p[_]),h=d||m.disabled;if(n||h||(n=m),l&&b&&!h&&(o=m,!t))return{offsetOption:o};if(e===m[s]){if(l=m,t)return{offsetOption:i}}else b&&!h&&(i=m)}}else for(_=0;_<u.length;_++){var m,h=(m=u[_]).disabled;if(n||h||(n=m),l&&!h&&(o=m,!t))return{offsetOption:o};if(e===m[s]){if(l=m,t)return{offsetOption:i}}else h||(i=m)}return{firstOption:n}}(c,i)).firstOption,(u=u.offsetOption)||v(c)||(u=f),x(u),p(u,o)):a&&e.preventDefault():(i||o||t||a)&&k.isActivated&&(e.preventDefault(),J()),k.isActivated&&l&&r&&te(e,null))}function s(){Q()}function c(){h.filterable&&(0,_vue.nextTick)(function(){var e=C.value;e&&e.focus()})}function d(){h.disabled||(k.isActivated=!0)}function _(){k.isActivated=!1}function b(e){k.searchValue=e}function E(){k.isActivated=!0}function O(e){e=e.$event,(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ENTER)&&(e.preventDefault(),e.stopPropagation())}function V(e){e.$event.preventDefault(),(k.visiblePanel?Q:J)()}var T,L=e.slots,y=e.emit,S=(0,_vue.inject)("$xeform",null),P=(0,_vue.inject)("$xeformiteminfo",null),G=_xeUtils.default.uniqueId(),N=(0,_size.useSize)(h),k=(0,_vue.reactive)({inited:!1,staticOptions:[],fullGroupList:[],fullOptionList:[],visibleGroupList:[],visibleOptionList:[],remoteValueList:[],panelIndex:0,panelStyle:{},panelPlacement:null,currentOption:null,currentValue:null,visiblePanel:!1,animatVisible:!1,isActivated:!1,searchValue:"",searchLoading:!1}),A=(0,_vue.ref)(),I=(0,_vue.ref)(),C=(0,_vue.ref)(),K=(0,_vue.ref)(),w=(0,_vue.ref)(),U={refElem:A},q={xID:G,props:h,context:e,reactData:k,getRefMaps:function(){return U}},D={},R=(0,_vue.computed)(function(){return h.optionProps||{}}),j=(0,_vue.computed)(function(){return h.optionGroupProps||{}}),F=(0,_vue.computed)(function(){return R.value.label||"label"}),$=(0,_vue.computed)(function(){return R.value.value||"value"}),B=(0,_vue.computed)(function(){return j.value.label||"label"}),z=(0,_vue.computed)(function(){return j.value.options||"options"}),M=(0,_vue.computed)(function(){return Object.assign({},_conf.default.select.optionConfig,h.optionConfig)}),Y=(0,_vue.computed)(function(){return k.fullGroupList.some(function(e){return e.options&&e.options.length})}),H=(0,_vue.computed)(function(){return _xeUtils.default.toNumber(h.multiCharOverflow)}),W=(0,_vue.computed)(function(){var e=h.modelValue,t=h.multiple,n=h.remote,i=H.value;if(e&&t){t=_xeUtils.default.isArray(e)?e:[e];return n?t.map(o).join(", "):t.map(function(e){e=l(e);return 0<i&&e.length>i?"".concat(e.substring(0,i),"..."):e}).join(", ")}return(n?o:l)(e)}),Z=function(){return M.value.keyField||h.optionId||"_X_OPTION_KEY"},X=function(e){e=e[Z()];return e?encodeURIComponent(e):""},J=function(){var e=h.loading,t=h.disabled,n=h.filterable;e||t||(clearTimeout(T),k.inited||(k.inited=!0),k.isActivated=!0,k.animatVisible=!0,n&&u(),setTimeout(function(){var e=h.modelValue,t=h.multiple,e=v(t&&e?e[0]:e);k.visiblePanel=!0,e&&(x(e),p(e)),c()},10),k.panelIndex<(0,_utils.getLastZIndex)()&&(k.panelIndex=(0,_utils.nextZIndex)()),i())},Q=function(){k.searchValue="",k.searchLoading=!1,k.visiblePanel=!1,T=window.setTimeout(function(){k.animatVisible=!1},350)},ee=function(e,t){t!==h.modelValue&&(y("update:modelValue",t),D.dispatchEvent("change",{value:t},e),S&&P&&S.triggerItemEvent(e,P.itemConfig.field,t))},te=function(e,t){k.remoteValueList=[],ee(e,t),D.dispatchEvent("clear",{value:t},e)},ne=_xeUtils.default.debounce(function(){var e=h.remote,t=h.remoteMethod,n=k.searchValue;e&&t?(k.searchLoading=!0,Promise.resolve(t({searchValue:n})).then(function(){return(0,_vue.nextTick)()}).catch(function(){return(0,_vue.nextTick)()}).finally(function(){k.searchLoading=!1,u()})):u()},350,{trailing:!0}),ie=function(e,a){var s=h.optionKey,c=h.modelValue,f=h.multiple,v=k.currentValue,t=M.value,p=F.value,d=$.value,_=Y.value,b=t.useKey;return e.map(function(t,e){var n=t.slots,i=t.className,o=!_||isOptionVisible(t),l=a&&a.disabled||t.disabled,u=t[d],r=X(t),n=n?n.default:null;return o?(0,_vue.h)("div",{key:b||s?r:e,class:["vxe-select-option",i?_xeUtils.default.isFunction(i)?i({option:t,$select:q}):i:"",{"is--disabled":l,"is--selected":f?c&&-1<c.indexOf(u):c===u,"is--hover":v===u}],optid:r,onMousedown:function(e){0===e.button&&e.stopPropagation()},onClick:function(e){l||g(e,u,t)},onMouseenter:function(){l||x(t)}},n?m(n,{option:t,$select:q}):(0,_utils.formatText)((0,_utils.getFuncText)(t[p]))):null})},oe=function(){var u=h.optionKey,e=k.visibleGroupList,t=M.value,r=B.value,a=z.value,s=t.useKey;return e.map(function(e,t){var n=e.slots,i=e.className,o=X(e),l=e.disabled,n=n?n.default:null;return(0,_vue.h)("div",{key:s||u?o:t,class:["vxe-optgroup",i?_xeUtils.default.isFunction(i)?i({option:e,$select:q}):i:"",{"is--disabled":l}],optid:o},[(0,_vue.h)("div",{class:"vxe-optgroup--title"},n?m(n,{option:e,$select:q}):(0,_utils.getFuncText)(e[r])),(0,_vue.h)("div",{class:"vxe-optgroup--wrapper"},ie(e[a]||[],e))])})},D={dispatchEvent:function(e,t,n){y(e,Object.assign({$select:q,$event:n},t))},isPanelVisible:function(){return k.visiblePanel},togglePanel:function(){return(k.visiblePanel?Q:J)(),(0,_vue.nextTick)()},hidePanel:function(){return k.visiblePanel&&Q(),(0,_vue.nextTick)()},showPanel:function(){return k.visiblePanel||J(),(0,_vue.nextTick)()},refreshOption:u,focus:function(){var e=I.value;return k.isActivated=!0,e.blur(),(0,_vue.nextTick)()},blur:function(){return I.value.blur(),(k.isActivated=!1,_vue.nextTick)()}};Object.assign(q,D),(0,_vue.watch)(function(){return k.staticOptions},function(e){e.some(function(e){return e.options&&e.options.length})?(k.fullOptionList=[],k.fullGroupList=e):(k.fullGroupList=[],k.fullOptionList=e||[]),n()}),(0,_vue.watch)(function(){return h.options},function(e){k.fullGroupList=[],k.fullOptionList=e||[],n()}),(0,_vue.watch)(function(){return h.optionGroups},function(e){k.fullOptionList=[],k.fullGroupList=e||[],n()}),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=h.options,t=h.optionGroups;t?k.fullGroupList=t:e&&(k.fullOptionList=e),n()}),_event.GlobalEvent.on(q,"mousewheel",t),_event.GlobalEvent.on(q,"mousedown",r),_event.GlobalEvent.on(q,"keydown",a),_event.GlobalEvent.on(q,"blur",s)}),(0,_vue.onUnmounted)(function(){_event.GlobalEvent.off(q,"mousewheel"),_event.GlobalEvent.off(q,"mousedown"),_event.GlobalEvent.off(q,"keydown"),_event.GlobalEvent.off(q,"blur")});return q.renderVN=function(){var e=h.className,t=h.transfer,n=h.disabled,i=h.loading,o=h.filterable,l=k.inited,u=k.isActivated,r=k.visiblePanel,a=N.value,s=W.value,c=L.prefix;return(0,_vue.h)("div",{ref:A,class:["vxe-select",e?_xeUtils.default.isFunction(e)?e({$select:q}):e:"",((e={})["size--".concat(a)]=a,e["is--visivle"]=r,e["is--disabled"]=n,e["is--filter"]=o,e["is--loading"]=i,e["is--active"]=u,e)]},[(0,_vue.h)("div",{class:"vxe-select-slots",ref:"hideOption"},L.default?L.default({}):[]),(0,_vue.h)(_input.default,{ref:I,clearable:h.clearable,placeholder:h.placeholder,readonly:!0,disabled:n,type:"text",prefixIcon:h.prefixIcon,suffixIcon:i?_conf.default.icon.SELECT_LOADED:r?_conf.default.icon.SELECT_OPEN:_conf.default.icon.SELECT_CLOSE,modelValue:s,onClear:f,onClick:V,onFocus:d,onBlur:_,onSuffixClick:V},c?{prefix:function(){return c({})}}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!t||!l},[(0,_vue.h)("div",{ref:w,class:["vxe-table--ignore-clear vxe-select--panel",((s={})["size--".concat(a)]=a,s["is--transfer"]=t,s["animat--leave"]=!i&&k.animatVisible,s["animat--enter"]=!i&&r,s)],placement:k.panelPlacement,style:k.panelStyle},l?[o?(0,_vue.h)("div",{class:"vxe-select-filter--wrapper"},[(0,_vue.h)(_input.default,{ref:C,class:"vxe-select-filter--input",modelValue:k.searchValue,clearable:!0,placeholder:_conf.default.i18n("vxe.select.search"),prefixIcon:_conf.default.icon.INPUT_SEARCH,"onUpdate:modelValue":b,onFocus:E,onKeydown:O,onChange:ne,onSearch:ne})]):(0,_vue.createCommentVNode)(),(0,_vue.h)("div",{ref:K,class:"vxe-select-option--wrapper"},function(){var e=k.visibleGroupList,t=k.visibleOptionList,n=k.searchLoading,i=Y.value;if(n)return[(0,_vue.h)("div",{class:"vxe-select--search-loading"},[(0,_vue.h)("i",{class:["vxe-select--search-icon",_conf.default.icon.SELECT_LOADED]}),(0,_vue.h)("span",{class:"vxe-select--search-text"},_conf.default.i18n("vxe.select.loadingText"))])];if(i){if(e.length)return oe()}else if(t.length)return ie(t);return[(0,_vue.h)("div",{class:"vxe-select--empty-placeholder"},h.emptyText||_conf.default.i18n("vxe.select.emptyText"))]}())]:[])])])},(0,_vue.provide)("$xeselect",q),q},render:function(){return this.renderVN()}});exports.default=_default2;
@@ -38,6 +38,7 @@
38
38
  .vxe-select > .vxe-input {
39
39
  width: 100%; }
40
40
  .vxe-select > .vxe-input .vxe-input--suffix-icon {
41
+ display: inline-block;
41
42
  transition: transform 0.2s ease-in-out; }
42
43
  .vxe-select.is--active:not(.is--filter) > .vxe-input .vxe-input--inner {
43
44
  border: 1px solid #409eff; }
@@ -1 +1 @@
1
- .vxe-select{position:relative;display:inline-block;width:180px;color:#606266;text-align:left}.vxe-select>.vxe-input .vxe-input--inner{cursor:pointer}.vxe-select.is--disabled>.vxe-input .vxe-input--inner{cursor:no-drop}.vxe-select.is--loading>.vxe-input .vxe-input--inner{cursor:progress}.vxe-select>.vxe-input{width:100%}.vxe-select>.vxe-input .vxe-input--suffix-icon{transition:transform .2s ease-in-out}.vxe-select.is--active:not(.is--filter)>.vxe-input .vxe-input--inner{border:1px solid #409eff}.vxe-select-slots{display:none}.vxe-select--panel{display:none;position:absolute;left:0;padding:4px 0;color:#606266;text-align:left}.vxe-select--panel:not(.is--transfer){min-width:100%}.vxe-select--panel.is--transfer{position:fixed}.vxe-select--panel.animat--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;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-style:preserve-3d}.vxe-select--panel.animat--leave[placement=top]{transform-origin:center bottom}.vxe-select--panel.animat--enter{opacity:1;transform:scaleY(1)}.vxe-select-filter--wrapper{display:block}.vxe-select-filter--wrapper .vxe-select-filter--input{width:100%}.vxe-select-option--wrapper{position:relative;overflow-x:hidden;overflow-y:auto;padding:4px 0;max-height:200px;border-radius:4px;border:1px solid #dadce0;box-shadow:0 0 6px 2px rgba(0,0,0,.1);background-color:#fff}.vxe-optgroup .vxe-optgroup--title{padding:0 6px;color:#909399;font-size:12px}.vxe-optgroup--wrapper .vxe-select-option{padding:0 20px}.vxe-select-option{padding:0 .6em;max-width:600px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-select-option.is--selected{font-weight:700;color:#409eff}.vxe-select-option:not(.is--disabled){cursor:pointer}.vxe-select-option:not(.is--disabled).is--hover{background-color:#f5f7fa}.vxe-select-option.is--disabled{color:#bfbfbf;cursor:no-drop}.vxe-select--search-icon{margin-right:.5em}.vxe-select--empty-placeholder,.vxe-select--search-loading{padding:0 .6em;text-align:center;color:#c0c4cc}.vxe-select,.vxe-select--panel{font-size:14px}.vxe-select--panel.size--medium,.vxe-select.size--medium{font-size:14px}.vxe-select--panel.size--small,.vxe-select.size--small{font-size:13px}.vxe-select--panel.size--mini,.vxe-select.size--mini{font-size:12px}.vxe-select--panel .vxe-optgroup--title,.vxe-select--panel .vxe-select-option{height:30px}.vxe-select--panel .vxe-optgroup--title,.vxe-select--panel .vxe-select--empty-placeholder,.vxe-select--panel .vxe-select--search-loading,.vxe-select--panel .vxe-select-option{line-height:30px}.vxe-select--panel.size--medium .vxe-optgroup--title,.vxe-select--panel.size--medium .vxe-select-option{height:28px}.vxe-select--panel.size--medium .vxe-optgroup--title,.vxe-select--panel.size--medium .vxe-select--empty-placeholder,.vxe-select--panel.size--medium .vxe-select--search-loading,.vxe-select--panel.size--medium .vxe-select-option{line-height:28px}.vxe-select--panel.size--small .vxe-optgroup--title,.vxe-select--panel.size--small .vxe-select-option{height:26px}.vxe-select--panel.size--small .vxe-optgroup--title,.vxe-select--panel.size--small .vxe-select--empty-placeholder,.vxe-select--panel.size--small .vxe-select--search-loading,.vxe-select--panel.size--small .vxe-select-option{line-height:26px}.vxe-select--panel.size--mini .vxe-optgroup--title,.vxe-select--panel.size--mini .vxe-select-option{height:24px}.vxe-select--panel.size--mini .vxe-optgroup--title,.vxe-select--panel.size--mini .vxe-select--empty-placeholder,.vxe-select--panel.size--mini .vxe-select--search-loading,.vxe-select--panel.size--mini .vxe-select-option{line-height:24px}
1
+ .vxe-select{position:relative;display:inline-block;width:180px;color:#606266;text-align:left}.vxe-select>.vxe-input .vxe-input--inner{cursor:pointer}.vxe-select.is--disabled>.vxe-input .vxe-input--inner{cursor:no-drop}.vxe-select.is--loading>.vxe-input .vxe-input--inner{cursor:progress}.vxe-select>.vxe-input{width:100%}.vxe-select>.vxe-input .vxe-input--suffix-icon{display:inline-block;transition:transform .2s ease-in-out}.vxe-select.is--active:not(.is--filter)>.vxe-input .vxe-input--inner{border:1px solid #409eff}.vxe-select-slots{display:none}.vxe-select--panel{display:none;position:absolute;left:0;padding:4px 0;color:#606266;text-align:left}.vxe-select--panel:not(.is--transfer){min-width:100%}.vxe-select--panel.is--transfer{position:fixed}.vxe-select--panel.animat--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;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-style:preserve-3d}.vxe-select--panel.animat--leave[placement=top]{transform-origin:center bottom}.vxe-select--panel.animat--enter{opacity:1;transform:scaleY(1)}.vxe-select-filter--wrapper{display:block}.vxe-select-filter--wrapper .vxe-select-filter--input{width:100%}.vxe-select-option--wrapper{position:relative;overflow-x:hidden;overflow-y:auto;padding:4px 0;max-height:200px;border-radius:4px;border:1px solid #dadce0;box-shadow:0 0 6px 2px rgba(0,0,0,.1);background-color:#fff}.vxe-optgroup .vxe-optgroup--title{padding:0 6px;color:#909399;font-size:12px}.vxe-optgroup--wrapper .vxe-select-option{padding:0 20px}.vxe-select-option{padding:0 .6em;max-width:600px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-select-option.is--selected{font-weight:700;color:#409eff}.vxe-select-option:not(.is--disabled){cursor:pointer}.vxe-select-option:not(.is--disabled).is--hover{background-color:#f5f7fa}.vxe-select-option.is--disabled{color:#bfbfbf;cursor:no-drop}.vxe-select--search-icon{margin-right:.5em}.vxe-select--empty-placeholder,.vxe-select--search-loading{padding:0 .6em;text-align:center;color:#c0c4cc}.vxe-select,.vxe-select--panel{font-size:14px}.vxe-select--panel.size--medium,.vxe-select.size--medium{font-size:14px}.vxe-select--panel.size--small,.vxe-select.size--small{font-size:13px}.vxe-select--panel.size--mini,.vxe-select.size--mini{font-size:12px}.vxe-select--panel .vxe-optgroup--title,.vxe-select--panel .vxe-select-option{height:30px}.vxe-select--panel .vxe-optgroup--title,.vxe-select--panel .vxe-select--empty-placeholder,.vxe-select--panel .vxe-select--search-loading,.vxe-select--panel .vxe-select-option{line-height:30px}.vxe-select--panel.size--medium .vxe-optgroup--title,.vxe-select--panel.size--medium .vxe-select-option{height:28px}.vxe-select--panel.size--medium .vxe-optgroup--title,.vxe-select--panel.size--medium .vxe-select--empty-placeholder,.vxe-select--panel.size--medium .vxe-select--search-loading,.vxe-select--panel.size--medium .vxe-select-option{line-height:28px}.vxe-select--panel.size--small .vxe-optgroup--title,.vxe-select--panel.size--small .vxe-select-option{height:26px}.vxe-select--panel.size--small .vxe-optgroup--title,.vxe-select--panel.size--small .vxe-select--empty-placeholder,.vxe-select--panel.size--small .vxe-select--search-loading,.vxe-select--panel.size--small .vxe-select-option{line-height:26px}.vxe-select--panel.size--mini .vxe-optgroup--title,.vxe-select--panel.size--mini .vxe-select-option{height:24px}.vxe-select--panel.size--mini .vxe-optgroup--title,.vxe-select--panel.size--mini .vxe-select--empty-placeholder,.vxe-select--panel.size--mini .vxe-select--search-loading,.vxe-select--panel.size--mini .vxe-select-option{line-height:24px}