bkui-vue 0.0.2-beta.106 → 0.0.2-beta.108

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.
@@ -73,6 +73,7 @@ export declare const configProviderProps: {
73
73
  pleaseSelect: string;
74
74
  enterKeywords: string;
75
75
  all: string;
76
+ selectAll: string;
76
77
  };
77
78
  table: {
78
79
  emptyText: string;
@@ -207,6 +208,7 @@ declare const _default: import("vue").DefineComponent<{
207
208
  pleaseSelect: string;
208
209
  enterKeywords: string;
209
210
  all: string;
211
+ selectAll: string;
210
212
  };
211
213
  table: {
212
214
  emptyText: string;
@@ -341,6 +343,7 @@ declare const _default: import("vue").DefineComponent<{
341
343
  pleaseSelect: string;
342
344
  enterKeywords: string;
343
345
  all: string;
346
+ selectAll: string;
344
347
  };
345
348
  table: {
346
349
  emptyText: string;
@@ -101,6 +101,7 @@ declare const BkConfigProvider: {
101
101
  pleaseSelect: string;
102
102
  enterKeywords: string;
103
103
  all: string;
104
+ selectAll: string;
104
105
  };
105
106
  table: {
106
107
  emptyText: string;
@@ -286,6 +287,7 @@ declare const BkConfigProvider: {
286
287
  pleaseSelect: string;
287
288
  enterKeywords: string;
288
289
  all: string;
290
+ selectAll: string;
289
291
  };
290
292
  table: {
291
293
  emptyText: string;
@@ -442,6 +444,7 @@ declare const BkConfigProvider: {
442
444
  pleaseSelect: string;
443
445
  enterKeywords: string;
444
446
  all: string;
447
+ selectAll: string;
445
448
  };
446
449
  table: {
447
450
  emptyText: string;
@@ -580,6 +583,7 @@ declare const BkConfigProvider: {
580
583
  pleaseSelect: string;
581
584
  enterKeywords: string;
582
585
  all: string;
586
+ selectAll: string;
583
587
  };
584
588
  table: {
585
589
  emptyText: string;
@@ -72,6 +72,7 @@ export declare const defaultRootConfig: {
72
72
  pleaseSelect: string;
73
73
  enterKeywords: string;
74
74
  all: string;
75
+ selectAll: string;
75
76
  };
76
77
  table: {
77
78
  emptyText: string;
@@ -3195,10 +3195,10 @@ var timeRangeProps = {
3195
3195
  return !(props.format || '').match(/mm$/);
3196
3196
  });
3197
3197
  var leftDatePanelLabel = (0,external_vue_namespaceObject.computed)(function () {
3198
- return src_fecha.format(parentProvide.dates[0], props.format);
3198
+ return src_fecha.format(dateStart, props.format);
3199
3199
  });
3200
3200
  var rightDatePanelLabel = (0,external_vue_namespaceObject.computed)(function () {
3201
- return src_fecha.format(parentProvide.dates[1], props.format);
3201
+ return src_fecha.format(dateEnd, props.format);
3202
3202
  });
3203
3203
  (0,external_vue_namespaceObject.watch)(function () {
3204
3204
  return props.value;
@@ -3211,7 +3211,7 @@ var timeRangeProps = {
3211
3211
  state.dateEnd = dateEnd || initTime();
3212
3212
  });
3213
3213
  (0,external_vue_namespaceObject.onMounted)(function () {
3214
- if (parentProvide && parentProvide.parentName === 'DatePanel') {
3214
+ if (parentProvide && (parentProvide.parentName === 'DatePanel' || parentProvide.parentName === 'DateRangePanel')) {
3215
3215
  state.showDate = true;
3216
3216
  }
3217
3217
  });
@@ -127,7 +127,8 @@ var en = {
127
127
  loading: 'Loading...',
128
128
  pleaseSelect: 'Please select',
129
129
  enterKeywords: 'Please enter keywords',
130
- all: 'All'
130
+ all: 'All',
131
+ selectAll: 'Select all'
131
132
  },
132
133
  table: {
133
134
  emptyText: 'No Data',
@@ -329,7 +330,8 @@ var zhCn = {
329
330
  loading: '加载中...',
330
331
  pleaseSelect: '请选择',
331
332
  enterKeywords: '请输入关键字',
332
- all: '全部'
333
+ all: '全部',
334
+ selectAll: '全选'
333
335
  },
334
336
  table: {
335
337
  emptyText: '暂无数据',
@@ -70,6 +70,7 @@ declare const en: {
70
70
  pleaseSelect: string;
71
71
  enterKeywords: string;
72
72
  all: string;
73
+ selectAll: string;
73
74
  };
74
75
  table: {
75
76
  emptyText: string;
@@ -3759,7 +3759,9 @@ function createPopoverComponent(options) {
3759
3759
  placement: 'top',
3760
3760
  autoVisibility: true,
3761
3761
  isShow: false,
3762
- trigger: 'manual'
3762
+ trigger: 'manual',
3763
+ onHide: function onHide() {},
3764
+ onShow: function onShow() {}
3763
3765
  }, options), {}, {
3764
3766
  allowHtml: true
3765
3767
  });
@@ -3804,6 +3806,14 @@ function createPopoverComponent(options) {
3804
3806
  var _resolvedOptions$onCo2;
3805
3807
  (_resolvedOptions$onCo2 = resolvedOptions.onContentMouseleave) === null || _resolvedOptions$onCo2 === void 0 ? void 0 : _resolvedOptions$onCo2.call(resolvedOptions);
3806
3808
  };
3809
+ var handlePopoverHidden = function handlePopoverHidden() {
3810
+ var _resolvedOptions$onHi;
3811
+ (_resolvedOptions$onHi = resolvedOptions.onHide) === null || _resolvedOptions$onHi === void 0 ? void 0 : _resolvedOptions$onHi.call(resolvedOptions);
3812
+ };
3813
+ var handlePopoverShow = function handlePopoverShow() {
3814
+ var _resolvedOptions$onSh;
3815
+ (_resolvedOptions$onSh = resolvedOptions.onShow) === null || _resolvedOptions$onSh === void 0 ? void 0 : _resolvedOptions$onSh.call(resolvedOptions);
3816
+ };
3807
3817
  expose({
3808
3818
  show: show,
3809
3819
  hide: hide,
@@ -3814,7 +3824,9 @@ function createPopoverComponent(options) {
3814
3824
  return (0,external_vue_namespaceObject.createVNode)(popover, (0,external_vue_namespaceObject.mergeProps)(refProps, {
3815
3825
  "ref": refReference,
3816
3826
  "onContentMouseenter": handleContentMouseenter,
3817
- "onContentMouseleave": handleContentMouseleave
3827
+ "onContentMouseleave": handleContentMouseleave,
3828
+ "onAfterHidden": handlePopoverHidden,
3829
+ "onAfterShow": handlePopoverShow
3818
3830
  }), null);
3819
3831
  };
3820
3832
  }
@@ -3761,7 +3761,9 @@ function createPopoverComponent(options) {
3761
3761
  placement: 'top',
3762
3762
  autoVisibility: true,
3763
3763
  isShow: false,
3764
- trigger: 'manual'
3764
+ trigger: 'manual',
3765
+ onHide: function onHide() {},
3766
+ onShow: function onShow() {}
3765
3767
  }, options), {}, {
3766
3768
  allowHtml: true
3767
3769
  });
@@ -3806,6 +3808,14 @@ function createPopoverComponent(options) {
3806
3808
  var _resolvedOptions$onCo2;
3807
3809
  (_resolvedOptions$onCo2 = resolvedOptions.onContentMouseleave) === null || _resolvedOptions$onCo2 === void 0 ? void 0 : _resolvedOptions$onCo2.call(resolvedOptions);
3808
3810
  };
3811
+ var handlePopoverHidden = function handlePopoverHidden() {
3812
+ var _resolvedOptions$onHi;
3813
+ (_resolvedOptions$onHi = resolvedOptions.onHide) === null || _resolvedOptions$onHi === void 0 ? void 0 : _resolvedOptions$onHi.call(resolvedOptions);
3814
+ };
3815
+ var handlePopoverShow = function handlePopoverShow() {
3816
+ var _resolvedOptions$onSh;
3817
+ (_resolvedOptions$onSh = resolvedOptions.onShow) === null || _resolvedOptions$onSh === void 0 ? void 0 : _resolvedOptions$onSh.call(resolvedOptions);
3818
+ };
3809
3819
  expose({
3810
3820
  show: show,
3811
3821
  hide: hide,
@@ -3816,7 +3826,9 @@ function createPopoverComponent(options) {
3816
3826
  return (0,external_vue_namespaceObject.createVNode)(popover, (0,external_vue_namespaceObject.mergeProps)(refProps, {
3817
3827
  "ref": refReference,
3818
3828
  "onContentMouseenter": handleContentMouseenter,
3819
- "onContentMouseleave": handleContentMouseleave
3829
+ "onContentMouseleave": handleContentMouseleave,
3830
+ "onAfterHidden": handlePopoverHidden,
3831
+ "onAfterShow": handlePopoverShow
3820
3832
  }), null);
3821
3833
  };
3822
3834
  }
package/lib/preset.d.ts CHANGED
@@ -74,6 +74,7 @@ declare const _default: {
74
74
  pleaseSelect: string;
75
75
  enterKeywords: string;
76
76
  all: string;
77
+ selectAll: string;
77
78
  };
78
79
  table: {
79
80
  emptyText: string;
@@ -207,6 +208,7 @@ declare const _default: {
207
208
  pleaseSelect: string;
208
209
  enterKeywords: string;
209
210
  all: string;
211
+ selectAll: string;
210
212
  };
211
213
  table: {
212
214
  emptyText: string;
@@ -28,6 +28,7 @@ declare const BkSelect: {
28
28
  displayKey?: string;
29
29
  idKey?: string;
30
30
  remoteMethod?: (...args: any[]) => any;
31
+ showAll?: boolean;
31
32
  showSelectAll?: boolean;
32
33
  multipleMode?: string;
33
34
  autoHeight?: boolean;
@@ -98,6 +99,7 @@ declare const BkSelect: {
98
99
  "onScroll-end"?: (...args: any[]) => any;
99
100
  "onTag-remove"?: (...args: any[]) => any;
100
101
  onDeselect?: (...args: any[]) => any;
102
+ readonly allOptionId?: string | number;
101
103
  readonly filterOption?: Function;
102
104
  };
103
105
  $attrs: {
@@ -151,6 +153,12 @@ declare const BkSelect: {
151
153
  } & {
152
154
  default: number;
153
155
  };
156
+ showAll: import("vue-types").VueTypeValidableDef<boolean> & {
157
+ default: boolean;
158
+ } & {
159
+ default: boolean;
160
+ };
161
+ allOptionId: import("vue-types").VueTypeDef<string | number>;
154
162
  showSelectAll: import("vue-types").VueTypeValidableDef<boolean> & {
155
163
  default: boolean;
156
164
  } & {
@@ -415,6 +423,15 @@ declare const BkSelect: {
415
423
  "onTag-remove"?: (...args: any[]) => any;
416
424
  onDeselect?: (...args: any[]) => any;
417
425
  }, {
426
+ t: import("vue").ComputedRef<{
427
+ noData: string;
428
+ noMatchedData: string;
429
+ loading: string;
430
+ pleaseSelect: string;
431
+ enterKeywords: string;
432
+ all: string;
433
+ selectAll: string;
434
+ }>;
418
435
  selected: import("vue").Ref<{
419
436
  value: string;
420
437
  label: string | number;
@@ -647,6 +664,7 @@ declare const BkSelect: {
647
664
  curContentText: import("vue").ComputedRef<string>;
648
665
  isGroup: import("vue").ComputedRef<boolean>;
649
666
  searchKey: import("vue").Ref<string>;
667
+ isShowAll: import("vue").ComputedRef<boolean>;
650
668
  isShowSelectAll: import("vue").ComputedRef<boolean>;
651
669
  virtualHeight: import("vue").ComputedRef<number>;
652
670
  virtualList: import("vue").ComputedRef<any[]>;
@@ -779,6 +797,7 @@ declare const BkSelect: {
779
797
  default: boolean;
780
798
  };
781
799
  }>>>>;
800
+ isAllSelected: import("vue").ComputedRef<boolean>;
782
801
  focusInput: () => void;
783
802
  setHover: () => void;
784
803
  cancelHover: () => void;
@@ -788,7 +807,7 @@ declare const BkSelect: {
788
807
  handleClear: (e: Event) => void;
789
808
  hidePopover: () => void;
790
809
  showPopover: () => void;
791
- handleToggleAll: () => void;
810
+ handleToggleSelectAll: () => void;
792
811
  handleOptionSelected: (option: import("./type").OptionInstanceType) => void;
793
812
  handleClickOutside: ({ event }: {
794
813
  event: any;
@@ -828,6 +847,7 @@ declare const BkSelect: {
828
847
  displayKey: string;
829
848
  idKey: string;
830
849
  remoteMethod: (...args: any[]) => any;
850
+ showAll: boolean;
831
851
  showSelectAll: boolean;
832
852
  multipleMode: string;
833
853
  autoHeight: boolean;
@@ -900,6 +920,12 @@ declare const BkSelect: {
900
920
  } & {
901
921
  default: number;
902
922
  };
923
+ showAll: import("vue-types").VueTypeValidableDef<boolean> & {
924
+ default: boolean;
925
+ } & {
926
+ default: boolean;
927
+ };
928
+ allOptionId: import("vue-types").VueTypeDef<string | number>;
903
929
  showSelectAll: import("vue-types").VueTypeValidableDef<boolean> & {
904
930
  default: boolean;
905
931
  } & {
@@ -1164,6 +1190,15 @@ declare const BkSelect: {
1164
1190
  "onTag-remove"?: (...args: any[]) => any;
1165
1191
  onDeselect?: (...args: any[]) => any;
1166
1192
  } & import("vue").ShallowUnwrapRef<{
1193
+ t: import("vue").ComputedRef<{
1194
+ noData: string;
1195
+ noMatchedData: string;
1196
+ loading: string;
1197
+ pleaseSelect: string;
1198
+ enterKeywords: string;
1199
+ all: string;
1200
+ selectAll: string;
1201
+ }>;
1167
1202
  selected: import("vue").Ref<{
1168
1203
  value: string;
1169
1204
  label: string | number;
@@ -1396,6 +1431,7 @@ declare const BkSelect: {
1396
1431
  curContentText: import("vue").ComputedRef<string>;
1397
1432
  isGroup: import("vue").ComputedRef<boolean>;
1398
1433
  searchKey: import("vue").Ref<string>;
1434
+ isShowAll: import("vue").ComputedRef<boolean>;
1399
1435
  isShowSelectAll: import("vue").ComputedRef<boolean>;
1400
1436
  virtualHeight: import("vue").ComputedRef<number>;
1401
1437
  virtualList: import("vue").ComputedRef<any[]>;
@@ -1528,6 +1564,7 @@ declare const BkSelect: {
1528
1564
  default: boolean;
1529
1565
  };
1530
1566
  }>>>>;
1567
+ isAllSelected: import("vue").ComputedRef<boolean>;
1531
1568
  focusInput: () => void;
1532
1569
  setHover: () => void;
1533
1570
  cancelHover: () => void;
@@ -1537,7 +1574,7 @@ declare const BkSelect: {
1537
1574
  handleClear: (e: Event) => void;
1538
1575
  hidePopover: () => void;
1539
1576
  showPopover: () => void;
1540
- handleToggleAll: () => void;
1577
+ handleToggleSelectAll: () => void;
1541
1578
  handleOptionSelected: (option: import("./type").OptionInstanceType) => void;
1542
1579
  handleClickOutside: ({ event }: {
1543
1580
  event: any;
@@ -1595,6 +1632,12 @@ declare const BkSelect: {
1595
1632
  } & {
1596
1633
  default: number;
1597
1634
  };
1635
+ showAll: import("vue-types").VueTypeValidableDef<boolean> & {
1636
+ default: boolean;
1637
+ } & {
1638
+ default: boolean;
1639
+ };
1640
+ allOptionId: import("vue-types").VueTypeDef<string | number>;
1598
1641
  showSelectAll: import("vue-types").VueTypeValidableDef<boolean> & {
1599
1642
  default: boolean;
1600
1643
  } & {
@@ -1859,6 +1902,15 @@ declare const BkSelect: {
1859
1902
  "onTag-remove"?: (...args: any[]) => any;
1860
1903
  onDeselect?: (...args: any[]) => any;
1861
1904
  }, {
1905
+ t: import("vue").ComputedRef<{
1906
+ noData: string;
1907
+ noMatchedData: string;
1908
+ loading: string;
1909
+ pleaseSelect: string;
1910
+ enterKeywords: string;
1911
+ all: string;
1912
+ selectAll: string;
1913
+ }>;
1862
1914
  selected: import("vue").Ref<{
1863
1915
  value: string;
1864
1916
  label: string | number;
@@ -2091,6 +2143,7 @@ declare const BkSelect: {
2091
2143
  curContentText: import("vue").ComputedRef<string>;
2092
2144
  isGroup: import("vue").ComputedRef<boolean>;
2093
2145
  searchKey: import("vue").Ref<string>;
2146
+ isShowAll: import("vue").ComputedRef<boolean>;
2094
2147
  isShowSelectAll: import("vue").ComputedRef<boolean>;
2095
2148
  virtualHeight: import("vue").ComputedRef<number>;
2096
2149
  virtualList: import("vue").ComputedRef<any[]>;
@@ -2223,6 +2276,7 @@ declare const BkSelect: {
2223
2276
  default: boolean;
2224
2277
  };
2225
2278
  }>>>>;
2279
+ isAllSelected: import("vue").ComputedRef<boolean>;
2226
2280
  focusInput: () => void;
2227
2281
  setHover: () => void;
2228
2282
  cancelHover: () => void;
@@ -2232,7 +2286,7 @@ declare const BkSelect: {
2232
2286
  handleClear: (e: Event) => void;
2233
2287
  hidePopover: () => void;
2234
2288
  showPopover: () => void;
2235
- handleToggleAll: () => void;
2289
+ handleToggleSelectAll: () => void;
2236
2290
  handleOptionSelected: (option: import("./type").OptionInstanceType) => void;
2237
2291
  handleClickOutside: ({ event }: {
2238
2292
  event: any;
@@ -2272,6 +2326,7 @@ declare const BkSelect: {
2272
2326
  displayKey: string;
2273
2327
  idKey: string;
2274
2328
  remoteMethod: (...args: any[]) => any;
2329
+ showAll: boolean;
2275
2330
  showSelectAll: boolean;
2276
2331
  multipleMode: string;
2277
2332
  autoHeight: boolean;
@@ -2311,6 +2366,7 @@ declare const BkSelect: {
2311
2366
  selectedStyle: import("vue").ComputedRef<import("../shared").SelectedTypeEnum>;
2312
2367
  optionName: import("vue").ComputedRef<string | number>;
2313
2368
  optionID: import("vue").ComputedRef<unknown>;
2369
+ isDisabled: import("vue").ComputedRef<boolean>;
2314
2370
  handleOptionClick: () => void;
2315
2371
  handleMouseEnter: () => void;
2316
2372
  resolveClassName: (cls: string) => string;
@@ -797,9 +797,29 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
797
797
  var selectedStyle = (0,external_vue_namespaceObject.computed)(function () {
798
798
  return select === null || select === void 0 ? void 0 : select.selectedStyle;
799
799
  });
800
+ var isShowAll = (0,external_vue_namespaceObject.computed)(function () {
801
+ return select === null || select === void 0 ? void 0 : select.isShowAll;
802
+ });
803
+ var allOptionId = (0,external_vue_namespaceObject.computed)(function () {
804
+ return select === null || select === void 0 ? void 0 : select.allOptionId;
805
+ });
806
+ var isDisabled = (0,external_vue_namespaceObject.computed)(function () {
807
+ var _select$selected2;
808
+ if (!isShowAll.value || optionID.value === allOptionId.value) return disabled.value;
809
+ // 全部选项需要禁用掉其他选项
810
+ var exitAllOptionId = select === null || select === void 0 || (_select$selected2 = select.selected) === null || _select$selected2 === void 0 ? void 0 : _select$selected2.some(function (item) {
811
+ return (0,isEqual_namespaceObject["default"])(item.value, allOptionId.value);
812
+ });
813
+ return disabled.value || isShowAll.value && exitAllOptionId;
814
+ });
800
815
  var handleOptionClick = function handleOptionClick() {
801
- if (disabled.value) return;
802
- select === null || select === void 0 ? void 0 : select.handleOptionSelected(proxy);
816
+ if (isDisabled.value) return;
817
+ if (isShowAll.value && allOptionId.value === optionID.value) {
818
+ // 全部选项
819
+ select === null || select === void 0 ? void 0 : select.handleToggleAll();
820
+ } else {
821
+ select === null || select === void 0 ? void 0 : select.handleOptionSelected(proxy);
822
+ }
803
823
  };
804
824
  var handleMouseEnter = function handleMouseEnter() {
805
825
  select.activeOptionValue = optionID.value;
@@ -822,6 +842,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
822
842
  selectedStyle: selectedStyle,
823
843
  optionName: optionName,
824
844
  optionID: optionID,
845
+ isDisabled: isDisabled,
825
846
  handleOptionClick: handleOptionClick,
826
847
  handleMouseEnter: handleMouseEnter,
827
848
  resolveClassName: resolveClassName
@@ -831,7 +852,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
831
852
  var _this$$slots$default, _this$$slots$default2, _this$$slots;
832
853
  var selectItemClass = (0,external_shared_namespaceObject.classes)(_defineProperty({
833
854
  'is-selected': this.selected,
834
- 'is-disabled': this.disabled,
855
+ 'is-disabled': this.isDisabled,
835
856
  'is-multiple': this.multiple,
836
857
  'is-hover': this.isHover,
837
858
  'is-checkbox': this.selectedStyle === external_shared_namespaceObject.SelectedTypeEnum.CHECKBOX
@@ -841,7 +862,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
841
862
  "onClick": this.handleOptionClick,
842
863
  "onMouseenter": this.handleMouseEnter
843
864
  }, [this.showSelectedIcon && this.selectedStyle === external_shared_namespaceObject.SelectedTypeEnum.CHECKBOX && (0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject["default"], {
844
- "disabled": this.disabled,
865
+ "disabled": this.isDisabled,
845
866
  "class": this.resolveClassName('select-checkbox'),
846
867
  "modelValue": this.selected
847
868
  }, null), (_this$$slots$default = (_this$$slots$default2 = (_this$$slots = this.$slots)["default"]) === null || _this$$slots$default2 === void 0 ? void 0 : _this$$slots$default2.call(_this$$slots)) !== null && _this$$slots$default !== void 0 ? _this$$slots$default : (0,external_vue_namespaceObject.createVNode)("span", {
@@ -1300,6 +1321,7 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1300
1321
 
1301
1322
 
1302
1323
 
1324
+
1303
1325
  /* harmony default export */ const src_select = ((0,external_vue_namespaceObject.defineComponent)({
1304
1326
  name: 'Select',
1305
1327
  directives: {
@@ -1315,6 +1337,8 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1315
1337
  filterable: external_shared_namespaceObject.PropTypes.bool.def(false),
1316
1338
  remoteMethod: external_shared_namespaceObject.PropTypes.func,
1317
1339
  scrollHeight: external_shared_namespaceObject.PropTypes.number.def(200),
1340
+ showAll: external_shared_namespaceObject.PropTypes.bool.def(false),
1341
+ allOptionId: external_shared_namespaceObject.PropTypes.oneOfType([external_shared_namespaceObject.PropTypes.number, external_shared_namespaceObject.PropTypes.string]),
1318
1342
  showSelectAll: external_shared_namespaceObject.PropTypes.bool.def(false),
1319
1343
  popoverMinWidth: external_shared_namespaceObject.PropTypes.number.def(0),
1320
1344
  showOnInit: external_shared_namespaceObject.PropTypes.bool.def(false),
@@ -1372,6 +1396,8 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1372
1396
  inputSearch = _toRefs.inputSearch,
1373
1397
  enableVirtualRender = _toRefs.enableVirtualRender,
1374
1398
  showSelectAll = _toRefs.showSelectAll,
1399
+ showAll = _toRefs.showAll,
1400
+ allOptionId = _toRefs.allOptionId,
1375
1401
  scrollHeight = _toRefs.scrollHeight,
1376
1402
  list = _toRefs.list,
1377
1403
  displayKey = _toRefs.displayKey,
@@ -1531,6 +1557,9 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1531
1557
  var isShowSelectAll = (0,external_vue_namespaceObject.computed)(function () {
1532
1558
  return multiple.value && showSelectAll.value && (!searchKey.value || !filterable.value);
1533
1559
  });
1560
+ var isShowAll = (0,external_vue_namespaceObject.computed)(function () {
1561
+ return multiple.value && showAll.value;
1562
+ });
1534
1563
  // 虚拟滚动高度 12 上下边距,32 显示全选时的高度
1535
1564
  var virtualHeight = (0,external_vue_namespaceObject.computed)(function () {
1536
1565
  return scrollHeight.value - 12 - (isShowSelectAll.value ? 32 : 0);
@@ -1759,11 +1788,11 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1759
1788
  emit('clear', multiple.value ? [] : '');
1760
1789
  hidePopover();
1761
1790
  };
1762
- // 全选/取消全选
1763
1791
  var handleSelectedAllOptionMouseEnter = function handleSelectedAllOptionMouseEnter() {
1764
1792
  activeOptionValue.value = '';
1765
1793
  };
1766
- var handleToggleAll = function handleToggleAll() {
1794
+ // 全选/取消全选
1795
+ var handleToggleSelectAll = function handleToggleSelectAll() {
1767
1796
  if (isAllSelected.value) {
1768
1797
  selected.value = [];
1769
1798
  } else {
@@ -1788,6 +1817,25 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1788
1817
  }));
1789
1818
  focusInput();
1790
1819
  };
1820
+ // 全部/取消全部
1821
+ var handleToggleAll = function handleToggleAll() {
1822
+ if (!isShowAll.value) return;
1823
+ var index = selected.value.findIndex(function (item) {
1824
+ return item.value === allOptionId.value;
1825
+ });
1826
+ if (index > -1) {
1827
+ selected.value = [];
1828
+ } else {
1829
+ selected.value = [{
1830
+ value: allOptionId.value,
1831
+ label: t.value.all
1832
+ }];
1833
+ }
1834
+ emitChange(selected.value.map(function (item) {
1835
+ return item.value;
1836
+ }));
1837
+ focusInput();
1838
+ };
1791
1839
  // 滚动事件
1792
1840
  var handleScroll = function handleScroll(e) {
1793
1841
  var _e$target = e.target,
@@ -1928,13 +1976,16 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1928
1976
  selected: selected,
1929
1977
  activeOptionValue: activeOptionValue,
1930
1978
  showSelectedIcon: showSelectedIcon,
1979
+ isShowAll: isShowAll,
1980
+ allOptionId: allOptionId,
1931
1981
  selectedStyle: selectedStyle,
1932
1982
  register: register,
1933
1983
  unregister: unregister,
1934
1984
  registerGroup: registerGroup,
1935
1985
  unregisterGroup: unregisterGroup,
1936
1986
  handleOptionSelected: handleOptionSelected,
1937
- handleGetLabelByValue: handleGetLabelByValue
1987
+ handleGetLabelByValue: handleGetLabelByValue,
1988
+ handleToggleAll: handleToggleAll
1938
1989
  }));
1939
1990
  (0,external_vue_namespaceObject.onMounted)(function () {
1940
1991
  handleSetSelectedData();
@@ -1944,6 +1995,7 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1944
1995
  });
1945
1996
  });
1946
1997
  return {
1998
+ t: t,
1947
1999
  selected: selected,
1948
2000
  isInput: isInput,
1949
2001
  options: options,
@@ -1967,11 +2019,13 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1967
2019
  curContentText: curContentText,
1968
2020
  isGroup: isGroup,
1969
2021
  searchKey: searchKey,
2022
+ isShowAll: isShowAll,
1970
2023
  isShowSelectAll: isShowSelectAll,
1971
2024
  virtualHeight: virtualHeight,
1972
2025
  virtualList: virtualList,
1973
2026
  isCollapseTags: isCollapseTags,
1974
2027
  popoverConfig: popoverConfig,
2028
+ isAllSelected: isAllSelected,
1975
2029
  focusInput: focusInput,
1976
2030
  setHover: setHover,
1977
2031
  cancelHover: cancelHover,
@@ -1981,7 +2035,7 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
1981
2035
  handleClear: handleClear,
1982
2036
  hidePopover: hidePopover,
1983
2037
  showPopover: showPopover,
1984
- handleToggleAll: handleToggleAll,
2038
+ handleToggleSelectAll: handleToggleSelectAll,
1985
2039
  handleOptionSelected: handleOptionSelected,
1986
2040
  handleClickOutside: handleClickOutside,
1987
2041
  handleScroll: handleScroll,
@@ -2034,6 +2088,28 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
2034
2088
  return (_this$$slots$prefix = (_this$$slots = _this.$slots).prefix) === null || _this$$slots$prefix === void 0 ? void 0 : _this$$slots$prefix.call(_this$$slots);
2035
2089
  } : undefined;
2036
2090
  };
2091
+ // 全选
2092
+ var renderSelectAll = function renderSelectAll() {
2093
+ if (!_this.isShowSelectAll) return;
2094
+ return (0,external_vue_namespaceObject.createVNode)("li", {
2095
+ "class": _this.resolveClassName('select-option'),
2096
+ "onMouseenter": _this.handleSelectedAllOptionMouseEnter,
2097
+ "onClick": _this.handleToggleSelectAll
2098
+ }, [_this.selectedStyle === 'checkbox' && (0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject["default"], {
2099
+ "class": _this.resolveClassName('select-checkbox'),
2100
+ "modelValue": _this.isAllSelected,
2101
+ "indeterminate": !_this.isAllSelected && !!_this.selected.length
2102
+ }, null), _this.t.selectAll]);
2103
+ };
2104
+ // 全部
2105
+ var renderAll = function renderAll() {
2106
+ // 全选和全部是互斥的,只能选一个
2107
+ if (_this.isShowSelectAll || !_this.isShowAll) return;
2108
+ return (0,external_vue_namespaceObject.createVNode)(src_option, {
2109
+ "id": _this.allOptionId,
2110
+ "name": _this.t.all
2111
+ }, null);
2112
+ };
2037
2113
  var renderTriggerInput = function renderTriggerInput() {
2038
2114
  if (_this.multipleMode === 'tag') {
2039
2115
  return (0,external_vue_namespaceObject.createVNode)(selectTagInput, {
@@ -2140,11 +2216,7 @@ function select_objectSpread(target) { for (var i = 1; i < arguments.length; i++
2140
2216
  "onScroll": _this.handleScroll
2141
2217
  }, [(0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("ul", {
2142
2218
  "class": _this.resolveClassName('select-options')
2143
- }, [_this.isShowSelectAll && (0,external_vue_namespaceObject.createVNode)("li", {
2144
- "class": _this.resolveClassName('select-option'),
2145
- "onMouseenter": _this.handleSelectedAllOptionMouseEnter,
2146
- "onClick": _this.handleToggleAll
2147
- }, [_this.localSelectAllText]), _this.enableVirtualRender ? (0,external_vue_namespaceObject.createVNode)(external_virtual_render_namespaceObject["default"], {
2219
+ }, [renderSelectAll(), renderAll(), _this.enableVirtualRender ? (0,external_vue_namespaceObject.createVNode)(external_virtual_render_namespaceObject["default"], {
2148
2220
  "list": _this.virtualList,
2149
2221
  "height": _this.virtualHeight,
2150
2222
  "lineHeight": 32,
@@ -23,6 +23,7 @@ declare const _default: import("vue").DefineComponent<{
23
23
  selectedStyle: import("vue").ComputedRef<SelectedTypeEnum>;
24
24
  optionName: import("vue").ComputedRef<string | number>;
25
25
  optionID: import("vue").ComputedRef<unknown>;
26
+ isDisabled: import("vue").ComputedRef<boolean>;
26
27
  handleOptionClick: () => void;
27
28
  handleMouseEnter: () => void;
28
29
  resolveClassName: (cls: string) => string;