@syncfusion/ej2-multicolumn-combobox 33.1.44 → 33.1.49
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/dist/ej2-multicolumn-combobox.umd.min.js +2 -2
- package/dist/ej2-multicolumn-combobox.umd.min.js.map +1 -1
- package/dist/es6/ej2-multicolumn-combobox.es2015.js +27 -0
- package/dist/es6/ej2-multicolumn-combobox.es2015.js.map +1 -1
- package/dist/es6/ej2-multicolumn-combobox.es5.js +27 -0
- package/dist/es6/ej2-multicolumn-combobox.es5.js.map +1 -1
- package/dist/global/ej2-multicolumn-combobox.min.js +2 -2
- package/dist/global/ej2-multicolumn-combobox.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +3 -3
- package/src/multicolumn-combobox/multi-column-combo-box.d.ts +1 -0
- package/src/multicolumn-combobox/multi-column-combo-box.js +27 -0
|
@@ -208,6 +208,7 @@ let MultiColumnComboBox = class MultiColumnComboBox extends Component {
|
|
|
208
208
|
super(options, element);
|
|
209
209
|
this.gridInject = new MultiColumnGrid();
|
|
210
210
|
this.isShowSpinner = true;
|
|
211
|
+
this.isClearing = false;
|
|
211
212
|
this.gridInject.InjectModules();
|
|
212
213
|
}
|
|
213
214
|
/**
|
|
@@ -467,6 +468,13 @@ let MultiColumnComboBox = class MultiColumnComboBox extends Component {
|
|
|
467
468
|
this.updateGridHeight(true, true);
|
|
468
469
|
}
|
|
469
470
|
this.popupObj.refreshPosition();
|
|
471
|
+
if (args.requestType === 'refresh') {
|
|
472
|
+
setTimeout(() => {
|
|
473
|
+
if (this.popupObj && this.isPopupOpen) {
|
|
474
|
+
this.popupObj.refreshPosition();
|
|
475
|
+
}
|
|
476
|
+
}, 0);
|
|
477
|
+
}
|
|
470
478
|
this.gridObj.element.querySelector('.e-content').scrollTop = 0;
|
|
471
479
|
}
|
|
472
480
|
handleKeyPressed(args) {
|
|
@@ -790,6 +798,10 @@ let MultiColumnComboBox = class MultiColumnComboBox extends Component {
|
|
|
790
798
|
return fieldVal;
|
|
791
799
|
}
|
|
792
800
|
initValue(isRerender, isValue, isInitial) {
|
|
801
|
+
// Prevent re-entry during null value clearing
|
|
802
|
+
if (this.isClearing) {
|
|
803
|
+
return;
|
|
804
|
+
}
|
|
793
805
|
const prevItemData = this.gridObj.getSelectedRecords()[0];
|
|
794
806
|
const prevItemEle = this.gridObj.getSelectedRows()[0];
|
|
795
807
|
let item;
|
|
@@ -800,6 +812,21 @@ let MultiColumnComboBox = class MultiColumnComboBox extends Component {
|
|
|
800
812
|
this.isProtectedOnChange = true;
|
|
801
813
|
this.value = this.value ? this.value.toString() : this.value;
|
|
802
814
|
this.isProtectedOnChange = prevOnChange;
|
|
815
|
+
// Handle explicit null value assignment
|
|
816
|
+
if (isRerender && isValue && isNullOrUndefined(this.value)) {
|
|
817
|
+
this.isClearing = true;
|
|
818
|
+
// Clear all state when value is explicitly set to null
|
|
819
|
+
const prevOnChangeProtect = this.isProtectedOnChange;
|
|
820
|
+
this.isProtectedOnChange = true;
|
|
821
|
+
Input.setValue('', this.inputEle, this.floatLabelType, this.showClearButton);
|
|
822
|
+
this.setHiddenValue(); // Clears hidden element when value is null
|
|
823
|
+
this.gridObj.clearSelection();
|
|
824
|
+
this.text = null;
|
|
825
|
+
this.index = null;
|
|
826
|
+
this.isProtectedOnChange = prevOnChangeProtect;
|
|
827
|
+
this.isClearing = false;
|
|
828
|
+
return;
|
|
829
|
+
}
|
|
803
830
|
const updateValues = (dataList) => {
|
|
804
831
|
const result = this.updateCurrentValues(item, dataList);
|
|
805
832
|
currentValue = result.currentValue;
|