-
Notifications
You must be signed in to change notification settings - Fork 18
/
app.module.ts
151 lines (142 loc) · 5.28 KB
/
app.module.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
import { NgSelectModule } from '@ng-select/ng-select';
import { NgxResourceFactoryModule } from 'ngx-resource-factory';
import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';
import { PERFECT_SCROLLBAR_CONFIG } from 'ngx-perfect-scrollbar';
import { PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar';
import { MonacoEditorModule } from 'ngx-monaco-editor';
import { NgPipesModule } from 'ngx-pipes';
import { ServicesModule } from './services/services.module';
const DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {
suppressScrollX: true
};
import { AppComponent } from './app.component';
/**
* Icons
*/
import { fas } from '@fortawesome/free-solid-svg-icons';
import { far } from '@fortawesome/free-regular-svg-icons';
import { library } from '@fortawesome/fontawesome-svg-core';
import { LabelsComponent } from './components/labels/labels.component';
import { LanguagesComponent } from './components/languages/languages.component';
import { MenuComponent } from './components/menu/menu.component';
import { SnippetsComponent } from './components/snippets/snippets.component';
import { SnippetComponent } from './components/snippet/snippet.component';
import { SnippetOptionsComponent } from './components/snippet-options/snippet-options.component';
import { FooterComponent } from './components/footer/footer.component';
import { HeaderComponent } from './components/header/header.component';
import { SnippetModalComponent } from './components/snippet-modal/snippet-modal.component';
import { SnippetOrderComponent } from './components/snippet-order/snippet-order.component';
import { LabelModalComponent } from './components/label-modal/label-modal.component';
import { TeamsComponent } from './components/teams/teams.component';
import { ViewInfoComponent } from './components/view-info/view-info.component';
import { ViewSwitchComponent } from './components/view-switch/view-switch.component';
import { TeamModalComponent } from './components/team-modal/team-modal.component';
import { SidebarComponent } from './layout/sidebar/sidebar.component';
import { ContentComponent } from './layout/content/content.component';
import { LoginComponent } from './components/login/login.component';
import { JwtInterceptor } from "./helpers/jwt.interceptor";
import { HelpModalComponent } from './components/help-modal/help-modal.component';
import { TeamMembersComponent } from './components/team-members/team-members.component';
import { TeamMemberModalComponent } from './components/team-member-modal/team-member-modal.component';
import { TeamMemberDeleteModalComponent } from './components/team-member-delete-modal/team-member-delete-modal.component';
import { LabelDeleteModalComponent } from './components/label-delete-modal/label-delete-modal.component';
import { BaseComponent } from './layout/base/base.component';
import { BootstrapSwitchComponent } from './components/bootstrap-switch/bootstrap-switch.component';
import { LoadingScreenComponent } from './components/loading-screen/loading-screen.component';
import { LoadingScreenInterceptor } from "./helpers/loading.interceptor";
library.add(
fas.faCoffee,
fas.faCode,
fas.faSyncAlt,
fas.faGlobe,
fas.faEye,
fas.faEyeSlash,
fas.faTag,
fas.faCloudUploadAlt,
fas.faCloudDownloadAlt,
fas.faUser,
fas.faPlus,
fas.faStar,
far.faStar,
fas.faTrash,
fas.faCircle,
fas.faHashtag,
);
@NgModule({
declarations: [
AppComponent,
LabelsComponent,
LanguagesComponent,
MenuComponent,
SnippetsComponent,
SnippetComponent,
SnippetOptionsComponent,
FooterComponent,
HeaderComponent,
SnippetModalComponent,
SnippetOrderComponent,
LabelModalComponent,
TeamsComponent,
ViewInfoComponent,
ViewSwitchComponent,
TeamModalComponent,
SidebarComponent,
ContentComponent,
LoginComponent,
HelpModalComponent,
TeamMembersComponent,
TeamMemberModalComponent,
TeamMemberDeleteModalComponent,
LabelDeleteModalComponent,
BaseComponent,
BootstrapSwitchComponent,
LoadingScreenComponent,
],
entryComponents: [
SnippetModalComponent,
LabelModalComponent,
TeamModalComponent,
HelpModalComponent,
TeamMemberModalComponent,
TeamMemberDeleteModalComponent,
LabelDeleteModalComponent,
],
imports: [
BrowserModule,
HttpClientModule,
NgxResourceFactoryModule.forRoot(),
NgbModule.forRoot(),
FontAwesomeModule,
PerfectScrollbarModule,
NgSelectModule,
FormsModule,
ReactiveFormsModule,
MonacoEditorModule.forRoot(),
NgPipesModule,
ServicesModule.forRoot(),
],
providers: [
{
provide: PERFECT_SCROLLBAR_CONFIG,
useValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG
},
{
provide: HTTP_INTERCEPTORS,
useClass: JwtInterceptor,
multi: true
},
{
provide: HTTP_INTERCEPTORS,
useClass: LoadingScreenInterceptor,
multi: true
}
],
bootstrap: [AppComponent]
})
export class AppModule { }