vxe-pc-ui 4.4.10 → 4.4.12

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/list/src/list.js +2 -1
  3. package/es/number-input/src/number-input.js +31 -17
  4. package/es/pager/src/pager.js +32 -20
  5. package/es/select/src/select.js +24 -10
  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 +140 -48
  13. package/lib/index.umd.min.js +1 -1
  14. package/lib/list/src/list.js +2 -1
  15. package/lib/list/src/list.min.js +1 -1
  16. package/lib/number-input/src/number-input.js +33 -19
  17. package/lib/number-input/src/number-input.min.js +1 -1
  18. package/lib/pager/src/pager.js +66 -13
  19. package/lib/pager/src/pager.min.js +1 -1
  20. package/lib/select/src/select.js +29 -8
  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 +1 -1
  29. package/packages/list/src/list.ts +2 -1
  30. package/packages/number-input/src/number-input.ts +31 -17
  31. package/packages/pager/src/pager.ts +32 -20
  32. package/packages/select/src/select.ts +24 -10
  33. package/packages/ui/index.ts +8 -5
  34. package/types/components/list.d.ts +30 -0
  35. package/types/components/number-input.d.ts +3 -0
  36. package/types/components/pager.d.ts +23 -0
  37. package/types/components/select.d.ts +68 -3
  38. package/types/components/table.d.ts +8 -0
  39. /package/es/icon/{iconfont.1741767880820.ttf → iconfont.1741852097093.ttf} +0 -0
  40. /package/es/icon/{iconfont.1741767880820.woff → iconfont.1741852097093.woff} +0 -0
  41. /package/es/icon/{iconfont.1741767880820.woff2 → iconfont.1741852097093.woff2} +0 -0
  42. /package/es/{iconfont.1741767880820.ttf → iconfont.1741852097093.ttf} +0 -0
  43. /package/es/{iconfont.1741767880820.woff → iconfont.1741852097093.woff} +0 -0
  44. /package/es/{iconfont.1741767880820.woff2 → iconfont.1741852097093.woff2} +0 -0
  45. /package/lib/icon/style/{iconfont.1741767880820.ttf → iconfont.1741852097093.ttf} +0 -0
  46. /package/lib/icon/style/{iconfont.1741767880820.woff → iconfont.1741852097093.woff} +0 -0
  47. /package/lib/icon/style/{iconfont.1741767880820.woff2 → iconfont.1741852097093.woff2} +0 -0
  48. /package/lib/{iconfont.1741767880820.ttf → iconfont.1741852097093.ttf} +0 -0
  49. /package/lib/{iconfont.1741767880820.woff → iconfont.1741852097093.woff} +0 -0
  50. /package/lib/{iconfont.1741767880820.woff2 → iconfont.1741852097093.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.10";
29
+ const version = exports.version = "4.4.12";
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.10";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.12";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.10"}`;
8
+ const version = `ui v${"4.4.12"}`;
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.10",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.12",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.10",
3
+ "version": "4.4.12",
4
4
  "description": "A vue based PC component library",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -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,6 +578,7 @@ 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,7 +592,7 @@ export default defineComponent({
585
592
  if (isEsc) {
586
593
  afterCheckValue()
587
594
  } else if (isUpArrow || isDwArrow) {
588
- if (controls) {
595
+ if (controls && !inputReadonly) {
589
596
  numberKeydownEvent(evnt)
590
597
  }
591
598
  }
@@ -636,7 +643,8 @@ export default defineComponent({
636
643
  type: 'wheel';
637
644
  wheelDelta: number;
638
645
  }) => {
639
- if (props.controls) {
646
+ const inputReadonly = computeInputReadonly.value
647
+ if (props.controls && !inputReadonly) {
640
648
  if (reactData.isActivated) {
641
649
  evnt.stopPropagation()
642
650
  evnt.preventDefault()
@@ -661,8 +669,9 @@ export default defineComponent({
661
669
  const el = refElem.value
662
670
  const panelElem = refInputPanel.value
663
671
  const isDisabled = computeIsDisabled.value
672
+ const inputReadonly = computeInputReadonly.value
664
673
  const inpImmediate = computeInpImmediate.value
665
- if (!isDisabled && isActivated) {
674
+ if (!isDisabled && !inputReadonly && isActivated) {
666
675
  reactData.isActivated = getEventTargetNode(evnt, el).flag || getEventTargetNode(evnt, panelElem).flag
667
676
  if (!reactData.isActivated) {
668
677
  if (!inpImmediate) {
@@ -678,7 +687,8 @@ export default defineComponent({
678
687
  const handleGlobalKeydownEvent = (evnt: KeyboardEvent) => {
679
688
  const { clearable } = props
680
689
  const isDisabled = computeIsDisabled.value
681
- if (!isDisabled) {
690
+ const inputReadonly = computeInputReadonly.value
691
+ if (!isDisabled && !inputReadonly) {
682
692
  const isTab = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.TAB)
683
693
  const isDel = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.DELETE)
684
694
  let isActivated = reactData.isActivated
@@ -801,7 +811,8 @@ export default defineComponent({
801
811
 
802
812
  const renderExtraSuffixIcon = () => {
803
813
  const { controls } = props
804
- if (controls) {
814
+ const inputReadonly = computeInputReadonly.value
815
+ if (controls && !inputReadonly) {
805
816
  return renderNumberIcon()
806
817
  }
807
818
  return createCommentVNode()
@@ -815,9 +826,12 @@ export default defineComponent({
815
826
  dispatchEvent,
816
827
 
817
828
  focus () {
818
- const inputElem = refInputTarget.value
819
- reactData.isActivated = true
820
- inputElem.focus()
829
+ const inputReadonly = computeInputReadonly.value
830
+ if (!inputReadonly) {
831
+ const inputElem = refInputTarget.value
832
+ reactData.isActivated = true
833
+ inputElem.focus()
834
+ }
821
835
  return nextTick()
822
836
  },
823
837
  blur () {
@@ -860,7 +874,7 @@ export default defineComponent({
860
874
  class: ['vxe-number-input', `type--${type}`, className, {
861
875
  [`size--${vSize}`]: vSize,
862
876
  [`is--${align}`]: align,
863
- 'is--controls': controls,
877
+ 'is--controls': controls && !inputReadonly,
864
878
  'is--prefix': !!prefix,
865
879
  'is--suffix': !!suffix,
866
880
  'is--disabled': isDisabled,
@@ -252,12 +252,13 @@ export default defineComponent({
252
252
 
253
253
  // 第一页
254
254
  const renderHomePage = () => {
255
- const { currentPage } = props
255
+ const { currentPage, total } = props
256
256
  const homeSlot = slots.home
257
+ const pageCount = computePageCount.value
257
258
  if (homeSlot) {
258
259
  return h('span', {
259
260
  class: 'vxe-pager--custom-home-btn'
260
- }, homeSlot({ currentPage }))
261
+ }, homeSlot({ $pager: $xePager, total, currentPage, pageCount }))
261
262
  }
262
263
  return h('button', {
263
264
  class: ['vxe-pager--home-btn', {
@@ -275,12 +276,13 @@ export default defineComponent({
275
276
 
276
277
  // 上一页
277
278
  const renderPrevPage = () => {
278
- const { currentPage } = props
279
+ const { currentPage, total } = props
279
280
  const prevPageSlot = slots.prevPage || slots['prev-page']
281
+ const pageCount = computePageCount.value
280
282
  if (prevPageSlot) {
281
283
  return h('span', {
282
284
  class: 'vxe-pager--custom-prev-btn'
283
- }, prevPageSlot({ currentPage }))
285
+ }, prevPageSlot({ $pager: $xePager, total, currentPage, pageCount }))
284
286
  }
285
287
  return h('button', {
286
288
  class: ['vxe-pager--prev-btn', {
@@ -298,12 +300,13 @@ export default defineComponent({
298
300
 
299
301
  // 向上翻页
300
302
  const renderPrevJump = (tagName?: string) => {
301
- const { currentPage } = props
303
+ const { currentPage, total } = props
302
304
  const prevJumpSlot = slots.prevJump || slots['prev-jump']
305
+ const pageCount = computePageCount.value
303
306
  if (prevJumpSlot) {
304
307
  return h('span', {
305
308
  class: 'vxe-pager--custom-jump-prev'
306
- }, prevJumpSlot({ currentPage }))
309
+ }, prevJumpSlot({ $pager: $xePager, total, currentPage, pageCount }))
307
310
  }
308
311
  return h(tagName || 'button', {
309
312
  class: ['vxe-pager--jump-prev', {
@@ -327,13 +330,13 @@ export default defineComponent({
327
330
 
328
331
  // 向下翻页
329
332
  const renderNextJump = (tagName?: string) => {
330
- const { currentPage } = props
333
+ const { currentPage, total } = props
331
334
  const nextJumpSlot = slots.nextJump || slots['next-jump']
332
335
  const pageCount = computePageCount.value
333
336
  if (nextJumpSlot) {
334
337
  return h('span', {
335
338
  class: 'vxe-pager--custom-jump-next'
336
- }, nextJumpSlot({ currentPage }))
339
+ }, nextJumpSlot({ $pager: $xePager, total, currentPage, pageCount }))
337
340
  }
338
341
  return h(tagName || 'button', {
339
342
  class: ['vxe-pager--jump-next', {
@@ -357,13 +360,13 @@ export default defineComponent({
357
360
 
358
361
  // 下一页
359
362
  const renderNextPage = () => {
360
- const { currentPage } = props
363
+ const { currentPage, total } = props
361
364
  const nextPageSlot = slots.nextPage || slots['next-page']
362
365
  const pageCount = computePageCount.value
363
366
  if (nextPageSlot) {
364
367
  return h('span', {
365
368
  class: 'vxe-pager--custom-next-btn'
366
- }, nextPageSlot({ currentPage }))
369
+ }, nextPageSlot({ $pager: $xePager, total, currentPage, pageCount }))
367
370
  }
368
371
  return h('button', {
369
372
  class: ['vxe-pager--next-btn', {
@@ -381,13 +384,13 @@ export default defineComponent({
381
384
 
382
385
  // 最后一页
383
386
  const renderEndPage = () => {
384
- const { currentPage } = props
387
+ const { currentPage, total } = props
385
388
  const endSlot = slots.end
386
389
  const pageCount = computePageCount.value
387
390
  if (endSlot) {
388
391
  return h('span', {
389
392
  class: 'vxe-pager--custom-end-btn'
390
- }, endSlot({ currentPage, pageCount }))
393
+ }, endSlot({ $pager: $xePager, total, currentPage, pageCount }))
391
394
  }
392
395
  return h('button', {
393
396
  class: ['vxe-pager--end-btn', {
@@ -405,7 +408,7 @@ export default defineComponent({
405
408
 
406
409
  // 页数
407
410
  const renderNumber = (showJump?: boolean) => {
408
- const { currentPage, pagerCount } = props
411
+ const { currentPage, total, pagerCount } = props
409
412
  const numberSlot = showJump ? (slots.numberJump || slots['number-jump']) : slots.number
410
413
  const nums = []
411
414
  const pageCount = computePageCount.value
@@ -466,7 +469,7 @@ export default defineComponent({
466
469
  if (numberSlot) {
467
470
  return h('span', {
468
471
  class: 'vxe-pager--custom-btn-wrapper'
469
- }, numberSlot({ numList: restList, currentPage, pageCount }))
472
+ }, numberSlot({ $pager: $xePager, total, numList: restList, currentPage, pageCount }))
470
473
  }
471
474
  return h('span', {
472
475
  class: 'vxe-pager--btn-wrapper'
@@ -480,13 +483,14 @@ export default defineComponent({
480
483
 
481
484
  // sizes
482
485
  const renderSizes = () => {
483
- const { pageSize, pageSizePlacement, transfer } = props
486
+ const { total, currentPage, pageSize, pageSizePlacement, transfer } = props
484
487
  const sizesSlot = slots.sizes
485
488
  const sizeList = computeSizeList.value
489
+ const pageCount = computePageCount.value
486
490
  if (sizesSlot) {
487
491
  return h('span', {
488
492
  class: 'vxe-pager--custom-sizes'
489
- }, sizesSlot({ pageSize, options: sizeList }))
493
+ }, sizesSlot({ $pager: $xePager, total, currentPage, pageCount, pageSize, options: sizeList }))
490
494
  }
491
495
  return h(VxeSelectComponent, {
492
496
  class: 'vxe-pager--sizes',
@@ -500,13 +504,14 @@ export default defineComponent({
500
504
 
501
505
  // Jump
502
506
  const renderJump = (isFull?: boolean) => {
507
+ const { total } = props
503
508
  const { inpCurrPage } = reactData
504
509
  const jumpSlot = isFull ? (slots.fullJump || slots['full-jump']) : slots.jump
505
510
  const pageCount = computePageCount.value
506
511
  if (jumpSlot) {
507
512
  return h('span', {
508
513
  class: 'vxe-pager--custom-jump'
509
- }, jumpSlot({ currentPage: inpCurrPage, pageCount }))
514
+ }, jumpSlot({ $pager: $xePager, total, currentPage: inpCurrPage, pageCount }))
510
515
  }
511
516
  return h('span', {
512
517
  class: 'vxe-pager--jump'
@@ -546,13 +551,13 @@ export default defineComponent({
546
551
 
547
552
  // PageCount
548
553
  const renderPageCount = () => {
549
- const { currentPage } = props
554
+ const { currentPage, total } = props
550
555
  const pageCountSlot = slots.pageCount || slots['page-count']
551
556
  const pageCount = computePageCount.value
552
557
  if (pageCountSlot) {
553
558
  return h('span', {
554
559
  class: 'vxe-pager--custom-count'
555
- }, pageCountSlot({ currentPage, pageCount }))
560
+ }, pageCountSlot({ $pager: $xePager, total, currentPage, pageCount }))
556
561
  }
557
562
  return h('span', {
558
563
  class: 'vxe-pager--count'
@@ -568,10 +573,11 @@ export default defineComponent({
568
573
  const renderTotal = () => {
569
574
  const { currentPage, total } = props
570
575
  const totalSlot = slots.total
576
+ const pageCount = computePageCount.value
571
577
  if (totalSlot) {
572
578
  return h('span', {
573
579
  class: 'vxe-pager--custom-total'
574
- }, totalSlot({ total, currentPage }))
580
+ }, totalSlot({ $pager: $xePager, total, currentPage, pageCount }))
575
581
  }
576
582
  return h('span', {
577
583
  class: 'vxe-pager--total'
@@ -607,6 +613,12 @@ export default defineComponent({
607
613
  nextJump () {
608
614
  handleNextJump()
609
615
  return nextTick()
616
+ },
617
+ jumpPage (currentPage) {
618
+ const current = XEUtils.toNumber(currentPage) || 1
619
+ reactData.inpCurrPage = current
620
+ changeCurrentPage(current)
621
+ return nextTick()
610
622
  }
611
623
  }
612
624
 
@@ -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: searchStr, 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
+ handleSearchEvent()
502
+ } else {
503
+ handleOption()
504
+ updateYData()
505
+ }
494
506
  }
495
507
  setTimeout(() => {
496
508
  reactData.visiblePanel = true
@@ -767,12 +779,14 @@ export default defineComponent({
767
779
  }
768
780
 
769
781
  const handleSearchEvent = () => {
770
- const { remote, remoteMethod } = props
782
+ const { modelValue, remote, remoteMethod } = props
771
783
  const { searchValue } = reactData
772
- if (remote && remoteMethod) {
784
+ const remoteOpts = computeRemoteOpts.value
785
+ const queryMethod = remoteOpts.queryMethod || remoteMethod
786
+ if (remote && queryMethod && remoteOpts.enabled) {
773
787
  reactData.searchLoading = true
774
788
  Promise.resolve(
775
- remoteMethod({ searchValue })
789
+ queryMethod({ $select: $xeSelect, searchValue, value: modelValue })
776
790
  ).then(() => nextTick())
777
791
  .catch(() => nextTick())
778
792
  .finally(() => {
@@ -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
  }
@@ -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