/
app.module.ts
89 lines (82 loc) · 2.42 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
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { APP_BASE_HREF } from '@angular/common';
import { AppComponent } from './app.component';
import { ConfigService } from '@groupdocs.examples.angular/common-components';
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
import { ViewerConfigService, ViewerModule } from '@groupdocs.examples.angular/viewer';
import { BehaviorSubject, Observable } from 'rxjs';
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
import { ViewerTranslateLoader } from "@groupdocs.examples.angular/viewer";
declare global {
interface Window {
apiEndpoint: string;
uiSettingsPath: string;
}
}
/*
export class StaticViewerConfigService {
public updatedConfig: Observable<any> = new BehaviorSubject({
pageSelector: true,
download: true,
upload: true,
print: true,
browse: true,
rewrite: true,
enableRightClick: true,
filesDirectory: "",
fontsDirectory: "",
defaultDocument: "",
watermarkText: "",
preloadPageCount: 3,
zoom: true,
search: true,
thumbnails: true,
rotate: false,
htmlMode: true,
cache: true,
saveRotateState: false,
printAllowed: true,
showGridLines: true,
showLanguageMenu: true,
defaultLanguage: 'en',
supportedLanguages: ['en', 'fr', 'de']
}).asObservable();
load(): Promise<void> {
return Promise.resolve();
}
}
*/
export function configServiceFactory() {
let config = new ConfigService();
config.apiEndpoint = window.apiEndpoint;
config.getViewerApiEndpoint = () => window.apiEndpoint;
config.getConfigEndpoint = () => window.uiSettingsPath;
return config;
}
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }),
ViewerModule,
FontAwesomeModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useClass: ViewerTranslateLoader
}
})
],
providers: [
{ provide: APP_BASE_HREF, useValue: '/' },
{ provide: ConfigService, useFactory: configServiceFactory },
/*
{ provide: ViewerConfigService, useClass: StaticViewerConfigService },
*/
{ provide: 'WINDOW', useValue: window },
],
bootstrap: [AppComponent]
})
export class AppModule { }