Help combining dropdown filter with range filter

Ok, that is a lot of filters. I created this for you to try it. Let me know how it goes.

Just change the ids from your dropdowns to the same ones on the example.

//You need to rename your dropdowns ids to match the ones in the example for it to work.

import wixData from 'wix-data'

let selectedValues = []
let dropdowns

const filterDataset = (e) => {
  selectedValues = dropdowns
    .map(({ id, value }) => ({ id: id.replace(/\d+/g, ''), value }))
    .filter((d) => d.value)

  let filtersValues = selectedValues.map((dropdown) =>
    wixData.filter().contains(dropdown.id, dropdown.value)
  )

  const allFilters = filtersValues.reduce((fn, obj) => fn.and(obj))
  if ($w('#teCyearStart').value && $w('#teCyearEnd').value) {
    $w('#dataset').setFilter(
      wixData
        .filter()
        .between('teCyear', +$w('#teCyearStart').value, +$w('#teCyearEnd').value)
        .and(allFilters)
    )
  } else {
    $w('#dataset').setFilter(allFilters)
  }
}

$w.onReady(function () {
  dropdowns = $w('#teCnumber, #country, #region, #tags1, #tags2, #tags3')
  dropdowns.onChange(filterDataset)
  $w('#teCyearStart, #teCyearEnd').onChange(filterDataset)
})