@cleavelandprice/ngx-lib 2.1.2 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +615 -615
  2. package/esm2020/cleavelandprice-ngx-lib.mjs +5 -0
  3. package/{esm2015/public_api.js → esm2020/public_api.mjs} +1 -1
  4. package/esm2020/src/authentication/authentication.module.mjs +112 -0
  5. package/esm2020/src/authentication/components/login/login.component.mjs +40 -0
  6. package/esm2020/src/authentication/components/login-form/login-form.component.mjs +45 -0
  7. package/esm2020/src/authentication/model/authentication-token.mjs +2 -0
  8. package/{esm2015/src/authentication/model/authentication.service.config.js → esm2020/src/authentication/model/authentication.service.config.mjs} +1 -1
  9. package/esm2020/src/authentication/services/authentication.service.mjs +136 -0
  10. package/esm2020/src/dialog/components/_dialog/dialog.component.mjs +83 -0
  11. package/esm2020/src/dialog/components/confirmation-dialog/confirmation-dialog.component.mjs +21 -0
  12. package/esm2020/src/dialog/components/input-dialog/input-dialog.component.mjs +21 -0
  13. package/esm2020/src/dialog/components/message-dialog/message-dialog.component.mjs +21 -0
  14. package/esm2020/src/dialog/dialog.module.mjs +74 -0
  15. package/{esm2015/src/dialog/model/confirmation-dialog-mode.enum.js → esm2020/src/dialog/model/confirmation-dialog-mode.enum.mjs} +1 -1
  16. package/esm2020/src/email/email.module.mjs +47 -0
  17. package/esm2020/src/email/model/email-dto.mjs +2 -0
  18. package/{esm2015/src/email/model/email-sender.js → esm2020/src/email/model/email-sender.mjs} +2 -1
  19. package/{esm2015/src/email/model/email.js → esm2020/src/email/model/email.mjs} +2 -1
  20. package/{esm2015/src/email/model/email.service.config.js → esm2020/src/email/model/email.service.config.mjs} +1 -1
  21. package/esm2020/src/email/services/email.service.mjs +31 -0
  22. package/esm2020/src/employee/employee.module.mjs +91 -0
  23. package/esm2020/src/employee/model/employee.mjs +2 -0
  24. package/{esm2015/src/employee/model/employee.service.config.js → esm2020/src/employee/model/employee.service.config.mjs} +1 -1
  25. package/esm2020/src/employee/pipes/departments.pipe.mjs +24 -0
  26. package/esm2020/src/employee/pipes/employee-by-dn.pipe.mjs +17 -0
  27. package/esm2020/src/employee/pipes/employee-photo-url.pipe.mjs +27 -0
  28. package/esm2020/src/employee/pipes/employees-with-property-value.pipe.mjs +17 -0
  29. package/esm2020/src/employee/pipes/filter-employees.pipe.mjs +22 -0
  30. package/esm2020/src/employee/pipes/is-member-of.pipe.mjs +17 -0
  31. package/esm2020/src/employee/pipes/sort-employees.pipe.mjs +44 -0
  32. package/esm2020/src/employee/services/employee.service.mjs +41 -0
  33. package/esm2020/src/file-upload/components/upload/upload.component.mjs +34 -0
  34. package/esm2020/src/file-upload/components/upload-dialog/upload-dialog.component.mjs +102 -0
  35. package/{esm2015/src/file-upload/model/database-file-info.js → esm2020/src/file-upload/model/database-file-info.mjs} +2 -1
  36. package/{esm2015/src/file-upload/model/file-upload-request.js → esm2020/src/file-upload/model/file-upload-request.mjs} +2 -1
  37. package/esm2020/src/file-upload/model/filesystem-file-info.mjs +2 -0
  38. package/esm2020/src/file-upload/model/upload.service.config.mjs +3 -0
  39. package/esm2020/src/file-upload/services/upload.service.mjs +93 -0
  40. package/esm2020/src/file-upload/upload.module.mjs +93 -0
  41. package/{esm2015/src/sharepoint/model/sharepoint-calendar-event.js → esm2020/src/sharepoint/model/sharepoint-calendar-event.mjs} +2 -1
  42. package/esm2020/src/sharepoint/model/sharepoint-customer-visit.mjs +2 -0
  43. package/{esm2015/src/sharepoint/model/sharepoint-employee-picture.js → esm2020/src/sharepoint/model/sharepoint-employee-picture.mjs} +2 -1
  44. package/esm2020/src/sharepoint/model/sharepoint-list-item.mjs +2 -0
  45. package/esm2020/src/sharepoint/model/sharepoint-list.mjs +2 -0
  46. package/esm2020/src/sharepoint/model/sharepoint-person.mjs +2 -0
  47. package/esm2020/src/sharepoint/model/sharepoint-picture.mjs +2 -0
  48. package/{esm2015/src/sharepoint/model/sharepoint.service.config.js → esm2020/src/sharepoint/model/sharepoint.service.config.mjs} +1 -1
  49. package/esm2020/src/sharepoint/pipes/sharepoint-photo-url.pipe.mjs +16 -0
  50. package/esm2020/src/sharepoint/pipes/sharepoint-url.pipe.mjs +16 -0
  51. package/esm2020/src/sharepoint/services/sharepoint.service.mjs +77 -0
  52. package/esm2020/src/sharepoint/sharepoint.module.mjs +69 -0
  53. package/esm2020/src/url/pipes/safe-url.pipe.mjs +21 -0
  54. package/esm2020/src/url/pipes/uri-scheme.pipe.mjs +103 -0
  55. package/esm2020/src/url/url.module.mjs +38 -0
  56. package/fesm2015/cleavelandprice-ngx-lib.mjs +1412 -0
  57. package/fesm2015/cleavelandprice-ngx-lib.mjs.map +1 -0
  58. package/fesm2020/cleavelandprice-ngx-lib.mjs +1384 -0
  59. package/fesm2020/cleavelandprice-ngx-lib.mjs.map +1 -0
  60. package/index.d.ts +5 -0
  61. package/package.json +22 -10
  62. package/src/authentication/authentication.module.d.ts +17 -0
  63. package/src/authentication/components/login/login.component.d.ts +6 -1
  64. package/src/authentication/components/login-form/login-form.component.d.ts +3 -0
  65. package/src/authentication/model/authentication-token.d.ts +1 -8
  66. package/src/authentication/services/authentication.service.d.ts +12 -2
  67. package/src/dialog/components/_dialog/dialog.component.d.ts +3 -0
  68. package/src/dialog/components/confirmation-dialog/confirmation-dialog.component.d.ts +3 -0
  69. package/src/dialog/components/input-dialog/input-dialog.component.d.ts +3 -0
  70. package/src/dialog/components/message-dialog/message-dialog.component.d.ts +3 -0
  71. package/src/dialog/dialog.module.d.ts +14 -0
  72. package/src/email/email.module.d.ts +5 -0
  73. package/src/email/services/email.service.d.ts +3 -0
  74. package/src/employee/employee.module.d.ts +12 -0
  75. package/src/employee/pipes/departments.pipe.d.ts +3 -0
  76. package/src/employee/pipes/employee-by-dn.pipe.d.ts +3 -0
  77. package/src/employee/pipes/employee-photo-url.pipe.d.ts +3 -0
  78. package/src/employee/pipes/employees-with-property-value.pipe.d.ts +3 -0
  79. package/src/employee/pipes/filter-employees.pipe.d.ts +3 -0
  80. package/src/employee/pipes/is-member-of.pipe.d.ts +3 -0
  81. package/src/employee/pipes/sort-employees.pipe.d.ts +3 -0
  82. package/src/employee/services/employee.service.d.ts +3 -0
  83. package/src/file-upload/components/upload/upload.component.d.ts +3 -0
  84. package/src/file-upload/components/upload-dialog/upload-dialog.component.d.ts +3 -0
  85. package/src/file-upload/services/upload.service.d.ts +3 -0
  86. package/src/file-upload/upload.module.d.ts +13 -0
  87. package/src/sharepoint/model/sharepoint-calendar-event.d.ts +3 -3
  88. package/src/sharepoint/model/sharepoint-customer-visit.d.ts +5 -5
  89. package/src/sharepoint/model/sharepoint-employee-picture.d.ts +2 -3
  90. package/src/sharepoint/model/sharepoint-list-item.d.ts +9 -9
  91. package/src/sharepoint/model/sharepoint-list.d.ts +8 -0
  92. package/src/sharepoint/model/sharepoint-person.d.ts +9 -0
  93. package/src/sharepoint/model/sharepoint-picture.d.ts +11 -8
  94. package/src/sharepoint/model/sharepoint.service.config.d.ts +2 -5
  95. package/src/sharepoint/pipes/sharepoint-photo-url.pipe.d.ts +3 -0
  96. package/src/sharepoint/pipes/sharepoint-url.pipe.d.ts +3 -0
  97. package/src/sharepoint/services/sharepoint.service.d.ts +11 -6
  98. package/src/sharepoint/sharepoint.module.d.ts +9 -4
  99. package/src/url/pipes/safe-url.pipe.d.ts +3 -0
  100. package/src/url/pipes/uri-scheme.pipe.d.ts +3 -0
  101. package/src/url/url.module.d.ts +7 -0
  102. package/bundles/cleavelandprice-ngx-lib.umd.js +0 -1360
  103. package/bundles/cleavelandprice-ngx-lib.umd.js.map +0 -1
  104. package/bundles/cleavelandprice-ngx-lib.umd.min.js +0 -2
  105. package/bundles/cleavelandprice-ngx-lib.umd.min.js.map +0 -1
  106. package/cleavelandprice-ngx-lib.d.ts +0 -5
  107. package/cleavelandprice-ngx-lib.metadata.json +0 -1
  108. package/esm2015/cleavelandprice-ngx-lib.js +0 -6
  109. package/esm2015/src/authentication/authentication.module.js +0 -84
  110. package/esm2015/src/authentication/components/login/login.component.js +0 -41
  111. package/esm2015/src/authentication/components/login-form/login-form.component.js +0 -41
  112. package/esm2015/src/authentication/model/authentication-token.js +0 -1
  113. package/esm2015/src/authentication/services/authentication.service.js +0 -129
  114. package/esm2015/src/dialog/components/_dialog/dialog.component.js +0 -75
  115. package/esm2015/src/dialog/components/confirmation-dialog/confirmation-dialog.component.js +0 -19
  116. package/esm2015/src/dialog/components/input-dialog/input-dialog.component.js +0 -19
  117. package/esm2015/src/dialog/components/message-dialog/message-dialog.component.js +0 -19
  118. package/esm2015/src/dialog/dialog.module.js +0 -54
  119. package/esm2015/src/email/email.module.js +0 -41
  120. package/esm2015/src/email/model/email-dto.js +0 -1
  121. package/esm2015/src/email/services/email.service.js +0 -30
  122. package/esm2015/src/employee/employee.module.js +0 -73
  123. package/esm2015/src/employee/model/employee.js +0 -1
  124. package/esm2015/src/employee/pipes/departments.pipe.js +0 -20
  125. package/esm2015/src/employee/pipes/employee-by-dn.pipe.js +0 -13
  126. package/esm2015/src/employee/pipes/employee-photo-url.pipe.js +0 -23
  127. package/esm2015/src/employee/pipes/employees-with-property-value.pipe.js +0 -13
  128. package/esm2015/src/employee/pipes/filter-employees.pipe.js +0 -18
  129. package/esm2015/src/employee/pipes/is-member-of.pipe.js +0 -13
  130. package/esm2015/src/employee/pipes/sort-employees.pipe.js +0 -40
  131. package/esm2015/src/employee/services/employee.service.js +0 -40
  132. package/esm2015/src/file-upload/components/upload/upload.component.js +0 -34
  133. package/esm2015/src/file-upload/components/upload-dialog/upload-dialog.component.js +0 -101
  134. package/esm2015/src/file-upload/model/filesystem-file-info.js +0 -1
  135. package/esm2015/src/file-upload/model/upload.service.config.js +0 -3
  136. package/esm2015/src/file-upload/services/upload.service.js +0 -91
  137. package/esm2015/src/file-upload/upload.module.js +0 -73
  138. package/esm2015/src/sharepoint/model/sharepoint-customer-visit.js +0 -1
  139. package/esm2015/src/sharepoint/model/sharepoint-list-item.js +0 -1
  140. package/esm2015/src/sharepoint/model/sharepoint-list-items-request.js +0 -1
  141. package/esm2015/src/sharepoint/model/sharepoint-picture.js +0 -1
  142. package/esm2015/src/sharepoint/model/sharepoint-uri-request.js +0 -1
  143. package/esm2015/src/sharepoint/model/sharepoint-user-request.js +0 -1
  144. package/esm2015/src/sharepoint/model/sharepoint-user.js +0 -1
  145. package/esm2015/src/sharepoint/pipes/sharepoint-photo-url.pipe.js +0 -12
  146. package/esm2015/src/sharepoint/pipes/sharepoint-url.pipe.js +0 -12
  147. package/esm2015/src/sharepoint/services/sharepoint.service.js +0 -71
  148. package/esm2015/src/sharepoint/sharepoint.module.js +0 -65
  149. package/esm2015/src/url/pipes/safe-url.pipe.js +0 -20
  150. package/esm2015/src/url/pipes/uri-scheme.pipe.js +0 -99
  151. package/esm2015/src/url/url.module.js +0 -31
  152. package/fesm2015/cleavelandprice-ngx-lib.js +0 -1247
  153. package/fesm2015/cleavelandprice-ngx-lib.js.map +0 -1
  154. package/src/sharepoint/model/sharepoint-list-items-request.d.ts +0 -10
  155. package/src/sharepoint/model/sharepoint-uri-request.d.ts +0 -5
  156. package/src/sharepoint/model/sharepoint-user-request.d.ts +0 -6
  157. package/src/sharepoint/model/sharepoint-user.d.ts +0 -8
