Merge "Policy types schemas should only be parsed once"
[nonrtric.git] / dashboard / 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  * Modifications Copyright (C) 2019 Nordix Foundation
7  * %%
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ========================LICENSE_END===================================
20  */
21 import { BrowserModule } from '@angular/platform-browser';
22 // tslint:disable-next-line:max-line-length
23 import {MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule,
24     MatDialogModule, MatExpansionModule, MatFormFieldModule, MatGridListModule,
25     MatIconModule, MatInputModule, MatListModule, MatMenuModule, MatPaginatorModule,
26     MatProgressSpinnerModule, MatSelectModule, MatSidenavModule, MatSliderModule,
27     MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule,
28     MatTabsModule,  MatToolbarModule} from '@angular/material';
29 import { BrowserAnimationsModule} from '@angular/platform-browser/animations';
30 import { HttpClientModule } from '@angular/common/http';
31 import { NgModule } from '@angular/core';
32 import { MatRadioModule } from '@angular/material/radio';
33 import { MatTooltipModule } from '@angular/material/tooltip';
34 import { ChartsModule } from 'ng2-charts';
35 import { MDBBootstrapModule } from 'angular-bootstrap-md';
36 import { FormsModule, ReactiveFormsModule } from '@angular/forms';
37 import { ToastrModule } from 'ngx-toastr';
38 import { AppMgrService } from './services/app-mgr/app-mgr.service';
39 import { ConfirmDialogComponent } from './ui/confirm-dialog/confirm-dialog.component';
40 import { DashboardService } from './services/dashboard/dashboard.service';
41 import { E2ManagerService } from './services/e2-mgr/e2-mgr.service';
42 import { ErrorDialogComponent } from './ui/error-dialog/error-dialog.component';
43 import { ErrorDialogService } from './services/ui/error-dialog.service';
44 import { FlexLayoutModule } from '@angular/flex-layout';
45 import { FooterComponent } from './footer/footer.component';
46 import { LoadingDialogComponent } from './ui/loading-dialog/loading-dialog.component';
47 import { MainComponent } from './main/main.component';
48 import { MaterialDesignFrameworkModule } from 'angular6-json-schema-form';
49 import { ModalEventComponent } from './ui/modal-event/modal-event.component';
50 import { PolicyCardComponent } from './ui/policy-card/policy-card.component';
51 import { PolicyControlComponent } from './policy-control/policy-control.component';
52 import { PolicyInstanceComponent } from './policy-control/policy-instance.component';
53 import { PolicyInstanceDialogComponent } from './policy-control/policy-instance-dialog.component';
54 import { RdComponent } from './rd.component';
55 import { RdRoutingModule } from './rd-routing.module';
56 import { SidenavListComponent } from './navigation/sidenav-list/sidenav-list.component';
57 import { UiService } from './services/ui/ui.service';
58
59 @NgModule({
60   declarations: [   
61     ConfirmDialogComponent,
62     ErrorDialogComponent,
63     FooterComponent,
64     LoadingDialogComponent,
65     MainComponent,
66     ModalEventComponent,
67     PolicyCardComponent,
68     PolicyControlComponent,
69     PolicyInstanceComponent,
70     PolicyInstanceDialogComponent,
71     RdComponent,
72     SidenavListComponent,   
73   ],
74   imports: [
75     BrowserModule,
76     BrowserAnimationsModule,
77     ChartsModule,
78     FlexLayoutModule,
79     FormsModule,
80     HttpClientModule,
81     MatButtonModule,
82     MatButtonToggleModule,
83     MatCardModule,
84     MatCheckboxModule,
85     MatDialogModule,
86     MaterialDesignFrameworkModule,
87     MatExpansionModule,
88     MatFormFieldModule,
89     MatGridListModule,
90     MatIconModule,
91     MatInputModule,
92     MatListModule,
93     MatMenuModule,
94     MatPaginatorModule,
95     MatProgressSpinnerModule,
96     MatRadioModule,
97     MatSelectModule,
98     MatSliderModule,
99     MatSidenavModule,
100     MatSlideToggleModule,
101     MatSnackBarModule,
102     MatSortModule,
103     MatTableModule,
104     MatTabsModule,
105     MatToolbarModule,
106     MatTooltipModule,
107     MDBBootstrapModule.forRoot(),
108     RdRoutingModule,
109     ReactiveFormsModule,
110     ToastrModule.forRoot()
111   ],
112   exports: [
113     ErrorDialogComponent,
114     FormsModule,
115     MatButtonModule,
116     MatButtonToggleModule,
117     MatCardModule,
118     MatDialogModule,
119     MatExpansionModule,
120     MatFormFieldModule,
121     MatGridListModule,
122     MatIconModule,
123     MatInputModule,
124     MatListModule,
125     MatSidenavModule,
126     MatSliderModule,
127     MatSlideToggleModule,
128     MatTabsModule
129   ],
130   entryComponents: [  
131     ConfirmDialogComponent,   
132     ErrorDialogComponent,
133     LoadingDialogComponent,
134     PolicyInstanceDialogComponent
135   ],
136   providers: [
137     AppMgrService,
138     DashboardService,
139     E2ManagerService,
140     ErrorDialogService,
141     UiService
142   ],
143   bootstrap: [RdComponent]
144 })
145 export class RdModule { }