@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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 33.1.44
3
+ * version : 33.1.49
4
4
  * Copyright Syncfusion Inc. 2001 - 2025. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@syncfusion/ej2-multicolumn-combobox",
3
- "version": "33.1.44",
3
+ "version": "33.1.49",
4
4
  "description": "Essential JS 2 Component",
5
5
  "author": "Syncfusion Inc.",
6
6
  "license": "SEE LICENSE IN license",
@@ -9,8 +9,8 @@
9
9
  "es2015": "./dist/es6/ej2-multicolumn-combobox.es5.js",
10
10
  "typings": "index.d.ts",
11
11
  "dependencies": {
12
- "@syncfusion/ej2-base": "~33.1.44",
13
- "@syncfusion/ej2-grids": "~33.1.44"
12
+ "@syncfusion/ej2-base": "~33.1.45",
13
+ "@syncfusion/ej2-grids": "~33.1.49"
14
14
  },
15
15
  "devDependencies": {},
16
16
  "keywords": [
@@ -792,6 +792,7 @@ export declare class MultiColumnComboBox extends Component<HTMLElement> implemen
792
792
  private customFilterQuery;
793
793
  private typedString;
794
794
  private liveRegion;
795
+ private isClearing;
795
796
  /**
796
797
  * *Constructor for creating the component
797
798
  *
@@ -272,6 +272,7 @@ var MultiColumnComboBox = /** @class */ (function (_super) {
272
272
  var _this = _super.call(this, options, element) || this;
273
273
  _this.gridInject = new MultiColumnGrid();
274
274
  _this.isShowSpinner = true;
275
+ _this.isClearing = false;
275
276
  _this.gridInject.InjectModules();
276
277
  return _this;
277
278
  }
@@ -531,6 +532,13 @@ var MultiColumnComboBox = /** @class */ (function (_super) {
531
532
  this.updateGridHeight(true, true);
532
533
  }
533
534
  this.popupObj.refreshPosition();
535
+ if (args.requestType === 'refresh') {
536
+ setTimeout(function () {
537
+ if (_this.popupObj && _this.isPopupOpen) {
538
+ _this.popupObj.refreshPosition();
539
+ }
540
+ }, 0);
541
+ }
534
542
  this.gridObj.element.querySelector('.e-content').scrollTop = 0;
535
543
  };
536
544
  MultiColumnComboBox.prototype.handleKeyPressed = function (args) {
@@ -863,6 +871,10 @@ var MultiColumnComboBox = /** @class */ (function (_super) {
863
871
  };
864
872
  MultiColumnComboBox.prototype.initValue = function (isRerender, isValue, isInitial) {
865
873
  var _this = this;
874
+ // Prevent re-entry during null value clearing
875
+ if (this.isClearing) {
876
+ return;
877
+ }
866
878
  var prevItemData = this.gridObj.getSelectedRecords()[0];
867
879
  var prevItemEle = this.gridObj.getSelectedRows()[0];
868
880
  var item;
@@ -873,6 +885,21 @@ var MultiColumnComboBox = /** @class */ (function (_super) {
873
885
  this.isProtectedOnChange = true;
874
886
  this.value = this.value ? this.value.toString() : this.value;
875
887
  this.isProtectedOnChange = prevOnChange;
888
+ // Handle explicit null value assignment
889
+ if (isRerender && isValue && isNOU(this.value)) {
890
+ this.isClearing = true;
891
+ // Clear all state when value is explicitly set to null
892
+ var prevOnChangeProtect = this.isProtectedOnChange;
893
+ this.isProtectedOnChange = true;
894
+ Input.setValue('', this.inputEle, this.floatLabelType, this.showClearButton);
895
+ this.setHiddenValue(); // Clears hidden element when value is null
896
+ this.gridObj.clearSelection();
897
+ this.text = null;
898
+ this.index = null;
899
+ this.isProtectedOnChange = prevOnChangeProtect;
900
+ this.isClearing = false;
901
+ return;
902
+ }
876
903
  var updateValues = function (dataList) {
877
904
  var result = _this.updateCurrentValues(item, dataList);
878
905
  currentValue = result.currentValue;