Create component for EI Producers list
[portal/nonrtric-controlpanel.git] / webapp-frontend / src / app / app.module.ts
1 /*-
2  * ========================LICENSE_START=================================
3  * O-RAN-SC
4  * %%
5  * Copyright (C) 2019 AT&T Intellectual Property
6  * Modifications Copyright (C) 2019 Nordix Foundation
7  * Modifications Copyright (C) 2020 Nordix Foundation
8  * %%
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  * ========================LICENSE_END===================================
21  */
22 import { BrowserModule } from '@angular/platform-browser';
23 import { MatButtonModule } from '@angular/material/button';
24 import { MatButtonToggleModule } from '@angular/material/button-toggle';
25 import { MatCardModule } from '@angular/material/card';
26 import { MatCheckboxModule } from '@angular/material/checkbox';
27 import { MatDialogModule } from '@angular/material/dialog';
28 import { MatExpansionModule } from '@angular/material/expansion';
29 import { MatFormFieldModule } from '@angular/material/form-field';
30 import { MatGridListModule } from '@angular/material/grid-list';
31 import { MatIconModule } from '@angular/material/icon';
32 import { MatInputModule } from '@angular/material/input';
33 import { MatListModule } from '@angular/material/list';
34 import { MatMenuModule } from '@angular/material/menu';
35 import { MatPaginatorModule } from '@angular/material/paginator';
36 import { MatSelectModule } from '@angular/material/select';
37 import { MatSidenavModule } from '@angular/material/sidenav';
38 import { MatSliderModule } from '@angular/material/slider';
39 import { MatSlideToggleModule } from '@angular/material/slide-toggle';
40 import { MatSnackBarModule } from '@angular/material/snack-bar';
41 import { MatSortModule } from '@angular/material/sort';
42 import { MatTableModule } from '@angular/material/table';
43 import { MatTabsModule } from '@angular/material/tabs';
44 import { MatToolbarModule } from '@angular/material/toolbar';
45 import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
46 import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
47 import { NgModule } from '@angular/core';
48 import { ChartsModule } from 'ng2-charts';
49 import { MDBBootstrapModule } from 'angular-bootstrap-md';
50 import { FormsModule, ReactiveFormsModule } from '@angular/forms';
51 import { ToastrModule } from 'ngx-toastr';
52 import { ConfirmDialogComponent } from './ui/confirm-dialog/confirm-dialog.component';
53 import { ErrorDialogComponent } from './ui/error-dialog/error-dialog.component';
54 import { ErrorDialogService } from './services/ui/error-dialog.service';
55 import { FlexLayoutModule } from '@angular/flex-layout';
56 import { FooterComponent } from './footer/footer.component';
57 import { MainComponent } from './main/main.component';
58 import { MaterialDesignFrameworkModule } from 'angular6-json-schema-form';
59 import { PolicyModule } from './policy/policy.module'
60 import { AppComponent } from './app.component';
61 import { AppRoutingModule } from './app-routing.module';
62 import { SidenavListComponent } from './navigation/sidenav-list/sidenav-list.component';
63 import { UiService } from './services/ui/ui.service';
64 import { CookieService } from 'ngx-cookie-service';
65 import { NodeModulesComponent } from './node-modules/node-modules.component';
66 import { EICardComponent } from './ui/ei-card/ei-card.component';
67 import { EICoordinatorComponent } from './ei-coordinator/ei-coordinator.component';
68 import { HttpMockRequestInterceptor } from './interceptor.mock';
69 import { environment } from 'src/environments/environment';
70 import { HttpRequestInterceptor } from './interceptor';
71 import { ProducersListComponent } from './ei-coordinator/producers-list/producers-list.component';
72
73 export const isMock = environment.mock;
74
75 @NgModule({
76   declarations: [
77     AppComponent,
78     ConfirmDialogComponent,
79     EICardComponent,
80     EICoordinatorComponent,
81     ErrorDialogComponent,
82     FooterComponent,
83     MainComponent,
84     NodeModulesComponent,
85     SidenavListComponent,
86     ProducersListComponent,
87   ],
88   imports: [
89     AppRoutingModule,
90     BrowserModule,
91     BrowserAnimationsModule,
92     ChartsModule,
93     FlexLayoutModule,
94     FormsModule,
95     HttpClientModule,
96     MatButtonModule,
97     MatButtonToggleModule,
98     MatCardModule,
99     MatCheckboxModule,
100     MatDialogModule,
101     MatExpansionModule,
102     MatFormFieldModule,
103     MatGridListModule,
104     MatIconModule,
105     MatInputModule,
106     MatListModule,
107     MatMenuModule,
108     MatPaginatorModule,
109     MatSelectModule,
110     MatSidenavModule,
111     MatSliderModule,
112     MatSlideToggleModule,
113     MatSnackBarModule,
114     MatSortModule,
115     MatTableModule,
116     MatTabsModule,
117     MatToolbarModule,
118     MaterialDesignFrameworkModule,
119     MDBBootstrapModule.forRoot(),
120     PolicyModule,
121     ReactiveFormsModule,
122     ToastrModule.forRoot(),
123   ],
124   exports: [
125     ErrorDialogComponent,
126     FormsModule,
127     MatButtonModule,
128     MatButtonToggleModule,
129     MatCardModule,
130     MatDialogModule,
131     MatExpansionModule,
132     MatFormFieldModule,
133     MatGridListModule,
134     MatIconModule,
135     MatInputModule,
136     MatListModule,
137     MatSidenavModule,
138     MatSliderModule,
139     MatSlideToggleModule,
140     MatTabsModule
141   ],
142   entryComponents: [
143     ConfirmDialogComponent,
144     ErrorDialogComponent,
145   ],
146   providers: [
147     CookieService,
148     ErrorDialogService,
149     ProducersListComponent,
150     UiService,
151     {
152       provide: HTTP_INTERCEPTORS,
153       useClass: isMock ? HttpMockRequestInterceptor : HttpRequestInterceptor,
154       multi: true
155       }
156   ],
157   bootstrap: [AppComponent]
158 })
159 export class AppModule { }