bi-eleme 2.4.4 → 2.4.5

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/cascader.js CHANGED
@@ -213,7 +213,7 @@ module.exports = require("bi-eleme/lib/utils/clickoutside");
213
213
  // ESM COMPAT FLAG
214
214
  __webpack_require__.r(__webpack_exports__);
215
215
 
216
- // CONCATENATED MODULE: ./node_modules/.store/vue-loader@15.11.1/node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/.store/vue-loader@15.11.1/node_modules/vue-loader/lib??vue-loader-options!./packages/cascader/src/cascader.vue?vue&type=template&id=16190d09
216
+ // CONCATENATED MODULE: ./node_modules/.store/vue-loader@15.11.1/node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/.store/vue-loader@15.11.1/node_modules/vue-loader/lib??vue-loader-options!./packages/cascader/src/cascader.vue?vue&type=template&id=1c51707e
217
217
  var render = function () {
218
218
  var _vm = this
219
219
  var _h = _vm.$createElement
@@ -445,6 +445,28 @@ var render = function () {
445
445
  expression: "checkedValue",
446
446
  },
447
447
  }),
448
+ _vm.multiple &&
449
+ _vm.filterable &&
450
+ _vm.filtering &&
451
+ _vm.suggestions.length
452
+ ? _c(
453
+ "li",
454
+ {
455
+ class: [
456
+ "el-cascader__suggestion-item el-cascader__suggestion-item-all",
457
+ _vm.isSuggestionsCheckedAll && "is-checked",
458
+ ],
459
+ attrs: { tabindex: -1 },
460
+ on: { click: _vm.handleSuggestionClickAll },
461
+ },
462
+ [
463
+ _c("span", [_vm._v(" 全选 ")]),
464
+ _vm.isSuggestionsCheckedAll
465
+ ? _c("i", { staticClass: "el-icon-check" })
466
+ : _vm._e(),
467
+ ]
468
+ )
469
+ : _vm._e(),
448
470
  _vm.filterable