@@ -0,0 +1,21 @@
1
+ import { Component, Inject } from '@angular/core';
2
+ import { MAT_DIALOG_DATA } from '@angular/material/dialog';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/material/dialog";
5
+ import * as i2 from "../_dialog/dialog.component";
6
+ export class MessageDialogComponent {
7
+ constructor(dialogRef, data) {
8
+ this.dialogRef = dialogRef;
9
+ this.data = data;
10
+ }
11
+ }
12
+ MessageDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MessageDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
13
+ MessageDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MessageDialogComponent, selector: "cp-message-dialog", ngImport: i0, template: "<cp-dialog\r\n [data]=\"data\"\r\n [dialogType]=\"'message'\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog>", dependencies: [{ kind: "component", type: i2.DialogComponent, selector: "cp-dialog", inputs: ["dialogType", "data"], outputs: ["closed"] }] });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MessageDialogComponent, decorators: [{
15
+ type: Component,
16
+ args: [{ selector: 'cp-message-dialog', template: "<cp-dialog\r\n [data]=\"data\"\r\n [dialogType]=\"'message'\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog>" }]
17
+ }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
18
+ type: Inject,
19
+ args: [MAT_DIALOG_DATA]
20
+ }] }]; } });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2RpYWxvZy9jb21wb25lbnRzL21lc3NhZ2UtZGlhbG9nL21lc3NhZ2UtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9kaWFsb2cvY29tcG9uZW50cy9tZXNzYWdlLWRpYWxvZy9tZXNzYWdlLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBTXpFLE1BQU0sT0FBTyxzQkFBc0I7SUFDL0IsWUFBbUIsU0FBK0MsRUFDOUIsSUFBUztRQUQxQixjQUFTLEdBQVQsU0FBUyxDQUFzQztRQUM5QixTQUFJLEdBQUosSUFBSSxDQUFLO0lBQzdDLENBQUM7O21IQUhRLHNCQUFzQiw4Q0FFbkIsZUFBZTt1R0FGbEIsc0JBQXNCLHlEQ1BuQyw0SEFJWTsyRkRHQyxzQkFBc0I7a0JBSmxDLFNBQVM7K0JBQ0ksbUJBQW1COzswQkFLeEIsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NwLW1lc3NhZ2UtZGlhbG9nJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9tZXNzYWdlLWRpYWxvZy5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE1lc3NhZ2VEaWFsb2dDb21wb25lbnQge1xyXG4gICAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPE1lc3NhZ2VEaWFsb2dDb21wb25lbnQ+LFxyXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55KSB7XHJcbiAgICB9XHJcbn1cclxuIiwiPGNwLWRpYWxvZ1xyXG4gIFtkYXRhXT1cImRhdGFcIlxyXG4gIFtkaWFsb2dUeXBlXT1cIidtZXNzYWdlJ1wiXHJcbiAgKGNsb3NlZCk9XCJkaWFsb2dSZWYuY2xvc2UoJGV2ZW50KVwiPlxyXG48L2NwLWRpYWxvZz4iXX0=
@@ -0,0 +1,74 @@
1
+ //#region Imports
2
+ import { CommonModule } from '@angular/common';
3
+ import { NgModule } from '@angular/core';
4
+ import { FormsModule } from '@angular/forms';
5
+ // Angular Material
6
+ import { MatButtonModule } from '@angular/material/button';
7
+ import { MatCheckboxModule } from '@angular/material/checkbox';
8
+ import { MatDialogModule } from '@angular/material/dialog';
9
+ import { MatInputModule } from '@angular/material/input';
10
+ // Components
11
+ import { DialogComponent } from './components/_dialog/dialog.component';
12
+ import { ConfirmationDialogComponent } from './components/confirmation-dialog/confirmation-dialog.component';
13
+ import { InputDialogComponent } from './components/input-dialog/input-dialog.component';
14
+ import { MessageDialogComponent } from './components/message-dialog/message-dialog.component';
15
+ import * as i0 from "@angular/core";
16
+ //#endregion
17
+ //#region Exports
18
+ // Model
19
+ export * from './model/confirmation-dialog-mode.enum';
20
+ // Components
21
+ export * from './components/confirmation-dialog/confirmation-dialog.component';
22
+ export * from './components/input-dialog/input-dialog.component';
23
+ export * from './components/message-dialog/message-dialog.component';
24
+ //#endregion
25
+ export class DialogModule {
26
+ }
27
+ DialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
28
+ DialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: DialogModule, declarations: [DialogComponent,
29
+ ConfirmationDialogComponent,
30
+ InputDialogComponent,
31
+ MessageDialogComponent], imports: [CommonModule,
32
+ FormsModule,
33
+ MatButtonModule,
34
+ MatCheckboxModule,
35
+ MatInputModule,
36
+ MatDialogModule], exports: [ConfirmationDialogComponent,
37
+ InputDialogComponent,
38
+ MessageDialogComponent] });
39
+ DialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogModule, imports: [CommonModule,
40
+ FormsModule,
41
+ MatButtonModule,
42
+ MatCheckboxModule,
43
+ MatInputModule,
44
+ MatDialogModule] });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogModule, decorators: [{
46
+ type: NgModule,
47
+ args: [{
48
+ imports: [
49
+ CommonModule,
50
+ FormsModule,
51
+ MatButtonModule,
52
+ MatCheckboxModule,
53
+ MatInputModule,
54
+ MatDialogModule
55
+ ],
56
+ declarations: [
57
+ DialogComponent,
58
+ ConfirmationDialogComponent,
59
+ InputDialogComponent,
60
+ MessageDialogComponent
61
+ ],
62
+ exports: [
63
+ ConfirmationDialogComponent,
64
+ InputDialogComponent,
65
+ MessageDialogComponent
66
+ ],
67
+ entryComponents: [
68
+ ConfirmationDialogComponent,
69
+ InputDialogComponent,
70
+ MessageDialogComponent
71
+ ]
72
+ }]
73
+ }] });
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kaWFsb2cvZGlhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUFDakIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLG1CQUFtQjtBQUNuQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV6RCxhQUFhO0FBQ2IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQzdHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOztBQUM5RixZQUFZO0FBRVosaUJBQWlCO0FBQ2pCLFFBQVE7QUFDUixjQUFjLHVDQUF1QyxDQUFDO0FBRXRELGFBQWE7QUFDYixjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxZQUFZO0FBNEJaLE1BQU0sT0FBTyxZQUFZOzt5R0FBWixZQUFZOzBHQUFaLFlBQVksaUJBaEJqQixlQUFlO1FBQ2YsMkJBQTJCO1FBQzNCLG9CQUFvQjtRQUNwQixzQkFBc0IsYUFYdEIsWUFBWTtRQUNaLFdBQVc7UUFDWCxlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGNBQWM7UUFDZCxlQUFlLGFBU2YsMkJBQTJCO1FBQzNCLG9CQUFvQjtRQUNwQixzQkFBc0I7MEdBUWpCLFlBQVksWUF4QmpCLFlBQVk7UUFDWixXQUFXO1FBQ1gsZUFBZTtRQUNmLGlCQUFpQjtRQUNqQixjQUFjO1FBQ2QsZUFBZTsyRkFtQlYsWUFBWTtrQkExQnhCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDZCxlQUFlO3FCQUNsQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1YsZUFBZTt3QkFDZiwyQkFBMkI7d0JBQzNCLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3FCQUN6QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsMkJBQTJCO3dCQUMzQixvQkFBb0I7d0JBQ3BCLHNCQUFzQjtxQkFDekI7b0JBQ0QsZUFBZSxFQUFFO3dCQUNiLDJCQUEyQjt3QkFDM0Isb0JBQW9CO3dCQUNwQixzQkFBc0I7cUJBQ3pCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIEltcG9ydHNcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG4vLyBBbmd1bGFyIE1hdGVyaWFsXHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuXHJcbi8vIENvbXBvbmVudHNcclxuaW1wb3J0IHsgRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL19kaWFsb2cvZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW5wdXREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaW5wdXQtZGlhbG9nL2lucHV0LWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNZXNzYWdlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lc3NhZ2UtZGlhbG9nL21lc3NhZ2UtZGlhbG9nLmNvbXBvbmVudCc7XHJcbi8vI2VuZHJlZ2lvblxyXG5cclxuLy8jcmVnaW9uIEV4cG9ydHNcclxuLy8gTW9kZWxcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9jb25maXJtYXRpb24tZGlhbG9nLW1vZGUuZW51bSc7XHJcblxyXG4vLyBDb21wb25lbnRzXHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2lucHV0LWRpYWxvZy9pbnB1dC1kaWFsb2cuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL21lc3NhZ2UtZGlhbG9nL21lc3NhZ2UtZGlhbG9nLmNvbXBvbmVudCc7XHJcbi8vI2VuZHJlZ2lvblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGUsXHJcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgICAgIE1hdENoZWNrYm94TW9kdWxlLFxyXG4gICAgICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgICAgIE1hdERpYWxvZ01vZHVsZVxyXG4gICAgXSxcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIERpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQsXHJcbiAgICAgICAgSW5wdXREaWFsb2dDb21wb25lbnQsXHJcbiAgICAgICAgTWVzc2FnZURpYWxvZ0NvbXBvbmVudFxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQsXHJcbiAgICAgICAgSW5wdXREaWFsb2dDb21wb25lbnQsXHJcbiAgICAgICAgTWVzc2FnZURpYWxvZ0NvbXBvbmVudFxyXG4gICAgXSxcclxuICAgIGVudHJ5Q29tcG9uZW50czogW1xyXG4gICAgICAgIENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBJbnB1dERpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBNZXNzYWdlRGlhbG9nQ29tcG9uZW50XHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -5,4 +5,4 @@ export var ConfirmationDialogMode;
5
5
  ConfirmationDialogMode[ConfirmationDialogMode["TrueFalse"] = 2] = "TrueFalse";
