OSDN Git Service

Implemeted Console service
[eos/zephyr.git] / front-end / dist / bundle.js
index b06e5c4..5d54595 100644 (file)
@@ -62,6 +62,7 @@
        __webpack_require__(19);
        __webpack_require__(20);
        __webpack_require__(21);
+       __webpack_require__(22);
 
 
 /***/ },
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var directives;
+           (function (directives) {
+               var Command = (function () {
+                   function Command() {
+                       this.restrict = 'E';
+                       this.replace = true;
+                       this.scope = true;
+                       this.controller = 'commandController';
+                       this.controllerAs = 'ctrl';
+                       this.bindToController = {
+                           index: '=',
+                           name: '=',
+                           remove: '&',
+                           list: '='
+                       };
+                       this.templateUrl = 'templates/command.html';
+                   }
+                   Command.Factory = function () {
+                       var directive = function () {
+                           return new Command();
+                       };
+                       directive.$inject = [];
+                       return directive;
+                   };
+                   return Command;
+               })();
+               directives.Command = Command;
+               var CommandController = (function () {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
+                       this.APIEndPoint = APIEndPoint;
+                       this.$scope = $scope;
+                       this.MyModal = MyModal;
+                       this.WebSocket = WebSocket;
+                       this.$window = $window;
+                       this.$rootScope = $rootScope;
+                       this.Console = Console;
+                       var controller = this;
+                       this.APIEndPoint
+                           .getOptionControlFile(this.name)
+                           .$promise
+                           .then(function (result) {
+                           controller.options = result.info;
+                       });
+                       this.APIEndPoint
+                           .getDirectories()
+                           .$promise
+                           .then(function (result) {
+                           controller.dirs = result.info;
+                       });
+                       this.heading = "[" + this.index + "]: dcdFilePrint";
+                       this.isOpen = true;
+                       this.$scope.$on('close', function () {
+                           controller.isOpen = false;
+                       });
+                       function guid() {
+                           function s4() {
+                               return Math.floor((1 + Math.random()) * 0x10000)
+                                   .toString(16)
+                                   .substring(1);
+                           }
+                           return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
+                               s4() + '-' + s4() + s4() + s4();
+                       }
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
+                   }
+                   CommandController.prototype.submit = function () {
+                       var opt = [];
+                       angular.forEach(this.options, function (option) {
+                           var obj = {
+                               name: option.option,
+                               arguments: []
+                           };
+                           angular.forEach(option.arg, function (arg) {
+                               if (arg.input) {
+                                   if (typeof arg.input === 'object') {
+                                       obj.arguments.push(arg.input.name);
+                                   }
+                                   else {
+                                       obj.arguments.push(arg.input);
+                                   }
+                               }
+                           });
+                           if (obj.arguments.length > 0) {
+                               opt.push(obj);
+                           }
+                       });
+                       var execObj = {
+                           command: this.name,
+                           workspace: this.workspace.fileId,
+                           options: opt
+                       };
+                       this.APIEndPoint
+                           .execute(JSON.stringify(execObj))
+                           .then(function (result) {
+                           console.log(result);
+                       });
+                   };
+                   CommandController.prototype.removeMySelf = function (index) {
+                       this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
+                       this.remove()(index, this.list);
+                       this.Console.showIDs();
+                   };
+                   CommandController.prototype.reloadFiles = function () {
+                       var _this = this;
+                       var fileId = this.workspace.fileId;
+                       this.APIEndPoint
+                           .getFiles(fileId)
+                           .$promise
+                           .then(function (result) {
+                           var status = result.status;
+                           if (status === 'success') {
+                               _this.files = result.info;
+                           }
+                           else {
+                               console.log(result.message);
+                           }
+                       });
+                   };
+                   CommandController.prototype.debug = function () {
+                       var div = angular.element(this.$window.document).find("div");
+                       var consoleTag;
+                       var parametersTag;
+                       angular.forEach(div, function (v) {
+                           if (v.className === "panel-body console") {
+                               consoleTag = v;
+                           }
+                           else if (v.className === "row parameters-console") {
+                               parametersTag = v;
+                           }
+                       });
+                       var consoleHeight = parseInt(parametersTag.clientHeight.toString().replace('px', '')) - 150 + 'px';
+                       var consoleWidth = parseInt(parametersTag.clientWidth.toString().replace('px', '')) / 3 * 2 - 150 + 'px';
+                       consoleTag.style.height = consoleHeight;
+                       consoleTag.style.width = consoleWidth;
+                   };
+                   CommandController.prototype.help = function () {
+                       this.APIEndPoint
+                           .help(this.name)
+                           .then(function (result) {
+                           console.log(result);
+                       });
+                   };
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
+                   return CommandController;
+               })();
+               directives.CommandController = CommandController;
+           })(directives = app.directives || (app.directives = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var directives;
+           (function (directives) {
+               var HeaderMenu = (function () {
+                   function HeaderMenu() {
+                       this.restrict = 'E';
+                       this.replace = true;
+                       this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
+                   }
+                   HeaderMenu.Factory = function () {
+                       var directive = function () {
+                           return new HeaderMenu();
+                       };
+                       return directive;
+                   };
+                   return HeaderMenu;
+               })();
+               directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
+           })(directives = app.directives || (app.directives = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var directives;
+           (function (directives) {
+               var Option = (function () {
+                   function Option() {
+                       this.restrict = 'E';
+                       this.replace = true;
+                       this.controller = 'optionController';
+                       this.bindToController = {
+                           info: '=',
+                           files: '='
+                       };
+                       this.scope = true;
+                       this.templateUrl = 'templates/option.html';
+                       this.controllerAs = 'ctrl';
+                   }
+                   Option.Factory = function () {
+                       var directive = function () {
+                           return new Option();
+                       };
+                       directive.$inject = [];
+                       return directive;
+                   };
+                   return Option;
+               })();
+               directives.Option = Option;
+               var OptionController = (function () {
+                   function OptionController() {
+                       var controller = this;
+                       angular.forEach(controller.info.arg, function (arg) {
+                           if (arg.initialValue) {
+                               if (arg.formType === 'number') {
+                                   arg.input = parseInt(arg.initialValue);
+                               }
+                               else {
+                                   arg.input = arg.initialValue;
+                               }
+                           }
+                       });
+                   }
+                   OptionController.$inject = [];
+                   return OptionController;
+               })();
+               directives.OptionController = OptionController;
+           })(directives = app.directives || (app.directives = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var directives;
+           (function (directives) {
+               var Directory = (function () {
+                   function Directory() {
+                       this.restrict = 'E';
+                       this.replace = true;
+                       this.controller = 'directoryController';
+                       this.controllerAs = 'ctrl';
+                       this.bindToController = {
+                           info: '=',
+                           add: '&',
+                           list: '=',
+                           files: '='
+                       };
+                       this.templateUrl = 'templates/directory.html';
+                   }
+                   Directory.Factory = function () {
+                       var directive = function () {
+                           return new Directory();
+                       };
+                       return directive;
+                   };
+                   return Directory;
+               })();
+               directives.Directory = Directory;
+               var DirectoryController = (function () {
+                   function DirectoryController(APIEndPoint, $scope) {
+                       this.APIEndPoint = APIEndPoint;
+                       this.$scope = $scope;
+                       var controller = this;
+                       this.APIEndPoint
+                           .getFiles(this.info.fileId)
+                           .$promise
+                           .then(function (result) {
+                           if (result.status === 'success') {
+                               controller.files = result.info;
+                               angular.forEach(result.info, function (file) {
+                                   if (file.fileType === '0') {
+                                       var o = file;
+                                       if (controller.info.path === '/') {
+                                           o.path = '/' + file.name;
+                                       }
+                                       else {
+                                           o.path = controller.info.path + '/' + file.name;
+                                       }
+                                       controller.add()(o, controller.list);
+                                   }
+                               });
+                           }
+                           ;
+                       });
+                   }
+                   DirectoryController.$inject = ['APIEndPoint', '$scope'];
+                   return DirectoryController;
+               })();
+               directives.DirectoryController = DirectoryController;
+           })(directives = app.directives || (app.directives = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var controllers;
+           (function (controllers) {
+               var Execution = (function () {
+                   function Execution(MyModal, $scope) {
+                       this.MyModal = MyModal;
+                       this.$scope = $scope;
+                       this.commandInfoList = [];
+                   }
+                   ;
+                   Execution.prototype.add = function () {
+                       this.$scope.$broadcast('close');
+                       var commandInfoList = this.commandInfoList;
+                       var commandInstance = this.MyModal.selectCommand();
+                       commandInstance
+                           .result
+                           .then(function (command) {
+                           commandInfoList.push(new app.declares.CommandInfo(command));
+                       });
+                   };
+                   Execution.prototype.open = function () {
+                       var result = this.MyModal.open('SelectCommand');
+                       console.log(result);
+                   };
+                   Execution.prototype.remove = function (index, list) {
+                       list.splice(index, 1);
+                   };
+                   Execution.prototype.close = function () {
+                       console.log("close");
+                   };
+                   Execution.$inject = ['MyModal', '$scope'];
+                   return Execution;
+               })();
+               controllers.Execution = Execution;
+           })(controllers = app.controllers || (app.controllers = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var controllers;
+           (function (controllers) {
+               var Workspace = (function () {
+                   function Workspace($scope, APIEndPoint, MyModal) {
+                       this.$scope = $scope;
+                       this.APIEndPoint = APIEndPoint;
+                       this.MyModal = MyModal;
+                       this.directoryList = [];
+                       var controller = this;
+                       var directoryList = this.directoryList;
+                       var o = {
+                           fileId: '1f83f620-c1ed-11e5-9657-7942989daa00',
+                           name: '',
+                           parentId: '',
+                           fileType: '',
+                           createdAt: '',
+                           updatedAt: '',
+                           path: '/'
+                       };
+                       directoryList.push(o);
+                   }
+                   Workspace.prototype.addDirectory = function (info, directoryList) {
+                       directoryList.push(info);
+                   };
+                   Workspace.prototype.debug = function () {
+                       this.MyModal.preview();
+                   };
+                   Workspace.$inject = ['$scope', 'APIEndPoint', 'MyModal'];
+                   return Workspace;
+               })();
+               controllers.Workspace = Workspace;
+           })(controllers = app.controllers || (app.controllers = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var controllers;
+           (function (controllers) {
+               var History = (function () {
+                   function History($scope) {
+                       this.page = "History";
+                   }
+                   History.$inject = ['$scope'];
+                   return History;
+               })();
+               controllers.History = History;
+           })(controllers = app.controllers || (app.controllers = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var controllers;
+           (function (controllers) {
+               var SelectCommand = (function () {
+                   function SelectCommand($scope, APIEndPoint, $modalInstance) {
+                       this.APIEndPoint = APIEndPoint;
+                       this.$modalInstance = $modalInstance;
+                       var controller = this;
+                       this.APIEndPoint
+                           .getTags()
+                           .$promise.then(function (result) {
+                           controller.tags = result.info;
+                       });
+                       this.APIEndPoint
+                           .getCommands()
+                           .$promise.then(function (result) {
+                           controller.commands = result.info;
+                       });
+                       this.currentTag = 'all';
+                   }
+                   SelectCommand.prototype.changeTag = function (tag) {
+                       this.currentTag = tag;
+                   };
+                   SelectCommand.prototype.selectCommand = function (command) {
+                       this.$modalInstance.close(command);
+                   };
+                   SelectCommand.$inject = ['$scope', 'APIEndPoint', '$uibModalInstance'];
+                   return SelectCommand;
+               })();
+               controllers.SelectCommand = SelectCommand;
+           })(controllers = app.controllers || (app.controllers = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var controllers;
+           (function (controllers) {
+               var Preview = (function () {
+                   function Preview($scope, APIEndPoint, $modalInstance) {
+                       this.APIEndPoint = APIEndPoint;
+                       this.$modalInstance = $modalInstance;
+                       var controller = this;
+                       console.log('preview');
+                   }
+                   Preview.$inject = ['$scope', 'APIEndPoint', '$uibModalInstance'];
+                   return Preview;
+               })();
+               controllers.Preview = Preview;
+           })(controllers = app.controllers || (app.controllers = {}));
+       })(app || (app = {}));
+       var filters;
+       (function (filters) {
+           function Tag() {
+               return function (commands, tag) {
+                   var result = [];
+                   angular.forEach(commands, function (command) {
+                       var flag = false;
+                       angular.forEach(command.tags, function (value) {
+                           if (tag === value)
+                               flag = true;
+                       });
+                       if (flag)
+                           result.push(command);
+                   });
+                   return result;
+               };
+           }
+           filters.Tag = Tag;
+       })(filters || (filters = {}));
+       var app;
+       (function (app) {
+           'use strict';
+           var appName = 'zephyr';
+           app.zephyr = angular.module(appName, ['ui.router', 'ngResource', 'ui.bootstrap']);
+           app.zephyr.config(function ($stateProvider, $urlRouterProvider, $locationProvider) {
+               $urlRouterProvider.otherwise('/execution');
+               $locationProvider.html5Mode({
+                   enabled: true,
+                   requireBase: false
+               });
+               $stateProvider
+                   .state('execution', {
+                   url: '/execution',
+                   templateUrl: 'templates/execution.html',
+                   controller: 'executionController',
+                   controllerAs: 'c'
+               })
+                   .state('workspace', {
+                   url: '/workspace',
+                   templateUrl: 'templates/workspace.html',
+                   controller: 'workspaceController',
+                   controllerAs: 'c'
+               })
+                   .state('history', {
+                   url: '/history',
+                   templateUrl: 'templates/history.html',
+                   controller: 'historyController',
+                   controllerAs: 'c'
+               });
+           });
+           app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
+           app.zephyr.service('MyModal', app.services.MyModal);
+           app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
+           app.zephyr.filter('Tag', filters.Tag);
+           app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
+           app.zephyr.controller('previewController', app.controllers.Preview);
+           app.zephyr.controller('executionController', app.controllers.Execution);
+           app.zephyr.controller('workspaceController', app.controllers.Workspace);
+           app.zephyr.controller('historyController', app.controllers.History);
+           app.zephyr.controller('commandController', app.directives.CommandController);
+           app.zephyr.controller('optionController', app.directives.OptionController);
+           app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
+           app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
+           app.zephyr.directive('command', app.directives.Command.Factory());
+           app.zephyr.directive('option', app.directives.Option.Factory());
+           app.zephyr.directive('directory', app.directives.Directory.Factory());
+       })(app || (app = {}));
+
+
+/***/ },
+/* 10 */
+/***/ function(module, exports) {
+
+       var app;
+       (function (app) {
+           var declares;
+           (function (declares) {
+               var CommandInfo = (function () {
+                   function CommandInfo(name) {
+                       this.name = name;
+                   }
+                   return CommandInfo;
+               })();
+               declares.CommandInfo = CommandInfo;
+           })(declares = app.declares || (app.declares = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var services;
+           (function (services) {
+               var APIEndPoint = (function () {
+                   function APIEndPoint($resource, $http) {
+                       this.$resource = $resource;
+                       this.$http = $http;
+                   }
+                   APIEndPoint.prototype.resource = function (endPoint, data) {
+                       var customAction = {
+                           method: 'GET',
+                           isArray: false
+                       };
+                       var execute = {
+                           method: 'POST',
+                           headers: { 'Content-Type': undefined, enctype: 'multipart/form-data' }
+                       };
+                       return this.$resource(endPoint, {}, { execute: execute });
+                   };
+                   APIEndPoint.prototype.getOptionControlFile = function (command) {
+                       var endPoint = '/api/v1/optionControlFile/' + command;
+                       return this.resource(endPoint, {}).get();
+                   };
+                   APIEndPoint.prototype.getFiles = function (fileId) {
+                       var endPoint = '/api/v1/workspace';
+                       if (fileId) {
+                           endPoint += '/' + fileId;
+                       }
+                       return this.resource(endPoint, {}).get();
+                   };
+                   APIEndPoint.prototype.getDirectories = function () {
+                       var endPoint = '/api/v1/all/workspace/directory';
+                       return this.resource(endPoint, {}).get();
+                   };
+                   APIEndPoint.prototype.getTags = function () {
+                       var endPoint = '/api/v1/tagList';
+                       return this.resource(endPoint, {}).get();
+                   };
+                   APIEndPoint.prototype.getCommands = function () {
+                       var endPoint = '/api/v1/commandList';
+                       return this.resource(endPoint, {}).get();
+                   };
+                   APIEndPoint.prototype.execute = function (data) {
+                       var endPoint = '/api/v1/execution';
+                       var fd = new FormData();
+                       fd.append('data', data);
+                       return this.$http.post(endPoint, fd, {
+                           headers: { 'Content-Type': undefined },
+                           transformRequest: angular.identity
+                       });
+                   };
+                   APIEndPoint.prototype.debug = function () {
+                       var endPoint = '/api/v1/debug';
+                       return this.$http.get(endPoint);
+                   };
+                   APIEndPoint.prototype.help = function (command) {
+                       var endPoint = '/api/v1/help/' + command;
+                       return this.$http.get(endPoint);
+                   };
+                   return APIEndPoint;
+               })();
+               services.APIEndPoint = APIEndPoint;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var services;
+           (function (services) {
+               var MyModal = (function () {
+                   function MyModal($uibModal) {
+                       this.$uibModal = $uibModal;
+                       this.modalOption = {
+                           backdrop: true,
+                           controller: null,
+                           templateUrl: null,
+                           size: null
+                       };
+                   }
+                   MyModal.prototype.open = function (modalName) {
+                       if (modalName === 'SelectCommand') {
+                           this.modalOption.templateUrl = 'templates/select-command.html';
+                           this.modalOption.size = 'lg';
+                       }
+                       return this.$uibModal.open(this.modalOption);
+                   };
+                   MyModal.prototype.selectCommand = function () {
+                       this.modalOption.templateUrl = 'templates/select-command.html';
+                       this.modalOption.controller = 'selectCommandController';
+                       this.modalOption.controllerAs = 'c';
+                       this.modalOption.size = 'lg';
+                       return this.$uibModal.open(this.modalOption);
+                   };
+                   MyModal.prototype.preview = function () {
+                       this.modalOption.templateUrl = 'templates/preview.html';
+                       this.modalOption.controller = 'previewController';
+                       this.modalOption.controllerAs = 'c';
+                       this.modalOption.size = 'lg';
+                       return this.$uibModal.open(this.modalOption);
+                   };
+                   MyModal.$inject = ['$uibModal'];
+                   return MyModal;
+               })();
+               services.MyModal = MyModal;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var services;
+           (function (services) {
+               var WebSocket = (function () {
+                   function WebSocket($rootScope) {
+                       this.$rootScope = $rootScope;
+                       this.socket = io.connect();
+                   }
+                   WebSocket.prototype.on = function (eventName, callback) {
+                       var socket = this.socket;
+                       var rootScope = this.$rootScope;
+                       socket.on(eventName, function () {
+                           var args = arguments;
+                           rootScope.$apply(function () {
+                               callback.apply(socket, args);
+                           });
+                       });
+                   };
+                   WebSocket.prototype.emit = function (eventName, data, callback) {
+                       var socket = this.socket;
+                       var rootScope = this.$rootScope;
+                       this.socket.emit(eventName, data, function () {
+                           var args = arguments;
+                           rootScope.$apply(function () {
+                               if (callback)
+                                   callback.apply(socket, args);
+                           });
+                       });
+                   };
+                   return WebSocket;
+               })();
+               services.WebSocket = WebSocket;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 10 */
+/* 11 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 11 */
+/* 12 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 12 */
+/* 13 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 13 */
+/* 14 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 14 */
+/* 15 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 15 */
+/* 16 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 16 */
+/* 17 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 17 */
+/* 18 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 18 */
+/* 19 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 19 */
+/* 20 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 20 */
+/* 21 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);
 
 
 /***/ },
-/* 21 */
+/* 22 */
 /***/ function(module, exports) {
 
        var app;
        })(app || (app = {}));
        var app;
        (function (app) {
+           var services;
+           (function (services) {
+               var Console = (function () {
+                   function Console(WebSocket, $rootScope) {
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.WebSocket = WebSocket;
+                       this.$rootScope = $rootScope;
+                       this.directiveIDs = [];
+                       var directiveIDs = this.directiveIDs;
+                       this.WebSocket.on('console', function (d) {
+                           var id = d.id;
+                           var message = d.message;
+                           if (directiveIDs.indexOf(id) > -1) {
+                               $rootScope.$emit(id, message);
+                           }
+                       });
+                   }
+                   Console.prototype.addDirective = function (id) {
+                       if (!(this.directiveIDs.indexOf(id) > -1)) {
+                           this.directiveIDs.push(id);
+                       }
+                   };
+                   Console.prototype.removeDirective = function (id) {
+                       var i = this.directiveIDs.indexOf(id);
+                       if (i > -1) {
+                           this.directiveIDs.splice(i, 1);
+                       }
+                   };
+                   Console.prototype.showIDs = function () {
+                       console.log(this.directiveIDs);
+                   };
+                   return Console;
+               })();
+               services.Console = Console;
+           })(services = app.services || (app.services = {}));
+       })(app || (app = {}));
+       var app;
+       (function (app) {
            var directives;
            (function (directives) {
                var Command = (function () {
                })();
                directives.Command = Command;
                var CommandController = (function () {
-                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope) {
+                   function CommandController(APIEndPoint, $scope, MyModal, WebSocket, $window, $rootScope, Console) {
                        this.APIEndPoint = APIEndPoint;
                        this.$scope = $scope;
                        this.MyModal = MyModal;
                        this.WebSocket = WebSocket;
                        this.$window = $window;
                        this.$rootScope = $rootScope;
+                       this.Console = Console;
                        var controller = this;
                        this.APIEndPoint
                            .getOptionControlFile(this.name)
                            return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
                                s4() + '-' + s4() + s4() + s4();
                        }
-                       var uuid = guid();
+                       this.uuid = guid();
+                       this.Console.addDirective(this.uuid);
+                       this.Console.showIDs();
                    }
                    CommandController.prototype.submit = function () {
                        var opt = [];
                    };
                    CommandController.prototype.removeMySelf = function (index) {
                        this.$scope.$destroy();
+                       this.Console.removeDirective(this.uuid);
                        this.remove()(index, this.list);
+                       this.Console.showIDs();
                    };
                    CommandController.prototype.reloadFiles = function () {
                        var _this = this;
                        });
                    };
                    CommandController.prototype.debug = function () {
-                       console.log(this.$rootScope);
                        var div = angular.element(this.$window.document).find("div");
                        var consoleTag;
                        var parametersTag;
                            console.log(result);
                        });
                    };
-                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope'];
+                   CommandController.$inject = ['APIEndPoint', '$scope', 'MyModal', 'WebSocket', '$window', '$rootScope', 'Console'];
                    return CommandController;
                })();
                directives.CommandController = CommandController;
            app.zephyr.service('APIEndPoint', app.services.APIEndPoint);
            app.zephyr.service('MyModal', app.services.MyModal);
            app.zephyr.service('WebSocket', app.services.WebSocket);
+           app.zephyr.service('Console', app.services.Console);
            app.zephyr.filter('Tag', filters.Tag);
            app.zephyr.controller('selectCommandController', app.controllers.SelectCommand);
            app.zephyr.controller('previewController', app.controllers.Preview);