vxe-pc-ui 4.4.11 → 4.4.13

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 (50) hide show
  1. package/es/icon/style.css +1 -1
  2. package/es/input/src/input.js +11 -4
  3. package/es/list/src/list.js +2 -1
  4. package/es/number-input/src/number-input.js +33 -18
  5. package/es/select/src/select.js +28 -12
  6. package/es/style.css +1 -1
  7. package/es/style.min.css +1 -1
  8. package/es/ui/index.js +9 -6
  9. package/es/ui/src/log.js +1 -1
  10. package/lib/icon/style/style.css +1 -1
  11. package/lib/icon/style/style.min.css +1 -1
  12. package/lib/index.umd.js +97 -44
  13. package/lib/index.umd.min.js +1 -1
  14. package/lib/input/src/input.js +12 -4
  15. package/lib/input/src/input.min.js +1 -1
  16. package/lib/list/src/list.js +2 -1
  17. package/lib/list/src/list.min.js +1 -1
  18. package/lib/number-input/src/number-input.js +35 -20
  19. package/lib/number-input/src/number-input.min.js +1 -1
  20. package/lib/select/src/select.js +35 -10
  21. package/lib/select/src/select.min.js +1 -1
  22. package/lib/style.css +1 -1
  23. package/lib/style.min.css +1 -1
  24. package/lib/ui/index.js +9 -6
  25. package/lib/ui/index.min.js +1 -1
  26. package/lib/ui/src/log.js +1 -1
  27. package/lib/ui/src/log.min.js +1 -1
  28. package/package.json +2 -2
  29. package/packages/input/src/input.ts +11 -4
  30. package/packages/list/src/list.ts +2 -1
  31. package/packages/number-input/src/number-input.ts +33 -18
  32. package/packages/select/src/select.ts +29 -13
  33. package/packages/ui/index.ts +8 -5
  34. package/types/components/input.d.ts +2 -0
  35. package/types/components/list.d.ts +30 -0
  36. package/types/components/number-input.d.ts +3 -0
  37. package/types/components/select.d.ts +68 -3
  38. package/types/components/table.d.ts +12 -0
  39. /package/es/icon/{iconfont.1741830156438.ttf → iconfont.1741919143115.ttf} +0 -0
  40. /package/es/icon/{iconfont.1741830156438.woff → iconfont.1741919143115.woff} +0 -0
  41. /package/es/icon/{iconfont.1741830156438.woff2 → iconfont.1741919143115.woff2} +0 -0
  42. /package/es/{iconfont.1741830156438.ttf → iconfont.1741919143115.ttf} +0 -0
  43. /package/es/{iconfont.1741830156438.woff → iconfont.1741919143115.woff} +0 -0
  44. /package/es/{iconfont.1741830156438.woff2 → iconfont.1741919143115.woff2} +0 -0
  45. /package/lib/icon/style/{iconfont.1741830156438.ttf → iconfont.1741919143115.ttf} +0 -0
  46. /package/lib/icon/style/{iconfont.1741830156438.woff → iconfont.1741919143115.woff} +0 -0
  47. /package/lib/icon/style/{iconfont.1741830156438.woff2 → iconfont.1741919143115.woff2} +0 -0
  48. /package/lib/{iconfont.1741830156438.ttf → iconfont.1741919143115.ttf} +0 -0
  49. /package/lib/{iconfont.1741830156438.woff → iconfont.1741919143115.woff} +0 -0
  50. /package/lib/{iconfont.1741830156438.woff2 → iconfont.1741919143115.woff2} +0 -0
package/lib/ui/index.js CHANGED
@@ -26,7 +26,7 @@ Object.keys(_core).forEach(function (key) {
26
26
  });
27
27
  var _dynamics = require("../dynamics");
28
28
  var _log = require("./src/log");
29
- const version = exports.version = "4.4.11";
29
+ const version = exports.version = "4.4.13";
30
30
  _core.VxeUI.uiVersion = version;
31
31
  _core.VxeUI.dynamicApp = _dynamics.dynamicApp;
