From 88220068e7eded7fb8f9a40234952c6c55cf903e Mon Sep 17 00:00:00 2001 From: Georgios Kalpakas Date: Fri, 7 Oct 2016 18:58:53 +0300 Subject: [PATCH 01/15] refactor(ngClass): remove unnecessary dependency on `$animate` --- src/ng/directive/ngClass.js | 12 ++++------ test/ng/directive/ngClassSpec.js | 41 ++++++++++++++++++++------------ 2 files changed, 31 insertions(+), 22 deletions(-) diff --git a/src/ng/directive/ngClass.js b/src/ng/directive/ngClass.js index 7e138b065dc2..12d742cf3ece 100644 --- a/src/ng/directive/ngClass.js +++ b/src/ng/directive/ngClass.js @@ -8,7 +8,8 @@ function classDirective(name, selector) { name = 'ngClass' + name; - return ['$animate', function($animate) { + + return [function() { return { restrict: 'AC', link: function(scope, element, attr) { @@ -69,12 +70,9 @@ function classDirective(name, selector) { var toRemove = arrayDifference(oldClasses, newClasses); toAdd = digestClassCounts(toAdd, 1); toRemove = digestClassCounts(toRemove, -1); - if (toAdd && toAdd.length) { - $animate.addClass(element, toAdd); - } - if (toRemove && toRemove.length) { - $animate.removeClass(element, toRemove); - } + + attr.$addClass(toAdd); + attr.$removeClass(toRemove); } function ngClassWatchAction(newVal) { diff --git a/test/ng/directive/ngClassSpec.js b/test/ng/directive/ngClassSpec.js index b30d1318317c..ffcf369c5b21 100644 --- a/test/ng/directive/ngClassSpec.js +++ b/test/ng/directive/ngClassSpec.js @@ -1,6 +1,6 @@ 'use strict'; -describe('ngClass', function() { +fdescribe('ngClass', function() { var element; beforeEach(module(function($compileProvider) { @@ -244,21 +244,34 @@ describe('ngClass', function() { })); - it('should allow ngClassOdd/Even on the same element with overlapping classes', inject(function($rootScope, $compile, $animate) { - var className; - - element = $compile('