449
471
  ? _c(
450
472
  "el-scrollbar",
@@ -528,7 +550,7 @@ var staticRenderFns = []
528
550
  render._withStripped = true
529
551
 
530
552
 
531
- // CONCATENATED MODULE: ./packages/cascader/src/cascader.vue?vue&type=template&id=16190d09
553
+ // CONCATENATED MODULE: ./packages/cascader/src/cascader.vue?vue&type=template&id=1c51707e
532
554
 
533
555
  // EXTERNAL MODULE: external "bi-eleme/lib/utils/vue-popper"
534
556
  var vue_popper_ = __webpack_require__(5);
@@ -728,6 +750,21 @@ var debounce_default = /*#__PURE__*/__webpack_require__.n(debounce_);
728
750
  //
729
751
  //
730
752
  //
753
+ //
754
+ //
755
+ //
756
+ //
757
+ //
758
+ //
759
+ //
760
+ //
761
+ //
762
+ //
763
+ //
764
+ //
765
+ //
766
+ //
767
+ //
731
768
 
732
769
 
733
770
 
@@ -862,6 +899,7 @@ var InputSizeMap = {
862
899
  checkedNodes: [],
863
900
  filtering: false,
864
901
  suggestions: [],
902
+ isSuggestionsCheckedAll: false,
865
903
  inputInitialHeight: 0,
866
904
  pressDeleteCount: 0
867
905
  };
@@ -879,6 +917,11 @@ var InputSizeMap = {
879
917
  isDisabled: function isDisabled() {
880
918
  return this.disabled || (this.elForm || {}).disabled;
881
919
  },
920
+
921
+ // isSuggestionsCheckedAll() {
922
+
923
+ // return this.suggestions.length > 0 && this.suggestions.find((item) => item.checked)
924
+ // },
882
925
  config: function config() {
883
926
  var config = this.props || {};
884
927
  var $attrs = this.$attrs;
@@ -1218,6 +1261,7 @@ var InputSizeMap = {
1218
1261
  this.presentTags.forEach(function (tag) {
1219
1262
  tag.hitState = false;
1220
1263
  });
1264
+ this.updateSuggestionsCheckedAll();
1221
1265
  } else {
1222
1266
  suggestions.forEach(function (node) {
1223
1267
  node.checked = Object(util_["isEqual"])(_this5.checkedValue, node.getValueByOption());
@@ -1227,6 +1271,7 @@ var InputSizeMap = {
1227
1271
  this.filtering = true;
1228
1272
  this.suggestions = suggestions;
1229
1273
  this.$nextTick(this.updatePopper);
1274
+ this.multiple && this.$nextTick(this.updateSuggestionsCheckedAll);
1230
1275
  },
1231
1276
  handleSuggestionKeyDown: function handleSuggestionKeyDown(event) {
1232
1277
  var keyCode = event.keyCode,
@@ -1279,11 +1324,30 @@ var InputSizeMap = {
1279
1324
 
1280
1325
  targetNode.doCheck(!checked);
1281
1326
  this.panel.calculateMultiCheckedValue();
1327
+ this.updateSuggestionsCheckedAll();
1328
+ this.$nextTick(this.updatePopper);
1282
1329
  } else {
1283
1330
  this.checkedValue = targetNode.getValueByOption();
1284
1331
  this.toggleDropDownVisible(false);
1285
1332
  }
1286
1333
  },
1334
+ handleSuggestionClickAll: function handleSuggestionClickAll() {
1335
+ var _this6 = this;
1336
+
1337
+ this.suggestions.forEach(function (item) {
1338
+ item.doCheck(!_this6.isSuggestionsCheckedAll);
1339
+ });
1340
+ this.panel.calculateMultiCheckedValue();
1341
+ this.updateSuggestionsCheckedAll();
1342
+ this.$nextTick(this.updatePopper);
1343
+ },
1344
+ updateSuggestionsCheckedAll: function updateSuggestionsCheckedAll() {
1345
+ if (this.dropDownVisible && this.multiple && this.filtering && this.suggestions.length > 0) {
1346
+ this.isSuggestionsCheckedAll = this.suggestions.every(function (item) {
1347
+ return item.checked;
1348
+ });
1349
+ }
1350
+ },
1287
1351
  deleteTag: function deleteTag(tag) {
1288
1352
  var checkedValue = this.checkedValue;
1289
1353
 
@@ -1295,6 +1359,7 @@ var InputSizeMap = {
1295
1359
  return !Object(util_["isEqual"])(n, current);
1296
1360
  });
1297
1361
  this.$emit('remove-tag', val);
1362
+ this.$nextTick(this.updateSuggestionsCheckedAll);
1298
1363
  },
1299
1364
  updateStyle: function updateStyle() {
1300
1365
  var $el = this.$el,
@@ -38685,8 +38685,8 @@ collapse_item.install = function (Vue) {
38685
38685
  };
38686
38686
 
38687
38687
  /* harmony default export */ var packages_collapse_item = (collapse_item);
38688
- // CONCATENATED MODULE: ./node_modules/.store/vue-loader@15.11.1/node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/.store/vue-loader@15.11.1/node_modules/vue-loader/lib??vue-loader-options!./packages/cascader/src/cascader.vue?vue&type=template&id=16190d09
38689
- var cascadervue_type_template_id_16190d09_render = function () {
38688
+ // CONCATENATED MODULE: ./node_modules/.store/vue-loader@15.11.1/node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/.store/vue-loader@15.11.1/node_modules/vue-loader/lib??vue-loader-options!./packages/cascader/src/cascader.vue?vue&type=template&id=1c51707e
38689
+ var cascadervue_type_template_id_1c51707e_render = function () {
38690
38690
  var _vm = this
38691
38691
  var _h = _vm.$createElement
38692
38692
  var _c = _vm._self._c || _h
@@ -38917,6 +38917,28 @@ var cascadervue_type_template_id_16190d09_render = function () {
38917
38917
  expression: "checkedValue",
38918
38918
  },
38919
38919
  }),
38920
+ _vm.multiple &&
38921
+ _vm.filterable &&
38922
+ _vm.filtering &&
38923
+ _vm.suggestions.length
38924
+ ? _c(
38925
+ "li",
38926
+ {
38927
+ class: [
38928
+ "el-cascader__suggestion-item el-cascader__suggestion-item-all",
38929
+ _vm.isSuggestionsCheckedAll && "is-checked",
38930
+ ],
38931
+ attrs: { tabindex: -1 },
38932
+ on: { click: _vm.handleSuggestionClickAll },
38933
+ },
38934
+ [
38935
+ _c("span", [_vm._v(" 全选 ")]),
38936
+ _vm.isSuggestionsCheckedAll
38937
+ ? _c("i", { staticClass: "el-icon-check" })
38938
+ : _vm._e(),
38939
+ ]
38940
+ )
38941
+ : _vm._e(),
38920
38942
  _vm.filterable
38921
38943
  ? _c(
38922
38944
  "el-scrollbar",
@@ -38996,11 +39018,11 @@ var cascadervue_type_template_id_16190d09_render = function () {
38996
39018
  1
38997
39019
  )
38998
39020
  }
38999
- var cascadervue_type_template_id_16190d09_staticRenderFns = []
39000
- cascadervue_type_template_id_16190d09_render._withStripped = true
39021
+ var cascadervue_type_template_id_1c51707e_staticRenderFns = []
39022
+ cascadervue_type_template_id_1c51707e_render._withStripped = true
39001
39023
 
39002
39024
 
39003
- // CONCATENATED MODULE: ./packages/cascader/src/cascader.vue?vue&type=template&id=16190d09
39025
+ // CONCATENATED MODULE: ./packages/cascader/src/cascader.vue?vue&type=template&id=1c51707e
39004
39026
 
39005
39027
  // EXTERNAL MODULE: external "bi-eleme/lib/cascader-panel"
39006
39028
  var cascader_panel_ = __webpack_require__(43);
@@ -39149,6 +39171,21 @@ var aria_utils_default = /*#__PURE__*/__webpack_require__.n(aria_utils_);
39149
39171
  //
39150
39172
  //
39151
39173
  //
39174
+ //
39175
+ //
39176
+ //
39177
+ //
39178
+ //
39179
+ //
39180
+ //
39181
+ //
39182
+ //
39183
+ //
39184
+ //
39185
+ //
39186
+ //
39187
+ //
39188
+ //
39152
39189
 
39153
39190
 
39154
39191
 
@@ -39283,6 +39320,7 @@ var InputSizeMap = {
39283
39320
  checkedNodes: [],
39284
39321
  filtering: false,
39285
39322
  suggestions: [],
39323
+ isSuggestionsCheckedAll: false,
39286
39324
  inputInitialHeight: 0,
39287
39325
  pressDeleteCount: 0
39288
39326
  };
@@ -39300,6 +39338,11 @@ var InputSizeMap = {
39300
39338
  isDisabled: function isDisabled() {
39301
39339
  return this.disabled || (this.elForm || {}).disabled;
39302
39340
  },
39341
+
39342
+ // isSuggestionsCheckedAll() {
39343
+
39344
+ // return this.suggestions.length > 0 && this.suggestions.find((item) => item.checked)
39345
+ // },
39303
39346
  config: function config() {
39304
39347
  var config = this.props || {};
39305
39348
  var $attrs = this.$attrs;
@@ -39639,6 +39682,7 @@ var InputSizeMap = {
39639
39682
  this.presentTags.forEach(function (tag) {
39640
39683
  tag.hitState = false;
39641
39684
  });
39685
+ this.updateSuggestionsCheckedAll();
39642
39686
  } else {
39643
39687
  suggestions.forEach(function (node) {
39644
39688
  node.checked = Object(util_["isEqual"])(_this5.checkedValue, node.getValueByOption());
@@ -39648,6 +39692,7 @@ var InputSizeMap = {
39648
39692
  this.filtering = true;
39649
39693
  this.suggestions = suggestions;
39650
39694
  this.$nextTick(this.updatePopper);
39695
+ this.multiple && this.$nextTick(this.updateSuggestionsCheckedAll);
39651
39696
  },
39652
39697
  handleSuggestionKeyDown: function handleSuggestionKeyDown(event) {
39653
39698
  var keyCode = event.keyCode,
@@ -39700,11 +39745,30 @@ var InputSizeMap = {
39700
39745
 
39701
39746
  targetNode.doCheck(!checked);
39702
39747
  this.panel.calculateMultiCheckedValue();
39748
+ this.updateSuggestionsCheckedAll();
39749
+ this.$nextTick(this.updatePopper);
39703
39750
  } else {
39704
39751
  this.checkedValue = targetNode.getValueByOption();
39705
39752
  this.toggleDropDownVisible(false);
39706
39753
  }
39707
39754
  },
39755
+ handleSuggestionClickAll: function handleSuggestionClickAll() {
39756
+ var _this6 = this;
39757
+
39758
+ this.suggestions.forEach(function (item) {
39759
+ item.doCheck(!_this6.isSuggestionsCheckedAll);
39760
+ });
39761
+ this.panel.calculateMultiCheckedValue();
39762
+ this.updateSuggestionsCheckedAll();
39763
+ this.$nextTick(this.updatePopper);
39764
+ },
39765
+ updateSuggestionsCheckedAll: function updateSuggestionsCheckedAll() {
39766
+ if (this.dropDownVisible && this.multiple && this.filtering && this.suggestions.length > 0) {
39767
+ this.isSuggestionsCheckedAll = this.suggestions.every(function (item) {
39768
+ return item.checked;
39769
+ });
39770
+ }
39771
+ },
39708
39772
  deleteTag: function deleteTag(tag) {
39709
39773
  var checkedValue = this.checkedValue;
39710
39774
 
@@ -39716,6 +39780,7 @@ var InputSizeMap = {
39716
39780
  return !Object(util_["isEqual"])(n, current);
39717
39781
  });
39718
39782
  this.$emit('remove-tag', val);
39783
+ this.$nextTick(this.updateSuggestionsCheckedAll);
39719
39784
  },
39720
39785
  updateStyle: function updateStyle() {
39721
39786
  var $el = this.$el,
@@ -39768,8 +39833,8 @@ var InputSizeMap = {
39768
39833
 
39769
39834
  var cascader_component = normalizeComponent(
39770
39835
  src_cascadervue_type_script_lang_js,
39771
- cascadervue_type_template_id_16190d09_render,
39772
- cascadervue_type_template_id_16190d09_staticRenderFns,
39836
+ cascadervue_type_template_id_1c51707e_render,
39837
+ cascadervue_type_template_id_1c51707e_staticRenderFns,
39773
39838
  false,
39774
39839
  null,
39775
39840
  null,
@@ -48982,7 +49047,7 @@ if (typeof window !== 'undefined' && window.Vue) {
48982
49047
  }
48983
49048
 
48984
49049
  /* harmony default export */ var src_0 = __webpack_exports__["default"] = ({
48985
- version: '2.4.4',
49050
+ version: '2.4.5',
48986
49051
  locale: lib_locale_default.a.use,
48987
49052
  i18n: lib_locale_default.a.i18n,
48988
49053
  install: src_install,