At what condition, we should use ng-show, ng-hide, ng-if and filter with ng-repeat