LP1816475: Booking module refresh
[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 {MultiSelectComponent} from '@eg/share/multi-select/multi-select.component';
21 import {NotBeforeMomentValidatorDirective} from '@eg/share/validators/not_before_moment_validator.directive';
22 import {PatronBarcodeValidatorDirective} from '@eg/share/validators/patron_barcode_validator.directive';
23
24 /**
25  * Imports the EG common modules and adds modules common to all staff UI's.
26  */
27
28 @NgModule({
29   declarations: [
30     StaffBannerComponent,
31     OrgFamilySelectComponent,
32     AccessKeyDirective,
33     AccessKeyInfoComponent,
34     TitleComponent,
35     OpChangeComponent,
36     FmRecordEditorComponent,
37     BucketDialogComponent,
38     BibSummaryComponent,
39     TranslateComponent,
40     AdminPageComponent,
41     EgHelpPopoverComponent,
42     DatetimeValidatorDirective,
43     MultiSelectComponent,
44     NotBeforeMomentValidatorDirective,
45     PatronBarcodeValidatorDirective,
46   ],
47   imports: [
48     EgCommonModule,
49     CommonWidgetsModule,
50     GridModule
51   ],
52   exports: [
53     EgCommonModule,
54     CommonWidgetsModule,
55     GridModule,
56     StaffBannerComponent,
57     OrgFamilySelectComponent,
58     AccessKeyDirective,
59     AccessKeyInfoComponent,
60     TitleComponent,
61     OpChangeComponent,
62     FmRecordEditorComponent,
63     BucketDialogComponent,
64     BibSummaryComponent,
65     TranslateComponent,
66     AdminPageComponent,
67     EgHelpPopoverComponent,
68     DatetimeValidatorDirective,
69     MultiSelectComponent,
70     NotBeforeMomentValidatorDirective,
71     PatronBarcodeValidatorDirective
72   ]
73 })
74
75 export class StaffCommonModule {
76     static forRoot(): ModuleWithProviders {
77         return {
78             ngModule: StaffCommonModule,
79             providers: [ // Export staff-wide services
80                 AccessKeyService,
81                 AudioService
82             ]
83         };
84     }
85 }
86