bkui-vue 2.0.1-beta.18 → 2.0.1-beta.19

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.
package/lib/index.js CHANGED
@@ -4,5 +4,5 @@ export { default } from './preset';
4
4
  export * from './config-provider';
5
5
  export * from './directives';
6
6
  export * as plugins from './plugins';
7
- export const version = "2.0.1-beta.18";
7
+ export const version = "2.0.1-beta.19";
8
8
  window.__bkui_vue_version__ = version;
@@ -39,6 +39,9 @@ declare const BkSelect: {
39
39
  } & {
40
40
  default: number;
41
41
  };
42
+ minHeight: import("vue-types").VueTypeValidableDef<number> & {
43
+ default: number;
44
+ };
42
45
  showAll: import("vue-types").VueTypeValidableDef<boolean> & {
43
46
  default: boolean;
44
47
  } & {
@@ -531,7 +534,6 @@ declare const BkSelect: {
531
534
  allowCreate: boolean;
532
535
  collapseTags: boolean;
533
536
  }>>;
534
- virtualRenderRef: import("vue").Ref<any>;
535
537
  popoverRef: import("vue").Ref<any>;
536
538
  searchLoading: import("vue").Ref<boolean>;
537
539
  isOptionsEmpty: import("vue").ComputedRef<boolean>;
@@ -697,13 +699,15 @@ declare const BkSelect: {
697
699
  handleDeleteTag: (val: string) => void;
698
700
  handleInputChange: (value: any) => void;
699
701
  handleSelectedAllOptionMouseEnter: () => void;
700
- handlePopoverShow: () => void;
701
702
  localLoadingText: import("vue").ComputedRef<string>;
702
703
  localPlaceholder: import("vue").ComputedRef<string>;
703
704
  localSearchPlaceholder: import("vue").ComputedRef<string>;
704
705
  localSelectAllText: import("vue").ComputedRef<string>;
705
706
  resolveClassName: (cls: string) => string;
706
707
  handleCreateCustomOption: (val: string | number, e: KeyboardEvent) => void;
708
+ virtualLineHeight: import("vue").Ref<number>;
709
+ isEnableVirtualRender: import("vue").ComputedRef<boolean>;
710
+ preloadItemCount: import("vue").ComputedRef<number>;
707
711
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("blur" | "change" | "focus" | "select" | "toggle" | "clear" | "update:modelValue" | "scroll-end" | "tag-remove" | "deselect" | "search-change")[], import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
708
712
  modelValue: import("vue-types").VueTypeValidableDef<any>;
709
713
  multiple: import("vue-types").VueTypeValidableDef<boolean> & {
@@ -742,6 +746,9 @@ declare const BkSelect: {
742
746
  } & {
743
747
  default: number;
744
748
  };
749
+ minHeight: import("vue-types").VueTypeValidableDef<number> & {
750
+ default: number;
751
+ };
745
752
  showAll: import("vue-types").VueTypeValidableDef<boolean> & {
746
753
  default: boolean;
747
754
  } & {
@@ -1042,6 +1049,7 @@ declare const BkSelect: {
1042
1049
  scrollHeight: number;
1043
1050
  clearable: boolean;
1044
1051
  withValidate: boolean;
1052
+ minHeight: number;
1045
1053
  noDataText: string;
1046
1054
  showSelectedIcon: boolean;
1047
1055
  highlightKeyword: boolean;
@@ -1114,6 +1122,9 @@ declare const BkSelect: {
1114
1122
  } & {
1115
1123
  default: number;
1116
1124
  };
1125
+ minHeight: import("vue-types").VueTypeValidableDef<number> & {
1126
+ default: number;
1127
+ };
1117
1128
  showAll: import("vue-types").VueTypeValidableDef<boolean> & {
1118
1129
  default: boolean;
1119
1130
  } & {
@@ -1606,7 +1617,6 @@ declare const BkSelect: {
1606
1617
  allowCreate: boolean;
1607
1618
  collapseTags: boolean;
1608
1619
  }>>;
1609
- virtualRenderRef: import("vue").Ref<any>;
1610
1620
  popoverRef: import("vue").Ref<any>;
1611
1621
  searchLoading: import("vue").Ref<boolean>;
1612
1622
  isOptionsEmpty: import("vue").ComputedRef<boolean>;
@@ -1772,13 +1782,15 @@ declare const BkSelect: {
1772
1782
  handleDeleteTag: (val: string) => void;
1773
1783
  handleInputChange: (value: any) => void;
1774
1784
  handleSelectedAllOptionMouseEnter: () => void;
1775
- handlePopoverShow: () => void;
1776
1785
  localLoadingText: import("vue").ComputedRef<string>;
1777
1786
  localPlaceholder: import("vue").ComputedRef<string>;
1778
1787
  localSearchPlaceholder: import("vue").ComputedRef<string>;
1779
1788
  localSelectAllText: import("vue").ComputedRef<string>;
1780
1789
  resolveClassName: (cls: string) => string;
1781
1790
  handleCreateCustomOption: (val: string | number, e: KeyboardEvent) => void;
1791
+ virtualLineHeight: import("vue").Ref<number>;
1792
+ isEnableVirtualRender: import("vue").ComputedRef<boolean>;
1793
+ preloadItemCount: import("vue").ComputedRef<number>;
1782
1794
  }, {}, {}, {}, {
1783
1795
  prefix: string;
1784
1796
  size: "default" | "small" | "large" | "huge";
@@ -1794,6 +1806,7 @@ declare const BkSelect: {
1794
1806
  scrollHeight: number;
1795
1807
  clearable: boolean;
1796
1808
  withValidate: boolean;
1809
+ minHeight: number;
1797
1810
  noDataText: string;
1798
1811
  showSelectedIcon: boolean;
1799
1812
  highlightKeyword: boolean;
@@ -1863,6 +1876,9 @@ declare const BkSelect: {
1863
1876
  } & {
1864
1877
  default: number;
1865
1878
  };
1879
+ minHeight: import("vue-types").VueTypeValidableDef<number> & {
1880
+ default: number;
1881
+ };
1866
1882
  showAll: import("vue-types").VueTypeValidableDef<boolean> & {
1867
1883
  default: boolean;
1868
1884
  } & {
@@ -2355,7 +2371,6 @@ declare const BkSelect: {
2355
2371
  allowCreate: boolean;
2356
2372
  collapseTags: boolean;
2357
2373
  }>>;
2358
- virtualRenderRef: import("vue").Ref<any>;
2359
2374
  popoverRef: import("vue").Ref<any>;
2360
2375
  searchLoading: import("vue").Ref<boolean>;
2361
2376
  isOptionsEmpty: import("vue").ComputedRef<boolean>;
@@ -2521,13 +2536,15 @@ declare const BkSelect: {
2521
2536
  handleDeleteTag: (val: string) => void;
2522
2537
  handleInputChange: (value: any) => void;
2523
2538
  handleSelectedAllOptionMouseEnter: () => void;
2524
- handlePopoverShow: () => void;
2525
2539
  localLoadingText: import("vue").ComputedRef<string>;
2526
2540
  localPlaceholder: import("vue").ComputedRef<string>;
2527
2541
  localSearchPlaceholder: import("vue").ComputedRef<string>;
2528
2542
  localSelectAllText: import("vue").ComputedRef<string>;
2529
2543
  resolveClassName: (cls: string) => string;
2530
2544
  handleCreateCustomOption: (val: string | number, e: KeyboardEvent) => void;
2545
+ virtualLineHeight: import("vue").Ref<number>;
2546
+ isEnableVirtualRender: import("vue").ComputedRef<boolean>;
2547
+ preloadItemCount: import("vue").ComputedRef<number>;
2531
2548
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("blur" | "change" | "focus" | "select" | "toggle" | "clear" | "update:modelValue" | "scroll-end" | "tag-remove" | "deselect" | "search-change")[], "blur" | "change" | "focus" | "select" | "toggle" | "clear" | "update:modelValue" | "scroll-end" | "tag-remove" | "deselect" | "search-change", {
2532
2549
  prefix: string;
2533
2550
  size: "default" | "small" | "large" | "huge";
@@ -2543,6 +2560,7 @@ declare const BkSelect: {
2543
2560
  scrollHeight: number;
2544
2561
  clearable: boolean;
2545
2562
  withValidate: boolean;
2563
+ minHeight: number;
2546
2564
  noDataText: string;
2547
2565
  showSelectedIcon: boolean;
2548
2566
  highlightKeyword: boolean;
@@ -2609,7 +2609,8 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2609
2609
  loading: shared_namespaceObject.PropTypes.bool.def(false),
2610
2610
  filterable: shared_namespaceObject.PropTypes.bool.def(true),
2611
2611
  remoteMethod: shared_namespaceObject.PropTypes.func,
2612
- scrollHeight: shared_namespaceObject.PropTypes.number.def(200),
2612
+ scrollHeight: shared_namespaceObject.PropTypes.number.def(204),
2613
+ minHeight: shared_namespaceObject.PropTypes.number,
2613
2614
  showAll: shared_namespaceObject.PropTypes.bool.def(false),
2614
2615
  allOptionId: shared_namespaceObject.PropTypes.oneOfType([shared_namespaceObject.PropTypes.number, shared_namespaceObject.PropTypes.string]),
2615
2616
  showSelectAll: shared_namespaceObject.PropTypes.bool.def(false),
@@ -2730,7 +2731,6 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2730
2731
  var contentRef = (0,external_vue_namespaceObject.ref)();
2731
2732
  var searchRef = (0,external_vue_namespaceObject.ref)();
2732
2733
  var selectTagInputRef = (0,external_vue_namespaceObject.ref)();
2733
- var virtualRenderRef = (0,external_vue_namespaceObject.ref)();
2734
2734
  var popoverRef = (0,external_vue_namespaceObject.ref)();
2735
2735
  var optionsMap = (0,external_vue_namespaceObject.ref)(new Map());
2736
2736
  var options = (0,external_vue_namespaceObject.computed)(function () {
@@ -2843,6 +2843,16 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2843
2843
  var virtualHeight = (0,external_vue_namespaceObject.computed)(function () {
2844
2844
  return scrollHeight.value - 12 - (isShowSelectAll.value ? 32 : 0);
2845
2845
  });
2846
+ var virtualLineHeight = (0,external_vue_namespaceObject.ref)(32);
2847
+ // 是否启用虚拟滚动(如果配置了启用,但是数据小于滚动高度则不开启)
2848
+ var isEnableVirtualRender = (0,external_vue_namespaceObject.computed)(function () {
2849
+ if (enableVirtualRender.value) return virtualList.value.length * virtualLineHeight.value > virtualHeight.value;
2850
+ return false;
2851
+ });
2852
+ // 预加载滚动数据
2853
+ var preloadItemCount = (0,external_vue_namespaceObject.computed)(function () {
2854
+ return Math.ceil(virtualHeight.value / virtualLineHeight.value);
2855
+ });
2846
2856
  // 当前空状态时显示文案
2847
2857
  var curContentText = (0,external_vue_namespaceObject.computed)(function () {
2848
2858
  if (searchLoading.value) {
@@ -2927,6 +2937,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2927
2937
  // 滚动到当前选中的options中
2928
2938
  var scrollActiveOptionIntoView = function scrollActiveOptionIntoView() {
2929
2939
  var _contentRef$value, _contentRef$value$que, _optionsDom$;
2940
+ if (isEnableVirtualRender.value) return;
2930
2941
  var optionsDom = (_contentRef$value = contentRef.value) === null || _contentRef$value === void 0 || (_contentRef$value$que = _contentRef$value.querySelectorAll) === null || _contentRef$value$que === void 0 ? void 0 : _contentRef$value$que.call(_contentRef$value, '.is-selected');
2931
2942
  optionsDom === null || optionsDom === void 0 || (_optionsDom$ = optionsDom[0]) === null || _optionsDom$ === void 0 || _optionsDom$.scrollIntoView({
2932
2943
  block: 'center'
@@ -3246,7 +3257,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3246
3257
  };
3247
3258
  // 处理键盘事件
3248
3259
  var handleDocumentKeydown = function handleDocumentKeydown(e) {
3249
- if (!isPopoverShow.value || enableVirtualRender.value) return;
3260
+ if (!isPopoverShow.value || isEnableVirtualRender.value) return;
3250
3261
  var availableOptions = options.value.filter(function (option) {
3251
3262
  return !option.disabled && option.visible;
3252
3263
  });
@@ -3304,13 +3315,6 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3304
3315
  hidePopover();
3305
3316
  handleBlur();
3306
3317
  };
3307
- var handlePopoverShow = function handlePopoverShow() {
3308
- setTimeout(function () {
3309
- var _virtualRenderRef$val, _virtualRenderRef$val2;
3310
- // 虚拟滚动首次未更新问题
3311
- enableVirtualRender.value && ((_virtualRenderRef$val = virtualRenderRef.value) === null || _virtualRenderRef$val === void 0 || (_virtualRenderRef$val2 = _virtualRenderRef$val.reset) === null || _virtualRenderRef$val2 === void 0 ? void 0 : _virtualRenderRef$val2.call(_virtualRenderRef$val));
3312
- });
3313
- };
3314
3318
  (0,external_vue_namespaceObject.provide)(selectKey, (0,external_vue_namespaceObject.reactive)({
3315
3319
  multiple: multiple,
3316
3320
  selected: selected,
@@ -3348,7 +3352,6 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3348
3352
  contentRef: contentRef,
3349
3353
  searchRef: searchRef,
3350
3354
  selectTagInputRef: selectTagInputRef,
3351
- virtualRenderRef: virtualRenderRef,
3352
3355
  popoverRef: popoverRef,
3353
3356
  searchLoading: searchLoading,
3354
3357
  isOptionsEmpty: isOptionsEmpty,
@@ -3385,13 +3388,15 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3385
3388
  handleDeleteTag: handleDeleteTag,
3386
3389
  handleInputChange: handleInputChange,
3387
3390
  handleSelectedAllOptionMouseEnter: handleSelectedAllOptionMouseEnter,
3388
- handlePopoverShow: handlePopoverShow,
3389
3391
  localLoadingText: localLoadingText,
3390
3392
  localPlaceholder: localPlaceholder,
3391
3393
  localSearchPlaceholder: localSearchPlaceholder,
3392
3394
  localSelectAllText: localSelectAllText,
3393
3395
  resolveClassName: resolveClassName,
3394
- handleCreateCustomOption: handleCreateCustomOption
3396
+ handleCreateCustomOption: handleCreateCustomOption,
3397
+ virtualLineHeight: virtualLineHeight,
3398
+ isEnableVirtualRender: isEnableVirtualRender,
3399
+ preloadItemCount: preloadItemCount
3395
3400
  };
3396
3401
  },
3397
3402
  render: function render() {
@@ -3457,6 +3462,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3457
3462
  "class": "select-all-icon"
3458
3463
  }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.t.all])])]);
3459
3464
  };
3465
+ // 默认trigger输入框渲染
3460
3466
  var renderTriggerInput = function renderTriggerInput() {
3461
3467
  var _this$$slots5;
3462
3468
  if (_this.multipleMode === 'tag') {
@@ -3516,6 +3522,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3516
3522
  }
3517
3523
  }));
3518
3524
  };
3525
+ // 渲染trigger
3519
3526
  var renderSelectTrigger = function renderSelectTrigger() {
3520
3527
  var _this$$slots7, _this$$slots7$trigger;
3521
3528
  return (0,external_vue_namespaceObject.createVNode)("div", {
@@ -3531,47 +3538,13 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3531
3538
  selected: _this.selected
3532
3539
  })) || renderTriggerInput()]);
3533
3540
  };
3534
- var renderSelectContent = function renderSelectContent() {
3535
- var _this$$slots12, _this$$slots12$defaul, _this$$slots13, _this$$slots14;
3536
- return (0,external_vue_namespaceObject.createVNode)("div", {
3537
- "ref": "contentRef",
3538
- "class": _this.resolveClassName('select-content-wrapper')
3539
- }, [renderAll(), _this.filterable && !_this.inputSearch && (0,external_vue_namespaceObject.createVNode)("div", {
3540
- "class": _this.resolveClassName('select-search-wrapper')
3541
- }, [(0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.Search, {
3542
- "width": 16,
3543
- "height": 16,
3544
- "class": "icon-search"
3545
- }, null), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("input", {
3546
- "ref": "searchRef",
3547
- "class": _this.resolveClassName('select-search-input'),
3548
- "onUpdate:modelValue": function onUpdateModelValue($event) {
3549
- return _this.searchValue = $event;
3550
- },
3551
- "placeholder": _this.localSearchPlaceholder
3552
- }, null), [[external_vue_namespaceObject.vModelText, _this.searchValue]])]), !_this.isShowSelectContent && (0,external_vue_namespaceObject.createVNode)("div", {
3553
- "class": _this.resolveClassName('select-empty')
3554
- }, [_this.searchLoading && (0,external_vue_namespaceObject.createVNode)(loading_namespaceObject["default"], {
3555
- "class": "mr5",
3556
- "loading": true,
3557
- "mode": "spin",
3558
- "size": "mini",
3559
- "theme": "primary"
3560
- }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.curContentText])]), (0,external_vue_namespaceObject.createVNode)("div", {
3561
- "class": _this.resolveClassName('select-content')
3562
- }, [(0,external_vue_namespaceObject.createVNode)("div", {
3563
- "style": {
3564
- maxHeight: "".concat(_this.scrollHeight, "px")
3565
- },
3566
- "class": _this.enableVirtualRender ? '' : _this.resolveClassName('select-dropdown'),
3567
- "onScroll": _this.handleScroll
3568
- }, [(0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("ul", {
3569
- "class": _this.resolveClassName('select-options')
3570
- }, [renderSelectAll(), _this.enableVirtualRender ? (0,external_vue_namespaceObject.createVNode)(virtual_render_namespaceObject["default"], {
3571
- "ref": "virtualRenderRef",
3541
+ // 渲染列表模式
3542
+ var renderList = function renderList() {
3543
+ return _this.isEnableVirtualRender ? (0,external_vue_namespaceObject.createVNode)(virtual_render_namespaceObject["default"], {
3572
3544
  "height": _this.virtualHeight,
3573
- "lineHeight": 32,
3574
- "list": _this.virtualList
3545
+ "lineHeight": _this.virtualLineHeight,
3546
+ "list": _this.virtualList,
3547
+ "preloadItemCount": _this.preloadItemCount
3575
3548
  }, {
3576
3549
  "default": function _default(_ref3) {
3577
3550
  var _this$$slots8, _this$$slots9;
@@ -3605,7 +3578,47 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3605
3578
  });
3606
3579
  }
3607
3580
  } : null);
3608
- }), (_this$$slots12 = _this.$slots) === null || _this$$slots12 === void 0 || (_this$$slots12$defaul = _this$$slots12["default"]) === null || _this$$slots12$defaul === void 0 ? void 0 : _this$$slots12$defaul.call(_this$$slots12), _this.scrollLoading && (0,external_vue_namespaceObject.createVNode)("li", {
3581
+ });
3582
+ };
3583
+ // 渲染内容
3584
+ var renderSelectContent = function renderSelectContent() {
3585
+ var _this$$slots12, _this$$slots12$defaul, _this$$slots13, _this$$slots14;
3586
+ return (0,external_vue_namespaceObject.createVNode)("div", {
3587
+ "ref": "contentRef",
3588
+ "class": _this.resolveClassName('select-content-wrapper')
3589
+ }, [renderAll(), _this.filterable && !_this.inputSearch && (0,external_vue_namespaceObject.createVNode)("div", {
3590
+ "class": _this.resolveClassName('select-search-wrapper')
3591
+ }, [(0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.Search, {
3592
+ "width": 16,
3593
+ "height": 16,
3594
+ "class": "icon-search"
3595
+ }, null), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("input", {
3596
+ "ref": "searchRef",
3597
+ "class": _this.resolveClassName('select-search-input'),
3598
+ "onUpdate:modelValue": function onUpdateModelValue($event) {
3599
+ return _this.searchValue = $event;
3600
+ },
3601
+ "placeholder": _this.localSearchPlaceholder
3602
+ }, null), [[external_vue_namespaceObject.vModelText, _this.searchValue]])]), !_this.isShowSelectContent && (0,external_vue_namespaceObject.createVNode)("div", {
3603
+ "class": _this.resolveClassName('select-empty')
3604
+ }, [_this.searchLoading && (0,external_vue_namespaceObject.createVNode)(loading_namespaceObject["default"], {
3605
+ "class": "mr5",
3606
+ "loading": true,
3607
+ "mode": "spin",
3608
+ "size": "mini",
3609
+ "theme": "primary"
3610
+ }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.curContentText])]), (0,external_vue_namespaceObject.createVNode)("div", {
3611
+ "class": _this.resolveClassName('select-content')
3612
+ }, [(0,external_vue_namespaceObject.createVNode)("div", {
3613
+ "style": {
3614
+ maxHeight: "".concat(_this.scrollHeight, "px"),
3615
+ minHeight: "".concat(_this.minHeight, "px")
3616
+ },
3617
+ "class": _this.isEnableVirtualRender ? '' : _this.resolveClassName('select-dropdown'),
3618
+ "onScroll": _this.handleScroll
3619
+ }, [(0,external_vue_namespaceObject.createVNode)("ul", {
3620
+ "class": _this.resolveClassName('select-options')
3621
+ }, [renderSelectAll(), renderList(), (_this$$slots12 = _this.$slots) === null || _this$$slots12 === void 0 || (_this$$slots12$defaul = _this$$slots12["default"]) === null || _this$$slots12$defaul === void 0 ? void 0 : _this$$slots12$defaul.call(_this$$slots12), _this.scrollLoading && (0,external_vue_namespaceObject.createVNode)("li", {
3609
3622
  "class": _this.resolveClassName('select-options-loading')
3610
3623
  }, [(0,external_vue_namespaceObject.createVNode)(loading_namespaceObject["default"], {
3611
3624
  "class": "spinner mr5",
@@ -3613,7 +3626,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3613
3626
  "mode": "spin",
3614
3627
  "size": "mini",
3615
3628
  "theme": "primary"
3616
- }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.localLoadingText])])]), [[external_vue_namespaceObject.vShow, _this.isShowSelectContent]])]), ((_this$$slots13 = _this.$slots) === null || _this$$slots13 === void 0 ? void 0 : _this$$slots13.extension) && (0,external_vue_namespaceObject.createVNode)("div", {
3629
+ }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.localLoadingText])])])]), ((_this$$slots13 = _this.$slots) === null || _this$$slots13 === void 0 ? void 0 : _this$$slots13.extension) && (0,external_vue_namespaceObject.createVNode)("div", {
3617
3630
  "class": _this.resolveClassName('select-extension')
3618
3631
  }, [(_this$$slots14 = _this.$slots) === null || _this$$slots14 === void 0 ? void 0 : _this$$slots14.extension()])])]);
3619
3632
  };
@@ -3621,7 +3634,6 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3621
3634
  "class": selectClass
3622
3635
  }, [(0,external_vue_namespaceObject.createVNode)(popover_namespaceObject["default"], (0,external_vue_namespaceObject.mergeProps)(this.popoverConfig, {
3623
3636
  "ref": "popoverRef",
3624
- "onAfterShow": this.handlePopoverShow,
3625
3637
  "onClickoutside": this.handleClickOutside
3626
3638
  }), {
3627
3639
  "default": function _default() {
@@ -38,6 +38,9 @@ declare const _default: import("vue").DefineComponent<{
38
38
  } & {
39
39
  default: number;
40
40
  };
41
+ minHeight: import("vue-types").VueTypeValidableDef<number> & {
42
+ default: number;
43
+ };
41
44
  showAll: import("vue-types").VueTypeValidableDef<boolean> & {
42
45
  default: boolean;
43
46
  } & {
@@ -518,7 +521,6 @@ declare const _default: import("vue").DefineComponent<{
518
521
  allowCreate: boolean;
519
522
  collapseTags: boolean;
520
523
  }>>;
521
- virtualRenderRef: import("vue").Ref<any>;
522
524
  popoverRef: import("vue").Ref<any>;
523
525
  searchLoading: import("vue").Ref<boolean>;
524
526
  isOptionsEmpty: import("vue").ComputedRef<boolean>;
@@ -684,13 +686,15 @@ declare const _default: import("vue").DefineComponent<{
684
686
  handleDeleteTag: (val: string) => void;
685
687
  handleInputChange: (value: any) => void;
686
688
  handleSelectedAllOptionMouseEnter: () => void;
687
- handlePopoverShow: () => void;
688
689
  localLoadingText: import("vue").ComputedRef<string>;
689
690
  localPlaceholder: import("vue").ComputedRef<string>;
690
691
  localSearchPlaceholder: import("vue").ComputedRef<string>;
691
692
  localSelectAllText: import("vue").ComputedRef<string>;
692
693
  resolveClassName: (cls: string) => string;
693
694
  handleCreateCustomOption: (val: number | string, e: KeyboardEvent) => void;
695
+ virtualLineHeight: import("vue").Ref<number>;
696
+ isEnableVirtualRender: import("vue").ComputedRef<boolean>;
697
+ preloadItemCount: import("vue").ComputedRef<number>;
694
698
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("blur" | "change" | "focus" | "select" | "toggle" | "clear" | "update:modelValue" | "scroll-end" | "tag-remove" | "deselect" | "search-change")[], "blur" | "change" | "focus" | "select" | "toggle" | "clear" | "update:modelValue" | "scroll-end" | "tag-remove" | "deselect" | "search-change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
695
699
  modelValue: import("vue-types").VueTypeValidableDef<any>;
696
700
  multiple: import("vue-types").VueTypeValidableDef<boolean> & {
@@ -729,6 +733,9 @@ declare const _default: import("vue").DefineComponent<{
729
733
  } & {
730
734
  default: number;
731
735
  };
736
+ minHeight: import("vue-types").VueTypeValidableDef<number> & {
737
+ default: number;
738
+ };
732
739
  showAll: import("vue-types").VueTypeValidableDef<boolean> & {
733
740
  default: boolean;
734
741
  } & {
@@ -1029,6 +1036,7 @@ declare const _default: import("vue").DefineComponent<{
1029
1036
  scrollHeight: number;
1030
1037
  clearable: boolean;
1031
1038
  withValidate: boolean;
1039
+ minHeight: number;
1032
1040
  noDataText: string;
1033
1041
  showSelectedIcon: boolean;
1034
1042
  highlightKeyword: boolean;
@@ -904,15 +904,14 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
904
904
  pos: pos
905
905
  });
906
906
  var start = pagination.startIndex * props.groupItemCount;
907
- var end = (pagination.endIndex + props.preloadItemCount) * props.groupItemCount;
907
+ var end = pagination.endIndex * props.groupItemCount;
908
908
  var total = localList.value.length;
909
909
  if (total < end) {
910
- calcList.value = localList.value.slice(start, total);
911
910
  end = total;
912
911
  start = end - Math.floor(refContent.value.offsetHeight / props.lineHeight);
913
912
  start = start < 0 ? 0 : start;
914
913
  }
915
- var value = localList.value.slice(start, end);
914
+ var value = localList.value.slice(start, end + props.preloadItemCount * props.groupItemCount);
916
915
  calcList.value = value;
917
916
  if (event) {
918
917
  ctx.emit('content-scroll', [event, pagination, value]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bkui-vue",
3
- "version": "2.0.1-beta.18",
3
+ "version": "2.0.1-beta.19",
4
4
  "workspaces": [
5
5
  "packages/**",
6
6
  "scripts/cli",