MCPcopy Index your code
hub / github.com/UI5/webcomponents / _navigateToPrevItem

Method _navigateToPrevItem

packages/main/src/MultiComboBox.ts:1411–1446  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1409 }
1410
1411 _navigateToPrevItem() {
1412 const items = this._getItems();
1413 let previousItemIdx = this.currentItemIdx;
1414
1415 if ((!this.value && previousItemIdx !== -1) || (previousItemIdx !== -1 && this.value && this.value !== items[previousItemIdx].text)) {
1416 previousItemIdx = -1;
1417 }
1418
1419 if (previousItemIdx === -1) {
1420 this.currentItemIdx = items.length;
1421 }
1422
1423 if (previousItemIdx === 0) {
1424 this.currentItemIdx = 0;
1425 return;
1426 }
1427
1428 let currentItem = this._getItems()[--this.currentItemIdx];
1429
1430 while ((currentItem && this.currentItemIdx > 0) && (currentItem.selected || currentItem.isGroupItem)) {
1431 currentItem = this._getItems()[--this.currentItemIdx];
1432 }
1433
1434 if (!currentItem) {
1435 return;
1436 }
1437
1438 if (currentItem.selected || currentItem.isGroupItem) {
1439 this.currentItemIdx = previousItemIdx;
1440 return;
1441 }
1442
1443 this.value = currentItem.text!;
1444 this._innerInput.value = currentItem.text!;
1445 this._innerInput.setSelectionRange(0, currentItem.text!.length);
1446 }
1447
1448 _handleEnter() {
1449 const lowerCaseValue = this.value.toLowerCase();

Callers 1

Calls 1

_getItemsMethod · 0.95

Tested by

no test coverage detected