MCPcopy Create free account
hub / github.com/UI5/webcomponents / _inputLiveChange

Method _inputLiveChange

packages/main/src/MultiComboBox.ts:753–807  ·  view source on GitHub ↗
(e: InputEvent)

Source from the content-addressed store, hash-verified

751 }
752
753 _inputLiveChange(e: InputEvent) {
754 // This ensures proper input clearing after Enter-based token creation during composition
755 if (this._suppressNextLiveChange) {
756 this._suppressNextLiveChange = false;
757 return;
758 }
759
760 const input = e.target as HTMLInputElement;
761 const value: string = input.value;
762 const filteredItems: Array<IMultiComboBoxItem> = this._filterItems(value);
763
764 this._shouldFilterItems = true;
765
766 if (this.filterSelected) {
767 this.filterSelected = false;
768 }
769
770 if (this._validationTimeout) {
771 if (this._filterItems(value).length) {
772 this._updateValueState(this._effectiveValueState);
773 this._validationTimeout = null;
774 } else {
775 return;
776 }
777 }
778
779 // Save the original value state before setting validation error
780 if (this.valueState !== ValueState.Negative) {
781 this._effectiveValueState = this.valueState;
782 }
783
784 if (!this._isComposing && !filteredItems.length && value && !this.noValidation) {
785 this._updateValueState(ValueState.Negative);
786 this._shouldAutocomplete = false;
787 } else if ((filteredItems.length || !value) && this.valueState === ValueState.Negative) {
788 this._updateValueState(this._effectiveValueState);
789 }
790
791 if (!this._isComposing) {
792 this._inputLastValue = input.value;
793 }
794
795 this.value = input.value;
796 this._filteredItems = filteredItems;
797
798 if (!isPhone()) {
799 if (filteredItems.length === 0) {
800 this.open = false;
801 } else {
802 this.open = true;
803 }
804 }
805
806 this.fireDecoratorEvent("input");
807 }
808
809 _updateValueState(newValueState: `${ValueState}`) {
810 const oldValueState = this.valueState;

Callers

nothing calls this directly

Calls 3

_filterItemsMethod · 0.95
_updateValueStateMethod · 0.95
isPhoneFunction · 0.85

Tested by

no test coverage detected