6
6
  ConfirmationDialogMode[ConfirmationDialogMode["Custom"] = 3] = "Custom";
7
7
  })(ConfirmationDialogMode || (ConfirmationDialogMode = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLWRpYWxvZy1tb2RlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZGlhbG9nL21vZGVsL2NvbmZpcm1hdGlvbi1kaWFsb2ctbW9kZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLHNCQUtYO0FBTEQsV0FBWSxzQkFBc0I7SUFDOUIsMkVBQVEsQ0FBQTtJQUNSLHFFQUFLLENBQUE7SUFDTCw2RUFBUyxDQUFBO0lBQ1QsdUVBQU0sQ0FBQTtBQUNWLENBQUMsRUFMVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBS2pDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ29uZmlybWF0aW9uRGlhbG9nTW9kZSB7XG4gICAgT2tDYW5jZWwsXG4gICAgWWVzTm8sXG4gICAgVHJ1ZUZhbHNlLFxuICAgIEN1c3RvbVxufVxuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLWRpYWxvZy1tb2RlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZGlhbG9nL21vZGVsL2NvbmZpcm1hdGlvbi1kaWFsb2ctbW9kZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLHNCQUtYO0FBTEQsV0FBWSxzQkFBc0I7SUFDOUIsMkVBQVEsQ0FBQTtJQUNSLHFFQUFLLENBQUE7SUFDTCw2RUFBUyxDQUFBO0lBQ1QsdUVBQU0sQ0FBQTtBQUNWLENBQUMsRUFMVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBS2pDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ29uZmlybWF0aW9uRGlhbG9nTW9kZSB7XHJcbiAgICBPa0NhbmNlbCxcclxuICAgIFllc05vLFxyXG4gICAgVHJ1ZUZhbHNlLFxyXG4gICAgQ3VzdG9tXHJcbn1cclxuIl19
@@ -0,0 +1,47 @@
1
+ //#region Imports
2
+ import { NgModule, Optional, SkipSelf } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ // Services
5
+ import { EmailServiceConfig } from './model/email.service.config';
6
+ import { EmailService } from './services/email.service';
7
+ import * as i0 from "@angular/core";
8
+ //#endregion
9
+ //#region Exports
10
+ // Model
11
+ export * from './model/email.service.config';
12
+ export * from './model/email';
13
+ // Services
14
+ export * from './services/email.service';
15
+ //#endregion
16
+ export class EmailModule {
17
+ constructor(parentModule) {
18
+ if (parentModule) {
19
+ throw new Error('EmailModule is already loaded. Import it in the AppModule only');
20
+ }
21
+ }
22
+ static forRoot(emailConfig) {
23
+ return {
24
+ ngModule: EmailModule,
25
+ providers: [
26
+ EmailService,
27
+ { provide: EmailServiceConfig, useValue: emailConfig }
28
+ ]
29
+ };
30
+ }
31
+ }
32
+ EmailModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmailModule, deps: [{ token: EmailModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule });
33
+ EmailModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: EmailModule, imports: [CommonModule] });
34
+ EmailModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmailModule, imports: [CommonModule] });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmailModule, decorators: [{
36
+ type: NgModule,
37
+ args: [{
38
+ imports: [CommonModule],
39
+ declarations: [],
40
+ exports: []
41
+ }]
42
+ }], ctorParameters: function () { return [{ type: EmailModule, decorators: [{
43
+ type: Optional
44
+ }, {
45
+ type: SkipSelf
46
+ }] }]; } });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VtYWlsL2VtYWlsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUFDakIsT0FBTyxFQUFFLFFBQVEsRUFBdUIsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsV0FBVztBQUNYLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFDeEQsWUFBWTtBQUVaLGlCQUFpQjtBQUNqQixRQUFRO0FBQ1IsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGVBQWUsQ0FBQztBQUU5QixXQUFXO0FBQ1gsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxZQUFZO0FBT1osTUFBTSxPQUFPLFdBQVc7SUFXdEIsWUFBcUMsWUFBeUI7UUFDNUQsSUFBSSxZQUFZLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FDYixnRUFBZ0UsQ0FBQyxDQUFDO1NBQ3JFO0lBQ0gsQ0FBQztJQWZELE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBK0I7UUFDNUMsT0FBTztZQUNMLFFBQVEsRUFBRSxXQUFXO1lBQ3JCLFNBQVMsRUFBRTtnQkFDVCxZQUFZO2dCQUNaLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUU7YUFDdkQ7U0FDRixDQUFDO0lBQ0osQ0FBQzs7d0dBVFUsV0FBVyxrQkFXNkIsV0FBVzt5R0FYbkQsV0FBVyxZQUpYLFlBQVk7eUdBSVosV0FBVyxZQUpYLFlBQVk7MkZBSVosV0FBVztrQkFMdkIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBRSxZQUFZLENBQUU7b0JBQ3pCLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsRUFBRTtpQkFDWjswREFZb0QsV0FBVzswQkFBaEQsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiBJbXBvcnRzXHJcbmltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbi8vIFNlcnZpY2VzXHJcbmltcG9ydCB7IEVtYWlsU2VydmljZUNvbmZpZyB9IGZyb20gJy4vbW9kZWwvZW1haWwuc2VydmljZS5jb25maWcnO1xyXG5pbXBvcnQgeyBFbWFpbFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2VtYWlsLnNlcnZpY2UnO1xyXG4vLyNlbmRyZWdpb25cclxuXHJcbi8vI3JlZ2lvbiBFeHBvcnRzXHJcbi8vIE1vZGVsXHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvZW1haWwuc2VydmljZS5jb25maWcnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2VtYWlsJztcclxuXHJcbi8vIFNlcnZpY2VzXHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZW1haWwuc2VydmljZSc7XHJcbi8vI2VuZHJlZ2lvblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbIENvbW1vbk1vZHVsZSBdLFxyXG4gIGRlY2xhcmF0aW9uczogW10sXHJcbiAgZXhwb3J0czogW11cclxufSlcclxuZXhwb3J0IGNsYXNzIEVtYWlsTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChlbWFpbENvbmZpZzogRW1haWxTZXJ2aWNlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxFbWFpbE1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IEVtYWlsTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBFbWFpbFNlcnZpY2UsXHJcbiAgICAgICAgeyBwcm92aWRlOiBFbWFpbFNlcnZpY2VDb25maWcsIHVzZVZhbHVlOiBlbWFpbENvbmZpZyB9XHJcbiAgICAgIF1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvciggQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBFbWFpbE1vZHVsZSkge1xyXG4gICAgaWYgKHBhcmVudE1vZHVsZSkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgJ0VtYWlsTW9kdWxlIGlzIGFscmVhZHkgbG9hZGVkLiBJbXBvcnQgaXQgaW4gdGhlIEFwcE1vZHVsZSBvbmx5Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtZHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VtYWlsL21vZGVsL2VtYWlsLWR0by50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW1haWxTZW5kZXIgfSBmcm9tICcuL2VtYWlsLXNlbmRlcic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVtYWlsRHRvIHtcclxuICAgIHNlcnZlcjogc3RyaW5nO1xyXG4gICAgc210cFBvcnQ6IG51bWJlcjtcclxuICAgIHNlbmRlcjogRW1haWxTZW5kZXI7XHJcbiAgICBzdWJqZWN0OiBzdHJpbmc7XHJcbiAgICByZWNpcGllbnRzOiB7XHJcbiAgICAgICAgdG86IHN0cmluZ1tdO1xyXG4gICAgfTtcclxuICAgIGNvbnRlbnQ/OiB7XHJcbiAgICAgICAgaHRtbDogc3RyaW5nXHJcbiAgICB9O1xyXG59XHJcbiJdfQ==
@@ -1 +1,2 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc2VuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VtYWlsL21vZGVsL2VtYWlsLXNlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBFbWFpbFNlbmRlciB7XG4gICAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgICBlbWFpbEFkZHJlc3M6IHN0cmluZztcbiAgICB1c2VyTmFtZTogc3RyaW5nO1xuICAgIHBhc3N3b3JkOiBzdHJpbmc7XG59XG4iXX0=
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc2VuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VtYWlsL21vZGVsL2VtYWlsLXNlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBFbWFpbFNlbmRlciB7XHJcbiAgICBkaXNwbGF5TmFtZTogc3RyaW5nO1xyXG4gICAgZW1haWxBZGRyZXNzOiBzdHJpbmc7XHJcbiAgICB1c2VyTmFtZTogc3RyaW5nO1xyXG4gICAgcGFzc3dvcmQ6IHN0cmluZztcclxufVxyXG4iXX0=
@@ -1 +1,2 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1haWwvbW9kZWwvZW1haWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRW1haWwge1xuICAgIHN1YmplY3Q6IHN0cmluZztcbiAgICByZWNpcGllbnRzOiB7XG4gICAgICAgIHRvOiBzdHJpbmdbXTtcbiAgICB9O1xuICAgIGNvbnRlbnQ/OiB7XG4gICAgICAgIGh0bWw6IHN0cmluZ1xuICAgIH07XG59XG4iXX0=
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1haWwvbW9kZWwvZW1haWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRW1haWwge1xyXG4gICAgc3ViamVjdDogc3RyaW5nO1xyXG4gICAgcmVjaXBpZW50czoge1xyXG4gICAgICAgIHRvOiBzdHJpbmdbXTtcclxuICAgIH07XHJcbiAgICBjb250ZW50Pzoge1xyXG4gICAgICAgIGh0bWw6IHN0cmluZ1xyXG4gICAgfTtcclxufVxyXG4iXX0=
@@ -1,3 +1,3 @@
1
1
  export class EmailServiceConfig {
2
2
  }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuc2VydmljZS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1haWwvbW9kZWwvZW1haWwuc2VydmljZS5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGtCQUFrQjtDQUs5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVtYWlsU2VuZGVyIH0gZnJvbSAnLi9lbWFpbC1zZW5kZXInO1xuXG5leHBvcnQgY2xhc3MgRW1haWxTZXJ2aWNlQ29uZmlnIHtcbiAgICBlbWFpbEFwaVVybDogc3RyaW5nO1xuICAgIHNlcnZlcjogc3RyaW5nO1xuICAgIHNtdHBQb3J0OiBudW1iZXI7XG4gICAgc2VuZGVyOiBFbWFpbFNlbmRlcjtcbn1cbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuc2VydmljZS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1haWwvbW9kZWwvZW1haWwuc2VydmljZS5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGtCQUFrQjtDQUs5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVtYWlsU2VuZGVyIH0gZnJvbSAnLi9lbWFpbC1zZW5kZXInO1xyXG5cclxuZXhwb3J0IGNsYXNzIEVtYWlsU2VydmljZUNvbmZpZyB7XHJcbiAgICBlbWFpbEFwaVVybDogc3RyaW5nO1xyXG4gICAgc2VydmVyOiBzdHJpbmc7XHJcbiAgICBzbXRwUG9ydDogbnVtYmVyO1xyXG4gICAgc2VuZGVyOiBFbWFpbFNlbmRlcjtcclxufVxyXG4iXX0=
