Add multi-layer RIC instance selector
[portal/ric-dashboard.git] / webapp-frontend / src / app / rd.module.ts
1 /*-
2  * ========================LICENSE_START=================================
3  * O-RAN-SC
4  * %%
5  * Copyright (C) 2019 AT&T Intellectual Property
6  * %%
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ========================LICENSE_END===================================
19  */
20
21  // Angular
22 import { BrowserModule } from '@angular/platform-browser';
23 import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
24 import { ChartsModule } from 'ng2-charts';
25 import { FlexLayoutModule } from '@angular/flex-layout';
26 import { FormsModule, ReactiveFormsModule } from '@angular/forms';
27 import { HttpClientModule } from '@angular/common/http';
28 import { MDBBootstrapModule } from 'angular-bootstrap-md';
29 import { MatButtonModule } from '@angular/material/button';
30 import { MatButtonToggleModule } from '@angular/material/button-toggle';
31 import { MatCardModule } from '@angular/material/card';
32 import { MatCheckboxModule } from '@angular/material/checkbox';
33 import { MatDialogModule } from '@angular/material/dialog';
34 import { MatExpansionModule } from '@angular/material/expansion';
35 import { MatFormFieldModule } from '@angular/material/form-field';
36 import { MatGridListModule } from '@angular/material/grid-list';
37 import { MatIconModule } from '@angular/material/icon';
38 import { MatInputModule } from '@angular/material/input';
39 import { MatListModule } from '@angular/material/list';
40 import { MatPaginatorModule } from '@angular/material/paginator';
41 import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
42 import { MatRadioModule } from '@angular/material/radio';
43 import { MatSelectModule } from '@angular/material/select';
44 import { MatSidenavModule } from '@angular/material/sidenav';
45 import { MatSlideToggleModule } from '@angular/material/slide-toggle';
46 import { MatSliderModule } from '@angular/material/slider';
47 import { MatSnackBarModule } from '@angular/material/snack-bar';
48 import { MatSortModule } from '@angular/material/sort';
49 import { MatTableModule } from '@angular/material/table';
50 import { MatTabsModule } from '@angular/material/tabs';
51 import { MatTooltipModule } from '@angular/material/tooltip';
52 import { MaterialDesignFrameworkModule } from 'angular6-json-schema-form';
53 import { NgModule } from '@angular/core';
54 import { ToastrModule } from 'ngx-toastr';
55
56 // RD components
57 import { AcXappComponent } from './ac-xapp/ac-xapp.component';
58 import { AddDashboardUserDialogComponent } from './user/add-dashboard-user-dialog/add-dashboard-user-dialog.component';
59 import { AppConfigurationComponent } from './app-configuration/app-configuration.component';
60 import { AppControlComponent } from './app-control/app-control.component';
61 import { CaasIngressComponent } from './caas-ingress/caas-ingress.component';
62 import { CatalogCardComponent } from './ui/catalog-card/catalog-card.component';
63 import { CatalogComponent } from './catalog/catalog.component';
64 import { ConfirmDialogComponent } from './ui/confirm-dialog/confirm-dialog.component';
65 import { ControlCardComponent } from './ui/control-card/control-card.component';
66 import { ControlComponent } from './control/control.component';
67 import { EditDashboardUserDialogComponent } from './user/edit-dashboard-user-dialog/edit-dashboard-user-dialog.component';
68 import { ErrorDialogComponent } from './ui/error-dialog/error-dialog.component';
69 import { FooterComponent } from './footer/footer.component';
70 import { InstanceSelectorDialogComponent } from './ui/instance-selector-dialog/instance-selector-dialog.component';
71 import { LoadingDialogComponent } from './ui/loading-dialog/loading-dialog.component';
72 import { MainComponent } from './main/main.component';
73 import { PlatformComponent } from './platform/platform.component';
74 import { RanControlConnectDialogComponent } from './ran-control/ran-connection-dialog.component';
75 import { RanControlComponent } from './ran-control/ran-control.component';
76 import { RdRoutingModule } from './rd-routing.module';
77 import { RdComponent } from './rd.component';
78 import { SidenavListComponent } from './navigation/sidenav-list/sidenav-list.component';
79 import { StatCardComponent } from './ui/stat-card/stat-card.component';
80 import { StatsComponent } from './stats/stats.component';
81 import { UserComponent } from './user/user.component';
82
83 // RD services
84 import { AppMgrService } from './services/app-mgr/app-mgr.service';
85 import { DashboardService } from './services/dashboard/dashboard.service';
86 import { E2ManagerService } from './services/e2-mgr/e2-mgr.service';
87 import { ErrorDialogService } from './services/ui/error-dialog.service';
88 import { InstanceSelectorService } from './services/instance-selector/instance-selector.service';
89 import { InstanceSelectorDialogService } from './services/ui/instance-selector-dialog.service';
90 import { UiService } from './services/ui/ui.service';
91
92
93 @NgModule({
94   declarations: [
95     AcXappComponent,
96     AddDashboardUserDialogComponent,
97     AppConfigurationComponent,
98     AppControlComponent,
99     CaasIngressComponent,
100     CatalogCardComponent,
101     CatalogComponent,
102     ConfirmDialogComponent,
103     ControlCardComponent,
104     ControlComponent,
105     EditDashboardUserDialogComponent,
106     ErrorDialogComponent,
107     FooterComponent,
108     LoadingDialogComponent,
109     MainComponent,
110     PlatformComponent,
111     RanControlComponent,
112     RanControlConnectDialogComponent,
113     RdComponent,
114     SidenavListComponent,
115     StatCardComponent,
116     StatsComponent,
117     UserComponent,
118     InstanceSelectorDialogComponent
119   ],
120   imports: [
121     BrowserModule,
122     BrowserAnimationsModule,
123     ChartsModule,
124     FlexLayoutModule,
125     FormsModule,
126     HttpClientModule,
127     MatButtonModule,
128     MatButtonToggleModule,
129     MatCardModule,
130     MatCheckboxModule,
131     MatDialogModule,
132     MaterialDesignFrameworkModule,
133     MatExpansionModule,
134     MatFormFieldModule,
135     MatGridListModule,
136     MatIconModule,
137     MatInputModule,
138     MatListModule,
139     MatPaginatorModule,
140     MatProgressSpinnerModule,
141     MatRadioModule,
142     MatSelectModule,
143     MatSliderModule,
144     MatSidenavModule,
145     MatSlideToggleModule,
146     MatSnackBarModule,
147     MatSortModule,
148     MatTableModule,
149     MatTabsModule,
150     MatTooltipModule,
151     MDBBootstrapModule.forRoot(),
152     RdRoutingModule,
153     ReactiveFormsModule,
154     ToastrModule.forRoot()
155   ],
156   exports: [
157     ErrorDialogComponent,
158     FormsModule,
159     MatButtonModule,
160     MatButtonToggleModule,
161     MatCardModule,
162     MatDialogModule,
163     MatExpansionModule,
164     MatFormFieldModule,
165     MatGridListModule,
166     MatIconModule,
167     MatInputModule,
168     MatListModule,
169     MatSidenavModule,
170     MatSliderModule,
171     MatSlideToggleModule,
172     MatTabsModule,
173     RanControlConnectDialogComponent
174   ],
175   entryComponents: [
176     AddDashboardUserDialogComponent,
177     AppConfigurationComponent,
178     ConfirmDialogComponent,
179     EditDashboardUserDialogComponent,
180     ErrorDialogComponent,
181     InstanceSelectorDialogComponent,
182     LoadingDialogComponent,
183     RanControlConnectDialogComponent
184   ],
185   providers: [
186     AppMgrService,
187     DashboardService,
188     E2ManagerService,
189     ErrorDialogService,
190     InstanceSelectorService,
191     InstanceSelectorDialogService,
192     UiService
193   ],
194   bootstrap: [RdComponent]
195 })
196 export class RdModule { }