For any other filters that do not require OR conditions, I suggest appending them in regular way. e.g.:
let newChoices = wixData.filter()
newChoises = newChoices.gt('priceField', minPrice).lt('priceField', maxPrice)
newChoices = newChoices
.and(createFilterGroup(categories))
.and(createFilterGroup(brakes))
.and(createFilterGroup(shifters))
.and(createFilterGroup(brands))
$w('#datasetDeals').setFilter(newChoices)