@@ -0,0 +1,31 @@
1
+ //#region Imports
2
+ import { Injectable, Optional } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./../model/email.service.config";
5
+ import * as i2 from "@angular/common/http";
6
+ //#endregion
7
+ export class EmailService {
8
+ constructor(config, http) {
9
+ this.http = http;
10
+ this.emailServiceConfig = config;
11
+ }
12
+ send(email) {
13
+ const dto = {
14
+ server: this.emailServiceConfig.server,
15
+ smtpPort: this.emailServiceConfig.smtpPort,
16
+ sender: this.emailServiceConfig.sender,
17
+ subject: email.subject,
18
+ content: email.content,
19
+ recipients: email.recipients
20
+ };
21
+ return this.http.post(this.emailServiceConfig.emailApiUrl, dto);
22
+ }
23
+ }
24
+ EmailService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmailService, deps: [{ token: i1.EmailServiceConfig, optional: true }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
25
+ EmailService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmailService });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmailService, decorators: [{
27
+ type: Injectable
28
+ }], ctorParameters: function () { return [{ type: i1.EmailServiceConfig, decorators: [{
29
+ type: Optional
30
+ }] }, { type: i2.HttpClient }]; } });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbWFpbC9zZXJ2aWNlcy9lbWFpbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQUNqQixPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQU1yRCxZQUFZO0FBR1osTUFBTSxPQUFPLFlBQVk7SUFHdkIsWUFBd0IsTUFBMEIsRUFDeEMsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUN0QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsTUFBTSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBWTtRQUNmLE1BQU0sR0FBRyxHQUFhO1lBQ3BCLE1BQU0sRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTTtZQUN0QyxRQUFRLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVE7WUFDMUMsTUFBTSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNO1lBQ3RDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztZQUN0QixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO1NBQzdCLENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFRLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDekUsQ0FBQzs7eUdBbkJVLFlBQVk7NkdBQVosWUFBWTsyRkFBWixZQUFZO2tCQUR4QixVQUFVOzswQkFJSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIEltcG9ydHNcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBFbWFpbFNlcnZpY2VDb25maWcgfSBmcm9tICcuLy4uL21vZGVsL2VtYWlsLnNlcnZpY2UuY29uZmlnJztcclxuaW1wb3J0IHsgRW1haWwgfSBmcm9tICcuLy4uL21vZGVsL2VtYWlsJztcclxuaW1wb3J0IHsgRW1haWxEdG8gfSBmcm9tICcuLy4uL21vZGVsL2VtYWlsLWR0byc7XHJcbi8vI2VuZHJlZ2lvblxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRW1haWxTZXJ2aWNlIHtcclxuICBwcml2YXRlIGVtYWlsU2VydmljZUNvbmZpZzogRW1haWxTZXJ2aWNlQ29uZmlnO1xyXG5cclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBjb25maWc6IEVtYWlsU2VydmljZUNvbmZpZyxcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgICB0aGlzLmVtYWlsU2VydmljZUNvbmZpZyA9IGNvbmZpZztcclxuICB9XHJcblxyXG4gIHNlbmQoZW1haWw6IEVtYWlsKTogT2JzZXJ2YWJsZTxFbWFpbD4ge1xyXG4gICAgY29uc3QgZHRvOiBFbWFpbER0byA9IHtcclxuICAgICAgc2VydmVyOiB0aGlzLmVtYWlsU2VydmljZUNvbmZpZy5zZXJ2ZXIsXHJcbiAgICAgIHNtdHBQb3J0OiB0aGlzLmVtYWlsU2VydmljZUNvbmZpZy5zbXRwUG9ydCxcclxuICAgICAgc2VuZGVyOiB0aGlzLmVtYWlsU2VydmljZUNvbmZpZy5zZW5kZXIsXHJcbiAgICAgIHN1YmplY3Q6IGVtYWlsLnN1YmplY3QsXHJcbiAgICAgIGNvbnRlbnQ6IGVtYWlsLmNvbnRlbnQsXHJcbiAgICAgIHJlY2lwaWVudHM6IGVtYWlsLnJlY2lwaWVudHNcclxuICAgIH07XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEVtYWlsPih0aGlzLmVtYWlsU2VydmljZUNvbmZpZy5lbWFpbEFwaVVybCwgZHRvKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,91 @@
1
+ //#region Imports
2
+ import { NgModule, Optional, SkipSelf } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ // Services
5
+ import { EmployeeServiceConfig } from './model/employee.service.config';
6
+ import { EmployeeService } from './services/employee.service';
7
+ // Pipes
8
+ import { DepartmentsPipe } from './pipes/departments.pipe';
9
+ import { EmployeeByDnPipe } from './pipes/employee-by-dn.pipe';
10
+ import { EmployeePhotoUrlPipe } from './pipes/employee-photo-url.pipe';
11
+ import { EmployeesWithPropertyValuePipe } from './pipes/employees-with-property-value.pipe';
12
+ import { FilterEmployeesPipe } from './pipes/filter-employees.pipe';
13
+ import { IsMemberOfPipe } from './pipes/is-member-of.pipe';
14
+ import { SortEmployeesPipe } from './pipes/sort-employees.pipe';
15
+ import * as i0 from "@angular/core";
16
+ //#endregion
17
+ //#region Exports
18
+ // Model
19
+ export * from './model/employee.service.config';
20
+ export * from './model/employee';
21
+ // Services
22
+ export * from './services/employee.service';
23
+ // Pipes
24
+ export * from './pipes/departments.pipe';
25
+ export * from './pipes/employee-by-dn.pipe';
26
+ export * from './pipes/employee-photo-url.pipe';
27
+ export * from './pipes/employees-with-property-value.pipe';
28
+ export * from './pipes/filter-employees.pipe';
29
+ export * from './pipes/is-member-of.pipe';
30
+ export * from './pipes/sort-employees.pipe';
31
+ //#endregion
32
+ export class EmployeeModule {
33
+ constructor(parentModule) {
34
+ if (parentModule) {
35
+ throw new Error('EmployeeModule is already loaded. Import it in the AppModule only');
36
+ }
37
+ }
38
+ static forRoot(employeeConfig) {
39
+ return {
40
+ ngModule: EmployeeModule,
41
+ providers: [
42
+ EmployeeService,
43
+ { provide: EmployeeServiceConfig, useValue: employeeConfig }
44
+ ]
45
+ };
46
+ }
47
+ }
48
+ EmployeeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeeModule, deps: [{ token: EmployeeModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule });
49
+ EmployeeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: EmployeeModule, declarations: [DepartmentsPipe,
50
+ EmployeeByDnPipe,
51
+ EmployeesWithPropertyValuePipe,
52
+ FilterEmployeesPipe,
53
+ IsMemberOfPipe,
54
+ EmployeePhotoUrlPipe,
55
+ SortEmployeesPipe], imports: [CommonModule], exports: [DepartmentsPipe,
56
+ EmployeeByDnPipe,
57
+ EmployeesWithPropertyValuePipe,
58
+ FilterEmployeesPipe,
59
+ IsMemberOfPipe,
60
+ EmployeePhotoUrlPipe,
61
+ SortEmployeesPipe] });
62
+ EmployeeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeeModule, imports: [CommonModule] });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeeModule, decorators: [{
64
+ type: NgModule,
65
+ args: [{
66
+ imports: [CommonModule],
67
+ declarations: [
68
+ DepartmentsPipe,
69
+ EmployeeByDnPipe,
70
+ EmployeesWithPropertyValuePipe,
71
+ FilterEmployeesPipe,
72
+ IsMemberOfPipe,
73
+ EmployeePhotoUrlPipe,
74
+ SortEmployeesPipe
75
+ ],
76
+ exports: [
77
+ DepartmentsPipe,
78
+ EmployeeByDnPipe,
79
+ EmployeesWithPropertyValuePipe,
80
+ FilterEmployeesPipe,
81
+ IsMemberOfPipe,
82
+ EmployeePhotoUrlPipe,
83
+ SortEmployeesPipe
84
+ ]
85
+ }]
86
+ }], ctorParameters: function () { return [{ type: EmployeeModule, decorators: [{
87
+ type: Optional
88
+ }, {
89
+ type: SkipSelf
90
+ }] }]; } });
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VtcGxveWVlL2VtcGxveWVlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUFDakIsT0FBTyxFQUFFLFFBQVEsRUFBdUIsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsV0FBVztBQUNYLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU5RCxRQUFRO0FBQ1IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFDaEUsWUFBWTtBQUVaLGlCQUFpQjtBQUNqQixRQUFRO0FBQ1IsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGtCQUFrQixDQUFDO0FBRWpDLFdBQVc7QUFDWCxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLFFBQVE7QUFDUixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLFlBQVk7QUF1QlosTUFBTSxPQUFPLGNBQWM7SUFXekIsWUFBcUMsWUFBNEI7UUFDL0QsSUFBSSxZQUFZLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FDYixtRUFBbUUsQ0FBQyxDQUFDO1NBQ3hFO0lBQ0gsQ0FBQztJQWZELE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBcUM7UUFDbEQsT0FBTztZQUNMLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLFNBQVMsRUFBRTtnQkFDVCxlQUFlO2dCQUNmLEVBQUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUU7YUFDN0Q7U0FDRixDQUFDO0lBQ0osQ0FBQzs7MkdBVFUsY0FBYyxrQkFXMEIsY0FBYzs0R0FYdEQsY0FBYyxpQkFsQnZCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsOEJBQThCO1FBQzlCLG1CQUFtQjtRQUNuQixjQUFjO1FBQ2Qsb0JBQW9CO1FBQ3BCLGlCQUFpQixhQVJULFlBQVksYUFXcEIsZUFBZTtRQUNmLGdCQUFnQjtRQUNoQiw4QkFBOEI7UUFDOUIsbUJBQW1CO1FBQ25CLGNBQWM7UUFDZCxvQkFBb0I7UUFDcEIsaUJBQWlCOzRHQUdSLGNBQWMsWUFwQmYsWUFBWTsyRkFvQlgsY0FBYztrQkFyQjFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUU7d0JBQ1osZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLDhCQUE4Qjt3QkFDOUIsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLG9CQUFvQjt3QkFDcEIsaUJBQWlCO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLDhCQUE4Qjt3QkFDOUIsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLG9CQUFvQjt3QkFDcEIsaUJBQWlCO3FCQUNsQjtpQkFDRjswREFZb0QsY0FBYzswQkFBbkQsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiBJbXBvcnRzXHJcbmltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbi8vIFNlcnZpY2VzXHJcbmltcG9ydCB7IEVtcGxveWVlU2VydmljZUNvbmZpZyB9IGZyb20gJy4vbW9kZWwvZW1wbG95ZWUuc2VydmljZS5jb25maWcnO1xyXG5pbXBvcnQgeyBFbXBsb3llZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2VtcGxveWVlLnNlcnZpY2UnO1xyXG5cclxuLy8gUGlwZXNcclxuaW1wb3J0IHsgRGVwYXJ0bWVudHNQaXBlIH0gZnJvbSAnLi9waXBlcy9kZXBhcnRtZW50cy5waXBlJztcclxuaW1wb3J0IHsgRW1wbG95ZWVCeURuUGlwZSB9IGZyb20gJy4vcGlwZXMvZW1wbG95ZWUtYnktZG4ucGlwZSc7XHJcbmltcG9ydCB7IEVtcGxveWVlUGhvdG9VcmxQaXBlIH0gZnJvbSAnLi9waXBlcy9lbXBsb3llZS1waG90by11cmwucGlwZSc7XHJcbmltcG9ydCB7IEVtcGxveWVlc1dpdGhQcm9wZXJ0eVZhbHVlUGlwZSB9IGZyb20gJy4vcGlwZXMvZW1wbG95ZWVzLXdpdGgtcHJvcGVydHktdmFsdWUucGlwZSc7XHJcbmltcG9ydCB7IEZpbHRlckVtcGxveWVlc1BpcGUgfSBmcm9tICcuL3BpcGVzL2ZpbHRlci1lbXBsb3llZXMucGlwZSc7XHJcbmltcG9ydCB7IElzTWVtYmVyT2ZQaXBlIH0gZnJvbSAnLi9waXBlcy9pcy1tZW1iZXItb2YucGlwZSc7XHJcbmltcG9ydCB7IFNvcnRFbXBsb3llZXNQaXBlIH0gZnJvbSAnLi9waXBlcy9zb3J0LWVtcGxveWVlcy5waXBlJztcclxuLy8jZW5kcmVnaW9uXHJcblxyXG4vLyNyZWdpb24gRXhwb3J0c1xyXG4vLyBNb2RlbFxyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2VtcGxveWVlLnNlcnZpY2UuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9lbXBsb3llZSc7XHJcblxyXG4vLyBTZXJ2aWNlc1xyXG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2VtcGxveWVlLnNlcnZpY2UnO1xyXG5cclxuLy8gUGlwZXNcclxuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9kZXBhcnRtZW50cy5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9lbXBsb3llZS1ieS1kbi5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9lbXBsb3llZS1waG90by11cmwucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvZW1wbG95ZWVzLXdpdGgtcHJvcGVydHktdmFsdWUucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvZmlsdGVyLWVtcGxveWVlcy5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9pcy1tZW1iZXItb2YucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvc29ydC1lbXBsb3llZXMucGlwZSc7XHJcbi8vI2VuZHJlZ2lvblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIERlcGFydG1lbnRzUGlwZSxcclxuICAgIEVtcGxveWVlQnlEblBpcGUsXHJcbiAgICBFbXBsb3llZXNXaXRoUHJvcGVydHlWYWx1ZVBpcGUsXHJcbiAgICBGaWx0ZXJFbXBsb3llZXNQaXBlLFxyXG4gICAgSXNNZW1iZXJPZlBpcGUsXHJcbiAgICBFbXBsb3llZVBob3RvVXJsUGlwZSxcclxuICAgIFNvcnRFbXBsb3llZXNQaXBlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBEZXBhcnRtZW50c1BpcGUsXHJcbiAgICBFbXBsb3llZUJ5RG5QaXBlLFxyXG4gICAgRW1wbG95ZWVzV2l0aFByb3BlcnR5VmFsdWVQaXBlLFxyXG4gICAgRmlsdGVyRW1wbG95ZWVzUGlwZSxcclxuICAgIElzTWVtYmVyT2ZQaXBlLFxyXG4gICAgRW1wbG95ZWVQaG90b1VybFBpcGUsXHJcbiAgICBTb3J0RW1wbG95ZWVzUGlwZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEVtcGxveWVlTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChlbXBsb3llZUNvbmZpZzogRW1wbG95ZWVTZXJ2aWNlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxFbXBsb3llZU1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IEVtcGxveWVlTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBFbXBsb3llZVNlcnZpY2UsXHJcbiAgICAgICAgeyBwcm92aWRlOiBFbXBsb3llZVNlcnZpY2VDb25maWcsIHVzZVZhbHVlOiBlbXBsb3llZUNvbmZpZyB9XHJcbiAgICAgIF1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvciggQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBFbXBsb3llZU1vZHVsZSkge1xyXG4gICAgaWYgKHBhcmVudE1vZHVsZSkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgJ0VtcGxveWVlTW9kdWxlIGlzIGFscmVhZHkgbG9hZGVkLiBJbXBvcnQgaXQgaW4gdGhlIEFwcE1vZHVsZSBvbmx5Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1wbG95ZWUvbW9kZWwvZW1wbG95ZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRW1wbG95ZWUge1xyXG4gICAgYmlydGhEYXRlPzogRGF0ZTtcclxuICAgIGNpdHk/OiBzdHJpbmc7XHJcbiAgICBjbjogc3RyaW5nO1xyXG4gICAgZGVwYXJ0bWVudD86IHN0cmluZztcclxuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gICAgZGlzcGxheU5hbWU6IHN0cmluZztcclxuICAgIGRpc3Rpbmd1aXNoZWROYW1lOiBzdHJpbmc7XHJcbiAgICBlbXBsb3llZU51bWJlcj86IG51bWJlcjtcclxuICAgIGZpcnN0TmFtZTogc3RyaW5nO1xyXG4gICAgbGFzdE5hbWU6IHN0cmluZztcclxuICAgIGhpcmVEYXRlPzogRGF0ZTtcclxuICAgIGluaXRpYWxzPzogc3RyaW5nO1xyXG4gICAgbGFzdEJhZFBhc3N3b3JkQXR0ZW1wdD86IERhdGU7XHJcbiAgICBsYXN0TG9nb25EYXRlPzogRGF0ZTtcclxuICAgIG1haWw/OiBzdHJpbmc7XHJcbiAgICBtYW5hZ2VyPzogc3RyaW5nO1xyXG4gICAgbWFya2V0VGl0bGU/OiBzdHJpbmc7IC8vIHVzZWQgdG8gbGluayB0byBQYXkgYmFuZFxyXG4gICAgbWVtYmVyT2Y/OiBzdHJpbmdbXTtcclxuICAgIG1vYmlsZT86IHN0cmluZztcclxuICAgIG9iamVjdEdVSUQ6IHN0cmluZztcclxuICAgIG9iamVjdFNpZDogc3RyaW5nO1xyXG4gICAgc0FNQWNjb3VudE5hbWU6IHN0cmluZztcclxuICAgIHNjcmlwdFBhdGg/OiBzdHJpbmc7XHJcbiAgICBzdGF0ZT86IHN0cmluZztcclxuICAgIHRlbGVwaG9uZU51bWJlcj86IHN0cmluZztcclxuICAgIHRpdGxlPzogc3RyaW5nO1xyXG4gICAgdGl0bGUyPzogc3RyaW5nO1xyXG4gICAgdGh1bWJuYWlsUGhvdG86IHN0cmluZztcclxuICAgIHVzZXJBY2NvdW50Q29udHJvbDogbnVtYmVyO1xyXG4gICAgdXNlclByaW5jaXBhbE5hbWU6IHN0cmluZztcclxuICAgIHdoZW5DaGFuZ2VkOiBEYXRlO1xyXG4gICAgd2hlbkNyZWF0ZWQ6IERhdGU7XHJcbiAgICB3b3JrU2hpZnQ/OiBzdHJpbmc7XHJcbn1cclxuIl19
@@ -1,3 +1,3 @@
1
1
  export class EmployeeServiceConfig {
2
2
  }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUuc2VydmljZS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1wbG95ZWUvbW9kZWwvZW1wbG95ZWUuc2VydmljZS5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLHFCQUFxQjtDQUVqQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBFbXBsb3llZVNlcnZpY2VDb25maWcge1xuICAgIGVtcGxveWVlQXBpVXJsOiBzdHJpbmc7XG59XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUuc2VydmljZS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1wbG95ZWUvbW9kZWwvZW1wbG95ZWUuc2VydmljZS5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLHFCQUFxQjtDQUVqQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBFbXBsb3llZVNlcnZpY2VDb25maWcge1xyXG4gICAgZW1wbG95ZWVBcGlVcmw6IHN0cmluZztcclxufVxyXG4iXX0=
