FM GUI as an NPM library for GUI 2

* added dynamic loading of external modules
* new commands on Alarm to allow create/updating/delete
* new fields in alarm gui

Change-Id: I9a7f4d665618a7949bb02039374974dabf6e5363
diff --git a/apps/faultmanagement/fm-gui2-lib/e2e/protractor.conf.js b/apps/faultmanagement/fm-gui2-lib/e2e/protractor.conf.js
new file mode 100644
index 0000000..86776a3
--- /dev/null
+++ b/apps/faultmanagement/fm-gui2-lib/e2e/protractor.conf.js
@@ -0,0 +1,28 @@
+// Protractor configuration file, see link for more information
+// https://github.com/angular/protractor/blob/master/lib/config.ts
+
+const { SpecReporter } = require('jasmine-spec-reporter');
+
+exports.config = {
+  allScriptsTimeout: 11000,
+  specs: [
+    './src/**/*.e2e-spec.ts'
+  ],
+  capabilities: {
+    'browserName': 'chrome'
+  },
+  directConnect: true,
+  baseUrl: 'http://localhost:4200/',
+  framework: 'jasmine',
+  jasmineNodeOpts: {
+    showColors: true,
+    defaultTimeoutInterval: 30000,
+    print: function() {}
+  },
+  onPrepare() {
+    require('ts-node').register({
+      project: require('path').join(__dirname, './tsconfig.e2e.json')
+    });
+    jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
+  }
+};
\ No newline at end of file
diff --git a/apps/faultmanagement/fm-gui2-lib/e2e/src/app.e2e-spec.ts b/apps/faultmanagement/fm-gui2-lib/e2e/src/app.e2e-spec.ts
new file mode 100644
index 0000000..e42d1f9
--- /dev/null
+++ b/apps/faultmanagement/fm-gui2-lib/e2e/src/app.e2e-spec.ts
@@ -0,0 +1,14 @@
+import { AppPage } from './app.po';
+
+describe('workspace-project App', () => {
+  let page: AppPage;
+
+  beforeEach(() => {
+    page = new AppPage();
+  });
+
+  it('should display welcome message', () => {
+    page.navigateTo();
+    expect(page.getParagraphText()).toEqual('Welcome to app!');
+  });
+});
diff --git a/apps/faultmanagement/fm-gui2-lib/e2e/src/app.po.ts b/apps/faultmanagement/fm-gui2-lib/e2e/src/app.po.ts
new file mode 100644
index 0000000..82ea75b
--- /dev/null
+++ b/apps/faultmanagement/fm-gui2-lib/e2e/src/app.po.ts
@@ -0,0 +1,11 @@
+import { browser, by, element } from 'protractor';
+
+export class AppPage {
+  navigateTo() {
+    return browser.get('/');
+  }
+
+  getParagraphText() {
+    return element(by.css('app-root h1')).getText();
+  }
+}
diff --git a/apps/faultmanagement/fm-gui2-lib/e2e/tsconfig.e2e.json b/apps/faultmanagement/fm-gui2-lib/e2e/tsconfig.e2e.json
new file mode 100644
index 0000000..a6dd622
--- /dev/null
+++ b/apps/faultmanagement/fm-gui2-lib/e2e/tsconfig.e2e.json
@@ -0,0 +1,13 @@
+{
+  "extends": "../tsconfig.json",
+  "compilerOptions": {
+    "outDir": "../out-tsc/app",
+    "module": "commonjs",
+    "target": "es5",
+    "types": [
+      "jasmine",
+      "jasminewd2",
+      "node"
+    ]
+  }
+}
\ No newline at end of file