We need 2 elements for this to work:
The first part of the code sets a few constants on the page:
// Collection List Wrapper
  const listWrap = document.getElementById('listWrap');
  // Collection List
  const list = document.getElementById('autoCompleteList');
  // Search Input Field
  const searchBar = document.getElementById('searchBar');
Next we have a 'keyup' event listener. This part 'listens' to any key pressed inside the search bar and filters through the items lists. It changes the css of each item (display:block or display:none) according to the term typed.
searchBar.addEventListener('keyup', function(e){
    const term = e.target.value.toLowerCase();
    // All the elements that will be searchable (can be the item, or a div inside each item)
    const searchItems = list.getElementsByClassName('list-item');
    Array.from(searchItems).forEach(function(item){
      const text = item.firstElementChild.textContent;
      if(text.toLowerCase().indexOf(term)!=-1){
        item.style.display = 'block';
      }
      else {
        item.style.display = 'none';
      }
    })
  })
The last part is the interaction that opens and closes the list when the focus is on the search bar.
Put all those 3 code snippets together at the custom code section of your page under the Before </body> tag.
// Open list when search bar is focused
  searchBar.addEventListener('focusin', (event) => {
    listWrap.style.maxHeight = "400px";
  });
  
  // Close list when search bar is focused
  searchBar.addEventListener('focusout', (event) => {
    listWrap.style.maxHeight = "0";
  });
