Skip to content
This repository was archived by the owner on May 29, 2019. It is now read-only.

Commit 9d93af1

Browse files
committed
fix(carousel): remove version checks
- Make use of `$animateCss` directly since a shell service was introduced in Angular proper Closes #4122 Closes #4774
1 parent 30099a0 commit 9d93af1

File tree

1 file changed

+16
-45
lines changed

1 file changed

+16
-45
lines changed

src/carousel/carousel.js

+16-45
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ angular.module('ui.bootstrap.carousel', [])
33
.controller('UibCarouselController', ['$scope', '$element', '$interval', '$animate', function($scope, $element, $interval, $animate) {
44
var self = this,
55
slides = self.slides = $scope.slides = [],
6-
NEW_ANIMATE = angular.version.minor >= 4,
76
SLIDE_DIRECTION = 'uib-slideDirection',
87
currentIndex = -1,
98
currentInterval, isPlaying;
@@ -37,18 +36,12 @@ angular.module('ui.bootstrap.carousel', [])
3736
}
3837

3938
$scope.$currentTransition = true;
40-
if (NEW_ANIMATE) {
41-
$animate.on('addClass', slide.$element, function(element, phase) {
42-
if (phase === 'close') {
43-
$scope.$currentTransition = null;
44-
$animate.off('addClass', element);
45-
}
46-
});
47-
} else {
48-
slide.$element.one('$animate:close', function closeFn() {
39+
$animate.on('addClass', slide.$element, function(element, phase) {
40+
if (phase === 'close') {
4941
$scope.$currentTransition = null;
50-
});
51-
}
42+
$animate.off('addClass', element);
43+
}
44+
});
5245
}
5346

5447
self.currentSlide = slide;
@@ -250,14 +243,9 @@ angular.module('ui.bootstrap.carousel', [])
250243
})
251244

252245
.animation('.item', [
253-
'$injector', '$animate',
254-
function ($injector, $animate) {
255-
var SLIDE_DIRECTION = 'uib-slideDirection',
256-
$animateCss = null;
257-
258-
if ($injector.has('$animateCss')) {
259-
$animateCss = $injector.get('$animateCss');
260-
}
246+
'$animate', '$animateCss',
247+
function($animate, $animateCss) {
248+
var SLIDE_DIRECTION = 'uib-slideDirection';
261249

262250
function removeClass(element, className, callback) {
263251
element.removeClass(className);
@@ -277,20 +265,11 @@ function ($injector, $animate) {
277265
directionClass + ' ' + direction, done);
278266
element.addClass(direction);
279267

280-
if ($animateCss) {
281-
$animateCss(element, {addClass: directionClass})
282-
.start()
283-
.done(removeClassFn);
284-
} else {
285-
$animate.addClass(element, directionClass).then(function () {
286-
if (!stopped) {
287-
removeClassFn();
288-
}
289-
done();
290-
});
291-
}
268+
$animateCss(element, {addClass: directionClass})
269+
.start()
270+
.done(removeClassFn);
292271

293-
return function () {
272+
return function() {
294273
stopped = true;
295274
};
296275
}
@@ -304,18 +283,10 @@ function ($injector, $animate) {
304283
var directionClass = direction == 'next' ? 'left' : 'right';
305284
var removeClassFn = removeClass.bind(this, element, directionClass, done);
306285

307-
if ($animateCss) {
308-
$animateCss(element, {addClass: directionClass})
309-
.start()
310-
.done(removeClassFn);
311-
} else {
312-
$animate.addClass(element, directionClass).then(function() {
313-
if (!stopped) {
314-
removeClassFn();
315-
}
316-
done();
317-
});
318-
}
286+
$animateCss(element, {addClass: directionClass})
287+
.start()
288+
.done(removeClassFn);
289+
319290
return function() {
320291
stopped = true;
321292
};

0 commit comments

Comments
 (0)