32
32
  function config(options) {
@@ -197,7 +197,7 @@ _core.VxeUI.setup = setup;
197
197
  listView: {},
198
198
  list: {
199
199
  // size: null,
200
- scrollY: {
200
+ virtualYConfig: {
201
201
  enabled: true,
202
202
  gt: 100
203
203
  // oSize: 0
@@ -283,7 +283,11 @@ _core.VxeUI.setup = setup;
283
283
  row: {},
284
284
  select: {
285
285
  multiCharOverflow: 8,
286
- scrollY: {
286
+ remoteConfig: {
287
+ enabled: true,
288
+ autoLoad: true
289
+ },
290
+ virtualYConfig: {
287
291
  enabled: true,
288
292
  gt: 100,
289
293
  oSize: 2
@@ -304,12 +308,11 @@ _core.VxeUI.setup = setup;
304
308
  rowConfig: {
305
309
  isHover: true
306
310
  },
307
- scrollX: {
311
+ virtualXConfig: {
308
312
  enabled: true,
309
313
  gt: 0
310
314
  },
311
- scrollY: {
312
- mode: 'wheel',
315
+ virtualYConfig: {
313
316
  enabled: true,
314
317
  gt: 0
315
318
  }
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={version:!0,config:!0,setup:!0},_core=(exports.config=config,exports.default=void 0,exports.setup=setup,exports.version=void 0,require("@vxe-ui/core")),_dynamics=(Object.keys(_core).forEach(function(e){"default"===e||"__esModule"===e||Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_core[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _core[e]}})}),require("../dynamics")),_log=require("./src/log");const version=exports.version="4.4.11";function config(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["config","setConfig"]),(0,_core.setConfig)(e)}function setup(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setup","setConfig"]),(0,_core.setConfig)(e)}_core.VxeUI.uiVersion=version,_core.VxeUI.dynamicApp=_dynamics.dynamicApp,_core.VxeUI.config=config,_core.VxeUI.setup=setup,(0,_core.setConfig)({alert:{},anchor:{},anchorLink:{},avatar:{},badge:{},breadcrumb:{separator:"/"},breadcrumbItem:{},button:{trigger:"hover",prefixTooltip:{enterable:!0},suffixTooltip:{enterable:!0}},buttonGroup:{},calendar:{minDate:new Date(1900,0,1),maxDate:new Date(2100,0,1),startDay:1,selectDay:1},card:{border:!0,padding:!0},carousel:{height:200,loop:!0,interval:5e3},carouselItem:{},checkbox:{},checkboxGroup:{},col:{},collapse:{padding:!0,expandConfig:{showIcon:!0}},collapsePane:{},countdown:{},colorPicker:{type:"hex",clearable:!0,showAlpha:!0,clickToCopy:!0,showColorExtractor:!0,showQuick:!0},datePicker:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1,shortcutConfig:{align:"left",mode:"text",autoClose:!0}},drawer:{position:"right",showHeader:!0,lockView:!0,mask:!0,showTitleOverflow:!0,showClose:!0,padding:!0,cancelClosable:!0,confirmClosable:!0},empty:{},form:{validConfig:{showMessage:!0,autoPos:!0,theme:"beautify"},tooltipConfig:{enterable:!0},titleAsterisk:!0,titleOverflow:!1,padding:!0},formDesign:{height:400,showHeader:!0,showPc:!0},formGather:{},formGroup:{},formItem:{},formView:{},icon:{},iconPicker:{icons:["home","company","comment","setting","send","envelope","envelope-open","bell","search","print","pc","goods","chart-line","edit","delete","save","folder","microphone","flag","link","location","sunny","rmb","usd","user","add-user","add-users","star","unlock","time","text","feedback","calendar","association-form","cloud-download","cloud-upload","file","subtable","chart-bar-x","chart-bar-y","chart-line","chart-pie","chart-radar"]},image:{showPreview:!0,showPrintButton:!0,maskClosable:!0},imageGroup:{showPreview:!0,showPrintButton:!0},imagePreview:{showPrintButton:!0},input:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1,digits:2,controls:!0},layoutAside:{},layoutBody:{},layoutContainer:{},layoutFooter:{},layoutHeader:{},link:{underline:!0},listDesign:{height:400,showPc:!0},listView:{},list:{scrollY:{enabled:!0,gt:100}},loading:{showIcon:!0,showText:!0},modal:{top:16,showHeader:!0,minWidth:340,minHeight:140,lockView:!0,mask:!0,duration:3e3,marginSize:0,dblclickZoom:!0,showTitleOverflow:!0,animat:!0,showClose:!0,padding:!0,draggable:!0,showConfirmButton:null,cancelClosable:!0,confirmClosable:!0,zoomConfig:{minimizeMaxSize:10,minimizeVerticalOffset:{top:-24,left:0},minimizeHorizontalOffset:{top:0,left:32}},storageKey:"VXE_MODAL_POSITION"},noticeBar:{},numberInput:{digits:2,autoFill:!0,controls:!0},optgroup:{},option:{},pager:{pageSizePlacement:"top"},print:{},passwordInput:{controls:!0},printPageBreak:{},pulldown:{destroyOnClose:!0},radio:{strict:!0},radioButton:{strict:!0},radioGroup:{strict:!0},rate:{},result:{},row:{},select:{multiCharOverflow:8,scrollY:{enabled:!0,gt:100,oSize:2}},slider:{max:100,min:0},steps:{},switch:{},tabPane:{},tableSelect:{gridConfig:{showOverflow:!0,showHeaderOverflow:!0,showFooterOverflow:!0,rowConfig:{isHover:!0},scrollX:{enabled:!0,gt:0},scrollY:{mode:"wheel",enabled:!0,gt:0}}},tabs:{},tag:{},textEllipsis:{underline:!0},text:{},textarea:{resize:"none"},tip:{},tooltip:{trigger:"hover",theme:"dark",enterDelay:500,leaveDelay:300,isArrow:!0},tree:{indent:20,minHeight:60,radioConfig:{strict:!0}},treeSelect:{treeConfig:{radioConfig:{},checkboxConfig:{}}},upload:{mode:"all",imageTypes:["jpg","jpeg","png","gif"],showList:!0,showUploadButton:!0,showButtonText:!0,showRemoveButton:!0,showButtonIcon:!0,showPreview:!0,dragToUpload:!0},watermark:{rotate:-30,gap:[100,100]},table:{},colgroup:{},column:{},toolbar:{},grid:{}});const iconPrefix="vxe-icon-";(0,_core.setIcon)({LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",BUTTON_DROPDOWN:iconPrefix+"arrow-down",BUTTON_LOADING:iconPrefix+"spinner roll",BUTTON_TOOLTIP_ICON:iconPrefix+"question-circle-fill",MENU_ITEM_EXPAND_OPEN:iconPrefix+"arrow-down rotate180",MENU_ITEM_EXPAND_CLOSE:iconPrefix+"arrow-down",SELECT_LOADED:iconPrefix+"spinner roll",SELECT_OPEN:iconPrefix+"caret-down rotate180",SELECT_CLOSE:iconPrefix+"caret-down",ADD_OPTION:iconPrefix+"add",ICON_PICKER_OPEN:iconPrefix+"caret-down rotate180",ICON_PICKER_CLOSE:iconPrefix+"caret-down",PAGER_HOME:iconPrefix+"home-page",PAGER_END:iconPrefix+"end-page",PAGER_JUMP_PREV:iconPrefix+"arrow-double-left",PAGER_JUMP_NEXT:iconPrefix+"arrow-double-right",PAGER_PREV_PAGE:iconPrefix+"arrow-left",PAGER_NEXT_PAGE:iconPrefix+"arrow-right",PAGER_JUMP_MORE:iconPrefix+"ellipsis-h",RADIO_CHECKED:iconPrefix+"radio-checked-fill",RADIO_UNCHECKED:iconPrefix+"radio-unchecked",CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",INPUT_CLEAR:iconPrefix+"error-circle-fill",INPUT_SEARCH:iconPrefix+"search",NUMBER_INPUT_PREV_NUM:iconPrefix+"caret-up",NUMBER_INPUT_NEXT_NUM:iconPrefix+"caret-down",DATE_PICKER_DATE:iconPrefix+"calendar",PASSWORD_INPUT_SHOW_PWD:iconPrefix+"eye-fill-close",PASSWORD_INPUT_HIDE_PWD:iconPrefix+"eye-fill",MODAL_ZOOM_MIN:iconPrefix+"minus",MODAL_ZOOM_REVERT:iconPrefix+"recover",MODAL_ZOOM_IN:iconPrefix+"square",MODAL_ZOOM_OUT:iconPrefix+"maximize",MODAL_CLOSE:iconPrefix+"close",MODAL_INFO:iconPrefix+"info-circle-fill",MODAL_SUCCESS:iconPrefix+"success-circle-fill",MODAL_WARNING:iconPrefix+"warning-circle-fill",MODAL_ERROR:iconPrefix+"error-circle-fill",MODAL_QUESTION:iconPrefix+"question-circle-fill",MODAL_LOADING:iconPrefix+"spinner roll",DRAWER_CLOSE:iconPrefix+"close",FORM_PREFIX:iconPrefix+"question-circle-fill",FORM_SUFFIX:iconPrefix+"question-circle-fill",FORM_FOLDING:iconPrefix+"arrow-up rotate180",FORM_UNFOLDING:iconPrefix+"arrow-up",FORM_DESIGN_STYLE_SETTING:iconPrefix+"layout",FORM_DESIGN_PROPS_PC:iconPrefix+"pc",FORM_DESIGN_PROPS_MOBILE:iconPrefix+"mobile",FORM_DESIGN_PROPS_ADD:iconPrefix+"add",FORM_DESIGN_PROPS_EDIT:iconPrefix+"edit",FORM_DESIGN_WIDGET_ADD:iconPrefix+"square-plus-fill",FORM_DESIGN_WIDGET_COPY:iconPrefix+"copy",FORM_DESIGN_WIDGET_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_SWAP_LR:iconPrefix+"swap",FORM_DESIGN_WIDGET_OPTION_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_OPTION_EXPAND_OPEN:iconPrefix+"square-plus",FORM_DESIGN_WIDGET_OPTION_EXPAND_CLOSE:iconPrefix+"square-minus",LIST_DESIGN_FIELD_SETTING:iconPrefix+"custom-column",LIST_DESIGN_LIST_SETTING:iconPrefix+"menu",LIST_DESIGN_LIST_SETTING_SEARCH_DELETE:iconPrefix+"delete",LIST_DESIGN_LIST_SETTING_ACTIVE_DELETE:iconPrefix+"delete",UPLOAD_FILE_ERROR:iconPrefix+"warning-circle-fill",UPLOAD_FILE_ADD:iconPrefix+"upload",UPLOAD_FILE_REMOVE:iconPrefix+"delete",UPLOAD_FILE_DOWNLOAD:iconPrefix+"download",UPLOAD_IMAGE_RE_UPLOAD:iconPrefix+"repeat",UPLOAD_IMAGE_ADD:iconPrefix+"add",UPLOAD_IMAGE_REMOVE:iconPrefix+"close",UPLOAD_LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",UPLOAD_FILE_TYPE_DEFAULT:iconPrefix+"file",UPLOAD_FILE_TYPE_XLSX:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_XLS:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_PDF:iconPrefix+"file-pdf",UPLOAD_FILE_TYPE_PNG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_GIF:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPEG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_MD:iconPrefix+"file-markdown",UPLOAD_FILE_TYPE_PPD:iconPrefix+"file-ppt",UPLOAD_FILE_TYPE_DOCX:iconPrefix+"file-word",UPLOAD_FILE_TYPE_DOC:iconPrefix+"file-word",UPLOAD_FILE_TYPE_ZIP:iconPrefix+"file-zip",UPLOAD_FILE_TYPE_TXT:iconPrefix+"file-txt",IMAGE_PREVIEW_CLOSE:iconPrefix+"close",IMAGE_PREVIEW_PREVIOUS:iconPrefix+"arrow-left",IMAGE_PREVIEW_NEXT:iconPrefix+"arrow-right",IMAGE_PREVIEW_PCT_FULL:iconPrefix+"pct-full",IMAGE_PREVIEW_PCT_1_1:iconPrefix+"pct-1-1",IMAGE_PREVIEW_ZOOM_OUT:iconPrefix+"search-zoom-out",IMAGE_PREVIEW_ZOOM_IN:iconPrefix+"search-zoom-in",IMAGE_PREVIEW_ROTATE_LEFT:iconPrefix+"rotate-left",IMAGE_PREVIEW_ROTATE_RIGHT:iconPrefix+"rotate-right",IMAGE_PREVIEW_PRINT:iconPrefix+"print",IMAGE_PREVIEW_DOWNLOAD:iconPrefix+"download",ALERT_CLOSE:iconPrefix+"close",ALERT_INFO:iconPrefix+"info-circle-fill",ALERT_SUCCESS:iconPrefix+"success-circle-fill",ALERT_WARNING:iconPrefix+"warning-circle-fill",ALERT_ERROR:iconPrefix+"error-circle-fill",TREE_NODE_OPEN:iconPrefix+"caret-right rotate90",TREE_NODE_CLOSE:iconPrefix+"caret-right",TREE_NODE_LOADED:iconPrefix+"spinner roll",TREE_SELECT_LOADED:iconPrefix+"spinner roll",TREE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TREE_SELECT_CLOSE:iconPrefix+"caret-down",TABLE_SELECT_LOADED:iconPrefix+"spinner roll",TABLE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TABLE_SELECT_CLOSE:iconPrefix+"caret-down",TABS_TAB_BUTTON_LEFT:iconPrefix+"arrow-left",TABS_TAB_BUTTON_RIGHT:iconPrefix+"arrow-right",TABS_TAB_CLOSE:iconPrefix+"close",TABS_TAB_REFRESH:iconPrefix+"refresh",TABS_TAB_REFRESH_LOADING:iconPrefix+"refresh roll",TEXT_COPY:iconPrefix+"copy",TEXT_LOADING:iconPrefix+"spinner roll",CAROUSEL_HORIZONTAL_PREVIOUS:iconPrefix+"arrow-left",CAROUSEL_HORIZONTAL_NEXT:iconPrefix+"arrow-right",CAROUSEL_VERTICAL_PREVIOUS:iconPrefix+"arrow-up",CAROUSEL_VERTICAL_NEXT:iconPrefix+"arrow-down",COLLAPSE_OPEN:iconPrefix+"arrow-right rotate90",COLLAPSE_CLOSE:iconPrefix+"arrow-right",EMPTY_DEFAULT:iconPrefix+"empty",RESULT_INFO:iconPrefix+"info-circle-fill",RESULT_SUCCESS:iconPrefix+"success-circle-fill",RESULT_WARNING:iconPrefix+"warning-circle-fill",RESULT_ERROR:iconPrefix+"error-circle-fill",RESULT_QUESTION:iconPrefix+"question-circle-fill",RESULT_LOADING:iconPrefix+"spinner roll",RATE_CHECKED:iconPrefix+"star-fill",RATE_UNCHECKED:iconPrefix+"star",COLOR_COPY:iconPrefix+"copy",EYE_DROPPER:iconPrefix+"dropper"});var _default=exports.default=_core.VxeUI;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={version:!0,config:!0,setup:!0},_core=(exports.config=config,exports.default=void 0,exports.setup=setup,exports.version=void 0,require("@vxe-ui/core")),_dynamics=(Object.keys(_core).forEach(function(e){"default"===e||"__esModule"===e||Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_core[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _core[e]}})}),require("../dynamics")),_log=require("./src/log");const version=exports.version="4.4.13";function config(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["config","setConfig"]),(0,_core.setConfig)(e)}function setup(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setup","setConfig"]),(0,_core.setConfig)(e)}_core.VxeUI.uiVersion=version,_core.VxeUI.dynamicApp=_dynamics.dynamicApp,_core.VxeUI.config=config,_core.VxeUI.setup=setup,(0,_core.setConfig)({alert:{},anchor:{},anchorLink:{},avatar:{},badge:{},breadcrumb:{separator:"/"},breadcrumbItem:{},button:{trigger:"hover",prefixTooltip:{enterable:!0},suffixTooltip:{enterable:!0}},buttonGroup:{},calendar:{minDate:new Date(1900,0,1),maxDate:new Date(2100,0,1),startDay:1,selectDay:1},card:{border:!0,padding:!0},carousel:{height:200,loop:!0,interval:5e3},carouselItem:{},checkbox:{},checkboxGroup:{},col:{},collapse:{padding:!0,expandConfig:{showIcon:!0}},collapsePane:{},countdown:{},colorPicker:{type:"hex",clearable:!0,showAlpha:!0,clickToCopy:!0,showColorExtractor:!0,showQuick:!0},datePicker:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1,shortcutConfig:{align:"left",mode:"text",autoClose:!0}},drawer:{position:"right",showHeader:!0,lockView:!0,mask:!0,showTitleOverflow:!0,showClose:!0,padding:!0,cancelClosable:!0,confirmClosable:!0},empty:{},form:{validConfig:{showMessage:!0,autoPos:!0,theme:"beautify"},tooltipConfig:{enterable:!0},titleAsterisk:!0,titleOverflow:!1,padding:!0},formDesign:{height:400,showHeader:!0,showPc:!0},formGather:{},formGroup:{},formItem:{},formView:{},icon:{},iconPicker:{icons:["home","company","comment","setting","send","envelope","envelope-open","bell","search","print","pc","goods","chart-line","edit","delete","save","folder","microphone","flag","link","location","sunny","rmb","usd","user","add-user","add-users","star","unlock","time","text","feedback","calendar","association-form","cloud-download","cloud-upload","file","subtable","chart-bar-x","chart-bar-y","chart-line","chart-pie","chart-radar"]},image:{showPreview:!0,showPrintButton:!0,maskClosable:!0},imageGroup:{showPreview:!0,showPrintButton:!0},imagePreview:{showPrintButton:!0},input:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1,digits:2,controls:!0},layoutAside:{},layoutBody:{},layoutContainer:{},layoutFooter:{},layoutHeader:{},link:{underline:!0},listDesign:{height:400,showPc:!0},listView:{},list:{virtualYConfig:{enabled:!0,gt:100}},loading:{showIcon:!0,showText:!0},modal:{top:16,showHeader:!0,minWidth:340,minHeight:140,lockView:!0,mask:!0,duration:3e3,marginSize:0,dblclickZoom:!0,showTitleOverflow:!0,animat:!0,showClose:!0,padding:!0,draggable:!0,showConfirmButton:null,cancelClosable:!0,confirmClosable:!0,zoomConfig:{minimizeMaxSize:10,minimizeVerticalOffset:{top:-24,left:0},minimizeHorizontalOffset:{top:0,left:32}},storageKey:"VXE_MODAL_POSITION"},noticeBar:{},numberInput:{digits:2,autoFill:!0,controls:!0},optgroup:{},option:{},pager:{pageSizePlacement:"top"},print:{},passwordInput:{controls:!0},printPageBreak:{},pulldown:{destroyOnClose:!0},radio:{strict:!0},radioButton:{strict:!0},radioGroup:{strict:!0},rate:{},result:{},row:{},select:{multiCharOverflow:8,remoteConfig:{enabled:!0,autoLoad:!0},virtualYConfig:{enabled:!0,gt:100,oSize:2}},slider:{max:100,min:0},steps:{},switch:{},tabPane:{},tableSelect:{gridConfig:{showOverflow:!0,showHeaderOverflow:!0,showFooterOverflow:!0,rowConfig:{isHover:!0},virtualXConfig:{enabled:!0,gt:0},virtualYConfig:{enabled:!0,gt:0}}},tabs:{},tag:{},textEllipsis:{underline:!0},text:{},textarea:{resize:"none"},tip:{},tooltip:{trigger:"hover",theme:"dark",enterDelay:500,leaveDelay:300,isArrow:!0},tree:{indent:20,minHeight:60,radioConfig:{strict:!0}},treeSelect:{treeConfig:{radioConfig:{},checkboxConfig:{}}},upload:{mode:"all",imageTypes:["jpg","jpeg","png","gif"],showList:!0,showUploadButton:!0,showButtonText:!0,showRemoveButton:!0,showButtonIcon:!0,showPreview:!0,dragToUpload:!0},watermark:{rotate:-30,gap:[100,100]},table:{},colgroup:{},column:{},toolbar:{},grid:{}});const iconPrefix="vxe-icon-";(0,_core.setIcon)({LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",BUTTON_DROPDOWN:iconPrefix+"arrow-down",BUTTON_LOADING:iconPrefix+"spinner roll",BUTTON_TOOLTIP_ICON:iconPrefix+"question-circle-fill",MENU_ITEM_EXPAND_OPEN:iconPrefix+"arrow-down rotate180",MENU_ITEM_EXPAND_CLOSE:iconPrefix+"arrow-down",SELECT_LOADED:iconPrefix+"spinner roll",SELECT_OPEN:iconPrefix+"caret-down rotate180",SELECT_CLOSE:iconPrefix+"caret-down",ADD_OPTION:iconPrefix+"add",ICON_PICKER_OPEN:iconPrefix+"caret-down rotate180",ICON_PICKER_CLOSE:iconPrefix+"caret-down",PAGER_HOME:iconPrefix+"home-page",PAGER_END:iconPrefix+"end-page",PAGER_JUMP_PREV:iconPrefix+"arrow-double-left",PAGER_JUMP_NEXT:iconPrefix+"arrow-double-right",PAGER_PREV_PAGE:iconPrefix+"arrow-left",PAGER_NEXT_PAGE:iconPrefix+"arrow-right",PAGER_JUMP_MORE:iconPrefix+"ellipsis-h",RADIO_CHECKED:iconPrefix+"radio-checked-fill",RADIO_UNCHECKED:iconPrefix+"radio-unchecked",CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",INPUT_CLEAR:iconPrefix+"error-circle-fill",INPUT_SEARCH:iconPrefix+"search",NUMBER_INPUT_PREV_NUM:iconPrefix+"caret-up",NUMBER_INPUT_NEXT_NUM:iconPrefix+"caret-down",DATE_PICKER_DATE:iconPrefix+"calendar",PASSWORD_INPUT_SHOW_PWD:iconPrefix+"eye-fill-close",PASSWORD_INPUT_HIDE_PWD:iconPrefix+"eye-fill",MODAL_ZOOM_MIN:iconPrefix+"minus",MODAL_ZOOM_REVERT:iconPrefix+"recover",MODAL_ZOOM_IN:iconPrefix+"square",MODAL_ZOOM_OUT:iconPrefix+"maximize",MODAL_CLOSE:iconPrefix+"close",MODAL_INFO:iconPrefix+"info-circle-fill",MODAL_SUCCESS:iconPrefix+"success-circle-fill",MODAL_WARNING:iconPrefix+"warning-circle-fill",MODAL_ERROR:iconPrefix+"error-circle-fill",MODAL_QUESTION:iconPrefix+"question-circle-fill",MODAL_LOADING:iconPrefix+"spinner roll",DRAWER_CLOSE:iconPrefix+"close",FORM_PREFIX:iconPrefix+"question-circle-fill",FORM_SUFFIX:iconPrefix+"question-circle-fill",FORM_FOLDING:iconPrefix+"arrow-up rotate180",FORM_UNFOLDING:iconPrefix+"arrow-up",FORM_DESIGN_STYLE_SETTING:iconPrefix+"layout",FORM_DESIGN_PROPS_PC:iconPrefix+"pc",FORM_DESIGN_PROPS_MOBILE:iconPrefix+"mobile",FORM_DESIGN_PROPS_ADD:iconPrefix+"add",FORM_DESIGN_PROPS_EDIT:iconPrefix+"edit",FORM_DESIGN_WIDGET_ADD:iconPrefix+"square-plus-fill",FORM_DESIGN_WIDGET_COPY:iconPrefix+"copy",FORM_DESIGN_WIDGET_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_SWAP_LR:iconPrefix+"swap",FORM_DESIGN_WIDGET_OPTION_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_OPTION_EXPAND_OPEN:iconPrefix+"square-plus",FORM_DESIGN_WIDGET_OPTION_EXPAND_CLOSE:iconPrefix+"square-minus",LIST_DESIGN_FIELD_SETTING:iconPrefix+"custom-column",LIST_DESIGN_LIST_SETTING:iconPrefix+"menu",LIST_DESIGN_LIST_SETTING_SEARCH_DELETE:iconPrefix+"delete",LIST_DESIGN_LIST_SETTING_ACTIVE_DELETE:iconPrefix+"delete",UPLOAD_FILE_ERROR:iconPrefix+"warning-circle-fill",UPLOAD_FILE_ADD:iconPrefix+"upload",UPLOAD_FILE_REMOVE:iconPrefix+"delete",UPLOAD_FILE_DOWNLOAD:iconPrefix+"download",UPLOAD_IMAGE_RE_UPLOAD:iconPrefix+"repeat",UPLOAD_IMAGE_ADD:iconPrefix+"add",UPLOAD_IMAGE_REMOVE:iconPrefix+"close",UPLOAD_LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",UPLOAD_FILE_TYPE_DEFAULT:iconPrefix+"file",UPLOAD_FILE_TYPE_XLSX:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_XLS:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_PDF:iconPrefix+"file-pdf",UPLOAD_FILE_TYPE_PNG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_GIF:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPEG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_MD:iconPrefix+"file-markdown",UPLOAD_FILE_TYPE_PPD:iconPrefix+"file-ppt",UPLOAD_FILE_TYPE_DOCX:iconPrefix+"file-word",UPLOAD_FILE_TYPE_DOC:iconPrefix+"file-word",UPLOAD_FILE_TYPE_ZIP:iconPrefix+"file-zip",UPLOAD_FILE_TYPE_TXT:iconPrefix+"file-txt",IMAGE_PREVIEW_CLOSE:iconPrefix+"close",IMAGE_PREVIEW_PREVIOUS:iconPrefix+"arrow-left",IMAGE_PREVIEW_NEXT:iconPrefix+"arrow-right",IMAGE_PREVIEW_PCT_FULL:iconPrefix+"pct-full",IMAGE_PREVIEW_PCT_1_1:iconPrefix+"pct-1-1",IMAGE_PREVIEW_ZOOM_OUT:iconPrefix+"search-zoom-out",IMAGE_PREVIEW_ZOOM_IN:iconPrefix+"search-zoom-in",IMAGE_PREVIEW_ROTATE_LEFT:iconPrefix+"rotate-left",IMAGE_PREVIEW_ROTATE_RIGHT:iconPrefix+"rotate-right",IMAGE_PREVIEW_PRINT:iconPrefix+"print",IMAGE_PREVIEW_DOWNLOAD:iconPrefix+"download",ALERT_CLOSE:iconPrefix+"close",ALERT_INFO:iconPrefix+"info-circle-fill",ALERT_SUCCESS:iconPrefix+"success-circle-fill",ALERT_WARNING:iconPrefix+"warning-circle-fill",ALERT_ERROR:iconPrefix+"error-circle-fill",TREE_NODE_OPEN:iconPrefix+"caret-right rotate90",TREE_NODE_CLOSE:iconPrefix+"caret-right",TREE_NODE_LOADED:iconPrefix+"spinner roll",TREE_SELECT_LOADED:iconPrefix+"spinner roll",TREE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TREE_SELECT_CLOSE:iconPrefix+"caret-down",TABLE_SELECT_LOADED:iconPrefix+"spinner roll",TABLE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TABLE_SELECT_CLOSE:iconPrefix+"caret-down",TABS_TAB_BUTTON_LEFT:iconPrefix+"arrow-left",TABS_TAB_BUTTON_RIGHT:iconPrefix+"arrow-right",TABS_TAB_CLOSE:iconPrefix+"close",TABS_TAB_REFRESH:iconPrefix+"refresh",TABS_TAB_REFRESH_LOADING:iconPrefix+"refresh roll",TEXT_COPY:iconPrefix+"copy",TEXT_LOADING:iconPrefix+"spinner roll",CAROUSEL_HORIZONTAL_PREVIOUS:iconPrefix+"arrow-left",CAROUSEL_HORIZONTAL_NEXT:iconPrefix+"arrow-right",CAROUSEL_VERTICAL_PREVIOUS:iconPrefix+"arrow-up",CAROUSEL_VERTICAL_NEXT:iconPrefix+"arrow-down",COLLAPSE_OPEN:iconPrefix+"arrow-right rotate90",COLLAPSE_CLOSE:iconPrefix+"arrow-right",EMPTY_DEFAULT:iconPrefix+"empty",RESULT_INFO:iconPrefix+"info-circle-fill",RESULT_SUCCESS:iconPrefix+"success-circle-fill",RESULT_WARNING:iconPrefix+"warning-circle-fill",RESULT_ERROR:iconPrefix+"error-circle-fill",RESULT_QUESTION:iconPrefix+"question-circle-fill",RESULT_LOADING:iconPrefix+"spinner roll",RATE_CHECKED:iconPrefix+"star-fill",RATE_UNCHECKED:iconPrefix+"star",COLOR_COPY:iconPrefix+"copy",EYE_DROPPER:iconPrefix+"dropper"});var _default=exports.default=_core.VxeUI;
package/lib/ui/src/log.js CHANGED
@@ -5,6 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.warnLog = exports.errLog = void 0;
7
7
  var _core = require("@vxe-ui/core");
8
- const version = `ui v${"4.4.11"}`;
8
+ const version = `ui v${"4.4.13"}`;
9
9
  const warnLog = exports.warnLog = _core.log.create('warn', version);
10
10
  const errLog = exports.errLog = _core.log.create('error', version);
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");const version="ui v4.4.11",warnLog=exports.warnLog=_core.log.create("warn",version),errLog=exports.errLog=_core.log.create("error",version);
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");const version="ui v4.4.13",warnLog=exports.warnLog=_core.log.create("warn",version),errLog=exports.errLog=_core.log.create("error",version);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-pc-ui",
3
- "version": "4.4.11",
3
+ "version": "4.4.13",
4
4
  "description": "A vue based PC component library",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -25,7 +25,7 @@
25
25
  "style": "lib/style.css",
26
26
  "typings": "types/index.d.ts",
27
27
  "dependencies": {
28
- "@vxe-ui/core": "^4.0.35"
28
+ "@vxe-ui/core": "^4.0.36"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@typescript-eslint/eslint-plugin": "^6.21.0",
@@ -47,6 +47,10 @@ export default defineComponent({
47
47
  type: String as PropType<VxeInputPropTypes.AutoComplete>,
48
48
  default: 'off'
49
49
  },
50
+ autoFocus: {
51
+ type: Boolean as PropType<VxeInputPropTypes.AutoFocus>,
52
+ default: null
53
+ },
50
54
  align: String as PropType<VxeInputPropTypes.Align>,
51
55
  form: String as PropType<VxeInputPropTypes.Form>,
52
56
  className: String as PropType<VxeInputPropTypes.ClassName>,
@@ -904,14 +908,16 @@ export default defineComponent({
904
908
  }
905
909
 
906
910
  const clearValueEvent = (evnt: Event, value: VxeInputPropTypes.ModelValue) => {
907
- const { type } = props
911
+ const { type, autoFocus } = props
908
912
  const isNumType = computeIsNumType.value
909
913
  const isDatePickerType = computeIsDatePickerType.value
910
914
  if (isDatePickerType) {
911
915
  hidePanel()
912
916
  }
913
- if (isNumType || ['text', 'search', 'password'].indexOf(type) > -1) {
914
- focus()
917
+ if (autoFocus || autoFocus === null) {
918
+ if (isNumType || ['text', 'search', 'password'].indexOf(type) > -1) {
919
+ focus()
920
+ }
915
921
  }
916
922
  handleChange('', evnt)
917
923
  inputMethods.dispatchEvent('clear', { value }, evnt)
@@ -1217,11 +1223,12 @@ export default defineComponent({
1217
1223
  const isCtrlKey = evnt.ctrlKey
1218
1224
  const isShiftKey = evnt.shiftKey
1219
1225
  const isAltKey = evnt.altKey
1226
+ const isMetaKey = evnt.metaKey
1220
1227
  const keyCode = evnt.keyCode
1221
1228
  const isEsc = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ESCAPE)
1222
1229
  const isUpArrow = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ARROW_UP)
1223
1230
  const isDwArrow = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ARROW_DOWN)
1224
- if (!isCtrlKey && !isShiftKey && !isAltKey && (globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.SPACEBAR) || ((!exponential || keyCode !== 69) && (keyCode >= 65 && keyCode <= 90)) || (keyCode >= 186 && keyCode <= 188) || keyCode >= 191)) {
1231
+ if (!isCtrlKey && !isShiftKey && !isAltKey && !isMetaKey && (globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.SPACEBAR) || ((!exponential || keyCode !== 69) && (keyCode >= 65 && keyCode <= 90)) || (keyCode >= 186 && keyCode <= 188) || keyCode >= 191)) {
1225
1232
  evnt.preventDefault()
1226
1233
  }
1227
1234
  if (isEsc) {
@@ -17,6 +17,7 @@ export default defineComponent({
17
17
  size: { type: String as PropType<VxeListPropTypes.Size>, default: () => getConfig().list.size || getConfig().size },
18
18
  autoResize: { type: Boolean as PropType<VxeListPropTypes.AutoResize>, default: () => getConfig().list.autoResize },
19
19
  syncResize: [Boolean, String, Number] as PropType<VxeListPropTypes.SyncResize>,
20
+ virtualYConfig: Object as PropType<VxeListPropTypes.VirtualYConfig>,
20
21
  scrollY: Object as PropType<VxeListPropTypes.ScrollY>
21
22
  },
22
23
  emits: [
@@ -71,7 +72,7 @@ export default defineComponent({
71
72
  } as unknown as VxeListConstructor & VxeListMethods
72
73
 
73
74
  const computeSYOpts = computed(() => {
74
- return Object.assign({} as { gt: number }, getConfig().list.scrollY, props.scrollY)
75
+ return Object.assign({} as { gt: number }, getConfig().list.virtualYConfig || getConfig().list.scrollY, props.virtualYConfig || props.scrollY)
75
76
  })
76
77
 
77
78
  const computeStyles = computed(() => {
@@ -49,7 +49,6 @@ export default defineComponent({
49
49
  type: String as PropType<VxeNumberInputPropTypes.Size>,
50
50
  default: () => getConfig().numberInput.size || getConfig().size
51
51
  },
52
- multiple: Boolean as PropType<VxeNumberInputPropTypes.Multiple>,
53
52
 
54
53
  // number、integer、float
55
54
  min: {
@@ -89,6 +88,10 @@ export default defineComponent({
89
88
  type: Boolean as PropType<VxeNumberInputPropTypes.AutoFill>,
90
89
  default: () => getConfig().numberInput.autoFill
91
90
  },
91
+ editable: {
92
+ type: Boolean as PropType<VxeNumberInputPropTypes.Editable>,
93
+ default: true
94
+ },
92
95
 
93
96
  prefixIcon: String as PropType<VxeNumberInputPropTypes.PrefixIcon>,
94
97
  suffixIcon: String as PropType<VxeNumberInputPropTypes.SuffixIcon>,
@@ -214,9 +217,9 @@ export default defineComponent({
214
217
  })
215
218
 
216
219
  const computeInputReadonly = computed(() => {
217
- const { multiple } = props
220
+ const { editable } = props
218
221
  const formReadonly = computeFormReadonly.value
219
- return formReadonly || multiple
222
+ return formReadonly || !editable
220
223
  })
221
224
 
222
225
  const computeInpPlaceholder = computed(() => {
@@ -371,11 +374,14 @@ export default defineComponent({
371
374
  }
372
375
 
373
376
  const focusEvent = (evnt: Event & { type: 'focus' }) => {
374
- const { inputValue } = reactData
375
- reactData.inputValue = eqEmptyValue(inputValue) ? '' : `${XEUtils.toNumber(inputValue)}`
376
- reactData.isFocus = true
377
- reactData.isActivated = true
378
- triggerEvent(evnt)
377
+ const inputReadonly = computeInputReadonly.value
378
+ if (!inputReadonly) {
379
+ const { inputValue } = reactData
380
+ reactData.inputValue = eqEmptyValue(inputValue) ? '' : `${XEUtils.toNumber(inputValue)}`
381
+ reactData.isFocus = true
382
+ reactData.isActivated = true
383
+ triggerEvent(evnt)
384
+ }
379
385
  }
380
386
 
381
387
  const clickPrefixEvent = (evnt: Event) => {
@@ -572,20 +578,22 @@ export default defineComponent({
572
578
 
573
579
  const keydownEvent = (evnt: KeyboardEvent & { type: 'keydown' }) => {
574
580
  const { exponential, controls } = props
581
+ const inputReadonly = computeInputReadonly.value
575
582
  const isCtrlKey = evnt.ctrlKey
576
583
  const isShiftKey = evnt.shiftKey
577
584
  const isAltKey = evnt.altKey
585
+ const isMetaKey = evnt.metaKey
578
586
  const keyCode = evnt.keyCode
579
587
  const isEsc = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ESCAPE)
580
588
  const isUpArrow = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ARROW_UP)
581
589
  const isDwArrow = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ARROW_DOWN)
582
- if (!isCtrlKey && !isShiftKey && !isAltKey && (globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.SPACEBAR) || ((!exponential || keyCode !== 69) && (keyCode >= 65 && keyCode <= 90)) || (keyCode >= 186 && keyCode <= 188) || keyCode >= 191)) {
590
+ if (!isCtrlKey && !isShiftKey && !isAltKey && !isMetaKey && (globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.SPACEBAR) || ((!exponential || keyCode !== 69) && (keyCode >= 65 && keyCode <= 90)) || (keyCode >= 186 && keyCode <= 188) || keyCode >= 191)) {
583
591
  evnt.preventDefault()
584
592
  }
585
593
  if (isEsc) {
586
594
  afterCheckValue()
587
595
  } else if (isUpArrow || isDwArrow) {
588
- if (controls) {
596
+ if (controls && !inputReadonly) {
589
597
  numberKeydownEvent(evnt)
590
598
  }
591
599
  }
@@ -636,7 +644,8 @@ export default defineComponent({
636
644
  type: 'wheel';
637
645
  wheelDelta: number;
638
646
  }) => {
639
- if (props.controls) {
647
+ const inputReadonly = computeInputReadonly.value
648
+ if (props.controls && !inputReadonly) {
640
649
  if (reactData.isActivated) {
641
650
  evnt.stopPropagation()
642
651
  evnt.preventDefault()
@@ -661,8 +670,9 @@ export default defineComponent({
661
670
  const el = refElem.value
662
671
  const panelElem = refInputPanel.value
663
672
  const isDisabled = computeIsDisabled.value
673
+ const inputReadonly = computeInputReadonly.value
664
674
  const inpImmediate = computeInpImmediate.value
665
- if (!isDisabled && isActivated) {
675
+ if (!isDisabled && !inputReadonly && isActivated) {
666
676
  reactData.isActivated = getEventTargetNode(evnt, el).flag || getEventTargetNode(evnt, panelElem).flag
667
677
  if (!reactData.isActivated) {
668
678
  if (!inpImmediate) {
@@ -678,7 +688,8 @@ export default defineComponent({
678
688
  const handleGlobalKeydownEvent = (evnt: KeyboardEvent) => {
679
689
  const { clearable } = props
680
690
  const isDisabled = computeIsDisabled.value
681
- if (!isDisabled) {
691
+ const inputReadonly = computeInputReadonly.value
692
+ if (!isDisabled && !inputReadonly) {
682
693
  const isTab = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.TAB)
683
694
  const isDel = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.DELETE)
684
695
  let isActivated = reactData.isActivated
@@ -801,7 +812,8 @@ export default defineComponent({
801
812
 
802
813
  const renderExtraSuffixIcon = () => {
803
814
  const { controls } = props
804
- if (controls) {
815
+ const inputReadonly = computeInputReadonly.value
816
+ if (controls && !inputReadonly) {
805
817
  return renderNumberIcon()
806
818
  }
807
819
  return createCommentVNode()
@@ -815,9 +827,12 @@ export default defineComponent({
815
827
  dispatchEvent,
816
828
 
817
829
  focus () {
818
- const inputElem = refInputTarget.value
819
- reactData.isActivated = true
820
- inputElem.focus()
830
+ const inputReadonly = computeInputReadonly.value
831
+ if (!inputReadonly) {
832
+ const inputElem = refInputTarget.value
833
+ reactData.isActivated = true
834
+ inputElem.focus()
835
+ }
821
836
  return nextTick()
822
837
  },
823
838
  blur () {
@@ -860,7 +875,7 @@ export default defineComponent({
860
875
  class: ['vxe-number-input', `type--${type}`, className, {
861
876
  [`size--${vSize}`]: vSize,
862
877
  [`is--${align}`]: align,
863
- 'is--controls': controls,
878
+ 'is--controls': controls && !inputReadonly,
864
879
  'is--prefix': !!prefix,
865
880
  'is--suffix': !!suffix,
866
881
  'is--disabled': isDisabled,
@@ -6,7 +6,7 @@ import { getLastZIndex, nextZIndex, getFuncText } from '../../ui/src/utils'
6
6
  import { getSlotVNs } from '../../ui/src/vn'
7
7
  import VxeInputComponent from '../../input/src/input'
8
8
 
9
- import type { VxeSelectPropTypes, VxeSelectConstructor, SelectInternalData, SelectReactData, VxeSelectDefines, ValueOf, VxeSelectEmits, VxeComponentSlotType, VxeInputConstructor, SelectMethods, SelectPrivateRef, VxeSelectMethods, VxeOptgroupProps, VxeOptionProps, VxeDrawerConstructor, VxeDrawerMethods, VxeFormDefines, VxeFormConstructor, VxeFormPrivateMethods, VxeModalConstructor, VxeModalMethods } from '../../../types'
9
+ import type { VxeSelectPropTypes, VxeSelectConstructor, SelectInternalData, SelectReactData, VxeSelectDefines, ValueOf, VxeSelectEmits, VxeComponentSlotType, VxeInputConstructor, SelectMethods, SelectPrivateRef, VxeSelectMethods, VxeOptgroupProps, VxeOptionProps, VxeDrawerConstructor, VxeDrawerMethods, VxeFormDefines, VxeFormConstructor, VxeFormPrivateMethods, VxeModalConstructor, VxeModalMethods, VxeInputEvents } from '../../../types'
10
10
  import type { VxeTableConstructor, VxeTablePrivateMethods } from '../../../types/components/table'
11
11
 
12
12
  function isOptionVisible (option: any) {
@@ -62,12 +62,15 @@ export default defineComponent({
62
62
  filterable: Boolean as PropType<VxeSelectPropTypes.Filterable>,
63
63
  filterMethod: Function as PropType<VxeSelectPropTypes.FilterMethod>,
64
64
  remote: Boolean as PropType<VxeSelectPropTypes.Remote>,
65
+ // 已废弃,被 remote-config.queryMethod 替换
65
66
  remoteMethod: Function as PropType<VxeSelectPropTypes.RemoteMethod>,
67
+ remoteConfig: Object as PropType<VxeSelectPropTypes.RemoteConfig>,
66
68
  emptyText: String as PropType<VxeSelectPropTypes.EmptyText>,
67
69
  transfer: {
68
70
  type: Boolean as PropType<VxeSelectPropTypes.Transfer>,
69
71
  default: null
70
72
  },
73
+ virtualYConfig: Object as PropType<VxeSelectPropTypes.VirtualYConfig>,
71
74
  scrollY: Object as PropType<VxeSelectPropTypes.ScrollY>,
72
75
 
73
76
  // 已废弃,被 option-config.keyField 替换
@@ -254,7 +257,11 @@ export default defineComponent({
254
257
  })
255
258
 
256
259
  const computeSYOpts = computed(() => {
257
- return Object.assign({} as { gt: number }, getConfig().select.scrollY, props.scrollY)
260
+ return Object.assign({} as { gt: number }, getConfig().select.virtualYConfig || getConfig().select.scrollY, props.virtualYConfig || props.scrollY)
261
+ })
262
+
263
+ const computeRemoteOpts = computed(() => {
264
+ return Object.assign({}, getConfig().select.remoteConfig, props.remoteConfig)
258
265
  })
259
266
 
260
267
  const computeOptionOpts = computed(() => {
@@ -367,7 +374,7 @@ export default defineComponent({
367
374
  * 处理选项,当选项被动态显示/隐藏时可能会用到
368
375
  */
369
376
  const handleOption = () => {
370
- const { filterable, filterMethod } = props
377
+ const { modelValue, filterable, filterMethod } = props
371
378
  const { searchValue } = reactData
372
379
  const { fullData, optFullValMaps } = internalData
373
380
  const labelField = computeLabelField.value
@@ -375,7 +382,7 @@ export default defineComponent({
375
382
  const searchStr = `${searchValue || ''}`.toLowerCase()
376
383
  let avList: any[] = []
377
384
  if (filterable && filterMethod) {
378
- avList = fullData.filter(option => isOptionVisible(option) && filterMethod({ group: null, option, searchValue: searchStr }))
385
+ avList = fullData.filter(option => isOptionVisible(option) && filterMethod({ $select: $xeSelect, group: null, option, searchValue, value: modelValue }))
379
386
  } else if (filterable) {
380
387
  avList = fullData.filter(option => isOptionVisible(option) && (!searchStr || `${option[labelField]}`.toLowerCase().indexOf(searchStr) > -1))
381
388
  } else {
@@ -475,9 +482,10 @@ export default defineComponent({
475
482
  }
476
483
 
477
484
  const showOptionPanel = () => {
478
- const { loading, filterable } = props
479
- const { hpTimeout } = internalData
485
+ const { loading, filterable, remote } = props
486
+ const { fullData, hpTimeout } = internalData
480
487
  const isDisabled = computeIsDisabled.value
488
+ const remoteOpts = computeRemoteOpts.value
481
489
  if (!loading && !isDisabled) {
482
490
  if (hpTimeout) {
483
491
  clearTimeout(hpTimeout)
@@ -489,8 +497,12 @@ export default defineComponent({
489
497
  reactData.isActivated = true
490
498
  reactData.isAniVisible = true
491
499
  if (filterable) {
492
- handleOption()
493
- updateYData()
500
+ if (remote && remoteOpts.enabled && remoteOpts.autoLoad && !fullData.length) {
501
+ triggerSearchEvent()
502
+ } else {
503
+ handleOption()
504
+ updateYData()
505
+ }
494
506
  }
495
507
  setTimeout(() => {
496
508
  reactData.visiblePanel = true
@@ -533,8 +545,9 @@ export default defineComponent({
533
545
  dispatchEvent('clear', { value: selectValue }, evnt)
534
546
  }
535
547
 
536
- const clearEvent = (params: any, evnt: Event) => {
537
- clearValueEvent(evnt, null)
548
+ const clearEvent: VxeInputEvents.Clear = (params) => {
549
+ const { $event } = params
550
+ clearValueEvent($event, null)
538
551
  hideOptionPanel()
539
552
  }
540
553
 
@@ -767,12 +780,14 @@ export default defineComponent({
767
780
  }
768
781
 
769
782
  const handleSearchEvent = () => {
770
- const { remote, remoteMethod } = props
783
+ const { modelValue, remote, remoteMethod } = props
771
784
  const { searchValue } = reactData
772
- if (remote && remoteMethod) {
785
+ const remoteOpts = computeRemoteOpts.value
786
+ const queryMethod = remoteOpts.queryMethod || remoteMethod
787
+ if (remote && queryMethod && remoteOpts.enabled) {
773
788
  reactData.searchLoading = true
774
789
  Promise.resolve(
775
- remoteMethod({ searchValue })
790
+ queryMethod({ $select: $xeSelect, searchValue, value: modelValue })
776
791
  ).then(() => nextTick())
777
792
  .catch(() => nextTick())
778
793
  .finally(() => {
@@ -1278,6 +1293,7 @@ export default defineComponent({
1278
1293
  type: 'text',
1279
1294
  prefixIcon: props.prefixIcon,
1280
1295
  suffixIcon: loading ? getIcon().SELECT_LOADED : (visiblePanel ? getIcon().SELECT_OPEN : getIcon().SELECT_CLOSE),
1296
+ autoFocus: false,
1281
1297
  modelValue: selectLabel,
1282
1298
  onClear: clearEvent,
1283
1299
  onClick: clickEvent,
@@ -181,7 +181,7 @@ setConfig({
181
181
  listView: {},
182
182
  list: {
183
183
  // size: null,
184
- scrollY: {
184
+ virtualYConfig: {
185
185
  enabled: true,
186
186
  gt: 100
187
187
  // oSize: 0
@@ -267,7 +267,11 @@ setConfig({
267
267
  row: {},
268
268
  select: {
269
269
  multiCharOverflow: 8,
270
- scrollY: {
270
+ remoteConfig: {
271
+ enabled: true,
272
+ autoLoad: true
273
+ },
274
+ virtualYConfig: {
271
275
  enabled: true,
272
276
  gt: 100,
273
277
  oSize: 2
@@ -288,12 +292,11 @@ setConfig({
288
292
  rowConfig: {
289
293
  isHover: true
290
294
  },
291
- scrollX: {
295
+ virtualXConfig: {
292
296
  enabled: true,
293
297
  gt: 0
294
298
  },
295
- scrollY: {
296
- mode: 'wheel',
299
+ virtualYConfig: {
297
300
  enabled: true,
298
301
  gt: 0
299
302
  }
@@ -42,6 +42,7 @@ export namespace VxeInputPropTypes {
42
42
  value: string
43
43
  }) => number
44
44
  export type AutoComplete = string
45
+ export type AutoFocus = boolean
45
46
  export type Align = VxeComponentAlignType
46
47
  export type Form = string
47
48
  export type Min = string | number
@@ -100,6 +101,7 @@ export interface VxeInputProps {
100
101
  */
101
102
  countMethod?: VxeInputPropTypes.CountMethod
102
103
  autoComplete?: VxeInputPropTypes.AutoComplete
104
+ autoFocus?: VxeInputPropTypes.AutoFocus
103
105
  align?: VxeInputPropTypes.Align
104
106
  form?: VxeInputPropTypes.Form
105
107
 
@@ -32,6 +32,30 @@ export namespace VxeListPropTypes {
32
32
  export type AutoResize = boolean
33
33
  export type ClassName = string | ((params: { $list: VxeListConstructor }) => string)
34
34
  export type SyncResize = boolean | string | number
35
+
36
+ export interface VirtualYConfig {
37
+ /**
38
+ * 指定大于指定行时自动启动纵向虚拟滚动,如果为 0 则总是启用,如果为 -1 则关闭
39
+ */
40
+ gt?: number
41
+ /**
42
+ * 指定每次渲染的数据偏移量,偏移量越大渲染次数就越少,但每次渲染耗时就越久
43
+ */
44
+ oSize?: number
45
+ /**
46
+ * 指定列表项的 className
47
+ */
48
+ sItem?: string
49
+ /**
50
+ * 是否启用
51
+ */
52
+ enabled?: boolean
53
+ }
54
+
55
+ /**
56
+ * 已被 VirtualYConfig 替换
57
+ * @deprecated
58
+ */
35
59
  export interface ScrollY {
36
60
  /**
37
61
  * 指定大于指定行时自动启动纵向虚拟滚动,如果为 0 则总是启用,如果为 -1 则关闭
@@ -61,6 +85,12 @@ export interface VxeListProps<D = any> {
61
85
  autoResize?: VxeListPropTypes.AutoResize
62
86
  syncResize?: VxeListPropTypes.SyncResize
63
87
  className?: VxeListPropTypes.ClassName
88
+ virtualYConfig?: VxeListPropTypes.VirtualYConfig
89
+
90
+ /**
91
+ * 已废弃,被 virtual-y-config 替换
92
+ * @deprecated
93
+ */
64
94
  scrollY?: VxeListPropTypes.ScrollY
65
95
  }
66
96
 
@@ -45,6 +45,7 @@ export namespace VxeNumberInputPropTypes {
45
45
  export type Controls = boolean
46
46
  export type Digits = string | number
47
47
  export type AutoFill = boolean
48
+ export type Editable = boolean
48
49
  export type PrefixIcon = string
49
50
  export type SuffixIcon = string
50
51
 
@@ -93,6 +94,8 @@ export interface VxeNumberInputProps {
93
94
  digits?: VxeNumberInputPropTypes.Digits
94
95
  autoFill?: VxeNumberInputPropTypes.AutoFill
95
96
 
97
+ editable?: VxeNumberInputPropTypes.Editable
98
+
96
99
  prefixIcon?: VxeNumberInputPropTypes.PrefixIcon
97
100
  suffixIcon?: VxeNumberInputPropTypes.SuffixIcon
98
101