Initial import of Angular5 components services and modules

Change-Id: I3953f1fbf7d5697a1c6d432808dd17d816ec285a
diff --git a/web/gui2/src/main/webapp/app/fw/widget/widget.module.ts b/web/gui2/src/main/webapp/app/fw/widget/widget.module.ts
new file mode 100644
index 0000000..2e7a0ea
--- /dev/null
+++ b/web/gui2/src/main/webapp/app/fw/widget/widget.module.ts
@@ -0,0 +1,60 @@
+/*
+ * Copyright 2015-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { NgModule } from '@angular/core';
+import { CommonModule } from '@angular/common';
+import { LayerModule } from '../layer/layer.module';
+import { RemoteModule } from '../remote/remote.module';
+import { SvgModule } from '../svg/svg.module';
+import { UtilModule } from '../util/util.module';
+
+import { ButtonService } from './button.service';
+import { ChartBuilderService } from './chartbuilder.service';
+import { ListService } from './list.service';
+import { TableBuilderService } from './tablebuilder.service';
+import { TableDetailService } from './tabledetail.service';
+import { ToolbarService } from './toolbar.service';
+import { TooltipService } from './tooltip.service';
+import { TooltipDirective } from './tooltip.directive';
+import { SortableHeaderDirective } from './sortableheader.directive';
+import { TableResizeDirective } from './tableresize.directive';
+import { FlashChangesDirective } from './flashchanges.directive';
+
+/**
+ * ONOS GUI -- Widgets Module
+ */
+@NgModule({
+  imports: [
+    CommonModule
+    // Services have global scope and their modules don't have to be imported again
+    // It's enough to import them in the OnosModule
+  ],
+  declarations: [
+    TooltipDirective,
+    SortableHeaderDirective,
+    TableResizeDirective,
+    FlashChangesDirective
+  ],
+  providers: [
+    ButtonService,
+    ChartBuilderService,
+    ListService,
+    TableBuilderService,
+    TableDetailService,
+    TooltipService,
+    ToolbarService
+  ]
+})
+export class WidgetModule { }