@weitutech/by-components 1.1.212 → 1.1.214
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/by-components.common.js +209 -64
- package/lib/by-components.umd.js +209 -64
- package/lib/by-components.umd.min.js +1 -1
- package/lib/index.css +1 -1
- package/package.json +1 -1
package/lib/by-components.umd.js
CHANGED
|
@@ -74537,8 +74537,8 @@ var component = normalizeComponent(
|
|
|
74537
74537
|
)
|
|
74538
74538
|
|
|
74539
74539
|
/* harmony default export */ var pager = (component.exports);
|
|
74540
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"8cd600e8-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/table/index.vue?vue&type=template&id=
|
|
74541
|
-
var
|
|
74540
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"8cd600e8-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/table/index.vue?vue&type=template&id=f5e98ace
|
|
74541
|
+
var tablevue_type_template_id_f5e98ace_render = function render() {
|
|
74542
74542
|
var _vm = this,
|
|
74543
74543
|
_c = _vm._self._c;
|
|
74544
74544
|
return _c('div', [_c('vxe-grid', _vm._g(_vm._b({
|
|
@@ -74623,7 +74623,7 @@ var tablevue_type_template_id_96b0fb18_render = function render() {
|
|
|
74623
74623
|
}
|
|
74624
74624
|
}) : _vm._e()], 1);
|
|
74625
74625
|
};
|
|
74626
|
-
var
|
|
74626
|
+
var tablevue_type_template_id_f5e98ace_staticRenderFns = [];
|
|
74627
74627
|
|
|
74628
74628
|
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
|
|
74629
74629
|
var es_array_push = __webpack_require__(4114);
|
|
@@ -77840,6 +77840,11 @@ var custom_column_component = normalizeComponent(
|
|
|
77840
77840
|
handleOpenCustomColumn() {
|
|
77841
77841
|
this.customTableVisible = true;
|
|
77842
77842
|
},
|
|
77843
|
+
clearSelection() {
|
|
77844
|
+
if (this.$refs.xGrid) {
|
|
77845
|
+
this.$refs.xGrid.clearCheckboxRow();
|
|
77846
|
+
}
|
|
77847
|
+
},
|
|
77843
77848
|
// 改变表头字段
|
|
77844
77849
|
changeTableFields(cols) {
|
|
77845
77850
|
var _this$gridOptions$cus3;
|
|
@@ -78253,8 +78258,8 @@ var custom_column_component = normalizeComponent(
|
|
|
78253
78258
|
;
|
|
78254
78259
|
var table_component = normalizeComponent(
|
|
78255
78260
|
components_tablevue_type_script_lang_js,
|
|
78256
|
-
|
|
78257
|
-
|
|
78261
|
+
tablevue_type_template_id_f5e98ace_render,
|
|
78262
|
+
tablevue_type_template_id_f5e98ace_staticRenderFns,
|
|
78258
78263
|
false,
|
|
78259
78264
|
null,
|
|
78260
78265
|
null,
|
|
@@ -78761,13 +78766,16 @@ var pair_number_input_component = normalizeComponent(
|
|
|
78761
78766
|
)
|
|
78762
78767
|
|
|
78763
78768
|
/* harmony default export */ var pair_number_input = (pair_number_input_component.exports);
|
|
78764
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"8cd600e8-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/comps/custom-date-picker.vue?vue&type=template&id=
|
|
78765
|
-
var
|
|
78769
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"8cd600e8-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/comps/custom-date-picker.vue?vue&type=template&id=dd2e875c
|
|
78770
|
+
var custom_date_pickervue_type_template_id_dd2e875c_render = function render() {
|
|
78766
78771
|
var _vm = this,
|
|
78767
78772
|
_c = _vm._self._c;
|
|
78768
78773
|
return _c('div', {
|
|
78769
|
-
staticClass: "b-picker wrapper"
|
|
78770
|
-
|
|
78774
|
+
staticClass: "b-picker wrapper",
|
|
78775
|
+
class: {
|
|
78776
|
+
'b-picker--panel-shortcuts': _vm.shortcutLayout === 'panel'
|
|
78777
|
+
}
|
|
78778
|
+
}, [_vm.shortcutLayout === 'external' ? [_c('el-date-picker', _vm._b({
|
|
78771
78779
|
staticStyle: {
|
|
78772
78780
|
"width": "70%"
|
|
78773
78781
|
},
|
|
@@ -78792,9 +78800,24 @@ var custom_date_pickervue_type_template_id_7e995d1f_render = function render() {
|
|
|
78792
78800
|
}
|
|
78793
78801
|
}
|
|
78794
78802
|
}, [_vm._v(" " + _vm._s(item.label) + " ")]);
|
|
78795
|
-
}), 0)],
|
|
78803
|
+
}), 0)] : _c('el-date-picker', _vm._b({
|
|
78804
|
+
ref: "panelDatePicker",
|
|
78805
|
+
attrs: {
|
|
78806
|
+
"value": _vm.value,
|
|
78807
|
+
"popper-class": _vm.panelPopperClass
|
|
78808
|
+
},
|
|
78809
|
+
on: {
|
|
78810
|
+
"input": _vm.handleChange,
|
|
78811
|
+
"focus": _vm.handlePanelOpen
|
|
78812
|
+
},
|
|
78813
|
+
nativeOn: {
|
|
78814
|
+
"click": function ($event) {
|
|
78815
|
+
return _vm.handlePanelOpen.apply(null, arguments);
|
|
78816
|
+
}
|
|
78817
|
+
}
|
|
78818
|
+
}, 'el-date-picker', _vm.panelDateOptions, false))], 2);
|
|
78796
78819
|
};
|
|
78797
|
-
var
|
|
78820
|
+
var custom_date_pickervue_type_template_id_dd2e875c_staticRenderFns = [];
|
|
78798
78821
|
|
|
78799
78822
|
// EXTERNAL MODULE: ./node_modules/moment/moment.js
|
|
78800
78823
|
var moment = __webpack_require__(9618);
|
|
@@ -78831,11 +78854,27 @@ var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
|
|
|
78831
78854
|
endTimeField: {
|
|
78832
78855
|
type: String,
|
|
78833
78856
|
default: ''
|
|
78857
|
+
},
|
|
78858
|
+
/**
|
|
78859
|
+
* 快捷按钮展示方式
|
|
78860
|
+
* external: 快捷按钮在输入框右侧(默认,保持原有样式)
|
|
78861
|
+
* panel: 快捷按钮在日期选择面板内左侧
|
|
78862
|
+
*/
|
|
78863
|
+
shortcutLayout: {
|
|
78864
|
+
type: String,
|
|
78865
|
+
default: 'external',
|
|
78866
|
+
validator: value => ['external', 'panel'].includes(value)
|
|
78834
78867
|
}
|
|
78835
78868
|
},
|
|
78836
78869
|
data() {
|
|
78837
78870
|
return {
|
|
78838
|
-
|
|
78871
|
+
active: '',
|
|
78872
|
+
panelHighlightTimer: null
|
|
78873
|
+
};
|
|
78874
|
+
},
|
|
78875
|
+
computed: {
|
|
78876
|
+
shortcuts() {
|
|
78877
|
+
return [{
|
|
78839
78878
|
label: '上月',
|
|
78840
78879
|
start_time: moment_default()().subtract(1, 'months').startOf('month').format('YYYY-MM-DD'),
|
|
78841
78880
|
end_time: moment_default()().subtract(1, 'months').endOf('month').format('YYYY-MM-DD'),
|
|
@@ -78860,11 +78899,8 @@ var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
|
|
|
78860
78899
|
start_time: moment_default()().startOf('month').format('YYYY-MM-DD'),
|
|
78861
78900
|
end_time: moment_default()().endOf('month').format('YYYY-MM-DD'),
|
|
78862
78901
|
key: 'month'
|
|
78863
|
-
}]
|
|
78864
|
-
|
|
78865
|
-
};
|
|
78866
|
-
},
|
|
78867
|
-
computed: {
|
|
78902
|
+
}];
|
|
78903
|
+
},
|
|
78868
78904
|
dateOptions() {
|
|
78869
78905
|
return {
|
|
78870
78906
|
startPlaceholder: '开始时间',
|
|
@@ -78875,33 +78911,74 @@ var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
|
|
|
78875
78911
|
active: '',
|
|
78876
78912
|
...this.otherOption
|
|
78877
78913
|
};
|
|
78914
|
+
},
|
|
78915
|
+
panelDateOptions() {
|
|
78916
|
+
const {
|
|
78917
|
+
pickerOptions: userPickerOptions = {},
|
|
78918
|
+
...restOptions
|
|
78919
|
+
} = this.dateOptions;
|
|
78920
|
+
return {
|
|
78921
|
+
...restOptions,
|
|
78922
|
+
pickerOptions: {
|
|
78923
|
+
...userPickerOptions,
|
|
78924
|
+
shortcuts: this.panelShortcuts
|
|
78925
|
+
}
|
|
78926
|
+
};
|
|
78927
|
+
},
|
|
78928
|
+
panelShortcuts() {
|
|
78929
|
+
return this.shortcuts.map(item => ({
|
|
78930
|
+
text: item.label,
|
|
78931
|
+
onClick: picker => {
|
|
78932
|
+
this.active = item.key;
|
|
78933
|
+
picker.$emit('pick', [moment_default()(item.start_time).toDate(), moment_default()(item.end_time).toDate()]);
|
|
78934
|
+
this.schedulePanelShortcutHighlight();
|
|
78935
|
+
}
|
|
78936
|
+
}));
|
|
78937
|
+
},
|
|
78938
|
+
panelPopperClass() {
|
|
78939
|
+
return `by-custom-date-picker-panel by-custom-date-picker-panel--${this._uid}`;
|
|
78878
78940
|
}
|
|
78879
78941
|
},
|
|
78880
78942
|
watch: {
|
|
78943
|
+
active() {
|
|
78944
|
+
if (this.shortcutLayout === 'panel') {
|
|
78945
|
+
this.schedulePanelShortcutHighlight();
|
|
78946
|
+
}
|
|
78947
|
+
},
|
|
78881
78948
|
value: {
|
|
78882
|
-
handler(newValue
|
|
78883
|
-
|
|
78884
|
-
this.active = '';
|
|
78885
|
-
this.shortcuts.forEach(item => {
|
|
78886
|
-
if (item.start_time === newValue[0] && item.end_time === newValue[1]) {
|
|
78887
|
-
this.active = item.key;
|
|
78888
|
-
}
|
|
78889
|
-
});
|
|
78890
|
-
} else {
|
|
78891
|
-
this.active = this.dateOptions.active;
|
|
78892
|
-
const item = this.shortcuts.find(item => item.key === this.dateOptions.active) || {};
|
|
78893
|
-
if (item.start_time && item.end_time) {
|
|
78894
|
-
this.handleClick(item);
|
|
78895
|
-
}
|
|
78896
|
-
}
|
|
78949
|
+
handler(newValue) {
|
|
78950
|
+
this.syncActiveFromValue(newValue);
|
|
78897
78951
|
},
|
|
78898
78952
|
immediate: true
|
|
78899
78953
|
}
|
|
78900
78954
|
},
|
|
78955
|
+
beforeDestroy() {
|
|
78956
|
+
this.clearPanelHighlightTimer();
|
|
78957
|
+
},
|
|
78901
78958
|
methods: {
|
|
78959
|
+
syncActiveFromValue(newValue) {
|
|
78960
|
+
if (Array.isArray(newValue) && newValue.length) {
|
|
78961
|
+
const start = moment_default()(newValue[0]).format('YYYY-MM-DD');
|
|
78962
|
+
const end = moment_default()(newValue[1]).format('YYYY-MM-DD');
|
|
78963
|
+
let matchedKey = '';
|
|
78964
|
+
this.shortcuts.forEach(item => {
|
|
78965
|
+
if (item.start_time === start && item.end_time === end) {
|
|
78966
|
+
matchedKey = item.key;
|
|
78967
|
+
}
|
|
78968
|
+
});
|
|
78969
|
+
this.active = matchedKey;
|
|
78970
|
+
return;
|
|
78971
|
+
}
|
|
78972
|
+
this.active = this.dateOptions.active;
|
|
78973
|
+
const item = this.shortcuts.find(shortcut => shortcut.key === this.dateOptions.active) || {};
|
|
78974
|
+
if (item.start_time && item.end_time) {
|
|
78975
|
+
this.handleClick(item);
|
|
78976
|
+
}
|
|
78977
|
+
},
|
|
78902
78978
|
handleChange(e) {
|
|
78903
78979
|
if (!e) {
|
|
78904
78980
|
this.$emit('input', []);
|
|
78981
|
+
this.active = '';
|
|
78905
78982
|
if (this.startTimeField && this.endTimeField) {
|
|
78906
78983
|
this.$emit('range-change', {
|
|
78907
78984
|
startTime: '',
|
|
@@ -78917,8 +78994,10 @@ var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
|
|
|
78917
78994
|
endTime: formattedDates[1]
|
|
78918
78995
|
});
|
|
78919
78996
|
}
|
|
78997
|
+
|
|
78998
|
+
// 日期选择器初始化时也会触发 input,需同步快捷项高亮状态
|
|
78999
|
+
this.syncActiveFromValue(formattedDates);
|
|
78920
79000
|
}
|
|
78921
|
-
this.active = '';
|
|
78922
79001
|
},
|
|
78923
79002
|
handleClick(item) {
|
|
78924
79003
|
this.active = item.key;
|
|
@@ -78929,6 +79008,54 @@ var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
|
|
|
78929
79008
|
endTime: item.end_time
|
|
78930
79009
|
});
|
|
78931
79010
|
}
|
|
79011
|
+
},
|
|
79012
|
+
handlePanelOpen() {
|
|
79013
|
+
if (this.shortcutLayout !== 'panel') return;
|
|
79014
|
+
this.syncActiveFromValue(this.value);
|
|
79015
|
+
this.schedulePanelShortcutHighlight();
|
|
79016
|
+
},
|
|
79017
|
+
clearPanelHighlightTimer() {
|
|
79018
|
+
if (this.panelHighlightTimer) {
|
|
79019
|
+
clearTimeout(this.panelHighlightTimer);
|
|
79020
|
+
this.panelHighlightTimer = null;
|
|
79021
|
+
}
|
|
79022
|
+
},
|
|
79023
|
+
getPanelElement() {
|
|
79024
|
+
const datePicker = this.$refs.panelDatePicker;
|
|
79025
|
+
if (!datePicker) return null;
|
|
79026
|
+
if (datePicker.picker && datePicker.picker.$el) {
|
|
79027
|
+
return datePicker.picker.$el;
|
|
79028
|
+
}
|
|
79029
|
+
if (datePicker.$el) {
|
|
79030
|
+
const panelInRoot = datePicker.$el.querySelector('.by-custom-date-picker-panel');
|
|
79031
|
+
if (panelInRoot) return panelInRoot;
|
|
79032
|
+
}
|
|
79033
|
+
return document.querySelector(`.by-custom-date-picker-panel--${this._uid}`);
|
|
79034
|
+
},
|
|
79035
|
+
schedulePanelShortcutHighlight(retry = 0) {
|
|
79036
|
+
this.clearPanelHighlightTimer();
|
|
79037
|
+
this.$nextTick(() => {
|
|
79038
|
+
const updated = this.updatePanelShortcutHighlight();
|
|
79039
|
+
if (!updated && retry < 15) {
|
|
79040
|
+
this.panelHighlightTimer = setTimeout(() => {
|
|
79041
|
+
this.schedulePanelShortcutHighlight(retry + 1);
|
|
79042
|
+
}, 50);
|
|
79043
|
+
}
|
|
79044
|
+
});
|
|
79045
|
+
},
|
|
79046
|
+
updatePanelShortcutHighlight() {
|
|
79047
|
+
const panel = this.getPanelElement();
|
|
79048
|
+
if (!panel) return false;
|
|
79049
|
+
const shortcutEls = panel.querySelectorAll('.el-picker-panel__shortcut');
|
|
79050
|
+
if (!shortcutEls.length) return false;
|
|
79051
|
+
shortcutEls.forEach(el => {
|
|
79052
|
+
const label = (el.textContent || '').trim();
|
|
79053
|
+
const item = this.shortcuts.find(shortcut => shortcut.label === label);
|
|
79054
|
+
const isActive = !!(item && item.key === this.active);
|
|
79055
|
+
el.classList.toggle('active', isActive);
|
|
79056
|
+
el.classList.toggle('is-active', isActive);
|
|
79057
|
+
});
|
|
79058
|
+
return true;
|
|
78932
79059
|
}
|
|
78933
79060
|
}
|
|
78934
79061
|
});
|
|
@@ -78944,8 +79071,8 @@ var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
|
|
|
78944
79071
|
;
|
|
78945
79072
|
var custom_date_picker_component = normalizeComponent(
|
|
78946
79073
|
comps_custom_date_pickervue_type_script_lang_js,
|
|
78947
|
-
|
|
78948
|
-
|
|
79074
|
+
custom_date_pickervue_type_template_id_dd2e875c_render,
|
|
79075
|
+
custom_date_pickervue_type_template_id_dd2e875c_staticRenderFns,
|
|
78949
79076
|
false,
|
|
78950
79077
|
null,
|
|
78951
79078
|
null,
|
|
@@ -78954,8 +79081,8 @@ var custom_date_picker_component = normalizeComponent(
|
|
|
78954
79081
|
)
|
|
78955
79082
|
|
|
78956
79083
|
/* harmony default export */ var custom_date_picker = (custom_date_picker_component.exports);
|
|
78957
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"8cd600e8-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/common-selector/ByCommonSelector.vue?vue&type=template&id=
|
|
78958
|
-
var
|
|
79084
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"8cd600e8-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/common-selector/ByCommonSelector.vue?vue&type=template&id=781ea1a3
|
|
79085
|
+
var ByCommonSelectorvue_type_template_id_781ea1a3_render = function render() {
|
|
78959
79086
|
var _vm = this,
|
|
78960
79087
|
_c = _vm._self._c;
|
|
78961
79088
|
return _c('div', {
|
|
@@ -79547,7 +79674,7 @@ var ByCommonSelectorvue_type_template_id_05ec4584_render = function render() {
|
|
|
79547
79674
|
}
|
|
79548
79675
|
}, [_vm._v(" 加载中... ")]) : _vm._e()], 2);
|
|
79549
79676
|
};
|
|
79550
|
-
var
|
|
79677
|
+
var ByCommonSelectorvue_type_template_id_781ea1a3_staticRenderFns = [];
|
|
79551
79678
|
|
|
79552
79679
|
;// ./node_modules/pinyin-pro/dist/index.mjs
|
|
79553
79680
|
|
|
@@ -90326,6 +90453,12 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
|
|
|
90326
90453
|
this.localSuffixInputValue = val;
|
|
90327
90454
|
}
|
|
90328
90455
|
},
|
|
90456
|
+
showSuffixInput() {
|
|
90457
|
+
this.scheduleExpandCheck();
|
|
90458
|
+
},
|
|
90459
|
+
showSuffixBatchInput() {
|
|
90460
|
+
this.scheduleExpandCheck();
|
|
90461
|
+
},
|
|
90329
90462
|
enhancedAllOptions: {
|
|
90330
90463
|
handler(newOptions) {
|
|
90331
90464
|
if (this.type === 'enhancedSelect') {
|
|
@@ -90499,39 +90632,51 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
|
|
|
90499
90632
|
// 如果找不到容器,保持当前状态不变
|
|
90500
90633
|
return;
|
|
90501
90634
|
}
|
|
90635
|
+
const scrollContainer = container.querySelector('.by_scroll-container');
|
|
90636
|
+
// 排除 A~Z 字母筛选组,只取选项行(含后置输入框、插槽、批量按钮等同行内容)
|
|
90637
|
+
const optionGroup = scrollContainer === null || scrollContainer === void 0 ? void 0 : scrollContainer.querySelector('.el-radio-group:not(.by_Eng), .el-checkbox-group');
|
|
90502
90638
|
|
|
90503
|
-
//
|
|
90504
|
-
const items = container.querySelectorAll('.el-checkbox, .el-radio');
|
|
90639
|
+
// 至少需要一个选项才做宽度检测
|
|
90640
|
+
const items = optionGroup ? optionGroup.querySelectorAll('.el-checkbox, .el-radio') : container.querySelectorAll('.el-checkbox, .el-radio');
|
|
90505
90641
|
if (!items.length) {
|
|
90506
90642
|
this.needExpand = false;
|
|
90507
90643
|
return;
|
|
90508
90644
|
}
|
|
90509
90645
|
try {
|
|
90510
|
-
|
|
90511
|
-
|
|
90512
|
-
|
|
90513
|
-
|
|
90514
|
-
|
|
90515
|
-
|
|
90516
|
-
|
|
90517
|
-
totalWidth += item.offsetWidth + marginLeft + marginRight;
|
|
90646
|
+
let needExpand = false;
|
|
90647
|
+
if (optionGroup && scrollContainer) {
|
|
90648
|
+
// 用选项组 scrollWidth 衡量整行内容(选项 + 后置输入框 + 插槽 + 批量按钮)
|
|
90649
|
+
const contentWidth = optionGroup.scrollWidth;
|
|
90650
|
+
let visibleWidth = scrollContainer.clientWidth;
|
|
90651
|
+
if (!visibleWidth) {
|
|
90652
|
+
visibleWidth = container.offsetWidth;
|
|
90518
90653
|
}
|
|
90519
|
-
|
|
90520
|
-
|
|
90521
|
-
|
|
90522
|
-
|
|
90523
|
-
|
|
90524
|
-
|
|
90525
|
-
|
|
90526
|
-
|
|
90654
|
+
if (!visibleWidth && container.parentElement) {
|
|
90655
|
+
visibleWidth = container.parentElement.offsetWidth;
|
|
90656
|
+
}
|
|
90657
|
+
if (!visibleWidth) {
|
|
90658
|
+
visibleWidth = 500;
|
|
90659
|
+
}
|
|
90660
|
+
needExpand = contentWidth > visibleWidth;
|
|
90661
|
+
} else {
|
|
90662
|
+
// 回退:按选项逐项累加(兼容 DOM 结构异常场景)
|
|
90663
|
+
let totalWidth = 0;
|
|
90664
|
+
items.forEach(item => {
|
|
90665
|
+
if (item && item.offsetWidth) {
|
|
90666
|
+
const style = getComputedStyle(item);
|
|
90667
|
+
const marginLeft = parseInt(style.marginLeft) || 0;
|
|
90668
|
+
const marginRight = parseInt(style.marginRight) || 0;
|
|
90669
|
+
totalWidth += item.offsetWidth + marginLeft + marginRight;
|
|
90670
|
+
}
|
|
90671
|
+
});
|
|
90672
|
+
let containerWidth = container.offsetWidth;
|
|
90673
|
+
if (!containerWidth && container.parentElement) {
|
|
90674
|
+
containerWidth = container.parentElement.offsetWidth;
|
|
90675
|
+
}
|
|
90676
|
+
if (!containerWidth) containerWidth = 500;
|
|
90677
|
+
needExpand = totalWidth > containerWidth;
|
|
90527
90678
|
}
|
|
90528
90679
|
|
|
90529
|
-
// 确保有有效宽度
|
|
90530
|
-
if (!containerWidth) containerWidth = 500;
|
|
90531
|
-
|
|
90532
|
-
// 如果总宽度超过容器宽度,则需要展开按钮
|
|
90533
|
-
const needExpand = totalWidth > containerWidth;
|
|
90534
|
-
|
|
90535
90680
|
// 只有在状态变化时才更新,减少不必要的重渲染
|
|
90536
90681
|
if (this.needExpand !== needExpand) {
|
|
90537
90682
|
this.needExpand = needExpand;
|
|
@@ -91060,8 +91205,8 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
|
|
|
91060
91205
|
;
|
|
91061
91206
|
var ByCommonSelector_component = normalizeComponent(
|
|
91062
91207
|
common_selector_ByCommonSelectorvue_type_script_lang_js,
|
|
91063
|
-
|
|
91064
|
-
|
|
91208
|
+
ByCommonSelectorvue_type_template_id_781ea1a3_render,
|
|
91209
|
+
ByCommonSelectorvue_type_template_id_781ea1a3_staticRenderFns,
|
|
91065
91210
|
false,
|
|
91066
91211
|
null,
|
|
91067
91212
|
null,
|