Skip to content

Commit d5d319e

Browse files
committed
Added component support for angular 1.5
1 parent b5eaf90 commit d5d319e

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

angular-css.js

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -614,24 +614,32 @@
614614
try {
615615
var directive = angular.copy(originalDirectiveFactory)();
616616
directive.directiveName = directiveName;
617-
if (directive.hasOwnProperty('css') && !arrayExists(arraySelect($directives, function(x) {return x.dir.directiveName}), directiveName)) {
618-
$directives.push({dir: directive, handled: false});
617+
if (directive.hasOwnProperty('css') && !arrayExists(arraySelect($directives, function(x) {return x.ddo.directiveName}), directiveName)) {
618+
$directives.push({ ddo: directive, handled: false });
619619
}
620620
} catch (e) { }
621621
return originalDirective.apply(this, arguments);
622622
};
623+
var originalComponent = module.component;
624+
module.component = function (componentName, componentObject) {
625+
componentObject.directiveName = componentName;
626+
if (componentObject.hasOwnProperty('css') && !arrayExists(arraySelect($directives, function(x) {return x.ddo.directiveName}), componentName)) {
627+
$directives.push({ ddo: componentObject, handled: false });
628+
}
629+
return originalComponent.apply(this, arguments);
630+
};
623631
module.config(['$provide','$injector', function ($provide, $injector) {
624632
angular.forEach($directives, function ($dir) {
625633
if (!$dir.handled) {
626-
var $directive = $dir.dir;
634+
var $directive = $dir.ddo;
627635
var dirProvider = $directive.directiveName + 'Directive';
628636
if ($injector.has(dirProvider)) {
629637
$dir.handled = true;
630638
$provide.decorator(dirProvider, ['$delegate', '$rootScope', '$timeout', function ($delegate, $rootScope, $timeout) {
631639
var directive = $delegate[0];
632640
var compile = directive.compile;
633-
if (directive.css) {
634-
$directive.css = directive.css;
641+
if (!directive.css) {
642+
directive.css = $directive.css;
635643
}
636644
directive.compile = function() {
637645
var link = compile ? compile.apply(this, arguments): false;

0 commit comments

Comments
 (0)