diff --git a/js/angular-tablesort.js b/js/angular-tablesort.js index e260aea..c56d803 100644 --- a/js/angular-tablesort.js +++ b/js/angular-tablesort.js @@ -516,10 +516,10 @@ tableSortModule.directive( 'tsRepeat', ['$compile', '$interpolate', function($co var tsExpr = 'tablesortOrderBy:sortFun | tablesortLimit:filterLimitFun | tablesortLimit:pageLimitFun'; var repeatExpr = element.attr(ngRepeatDirective); - var repeatExprRegex = /^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(\s+track\s+by\s+[\s\S]+?)?\s*$/; + repeatExpr = repeatExpr.replace('::', ''); + var repeatExprRegex = /^\s*([\s\S]+?)\s+in\s+([\S]+?)\s+([\s\S]+?)(\s+track\s+by\s+[\s\S]+?)?\s*$/; var trackByMatch = repeatExpr.match(/\s+track\s+by\s+(\$index|\S+?\.(\S+))/); - var repeatInMatch = repeatExpr.match(repeatExprRegex); - if (trackByMatch) { + if (trackByMatch) { tsWrapperCtrl.setTrackBy(trackByMatch[2] || trackByMatch[1]); } @@ -534,6 +534,8 @@ tableSortModule.directive( 'tsRepeat', ['$compile', '$interpolate', function($co repeatExpr = repeatExpr.replace(repeatExprRegex, '$1 in $2 | ' + tsExpr + '$3'); } + var repeatInMatch = repeatExpr.match(repeatExprRegex); + if (angular.isUndefined(attrs.tsHideNoData)) { var startSym = $interpolate.startSymbol(); var endSym = $interpolate.endSymbol();