diff --git a/src/app/components/noosfero-blocks/block.component.ts b/src/app/components/noosfero-blocks/block.component.ts
new file mode 100644
index 0000000..4eed39e
--- /dev/null
+++ b/src/app/components/noosfero-blocks/block.component.ts
@@ -0,0 +1,20 @@
+import { Input, Inject, Component } from 'ng-forward';
+
+@Component({
+ selector: 'noosfero-block',
+ template: '
'
+})
+@Inject("$element", "$scope", "$injector", "$compile")
+export class Block {
+
+ @Input() block: any;
+ @Input() owner: any;
+
+ ngOnInit() {
+ let blockName = this.block.type.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
+ this.$element.replaceWith(this.$compile('')(this.$scope));
+ }
+
+ constructor(private $element: any, private $scope: ng.IScope, private $injector: ng.auto.IInjectorService, private $compile: ng.ICompileService) {
+ }
+}
diff --git a/src/app/components/noosfero-blocks/block.directive.js b/src/app/components/noosfero-blocks/block.directive.js
deleted file mode 100644
index 9738af0..0000000
--- a/src/app/components/noosfero-blocks/block.directive.js
+++ /dev/null
@@ -1,24 +0,0 @@
-(function() {
- 'use strict';
-
- angular
- .module('noosferoApp')
- .directive('noosferoBlock', noosferoBlock);
-
- /** @ngInject */
- function noosferoBlock($compile) {
- var directive = {
- restrict: 'E',
- scope: {
- block: '<',
- owner: '<'
- },
- link: function(scope, element) {
- var blockName = scope.block.type.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
- element.replaceWith($compile('')(scope));
- }
- };
- return directive;
- }
-
-})();
diff --git a/src/app/components/noosfero-boxes/box.html b/src/app/components/noosfero-boxes/box.html
index 6658633..4550503 100644
--- a/src/app/components/noosfero-boxes/box.html
+++ b/src/app/components/noosfero-boxes/box.html
@@ -4,7 +4,7 @@
{{block.title}}
-
+
diff --git a/src/app/index.ts b/src/app/index.ts
index fa33a2d..1ae43d0 100644
--- a/src/app/index.ts
+++ b/src/app/index.ts
@@ -43,7 +43,6 @@ require("./components/auth/auth.service.js");
require("./components/navbar/navbar.directive.js");
require("./components/noosfero-activities/activities.component.js");
require("./components/noosfero-activities/activity/activity.component.js");
-require("./components/noosfero-blocks/block.directive.js");
require("./components/noosfero-blocks/link-list/link-list.component.js");
require("./components/noosfero-blocks/main-block/main-block.component.js");
require("./components/noosfero-blocks/members-block/members-block.component.js");
diff --git a/src/app/main/main.component.ts b/src/app/main/main.component.ts
index 769decd..04203e2 100644
--- a/src/app/main/main.component.ts
+++ b/src/app/main/main.component.ts
@@ -3,6 +3,7 @@ import {NoosferoArticleBlog} from "./../components/noosfero-articles/blog/blog.c
import {ArticleDirective} from "../components/noosfero-articles/article/article.directive.ts";
import {Profile} from "../profile/profile.component";
import {Boxes} from "../components/noosfero-boxes/boxes.component";
+import {Block} from "../components/noosfero-blocks/block.component";
@Component({
selector: 'main-content',
@@ -15,7 +16,7 @@ export class MainContent {
@Component({
selector: 'main',
template: '',
- directives: [NoosferoArticleBlog, ArticleDirective, Boxes]
+ directives: [NoosferoArticleBlog, ArticleDirective, Boxes, Block]
})
@StateConfig([
{
--
libgit2 0.21.2