]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/eg2/src/app/common.module.ts
LP1824391 Hatch print-to-file Angular edition
[Evergreen.git] / Open-ILS / src / eg2 / src / app / common.module.ts
1 /**
2  * Modules, services, and components used by all apps.
3  */
4 import {CommonModule} from '@angular/common';
5 import {NgModule, ModuleWithProviders} from '@angular/core';
6 import {RouterModule} from '@angular/router';
7 import {FormsModule, ReactiveFormsModule} from '@angular/forms';
8 import {NgbModule} from '@ng-bootstrap/ng-bootstrap';
9 import {EgCoreModule} from '@eg/core/core.module';
10
11 /*
12 Note core services are injected into 'root'.
13 They do not have to be added to the providers list.
14 */
15
16 // consider moving these to core...
17 import {HatchService} from '@eg/share/print/hatch.service';
18 import {HtmlToTxtService} from '@eg/share/util/htmltotxt.service';
19 import {PrintService} from '@eg/share/print/print.service';
20
21 // Globally available components
22 import {PrintComponent} from '@eg/share/print/print.component';
23 import {DialogComponent} from '@eg/share/dialog/dialog.component';
24 import {AlertDialogComponent} from '@eg/share/dialog/alert.component';
25 import {ConfirmDialogComponent} from '@eg/share/dialog/confirm.component';
26 import {PromptDialogComponent} from '@eg/share/dialog/prompt.component';
27 import {ProgressInlineComponent} from '@eg/share/dialog/progress-inline.component';
28 import {ProgressDialogComponent} from '@eg/share/dialog/progress.component';
29 import {BoolDisplayComponent} from '@eg/share/util/bool.component';
30 import {ToastService} from '@eg/share/toast/toast.service';
31 import {ToastComponent} from '@eg/share/toast/toast.component';
32 import {StringModule} from '@eg/share/string/string.module';
33
34
35 @NgModule({
36   declarations: [
37     PrintComponent,
38     DialogComponent,
39     AlertDialogComponent,
40     ConfirmDialogComponent,
41     PromptDialogComponent,
42     ProgressInlineComponent,
43     ProgressDialogComponent,
44     ToastComponent,
45     BoolDisplayComponent
46   ],
47   imports: [
48     CommonModule,
49     FormsModule,
50     ReactiveFormsModule,
51     RouterModule,
52     NgbModule,
53     EgCoreModule,
54     StringModule
55   ],
56   exports: [
57     CommonModule,
58     RouterModule,
59     NgbModule,
60     FormsModule,
61     EgCoreModule,
62     StringModule,
63     ReactiveFormsModule,
64     PrintComponent,
65     DialogComponent,
66     AlertDialogComponent,
67     ConfirmDialogComponent,
68     PromptDialogComponent,
69     ProgressInlineComponent,
70     ProgressDialogComponent,
71     BoolDisplayComponent,
72     ToastComponent
73   ]
74 })
75
76 export class EgCommonModule {
77     /** forRoot() lets us define services that should only be
78      * instantiated once for all loaded routes */
79     static forRoot(): ModuleWithProviders {
80         return {
81             ngModule: EgCommonModule,
82             providers: [
83                 HtmlToTxtService,
84                 HatchService,
85                 PrintService,
86                 ToastService
87             ]
88         };
89     }
90 }
91