Delay filtering when using a Search Field

I have a Search Field that when altered changes a list of results.
The list is quite big so each time the user presses a letter on the keyboard it takes some time to get the results and filtering it for every keypress makes it a bit unresponsive.

What I would like to do is apply a delay of half a second or so, so if the user is still typing then the search filtering will not be applied, unfortunately I have no idea how to go about it in angular.

I also would suggest to add a search field with this functionality as well with a button to clear it as a directive in ionic, its a very much needed feature that almost all applications need it these days.