adca33a6fae0a7850082ad190c50eee372d77db6
[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 { MatDialogModule } from '@angular/material/dialog';
24 import { MatIconModule } from '@angular/material/icon';
25 import { MatListModule} from '@angular/material/list';
26 import { MatSidenavModule } from '@angular/material/sidenav';
27 import { MatTooltipModule } from '@angular/material/tooltip';
28 import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
29 import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
30 import { NgModule } from '@angular/core';
31 import { MDBBootstrapModule } from 'angular-bootstrap-md';
32 import { ToastrModule } from 'ngx-toastr';
33 import { ConfirmDialogComponent } from '@ui/confirm-dialog/confirm-dialog.component';
34 import { FooterComponent } from './footer/footer.component';
35 import { MainComponent } from './main/main.component';
36 import { MaterialDesignFrameworkModule } from 'angular6-json-schema-form';
37 import { PolicyModule } from '@policy/policy.module'
38 import { EiCoordinatorModule } from '@ei-coordinator/ei-coordinator.module'
39 import { AppComponent } from './app.component';
40 import { AppRoutingModule } from './app-routing.module';
41 import { SidenavListComponent } from '@navigation/sidenav-list/sidenav-list.component';
42 import { UiService } from '@services/ui/ui.service';
43 import { CookieService } from 'ngx-cookie-service';
44 import { HttpMockRequestInterceptor } from './interceptor.mock';
45 import { environment } from 'environments/environment';
46 import { HttpRequestInterceptor } from './interceptor';
47 import { MatSlideToggleModule } from '@angular/material/slide-toggle';
48
49 export const isMock = environment.mock;
50
51 @NgModule({
52   declarations: [
53     AppComponent,
54     ConfirmDialogComponent,
55     FooterComponent,
56     MainComponent,
57     SidenavListComponent,
58   ],
59   imports: [
60     AppRoutingModule,
61     BrowserModule,
62     BrowserAnimationsModule,
63     HttpClientModule,
64     MatDialogModule,
65     MatIconModule,
66     MatListModule,
67     MatSidenavModule,
68     MatSlideToggleModule,
69     MatTooltipModule,
70     MaterialDesignFrameworkModule,
71     MDBBootstrapModule.forRoot(),
72     PolicyModule,
73     EiCoordinatorModule,
74     ToastrModule.forRoot(),
75   ],
76   entryComponents: [
77     ConfirmDialogComponent,
78   ],
79   providers: [
80     CookieService,
81     UiService,
82     {
83       provide: HTTP_INTERCEPTORS,
84       useClass: isMock ? HttpMockRequestInterceptor : HttpRequestInterceptor,
85       multi: true
86       }
87   ],
88   bootstrap: [AppComponent]
89 })
90 export class AppModule { }