@@ -0,0 +1,24 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class DepartmentsPipe {
4
+ transform(employees, args) {
5
+ const departments = [];
6
+ employees
7
+ .filter(emp => emp.department)
8
+ .forEach(emp => {
9
+ if (departments.indexOf(emp.department) === -1) {
10
+ departments.push(emp.department);
11
+ }
12
+ });
13
+ return departments.sort();
14
+ }
15
+ }
16
+ DepartmentsPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DepartmentsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
17
+ DepartmentsPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: DepartmentsPipe, name: "departments" });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DepartmentsPipe, decorators: [{
19
+ type: Pipe,
20
+ args: [{
21
+ name: 'departments'
22
+ }]
23
+ }] });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwYXJ0bWVudHMucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbXBsb3llZS9waXBlcy9kZXBhcnRtZW50cy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sZUFBZTtJQUUxQixTQUFTLENBQUMsU0FBcUIsRUFBRSxJQUFVO1FBQ3pDLE1BQU0sV0FBVyxHQUFhLEVBQUUsQ0FBQztRQUVqQyxTQUFTO2FBQ04sTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQzthQUM3QixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDYixJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUM5QyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUNsQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUwsT0FBTyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7NEdBZFUsZUFBZTswR0FBZixlQUFlOzJGQUFmLGVBQWU7a0JBSDNCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGFBQWE7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBFbXBsb3llZSB9IGZyb20gJy4vLi4vbW9kZWwvZW1wbG95ZWUnO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdkZXBhcnRtZW50cydcclxufSlcclxuZXhwb3J0IGNsYXNzIERlcGFydG1lbnRzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICB0cmFuc2Zvcm0oZW1wbG95ZWVzOiBFbXBsb3llZVtdLCBhcmdzPzogYW55KTogc3RyaW5nW10ge1xyXG4gICAgY29uc3QgZGVwYXJ0bWVudHM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgZW1wbG95ZWVzXHJcbiAgICAgIC5maWx0ZXIoZW1wID0+IGVtcC5kZXBhcnRtZW50KVxyXG4gICAgICAuZm9yRWFjaChlbXAgPT4ge1xyXG4gICAgICAgIGlmIChkZXBhcnRtZW50cy5pbmRleE9mKGVtcC5kZXBhcnRtZW50KSA9PT0gLTEpIHtcclxuICAgICAgICAgIGRlcGFydG1lbnRzLnB1c2goZW1wLmRlcGFydG1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIGRlcGFydG1lbnRzLnNvcnQoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,17 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class EmployeeByDnPipe {
4
+ transform(employees, dn) {
5
+ return employees
6
+ .find(emp => emp.distinguishedName.toLowerCase() === dn.toLowerCase());
7
+ }
8
+ }
9
+ EmployeeByDnPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeeByDnPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
+ EmployeeByDnPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: EmployeeByDnPipe, name: "employeeByDn" });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeeByDnPipe, decorators: [{
12
+ type: Pipe,
13
+ args: [{
14
+ name: 'employeeByDn'
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUtYnktZG4ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbXBsb3llZS9waXBlcy9lbXBsb3llZS1ieS1kbi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFNBQVMsQ0FBQyxTQUFxQixFQUFFLEVBQVU7UUFDekMsT0FBTyxTQUFTO2FBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzNFLENBQUM7OzZHQUxVLGdCQUFnQjsyR0FBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBSDVCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGNBQWM7aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBFbXBsb3llZSB9IGZyb20gJy4vLi4vbW9kZWwvZW1wbG95ZWUnO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdlbXBsb3llZUJ5RG4nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbXBsb3llZUJ5RG5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIHRyYW5zZm9ybShlbXBsb3llZXM6IEVtcGxveWVlW10sIGRuOiBzdHJpbmcpOiBFbXBsb3llZSB7XHJcbiAgICByZXR1cm4gZW1wbG95ZWVzXHJcbiAgICAgIC5maW5kKGVtcCA9PiBlbXAuZGlzdGluZ3Vpc2hlZE5hbWUudG9Mb3dlckNhc2UoKSA9PT0gZG4udG9Mb3dlckNhc2UoKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,27 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class EmployeePhotoUrlPipe {
4
+ transform(employee, photos) {
5
+ if (!photos) {
6
+ return null;
7
+ }
8
+ // Try to match by employeeNumber, accountName, or title
9
+ const photo = photos
10
+ .find(pic => (pic.ows_EmployeeNumber && employee.employeeNumber && +pic.ows_EmployeeNumber === +employee.employeeNumber) ||
11
+ (pic.ows_AccountName && pic.ows_AccountName.toLowerCase() === employee.sAMAccountName.toLowerCase()) ||
12
+ (pic.ows_Title && pic.ows_Title.toLowerCase() === employee.displayName.toLowerCase()));
13
+ if (!photo) {
14
+ console.log(`No photo match for ${employee.displayName}`);
15
+ }
16
+ return photo ? photo.ows_EncodedAbsUrl : null;
17
+ }
18
+ }
19
+ EmployeePhotoUrlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeePhotoUrlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
20
+ EmployeePhotoUrlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: EmployeePhotoUrlPipe, name: "employeePhotoUrl" });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeePhotoUrlPipe, decorators: [{
22
+ type: Pipe,
23
+ args: [{
24
+ name: 'employeePhotoUrl'
25
+ }]
26
+ }] });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUtcGhvdG8tdXJsLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1wbG95ZWUvcGlwZXMvZW1wbG95ZWUtcGhvdG8tdXJsLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBT3BELE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsU0FBUyxDQUFDLFFBQWtCLEVBQUUsTUFBbUM7UUFDL0QsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUFFLE9BQU8sSUFBSSxDQUFDO1NBQUU7UUFFN0Isd0RBQXdEO1FBQ3hELE1BQU0sS0FBSyxHQUFHLE1BQU07YUFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQ1YsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLElBQUksUUFBUSxDQUFDLGNBQWMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsS0FBSyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUM7WUFDM0csQ0FBQyxHQUFHLENBQUMsZUFBZSxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLEtBQUssUUFBUSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwRyxDQUFDLEdBQUcsQ0FBQyxTQUFTLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxRQUFRLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUUzRixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7U0FDM0Q7UUFFRCxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDaEQsQ0FBQzs7aUhBaEJVLG9CQUFvQjsrR0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBSGhDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGtCQUFrQjtpQkFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEVtcGxveWVlIH0gZnJvbSAnLi8uLi9tb2RlbC9lbXBsb3llZSc7XHJcbmltcG9ydCB7IFNoYXJlUG9pbnRFbXBsb3llZVBpY3R1cmUgfSBmcm9tICcuLy4uLy4uL3NoYXJlcG9pbnQvbW9kZWwvc2hhcmVwb2ludC1lbXBsb3llZS1waWN0dXJlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnZW1wbG95ZWVQaG90b1VybCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEVtcGxveWVlUGhvdG9VcmxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKGVtcGxveWVlOiBFbXBsb3llZSwgcGhvdG9zOiBTaGFyZVBvaW50RW1wbG95ZWVQaWN0dXJlW10pOiBhbnkge1xyXG4gICAgaWYgKCFwaG90b3MpIHsgcmV0dXJuIG51bGw7IH1cclxuXHJcbiAgICAvLyBUcnkgdG8gbWF0Y2ggYnkgZW1wbG95ZWVOdW1iZXIsIGFjY291bnROYW1lLCBvciB0aXRsZVxyXG4gICAgY29uc3QgcGhvdG8gPSBwaG90b3NcclxuICAgICAgLmZpbmQocGljID0+XHJcbiAgICAgICAgKHBpYy5vd3NfRW1wbG95ZWVOdW1iZXIgJiYgZW1wbG95ZWUuZW1wbG95ZWVOdW1iZXIgJiYgK3BpYy5vd3NfRW1wbG95ZWVOdW1iZXIgPT09ICtlbXBsb3llZS5lbXBsb3llZU51bWJlcikgfHxcclxuICAgICAgICAocGljLm93c19BY2NvdW50TmFtZSAmJiBwaWMub3dzX0FjY291bnROYW1lLnRvTG93ZXJDYXNlKCkgPT09IGVtcGxveWVlLnNBTUFjY291bnROYW1lLnRvTG93ZXJDYXNlKCkpIHx8XHJcbiAgICAgICAgKHBpYy5vd3NfVGl0bGUgJiYgcGljLm93c19UaXRsZS50b0xvd2VyQ2FzZSgpID09PSBlbXBsb3llZS5kaXNwbGF5TmFtZS50b0xvd2VyQ2FzZSgpKSk7XHJcblxyXG4gICAgaWYgKCFwaG90bykge1xyXG4gICAgICBjb25zb2xlLmxvZyhgTm8gcGhvdG8gbWF0Y2ggZm9yICR7ZW1wbG95ZWUuZGlzcGxheU5hbWV9YCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHBob3RvID8gcGhvdG8ub3dzX0VuY29kZWRBYnNVcmwgOiBudWxsO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,17 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class EmployeesWithPropertyValuePipe {
4
+ transform(employees, propertyName, propertyValue) {
5
+ return employees
6
+ .filter(emp => emp[propertyName] && emp[propertyName] === propertyValue);
7
+ }
8
+ }
9
+ EmployeesWithPropertyValuePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeesWithPropertyValuePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
+ EmployeesWithPropertyValuePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: EmployeesWithPropertyValuePipe, name: "employeesWithPropertyValue" });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeesWithPropertyValuePipe, decorators: [{
12
+ type: Pipe,
13
+ args: [{
14
+ name: 'employeesWithPropertyValue'
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWVzLXdpdGgtcHJvcGVydHktdmFsdWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbXBsb3llZS9waXBlcy9lbXBsb3llZXMtd2l0aC1wcm9wZXJ0eS12YWx1ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sOEJBQThCO0lBRXpDLFNBQVMsQ0FBQyxTQUFxQixFQUFFLFlBQW9CLEVBQUUsYUFBa0I7UUFDdkUsT0FBTyxTQUFTO2FBQ2IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxZQUFZLENBQUMsS0FBSyxhQUFhLENBQUMsQ0FBQztJQUM3RSxDQUFDOzsySEFMVSw4QkFBOEI7eUhBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQUgxQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSw0QkFBNEI7aUJBQ25DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBFbXBsb3llZSB9IGZyb20gJy4vLi4vbW9kZWwvZW1wbG95ZWUnO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdlbXBsb3llZXNXaXRoUHJvcGVydHlWYWx1ZSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEVtcGxveWVlc1dpdGhQcm9wZXJ0eVZhbHVlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICB0cmFuc2Zvcm0oZW1wbG95ZWVzOiBFbXBsb3llZVtdLCBwcm9wZXJ0eU5hbWU6IHN0cmluZywgcHJvcGVydHlWYWx1ZTogYW55KTogRW1wbG95ZWVbXSB7XHJcbiAgICByZXR1cm4gZW1wbG95ZWVzXHJcbiAgICAgIC5maWx0ZXIoZW1wID0+IGVtcFtwcm9wZXJ0eU5hbWVdICYmIGVtcFtwcm9wZXJ0eU5hbWVdID09PSBwcm9wZXJ0eVZhbHVlKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,22 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class FilterEmployeesPipe {
4
+ transform(employees, filter) {
5
+ return filter ?
6
+ employees
7
+ .filter(emp => emp.displayName.toLowerCase().indexOf(filter.toLowerCase()) !== -1 ||
8
+ (emp.department && emp.department.toLowerCase().indexOf(filter.toLowerCase()) !== -1) ||
9
+ (emp.title && emp.title.toLowerCase().indexOf(filter.toLowerCase()) !== -1) ||
10
+ emp.sAMAccountName.toLowerCase().indexOf(filter.toLowerCase()) !== -1) :
11
+ employees;
12
+ }
13
+ }
14
+ FilterEmployeesPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FilterEmployeesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
15
+ FilterEmployeesPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: FilterEmployeesPipe, name: "filterEmployees" });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FilterEmployeesPipe, decorators: [{
17
+ type: Pipe,
18
+ args: [{
19
+ name: 'filterEmployees'
20
+ }]
21
+ }] });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWVtcGxveWVlcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VtcGxveWVlL3BpcGVzL2ZpbHRlci1lbXBsb3llZXMucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNcEQsTUFBTSxPQUFPLG1CQUFtQjtJQUM1QixTQUFTLENBQUMsU0FBcUIsRUFBRSxNQUFjO1FBQzNDLE9BQU8sTUFBTSxDQUFDLENBQUM7WUFDWCxTQUFTO2lCQUNKLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUNWLEdBQUcsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDbEUsQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNyRixDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQzNFLEdBQUcsQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUN4RSxDQUFDLENBQUM7WUFDUCxTQUFTLENBQUM7SUFDbEIsQ0FBQzs7Z0hBWFEsbUJBQW1COzhHQUFuQixtQkFBbUI7MkZBQW5CLG1CQUFtQjtrQkFIL0IsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsaUJBQWlCO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRW1wbG95ZWUgfSBmcm9tICcuLy4uL21vZGVsL2VtcGxveWVlJztcclxuXHJcbkBQaXBlKHtcclxuICAgIG5hbWU6ICdmaWx0ZXJFbXBsb3llZXMnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWx0ZXJFbXBsb3llZXNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICB0cmFuc2Zvcm0oZW1wbG95ZWVzOiBFbXBsb3llZVtdLCBmaWx0ZXI6IHN0cmluZyk6IEVtcGxveWVlW10ge1xyXG4gICAgICAgIHJldHVybiBmaWx0ZXIgP1xyXG4gICAgICAgICAgICBlbXBsb3llZXNcclxuICAgICAgICAgICAgICAgIC5maWx0ZXIoZW1wID0+XHJcbiAgICAgICAgICAgICAgICAgICAgZW1wLmRpc3BsYXlOYW1lLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXIudG9Mb3dlckNhc2UoKSkgIT09IC0xIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgKGVtcC5kZXBhcnRtZW50ICYmIGVtcC5kZXBhcnRtZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXIudG9Mb3dlckNhc2UoKSkgIT09IC0xKSB8fFxyXG4gICAgICAgICAgICAgICAgICAgIChlbXAudGl0bGUgJiYgZW1wLnRpdGxlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXIudG9Mb3dlckNhc2UoKSkgIT09IC0xKSB8fFxyXG4gICAgICAgICAgICAgICAgICAgIGVtcC5zQU1BY2NvdW50TmFtZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyLnRvTG93ZXJDYXNlKCkpICE9PSAtMVxyXG4gICAgICAgICAgICAgICAgKSA6XHJcbiAgICAgICAgICAgIGVtcGxveWVlcztcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,17 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class IsMemberOfPipe {
4
+ transform(employee, groupName) {
5
+ return employee.memberOf &&
6
+ (employee.memberOf.find(m => m.toLowerCase().indexOf(groupName.toLowerCase()) !== -1) !== undefined);
7
+ }
8
+ }
9
+ IsMemberOfPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: IsMemberOfPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
+ IsMemberOfPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: IsMemberOfPipe, name: "isMemberOf" });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: IsMemberOfPipe, decorators: [{
12
+ type: Pipe,
13
+ args: [{
14
+ name: 'isMemberOf'
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtbWVtYmVyLW9mLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZW1wbG95ZWUvcGlwZXMvaXMtbWVtYmVyLW9mLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBTXBELE1BQU0sT0FBTyxjQUFjO0lBRXpCLFNBQVMsQ0FBQyxRQUFrQixFQUFFLFNBQWlCO1FBQzdDLE9BQU8sUUFBUSxDQUFDLFFBQVE7WUFDdEIsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQztJQUN6RyxDQUFDOzsyR0FMVSxjQUFjO3lHQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFIMUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsWUFBWTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEVtcGxveWVlIH0gZnJvbSAnLi8uLi9tb2RlbC9lbXBsb3llZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2lzTWVtYmVyT2YnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJc01lbWJlck9mUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICB0cmFuc2Zvcm0oZW1wbG95ZWU6IEVtcGxveWVlLCBncm91cE5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIGVtcGxveWVlLm1lbWJlck9mICYmXHJcbiAgICAgIChlbXBsb3llZS5tZW1iZXJPZi5maW5kKG0gPT4gbS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZ3JvdXBOYW1lLnRvTG93ZXJDYXNlKCkpICE9PSAtMSkgIT09IHVuZGVmaW5lZCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,44 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class SortEmployeesPipe {
4
+ transform(employees, sortBy, dataType, reverse) {
5
+ return this.getSorted(employees, sortBy ? sortBy : 'displayName', dataType ? dataType : 'string', reverse ? reverse : false);
6
+ }
7
+ getSorted(employees, sortBy, dataType, reverse) {
8
+ const sorted = employees
9
+ .sort((a, b) => {
10
+ let valA, valB;
11
+ switch (dataType.toLowerCase()) {
12
+ case 'string':
13
+ valA = a[sortBy] ? a[sortBy].toString().toLowerCase() : null;
14
+ valB = b[sortBy] ? b[sortBy].toString().toLowerCase() : null;
15
+ break;
16
+ case 'number':
17
+ valA = a[sortBy] ? +a[sortBy] : null;
18
+ valB = b[sortBy] ? +b[sortBy] : null;
19
+ break;
20
+ case 'date':
21
+ valA = a[sortBy] ? a[sortBy] : null;
22
+ valB = b[sortBy] ? b[sortBy] : null;
23
+ break;
24
+ }
25
+ if (valA < valB) {
26
+ return -1;
27
+ }
28
+ if (valA > valB) {
29
+ return 1;
30
+ }
31
+ return 0;
32
+ });
33
+ return reverse ? sorted.reverse() : sorted;
34
+ }
35
+ }
36
+ SortEmployeesPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: SortEmployeesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
37
+ SortEmployeesPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: SortEmployeesPipe, name: "sortEmployees" });
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: SortEmployeesPipe, decorators: [{
39
+ type: Pipe,
40
+ args: [{
41
+ name: 'sortEmployees'
42
+ }]
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbXBsb3llZXMucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbXBsb3llZS9waXBlcy9zb3J0LWVtcGxveWVlcy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFNBQVMsQ0FBQyxTQUFxQixFQUFFLE1BQWUsRUFBRSxRQUFpQixFQUFFLE9BQWlCO1FBQ3BGLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQzdCLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhLEVBQy9CLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQzlCLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU8sU0FBUyxDQUFDLFNBQXFCLEVBQUUsTUFBYyxFQUFFLFFBQWdCLEVBQUUsT0FBZ0I7UUFDekYsTUFBTSxNQUFNLEdBQUcsU0FBUzthQUNyQixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDYixJQUFJLElBQUksRUFBRSxJQUFTLENBQUM7WUFFcEIsUUFBUSxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUU7Z0JBQzlCLEtBQUssUUFBUTtvQkFDWCxJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztvQkFDN0QsSUFBSSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7b0JBQzdELE1BQU07Z0JBQ1IsS0FBSyxRQUFRO29CQUNYLElBQUksR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7b0JBQ3JDLElBQUksR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7b0JBQ3JDLE1BQU07Z0JBQ1IsS0FBSyxNQUFNO29CQUNULElBQUksR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO29CQUM1QyxJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztvQkFDNUMsTUFBTTthQUNUO1lBRUQsSUFBSSxJQUFJLEdBQUcsSUFBSSxFQUFFO2dCQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7YUFBRTtZQUMvQixJQUFJLElBQUksR0FBRyxJQUFJLEVBQUU7Z0JBQUUsT0FBTyxDQUFDLENBQUM7YUFBRTtZQUM5QixPQUFPLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQyxDQUFDO1FBRUwsT0FBTyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQzdDLENBQUM7OzhHQWxDVSxpQkFBaUI7NEdBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUg3QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxlQUFlO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRW1wbG95ZWUgfSBmcm9tICcuLy4uL21vZGVsL2VtcGxveWVlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnc29ydEVtcGxveWVlcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFNvcnRFbXBsb3llZXNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKGVtcGxveWVlczogRW1wbG95ZWVbXSwgc29ydEJ5Pzogc3RyaW5nLCBkYXRhVHlwZT86IHN0cmluZywgcmV2ZXJzZT86IGJvb2xlYW4pOiBFbXBsb3llZVtdIHtcclxuICAgIHJldHVybiB0aGlzLmdldFNvcnRlZChlbXBsb3llZXMsXHJcbiAgICAgIHNvcnRCeSA/IHNvcnRCeSA6ICdkaXNwbGF5TmFtZScsXHJcbiAgICAgIGRhdGFUeXBlID8gZGF0YVR5cGUgOiAnc3RyaW5nJyxcclxuICAgICAgcmV2ZXJzZSA/IHJldmVyc2UgOiBmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFNvcnRlZChlbXBsb3llZXM6IEVtcGxveWVlW10sIHNvcnRCeTogc3RyaW5nLCBkYXRhVHlwZTogc3RyaW5nLCByZXZlcnNlOiBib29sZWFuKTogRW1wbG95ZWVbXSB7XHJcbiAgICBjb25zdCBzb3J0ZWQgPSBlbXBsb3llZXNcclxuICAgICAgLnNvcnQoKGEsIGIpID0+IHtcclxuICAgICAgICBsZXQgdmFsQSwgdmFsQjogYW55O1xyXG5cclxuICAgICAgICBzd2l0Y2ggKGRhdGFUeXBlLnRvTG93ZXJDYXNlKCkpIHtcclxuICAgICAgICAgIGNhc2UgJ3N0cmluZyc6XHJcbiAgICAgICAgICAgIHZhbEEgPSBhW3NvcnRCeV0gPyBhW3NvcnRCeV0udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpIDogbnVsbDtcclxuICAgICAgICAgICAgdmFsQiA9IGJbc29ydEJ5XSA/IGJbc29ydEJ5XS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgOiBudWxsO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgJ251bWJlcic6XHJcbiAgICAgICAgICAgIHZhbEEgPSBhW3NvcnRCeV0gPyArYVtzb3J0QnldIDogbnVsbDtcclxuICAgICAgICAgICAgdmFsQiA9IGJbc29ydEJ5XSA/ICtiW3NvcnRCeV0gOiBudWxsO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgJ2RhdGUnOlxyXG4gICAgICAgICAgICB2YWxBID0gYVtzb3J0QnldID8gYVtzb3J0QnldIGFzIERhdGUgOiBudWxsO1xyXG4gICAgICAgICAgICB2YWxCID0gYltzb3J0QnldID8gYltzb3J0QnldIGFzIERhdGUgOiBudWxsO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh2YWxBIDwgdmFsQikgeyByZXR1cm4gLTE7IH1cclxuICAgICAgICBpZiAodmFsQSA+IHZhbEIpIHsgcmV0dXJuIDE7IH1cclxuICAgICAgICByZXR1cm4gMDtcclxuICAgICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHJldmVyc2UgPyBzb3J0ZWQucmV2ZXJzZSgpIDogc29ydGVkO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,41 @@
1
+ //#region Imports
2
+ import { Injectable, Optional } from '@angular/core';
3
+ import { of } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./../model/employee.service.config";
6
+ import * as i2 from "@angular/common/http";
7
+ //#endregion
8
+ export class EmployeeService {
9
+ //#endregion
10
+ //#region Lifecycle
11
+ constructor(config, http) {
12
+ this.http = http;
13
+ this.employeeApiUrl = config.employeeApiUrl;
14
+ }
15
+ //#endregion
16
+ //#region Utilities
17
+ getEmployees(storeEmployees = false, includeDisabled = false) {
18
+ // Do we already have employees stored locally?
19
+ if (this.employees) {
20
+ return of(this.employees);
21
+ // return Observable.of(this.employees);
22
+ }
23
+ // Should we store employees locally for subsequent calls?
24
+ if (storeEmployees) {
25
+ this.http.get(`${this.employeeApiUrl}/false/${includeDisabled}`)
26
+ .subscribe(emps => this.employees = emps);
27
+ }
28
+ return this.http.get(`${this.employeeApiUrl}/false/${includeDisabled}`);
29
+ }
30
+ getEmployee(sAMAccountName) {
31
+ return this.http.get(`${this.employeeApiUrl}/name/${sAMAccountName}`);
32
+ }
33
+ }
34
+ EmployeeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeeService, deps: [{ token: i1.EmployeeServiceConfig, optional: true }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
35
+ EmployeeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeeService });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EmployeeService, decorators: [{
37
+ type: Injectable
38
+ }], ctorParameters: function () { return [{ type: i1.EmployeeServiceConfig, decorators: [{
39
+ type: Optional
40
+ }] }, { type: i2.HttpClient }]; } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbXBsb3llZS9zZXJ2aWNlcy9lbXBsb3llZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQUNqQixPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBSXRDLFlBQVk7QUFHWixNQUFNLE9BQU8sZUFBZTtJQUkxQixZQUFZO0lBRVosbUJBQW1CO0lBQ25CLFlBQXlCLE1BQTZCLEVBQzVDLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDO0lBQzlDLENBQUM7SUFDRCxZQUFZO0lBRVosbUJBQW1CO0lBQ25CLFlBQVksQ0FBQyxjQUFjLEdBQUcsS0FBSyxFQUFFLGVBQWUsR0FBRyxLQUFLO1FBQzFELCtDQUErQztRQUMvQyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzFCLHdDQUF3QztTQUN6QztRQUVELDBEQUEwRDtRQUMxRCxJQUFJLGNBQWMsRUFBRTtZQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBYSxHQUFHLElBQUksQ0FBQyxjQUFjLFVBQVUsZUFBZSxFQUFFLENBQUM7aUJBQ3pFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDN0M7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsVUFBVSxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxXQUFXLENBQUMsY0FBc0I7UUFDaEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLFNBQVMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNsRixDQUFDOzs0R0FoQ1UsZUFBZTtnSEFBZixlQUFlOzJGQUFmLGVBQWU7a0JBRDNCLFVBQVU7OzBCQVFLLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gSW1wb3J0c1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgRW1wbG95ZWUgfSBmcm9tICcuLy4uL21vZGVsL2VtcGxveWVlJztcclxuaW1wb3J0IHsgRW1wbG95ZWVTZXJ2aWNlQ29uZmlnIH0gZnJvbSAnLi8uLi9tb2RlbC9lbXBsb3llZS5zZXJ2aWNlLmNvbmZpZyc7XHJcbi8vI2VuZHJlZ2lvblxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRW1wbG95ZWVTZXJ2aWNlIHtcclxuICAvLyNyZWdpb24gRmllbGRzXHJcbiAgcHJpdmF0ZSBlbXBsb3llZUFwaVVybDogc3RyaW5nO1xyXG4gIGVtcGxveWVlczogRW1wbG95ZWVbXTtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIExpZmVjeWNsZVxyXG4gIGNvbnN0cnVjdG9yKCBAT3B0aW9uYWwoKSBjb25maWc6IEVtcGxveWVlU2VydmljZUNvbmZpZyxcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgdGhpcy5lbXBsb3llZUFwaVVybCA9IGNvbmZpZy5lbXBsb3llZUFwaVVybDtcclxuICB9XHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIC8vI3JlZ2lvbiBVdGlsaXRpZXNcclxuICBnZXRFbXBsb3llZXMoc3RvcmVFbXBsb3llZXMgPSBmYWxzZSwgaW5jbHVkZURpc2FibGVkID0gZmFsc2UpOiBPYnNlcnZhYmxlPEVtcGxveWVlW10+IHtcclxuICAgIC8vIERvIHdlIGFscmVhZHkgaGF2ZSBlbXBsb3llZXMgc3RvcmVkIGxvY2FsbHk/XHJcbiAgICBpZiAodGhpcy5lbXBsb3llZXMpIHtcclxuICAgICAgcmV0dXJuIG9mKHRoaXMuZW1wbG95ZWVzKTtcclxuICAgICAgLy8gcmV0dXJuIE9ic2VydmFibGUub2YodGhpcy5lbXBsb3llZXMpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNob3VsZCB3ZSBzdG9yZSBlbXBsb3llZXMgbG9jYWxseSBmb3Igc3Vic2VxdWVudCBjYWxscz9cclxuICAgIGlmIChzdG9yZUVtcGxveWVlcykge1xyXG4gICAgICB0aGlzLmh0dHAuZ2V0PEVtcGxveWVlW10+KGAke3RoaXMuZW1wbG95ZWVBcGlVcmx9L2ZhbHNlLyR7aW5jbHVkZURpc2FibGVkfWApXHJcbiAgICAgICAgLnN1YnNjcmliZShlbXBzID0+IHRoaXMuZW1wbG95ZWVzID0gZW1wcyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8RW1wbG95ZWVbXT4oYCR7dGhpcy5lbXBsb3llZUFwaVVybH0vZmFsc2UvJHtpbmNsdWRlRGlzYWJsZWR9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRFbXBsb3llZShzQU1BY2NvdW50TmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxFbXBsb3llZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8RW1wbG95ZWU+KGAke3RoaXMuZW1wbG95ZWVBcGlVcmx9L25hbWUvJHtzQU1BY2NvdW50TmFtZX1gKTtcclxuICB9XHJcbiAgLy8jZW5kcmVnaW9uXHJcbn1cclxuIl19