e833a347e260c0cb6197f29406c74f84ca677c9a
[working/Evergreen.git] / Open-ILS / src / eg2 / src / app / staff / common.module.ts
1 import {NgModule, ModuleWithProviders} from '@angular/core';
2 import {EgCommonModule} from '@eg/common.module';
3 import {CommonWidgetsModule} from '@eg/share/common-widgets.module';
4 import {AudioService} from '@eg/share/util/audio.service';
5 import {GridModule} from '@eg/share/grid/grid.module';
6 import {StaffBannerComponent} from './share/staff-banner.component';
7 import {OrgFamilySelectComponent} from '@eg/share/org-family-select/org-family-select.component';
8 import {AccessKeyDirective} from '@eg/share/accesskey/accesskey.directive';
9 import {AccessKeyService} from '@eg/share/accesskey/accesskey.service';
10 import {AccessKeyInfoComponent} from '@eg/share/accesskey/accesskey-info.component';
11 import {OpChangeComponent} from '@eg/staff/share/op-change/op-change.component';
12 import {TitleComponent} from '@eg/share/title/title.component';
13 import {FmRecordEditorComponent} from '@eg/share/fm-editor/fm-editor.component';
14 import {BucketDialogComponent} from '@eg/staff/share/buckets/bucket-dialog.component';
15 import {BibSummaryComponent} from '@eg/staff/share/bib-summary/bib-summary.component';
16 import {TranslateComponent} from '@eg/staff/share/translate/translate.component';
17 import {AdminPageComponent} from '@eg/staff/share/admin-page/admin-page.component';
18 import {EgHelpPopoverComponent} from '@eg/share/eg-help-popover/eg-help-popover.component';
19 import {DatetimeValidatorDirective} from '@eg/share/validators/datetime_validator.directive';
20 import {ReactiveFormsModule} from '@angular/forms';
21 import {MultiSelectComponent} from '@eg/share/multi-select/multi-select.component';
22
23 /**
24  * Imports the EG common modules and adds modules common to all staff UI's.
25  */
26
27 @NgModule({
28   declarations: [
29     StaffBannerComponent,
30     OrgFamilySelectComponent,
31     AccessKeyDirective,
32     AccessKeyInfoComponent,
33     TitleComponent,
34     OpChangeComponent,
35     FmRecordEditorComponent,
36     BucketDialogComponent,
37     BibSummaryComponent,
38     TranslateComponent,
39     AdminPageComponent,
40     EgHelpPopoverComponent,
41     DatetimeValidatorDirective,
42     MultiSelectComponent
43   ],
44   imports: [
45     EgCommonModule,
46     CommonWidgetsModule,
47     GridModule
48   ],
49   exports: [
50     EgCommonModule,
51     CommonWidgetsModule,
52     GridModule,
53     StaffBannerComponent,
54     OrgFamilySelectComponent,
55     AccessKeyDirective,
56     AccessKeyInfoComponent,
57     TitleComponent,
58     OpChangeComponent,
59     FmRecordEditorComponent,
60     BucketDialogComponent,
61     BibSummaryComponent,
62     TranslateComponent,
63     AdminPageComponent,
64     EgHelpPopoverComponent,
65     DatetimeValidatorDirective,
66     MultiSelectComponent
67   ]
68 })
69
70 export class StaffCommonModule {
71     static forRoot(): ModuleWithProviders {
72         return {
73             ngModule: StaffCommonModule,
74             providers: [ // Export staff-wide services
75                 AccessKeyService,
76                 AudioService
77             ]
78         };
79     }
80 }
81