<div class="filtered-select container" ng-keyup="handleKeyup($event)" ng-class="{open: suggesting}">
	<input type="text"
		highlight
		placeholder="{{placeholder}}"
		ng-model="ngModel"
		ng-model-options="{updateOn: 'update'}"
		ng-focus="suggesting=true"/>
	<div class="suggestions" ng-show="suggesting" trap-scroll>
		<div class="group"
			ng-repeat="(groupKey, items) in options()"
			ng-if="(items | filter:contains).length > 0">
			<div class="title uppercase" ng-if="groupKey != 'undefined'">{{groupKey}}</div>
			<div class="item"
				ng-repeat="item in items | filter:contains"
				ng-click="root.suggesting=false;root.ngModel=getValue(item)">{{getValue(item)}}</div>
		</div>
	</div>
</div>